Chromium Code Reviews| 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 |