OLD | NEW |
---|---|
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 { | 5 { |
6 'includes': [ | 6 'includes': [ |
7 'breakpad_sender.gypi', | 7 'breakpad_sender.gypi', |
8 'breakpad_handler.gypi', | 8 'breakpad_handler.gypi', |
9 ], | 9 ], |
10 'conditions': [ | 10 'conditions': [ |
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
98 'src/processor/logging.cc', | 98 'src/processor/logging.cc', |
99 'src/processor/logging.h', | 99 'src/processor/logging.h', |
100 'src/processor/minidump.cc', | 100 'src/processor/minidump.cc', |
101 'src/processor/minidump_dump.cc', | 101 'src/processor/minidump_dump.cc', |
102 'src/processor/pathname_stripper.cc', | 102 'src/processor/pathname_stripper.cc', |
103 'src/processor/pathname_stripper.h', | 103 'src/processor/pathname_stripper.h', |
104 ], | 104 ], |
105 }, | 105 }, |
106 ], | 106 ], |
107 }], | 107 }], |
108 [ 'OS=="mac"', { | 108 ['OS=="mac" or (OS=="ios" and "<(GENERATOR)"=="ninja")', { |
Nico
2013/11/27 00:34:09
I stumbled across this line today and wondered why
| |
109 'target_defaults': { | 109 'target_defaults': { |
110 'include_dirs': [ | 110 'include_dirs': [ |
111 'src', | 111 'src', |
112 ], | |
113 'configurations': { | |
114 'Debug_Base': { | |
115 'defines': [ | |
116 # This is needed for GTMLogger to work correctly. | |
117 'DEBUG', | |
118 ], | |
119 }, | |
120 }, | |
121 }, | |
122 'targets': [ | |
123 { | |
124 'target_name': 'dump_syms', | |
125 'type': 'executable', | |
126 'toolsets': ['host'], | |
127 'include_dirs': [ | |
128 'src/common/mac', | |
129 ], | |
130 'sources': [ | |
131 'src/common/dwarf/bytereader.cc', | |
132 'src/common/dwarf_cfi_to_module.cc', | |
133 'src/common/dwarf_cu_to_module.cc', | |
134 'src/common/dwarf/dwarf2diehandler.cc', | |
135 'src/common/dwarf/dwarf2reader.cc', | |
136 'src/common/dwarf_line_to_module.cc', | |
137 'src/common/language.cc', | |
138 'src/common/mac/arch_utilities.cc', | |
139 'src/common/mac/arch_utilities.h', | |
140 'src/common/mac/dump_syms.mm', | |
141 'src/common/mac/file_id.cc', | |
142 'src/common/mac/macho_id.cc', | |
143 'src/common/mac/macho_reader.cc', | |
144 'src/common/mac/macho_utilities.cc', | |
145 'src/common/mac/macho_walker.cc', | |
146 'src/common/md5.cc', | |
147 'src/common/module.cc', | |
148 'src/common/stabs_reader.cc', | |
149 'src/common/stabs_to_module.cc', | |
150 'src/tools/mac/dump_syms/dump_syms_tool.mm', | |
151 ], | |
152 'defines': [ | |
153 # For src/common/stabs_reader.h. | |
154 'HAVE_MACH_O_NLIST_H', | |
155 ], | |
156 'xcode_settings': { | |
157 # Like ld, dump_syms needs to operate on enough data that it may | |
158 # actually need to be able to address more than 4GB. Use x86_64. | |
159 # Don't worry! An x86_64 dump_syms is perfectly able to dump | |
160 # 32-bit files. | |
161 'ARCHS': [ | |
162 'x86_64', | |
163 ], | |
164 | |
165 # The DWARF utilities require -funsigned-char. | |
166 'GCC_CHAR_IS_UNSIGNED_CHAR': 'YES', | |
167 | |
168 # dwarf2reader.cc uses dynamic_cast. | |
169 'GCC_ENABLE_CPP_RTTI': 'YES', | |
170 }, | |
171 'link_settings': { | |
172 'libraries': [ | |
173 '$(SDKROOT)/System/Library/Frameworks/Foundation.framework', | |
174 ], | |
175 }, | |
176 'configurations': { | |
177 'Release_Base': { | |
178 'xcode_settings': { | |
179 # dump_syms crashes when built at -O1, -O2, and -O3. It does | |
180 # not crash at -Os. To play it safe, dump_syms is always built | |
181 # at -O0 until this can be sorted out. | |
182 # http://code.google.com/p/google-breakpad/issues/detail?id=329 | |
183 'GCC_OPTIMIZATION_LEVEL': '0', # -O0 | |
184 }, | |
185 }, | |
186 }, | |
187 }, | |
188 { | |
189 'target_name': 'symupload', | |
190 'type': 'executable', | |
191 'toolsets': ['host'], | |
192 'include_dirs': [ | |
193 'src/common/mac', | |
194 ], | |
195 'sources': [ | |
196 'src/common/mac/HTTPMultipartUpload.m', | |
197 'src/tools/mac/symupload/symupload.m', | |
198 ], | |
199 'link_settings': { | |
200 'libraries': [ | |
201 '$(SDKROOT)/System/Library/Frameworks/Foundation.framework', | |
202 ], | |
203 } | |
204 }, | |
205 ], | |
206 }], | |
207 ['OS=="mac"', { | |
208 'target_defaults': { | |
209 'include_dirs': [ | |
210 'src', | |
112 ], | 211 ], |
113 'configurations': { | 212 'configurations': { |
114 'Debug_Base': { | 213 'Debug_Base': { |
115 'defines': [ | 214 'defines': [ |
116 # This is needed for GTMLogger to work correctly. | 215 # This is needed for GTMLogger to work correctly. |
117 'DEBUG', | 216 'DEBUG', |
118 ], | 217 ], |
119 }, | 218 }, |
120 }, | 219 }, |
121 }, | 220 }, |
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
197 }, | 296 }, |
198 'link_settings': { | 297 'link_settings': { |
199 'libraries': [ | 298 'libraries': [ |
200 '$(SDKROOT)/System/Library/Frameworks/AppKit.framework', | 299 '$(SDKROOT)/System/Library/Frameworks/AppKit.framework', |
201 '$(SDKROOT)/System/Library/Frameworks/Foundation.framework', | 300 '$(SDKROOT)/System/Library/Frameworks/Foundation.framework', |
202 '$(SDKROOT)/System/Library/Frameworks/SystemConfiguration.framewor k', | 301 '$(SDKROOT)/System/Library/Frameworks/SystemConfiguration.framewor k', |
203 ], | 302 ], |
204 } | 303 } |
205 }, | 304 }, |
206 { | 305 { |
207 'target_name': 'dump_syms', | |
208 'type': 'executable', | |
209 'include_dirs': [ | |
210 'src/common/mac', | |
211 ], | |
212 'sources': [ | |
213 'src/common/dwarf/bytereader.cc', | |
214 'src/common/dwarf_cfi_to_module.cc', | |
215 'src/common/dwarf_cu_to_module.cc', | |
216 'src/common/dwarf/dwarf2diehandler.cc', | |
217 'src/common/dwarf/dwarf2reader.cc', | |
218 'src/common/dwarf_line_to_module.cc', | |
219 'src/common/language.cc', | |
220 'src/common/mac/arch_utilities.cc', | |
221 'src/common/mac/arch_utilities.h', | |
222 'src/common/mac/dump_syms.mm', | |
223 'src/common/mac/file_id.cc', | |
224 'src/common/mac/macho_id.cc', | |
225 'src/common/mac/macho_reader.cc', | |
226 'src/common/mac/macho_utilities.cc', | |
227 'src/common/mac/macho_walker.cc', | |
228 'src/common/md5.cc', | |
229 'src/common/module.cc', | |
230 'src/common/stabs_reader.cc', | |
231 'src/common/stabs_to_module.cc', | |
232 'src/tools/mac/dump_syms/dump_syms_tool.mm', | |
233 ], | |
234 'defines': [ | |
235 # For src/common/stabs_reader.h. | |
236 'HAVE_MACH_O_NLIST_H', | |
237 ], | |
238 'xcode_settings': { | |
239 # Like ld, dump_syms needs to operate on enough data that it may | |
240 # actually need to be able to address more than 4GB. Use x86_64. | |
241 # Don't worry! An x86_64 dump_syms is perfectly able to dump | |
242 # 32-bit files. | |
243 'ARCHS': [ | |
244 'x86_64', | |
245 ], | |
246 | |
247 # The DWARF utilities require -funsigned-char. | |
248 'GCC_CHAR_IS_UNSIGNED_CHAR': 'YES', | |
249 | |
250 # dwarf2reader.cc uses dynamic_cast. | |
251 'GCC_ENABLE_CPP_RTTI': 'YES', | |
252 }, | |
253 'link_settings': { | |
254 'libraries': [ | |
255 '$(SDKROOT)/System/Library/Frameworks/Foundation.framework', | |
256 ], | |
257 }, | |
258 'configurations': { | |
259 'Release_Base': { | |
260 'xcode_settings': { | |
261 # dump_syms crashes when built at -O1, -O2, and -O3. It does | |
262 # not crash at -Os. To play it safe, dump_syms is always built | |
263 # at -O0 until this can be sorted out. | |
264 # http://code.google.com/p/google-breakpad/issues/detail?id=329 | |
265 'GCC_OPTIMIZATION_LEVEL': '0', # -O0 | |
266 }, | |
267 }, | |
268 }, | |
269 }, | |
270 { | |
271 'target_name': 'symupload', | |
272 'type': 'executable', | |
273 'include_dirs': [ | |
274 'src/common/mac', | |
275 ], | |
276 'sources': [ | |
277 'src/common/mac/HTTPMultipartUpload.m', | |
278 'src/tools/mac/symupload/symupload.m', | |
279 ], | |
280 'link_settings': { | |
281 'libraries': [ | |
282 '$(SDKROOT)/System/Library/Frameworks/Foundation.framework', | |
283 ], | |
284 } | |
285 }, | |
286 { | |
287 'target_name': 'breakpad', | 306 'target_name': 'breakpad', |
288 'type': 'static_library', | 307 'type': 'static_library', |
289 'dependencies': [ | 308 'dependencies': [ |
290 'breakpad_utilities', | 309 'breakpad_utilities', |
291 'crash_inspector', | 310 'crash_inspector', |
292 'crash_report_sender', | 311 'crash_report_sender', |
293 ], | 312 ], |
294 'include_dirs': [ | 313 'include_dirs': [ |
295 'src/client/apple/Framework', | 314 'src/client/apple/Framework', |
296 ], | 315 ], |
(...skipping 364 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
661 'breakpad_client', | 680 'breakpad_client', |
662 ], | 681 ], |
663 | 682 |
664 'include_dirs': [ | 683 'include_dirs': [ |
665 '..', | 684 '..', |
666 'src', | 685 'src', |
667 ], | 686 ], |
668 }, | 687 }, |
669 ], | 688 ], |
670 }], | 689 }], |
671 [ 'OS=="ios"', { | 690 ['OS=="ios"', { |
691 'targets': [ | |
692 { | |
693 'target_name': 'breakpad_client', | |
694 'type': 'static_library', | |
695 'sources': [ | |
696 'src/client/ios/Breakpad.h', | |
697 'src/client/ios/Breakpad.mm', | |
698 'src/client/ios/BreakpadController.h', | |
699 'src/client/ios/BreakpadController.mm', | |
700 'src/client/ios/handler/ios_exception_minidump_generator.mm', | |
701 'src/client/ios/handler/ios_exception_minidump_generator.h', | |
702 'src/client/mac/crash_generation/ConfigFile.h', | |
703 'src/client/mac/crash_generation/ConfigFile.mm', | |
704 'src/client/mac/handler/breakpad_nlist_64.cc', | |
705 'src/client/mac/handler/breakpad_nlist_64.h', | |
706 'src/client/mac/handler/dynamic_images.cc', | |
707 'src/client/mac/handler/dynamic_images.h', | |
708 'src/client/mac/handler/protected_memory_allocator.cc', | |
709 'src/client/mac/handler/protected_memory_allocator.h', | |
710 'src/client/mac/handler/exception_handler.cc', | |
711 'src/client/mac/handler/exception_handler.h', | |
712 'src/client/mac/handler/minidump_generator.cc', | |
713 'src/client/mac/handler/minidump_generator.h', | |
714 'src/client/mac/sender/uploader.h', | |
715 'src/client/mac/sender/uploader.mm', | |
716 'src/client/minidump_file_writer.cc', | |
717 'src/client/minidump_file_writer.h', | |
718 'src/client/minidump_file_writer-inl.h', | |
719 'src/common/convert_UTF.c', | |
720 'src/common/convert_UTF.h', | |
721 'src/common/mac/file_id.cc', | |
722 'src/common/mac/file_id.h', | |
723 'src/common/mac/HTTPMultipartUpload.m', | |
724 'src/common/mac/macho_id.cc', | |
725 'src/common/mac/macho_id.h', | |
726 'src/common/mac/macho_utilities.cc', | |
727 'src/common/mac/macho_utilities.h', | |
728 'src/common/mac/macho_walker.cc', | |
729 'src/common/mac/macho_walker.h', | |
730 'src/common/mac/string_utilities.cc', | |
731 'src/common/mac/string_utilities.h', | |
732 'src/common/md5.cc', | |
733 'src/common/md5.h', | |
734 'src/common/simple_string_dictionary.cc', | |
735 'src/common/simple_string_dictionary.h', | |
736 'src/common/string_conversion.cc', | |
737 'src/common/string_conversion.h', | |
738 'src/google_breakpad/common/minidump_format.h', | |
739 ], | |
740 'include_dirs': [ | |
741 'src', | |
742 'src/client/mac/Framework', | |
743 'src/common/mac', | |
744 # For GTMLogger. | |
745 '<(DEPTH)/third_party/GTM', | |
746 '<(DEPTH)/third_party/GTM/Foundation', | |
747 ], | |
748 'link_settings': { | |
749 # Build the version of GTMLogger.m in third_party rather than the | |
750 # one in src/common/mac because the former catches all exceptions | |
751 # whereas the latter lets them propagate, which can cause odd | |
752 # crashes. | |
753 'sources': [ | |
754 '<(DEPTH)/third_party/GTM/Foundation/GTMLogger.h', | |
755 '<(DEPTH)/third_party/GTM/Foundation/GTMLogger.m', | |
756 ], | |
757 'include_dirs': [ | |
758 '<(DEPTH)/third_party/GTM', | |
759 '<(DEPTH)/third_party/GTM/Foundation', | |
760 ], | |
761 }, | |
762 } | |
763 ] | |
764 }], | |
765 ['OS=="ios" and "<(GENERATOR)"!="ninja"', { | |
672 'variables': { | 766 'variables': { |
673 'ninja_output_dir': 'ninja-breakpad', | 767 'ninja_output_dir': 'ninja-breakpad', |
674 'ninja_product_dir': | 768 'ninja_product_dir': |
675 '<(DEPTH)/xcodebuild/<(ninja_output_dir)/<(CONFIGURATION_NAME)', | 769 '<(DEPTH)/xcodebuild/<(ninja_output_dir)/<(CONFIGURATION_NAME)', |
676 }, | 770 }, |
677 # Generation is done via two actions: (1) compiling the executable with | 771 # Generation is done via two actions: (1) compiling the executable with |
678 # ninja, and (2) copying the executable into a location that is shared | 772 # ninja, and (2) copying the executable into a location that is shared |
679 # with other projects. These actions are separated into two targets in | 773 # with other projects. These actions are separated into two targets in |
680 # order to be able to specify that the second action should not run until | 774 # order to be able to specify that the second action should not run until |
681 # the first action finishes (since the ordering of multiple actions in | 775 # the first action finishes (since the ordering of multiple actions in |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
750 'dependencies': [ | 844 'dependencies': [ |
751 'breakpad_utilities', | 845 'breakpad_utilities', |
752 ], | 846 ], |
753 }, | 847 }, |
754 { | 848 { |
755 'target_name': 'symupload', | 849 'target_name': 'symupload', |
756 'type': 'none', | 850 'type': 'none', |
757 'dependencies': [ | 851 'dependencies': [ |
758 'breakpad_utilities', | 852 'breakpad_utilities', |
759 ], | 853 ], |
760 }, | 854 } |
761 { | |
762 'target_name': 'breakpad_client', | |
763 'type': 'static_library', | |
764 'sources': [ | |
765 'src/client/ios/Breakpad.h', | |
766 'src/client/ios/Breakpad.mm', | |
767 'src/client/ios/BreakpadController.h', | |
768 'src/client/ios/BreakpadController.mm', | |
769 'src/client/ios/handler/ios_exception_minidump_generator.mm', | |
770 'src/client/ios/handler/ios_exception_minidump_generator.h', | |
771 'src/client/mac/crash_generation/ConfigFile.h', | |
772 'src/client/mac/crash_generation/ConfigFile.mm', | |
773 'src/client/mac/handler/breakpad_nlist_64.cc', | |
774 'src/client/mac/handler/breakpad_nlist_64.h', | |
775 'src/client/mac/handler/dynamic_images.cc', | |
776 'src/client/mac/handler/dynamic_images.h', | |
777 'src/client/mac/handler/protected_memory_allocator.cc', | |
778 'src/client/mac/handler/protected_memory_allocator.h', | |
779 'src/client/mac/handler/exception_handler.cc', | |
780 'src/client/mac/handler/exception_handler.h', | |
781 'src/client/mac/handler/minidump_generator.cc', | |
782 'src/client/mac/handler/minidump_generator.h', | |
783 'src/client/mac/sender/uploader.h', | |
784 'src/client/mac/sender/uploader.mm', | |
785 'src/client/minidump_file_writer.cc', | |
786 'src/client/minidump_file_writer.h', | |
787 'src/client/minidump_file_writer-inl.h', | |
788 'src/common/convert_UTF.c', | |
789 'src/common/convert_UTF.h', | |
790 'src/common/mac/file_id.cc', | |
791 'src/common/mac/file_id.h', | |
792 'src/common/mac/HTTPMultipartUpload.m', | |
793 'src/common/mac/macho_id.cc', | |
794 'src/common/mac/macho_id.h', | |
795 'src/common/mac/macho_utilities.cc', | |
796 'src/common/mac/macho_utilities.h', | |
797 'src/common/mac/macho_walker.cc', | |
798 'src/common/mac/macho_walker.h', | |
799 'src/common/mac/string_utilities.cc', | |
800 'src/common/mac/string_utilities.h', | |
801 'src/common/md5.cc', | |
802 'src/common/md5.h', | |
803 'src/common/simple_string_dictionary.cc', | |
804 'src/common/simple_string_dictionary.h', | |
805 'src/common/string_conversion.cc', | |
806 'src/common/string_conversion.h', | |
807 'src/google_breakpad/common/minidump_format.h', | |
808 ], | |
809 'include_dirs': [ | |
810 'src', | |
811 'src/client/mac/Framework', | |
812 'src/common/mac', | |
813 # For GTMLogger. | |
814 '<(DEPTH)/third_party/GTM', | |
815 '<(DEPTH)/third_party/GTM/Foundation', | |
816 ], | |
817 'link_settings': { | |
818 # Build the version of GTMLogger.m in third_party rather than the | |
819 # one in src/common/mac because the former catches all exceptions | |
820 # whereas the latter lets them propagate, which can cause odd | |
821 # crashes. | |
822 'sources': [ | |
823 '<(DEPTH)/third_party/GTM/Foundation/GTMLogger.h', | |
824 '<(DEPTH)/third_party/GTM/Foundation/GTMLogger.m', | |
825 ], | |
826 'include_dirs': [ | |
827 '<(DEPTH)/third_party/GTM', | |
828 '<(DEPTH)/third_party/GTM/Foundation', | |
829 ], | |
830 }, | |
831 }, | |
832 ], | 855 ], |
833 }], | 856 }], |
834 ], | 857 ], |
835 } | 858 } |
OLD | NEW |