Index: breakpad/breakpad.gyp |
diff --git a/breakpad/breakpad.gyp b/breakpad/breakpad.gyp |
index ea137cc1101a9731d74e48c0ac9df613b64bf43b..66c590a250a3983af817927df448e5554bee059c 100644 |
--- a/breakpad/breakpad.gyp |
+++ b/breakpad/breakpad.gyp |
@@ -105,7 +105,106 @@ |
}, |
], |
}], |
- [ 'OS=="mac"', { |
+ ['OS=="mac" or (OS=="ios" and "<(GENERATOR)"=="ninja")', { |
Nico
2013/11/27 00:34:09
I stumbled across this line today and wondered why
|
+ 'target_defaults': { |
+ 'include_dirs': [ |
+ 'src', |
+ ], |
+ 'configurations': { |
+ 'Debug_Base': { |
+ 'defines': [ |
+ # This is needed for GTMLogger to work correctly. |
+ 'DEBUG', |
+ ], |
+ }, |
+ }, |
+ }, |
+ 'targets': [ |
+ { |
+ 'target_name': 'dump_syms', |
+ 'type': 'executable', |
+ 'toolsets': ['host'], |
+ 'include_dirs': [ |
+ 'src/common/mac', |
+ ], |
+ 'sources': [ |
+ 'src/common/dwarf/bytereader.cc', |
+ 'src/common/dwarf_cfi_to_module.cc', |
+ 'src/common/dwarf_cu_to_module.cc', |
+ 'src/common/dwarf/dwarf2diehandler.cc', |
+ 'src/common/dwarf/dwarf2reader.cc', |
+ 'src/common/dwarf_line_to_module.cc', |
+ 'src/common/language.cc', |
+ 'src/common/mac/arch_utilities.cc', |
+ 'src/common/mac/arch_utilities.h', |
+ 'src/common/mac/dump_syms.mm', |
+ 'src/common/mac/file_id.cc', |
+ 'src/common/mac/macho_id.cc', |
+ 'src/common/mac/macho_reader.cc', |
+ 'src/common/mac/macho_utilities.cc', |
+ 'src/common/mac/macho_walker.cc', |
+ 'src/common/md5.cc', |
+ 'src/common/module.cc', |
+ 'src/common/stabs_reader.cc', |
+ 'src/common/stabs_to_module.cc', |
+ 'src/tools/mac/dump_syms/dump_syms_tool.mm', |
+ ], |
+ 'defines': [ |
+ # For src/common/stabs_reader.h. |
+ 'HAVE_MACH_O_NLIST_H', |
+ ], |
+ 'xcode_settings': { |
+ # Like ld, dump_syms needs to operate on enough data that it may |
+ # actually need to be able to address more than 4GB. Use x86_64. |
+ # Don't worry! An x86_64 dump_syms is perfectly able to dump |
+ # 32-bit files. |
+ 'ARCHS': [ |
+ 'x86_64', |
+ ], |
+ |
+ # The DWARF utilities require -funsigned-char. |
+ 'GCC_CHAR_IS_UNSIGNED_CHAR': 'YES', |
+ |
+ # dwarf2reader.cc uses dynamic_cast. |
+ 'GCC_ENABLE_CPP_RTTI': 'YES', |
+ }, |
+ 'link_settings': { |
+ 'libraries': [ |
+ '$(SDKROOT)/System/Library/Frameworks/Foundation.framework', |
+ ], |
+ }, |
+ 'configurations': { |
+ 'Release_Base': { |
+ 'xcode_settings': { |
+ # dump_syms crashes when built at -O1, -O2, and -O3. It does |
+ # not crash at -Os. To play it safe, dump_syms is always built |
+ # at -O0 until this can be sorted out. |
+ # http://code.google.com/p/google-breakpad/issues/detail?id=329 |
+ 'GCC_OPTIMIZATION_LEVEL': '0', # -O0 |
+ }, |
+ }, |
+ }, |
+ }, |
+ { |
+ 'target_name': 'symupload', |
+ 'type': 'executable', |
+ 'toolsets': ['host'], |
+ 'include_dirs': [ |
+ 'src/common/mac', |
+ ], |
+ 'sources': [ |
+ 'src/common/mac/HTTPMultipartUpload.m', |
+ 'src/tools/mac/symupload/symupload.m', |
+ ], |
+ 'link_settings': { |
+ 'libraries': [ |
+ '$(SDKROOT)/System/Library/Frameworks/Foundation.framework', |
+ ], |
+ } |
+ }, |
+ ], |
+ }], |
+ ['OS=="mac"', { |
'target_defaults': { |
'include_dirs': [ |
'src', |
@@ -204,86 +303,6 @@ |
} |
}, |
{ |
- 'target_name': 'dump_syms', |
- 'type': 'executable', |
- 'include_dirs': [ |
- 'src/common/mac', |
- ], |
- 'sources': [ |
- 'src/common/dwarf/bytereader.cc', |
- 'src/common/dwarf_cfi_to_module.cc', |
- 'src/common/dwarf_cu_to_module.cc', |
- 'src/common/dwarf/dwarf2diehandler.cc', |
- 'src/common/dwarf/dwarf2reader.cc', |
- 'src/common/dwarf_line_to_module.cc', |
- 'src/common/language.cc', |
- 'src/common/mac/arch_utilities.cc', |
- 'src/common/mac/arch_utilities.h', |
- 'src/common/mac/dump_syms.mm', |
- 'src/common/mac/file_id.cc', |
- 'src/common/mac/macho_id.cc', |
- 'src/common/mac/macho_reader.cc', |
- 'src/common/mac/macho_utilities.cc', |
- 'src/common/mac/macho_walker.cc', |
- 'src/common/md5.cc', |
- 'src/common/module.cc', |
- 'src/common/stabs_reader.cc', |
- 'src/common/stabs_to_module.cc', |
- 'src/tools/mac/dump_syms/dump_syms_tool.mm', |
- ], |
- 'defines': [ |
- # For src/common/stabs_reader.h. |
- 'HAVE_MACH_O_NLIST_H', |
- ], |
- 'xcode_settings': { |
- # Like ld, dump_syms needs to operate on enough data that it may |
- # actually need to be able to address more than 4GB. Use x86_64. |
- # Don't worry! An x86_64 dump_syms is perfectly able to dump |
- # 32-bit files. |
- 'ARCHS': [ |
- 'x86_64', |
- ], |
- |
- # The DWARF utilities require -funsigned-char. |
- 'GCC_CHAR_IS_UNSIGNED_CHAR': 'YES', |
- |
- # dwarf2reader.cc uses dynamic_cast. |
- 'GCC_ENABLE_CPP_RTTI': 'YES', |
- }, |
- 'link_settings': { |
- 'libraries': [ |
- '$(SDKROOT)/System/Library/Frameworks/Foundation.framework', |
- ], |
- }, |
- 'configurations': { |
- 'Release_Base': { |
- 'xcode_settings': { |
- # dump_syms crashes when built at -O1, -O2, and -O3. It does |
- # not crash at -Os. To play it safe, dump_syms is always built |
- # at -O0 until this can be sorted out. |
- # http://code.google.com/p/google-breakpad/issues/detail?id=329 |
- 'GCC_OPTIMIZATION_LEVEL': '0', # -O0 |
- }, |
- }, |
- }, |
- }, |
- { |
- 'target_name': 'symupload', |
- 'type': 'executable', |
- 'include_dirs': [ |
- 'src/common/mac', |
- ], |
- 'sources': [ |
- 'src/common/mac/HTTPMultipartUpload.m', |
- 'src/tools/mac/symupload/symupload.m', |
- ], |
- 'link_settings': { |
- 'libraries': [ |
- '$(SDKROOT)/System/Library/Frameworks/Foundation.framework', |
- ], |
- } |
- }, |
- { |
'target_name': 'breakpad', |
'type': 'static_library', |
'dependencies': [ |
@@ -668,7 +687,82 @@ |
}, |
], |
}], |
- [ 'OS=="ios"', { |
+ ['OS=="ios"', { |
+ 'targets': [ |
+ { |
+ 'target_name': 'breakpad_client', |
+ 'type': 'static_library', |
+ 'sources': [ |
+ 'src/client/ios/Breakpad.h', |
+ 'src/client/ios/Breakpad.mm', |
+ 'src/client/ios/BreakpadController.h', |
+ 'src/client/ios/BreakpadController.mm', |
+ 'src/client/ios/handler/ios_exception_minidump_generator.mm', |
+ 'src/client/ios/handler/ios_exception_minidump_generator.h', |
+ 'src/client/mac/crash_generation/ConfigFile.h', |
+ 'src/client/mac/crash_generation/ConfigFile.mm', |
+ 'src/client/mac/handler/breakpad_nlist_64.cc', |
+ 'src/client/mac/handler/breakpad_nlist_64.h', |
+ 'src/client/mac/handler/dynamic_images.cc', |
+ 'src/client/mac/handler/dynamic_images.h', |
+ 'src/client/mac/handler/protected_memory_allocator.cc', |
+ 'src/client/mac/handler/protected_memory_allocator.h', |
+ 'src/client/mac/handler/exception_handler.cc', |
+ 'src/client/mac/handler/exception_handler.h', |
+ 'src/client/mac/handler/minidump_generator.cc', |
+ 'src/client/mac/handler/minidump_generator.h', |
+ 'src/client/mac/sender/uploader.h', |
+ 'src/client/mac/sender/uploader.mm', |
+ 'src/client/minidump_file_writer.cc', |
+ 'src/client/minidump_file_writer.h', |
+ 'src/client/minidump_file_writer-inl.h', |
+ 'src/common/convert_UTF.c', |
+ 'src/common/convert_UTF.h', |
+ 'src/common/mac/file_id.cc', |
+ 'src/common/mac/file_id.h', |
+ 'src/common/mac/HTTPMultipartUpload.m', |
+ 'src/common/mac/macho_id.cc', |
+ 'src/common/mac/macho_id.h', |
+ 'src/common/mac/macho_utilities.cc', |
+ 'src/common/mac/macho_utilities.h', |
+ 'src/common/mac/macho_walker.cc', |
+ 'src/common/mac/macho_walker.h', |
+ 'src/common/mac/string_utilities.cc', |
+ 'src/common/mac/string_utilities.h', |
+ 'src/common/md5.cc', |
+ 'src/common/md5.h', |
+ 'src/common/simple_string_dictionary.cc', |
+ 'src/common/simple_string_dictionary.h', |
+ 'src/common/string_conversion.cc', |
+ 'src/common/string_conversion.h', |
+ 'src/google_breakpad/common/minidump_format.h', |
+ ], |
+ 'include_dirs': [ |
+ 'src', |
+ 'src/client/mac/Framework', |
+ 'src/common/mac', |
+ # For GTMLogger. |
+ '<(DEPTH)/third_party/GTM', |
+ '<(DEPTH)/third_party/GTM/Foundation', |
+ ], |
+ 'link_settings': { |
+ # Build the version of GTMLogger.m in third_party rather than the |
+ # one in src/common/mac because the former catches all exceptions |
+ # whereas the latter lets them propagate, which can cause odd |
+ # crashes. |
+ 'sources': [ |
+ '<(DEPTH)/third_party/GTM/Foundation/GTMLogger.h', |
+ '<(DEPTH)/third_party/GTM/Foundation/GTMLogger.m', |
+ ], |
+ 'include_dirs': [ |
+ '<(DEPTH)/third_party/GTM', |
+ '<(DEPTH)/third_party/GTM/Foundation', |
+ ], |
+ }, |
+ } |
+ ] |
+ }], |
+ ['OS=="ios" and "<(GENERATOR)"!="ninja"', { |
'variables': { |
'ninja_output_dir': 'ninja-breakpad', |
'ninja_product_dir': |
@@ -757,78 +851,7 @@ |
'dependencies': [ |
'breakpad_utilities', |
], |
- }, |
- { |
- 'target_name': 'breakpad_client', |
- 'type': 'static_library', |
- 'sources': [ |
- 'src/client/ios/Breakpad.h', |
- 'src/client/ios/Breakpad.mm', |
- 'src/client/ios/BreakpadController.h', |
- 'src/client/ios/BreakpadController.mm', |
- 'src/client/ios/handler/ios_exception_minidump_generator.mm', |
- 'src/client/ios/handler/ios_exception_minidump_generator.h', |
- 'src/client/mac/crash_generation/ConfigFile.h', |
- 'src/client/mac/crash_generation/ConfigFile.mm', |
- 'src/client/mac/handler/breakpad_nlist_64.cc', |
- 'src/client/mac/handler/breakpad_nlist_64.h', |
- 'src/client/mac/handler/dynamic_images.cc', |
- 'src/client/mac/handler/dynamic_images.h', |
- 'src/client/mac/handler/protected_memory_allocator.cc', |
- 'src/client/mac/handler/protected_memory_allocator.h', |
- 'src/client/mac/handler/exception_handler.cc', |
- 'src/client/mac/handler/exception_handler.h', |
- 'src/client/mac/handler/minidump_generator.cc', |
- 'src/client/mac/handler/minidump_generator.h', |
- 'src/client/mac/sender/uploader.h', |
- 'src/client/mac/sender/uploader.mm', |
- 'src/client/minidump_file_writer.cc', |
- 'src/client/minidump_file_writer.h', |
- 'src/client/minidump_file_writer-inl.h', |
- 'src/common/convert_UTF.c', |
- 'src/common/convert_UTF.h', |
- 'src/common/mac/file_id.cc', |
- 'src/common/mac/file_id.h', |
- 'src/common/mac/HTTPMultipartUpload.m', |
- 'src/common/mac/macho_id.cc', |
- 'src/common/mac/macho_id.h', |
- 'src/common/mac/macho_utilities.cc', |
- 'src/common/mac/macho_utilities.h', |
- 'src/common/mac/macho_walker.cc', |
- 'src/common/mac/macho_walker.h', |
- 'src/common/mac/string_utilities.cc', |
- 'src/common/mac/string_utilities.h', |
- 'src/common/md5.cc', |
- 'src/common/md5.h', |
- 'src/common/simple_string_dictionary.cc', |
- 'src/common/simple_string_dictionary.h', |
- 'src/common/string_conversion.cc', |
- 'src/common/string_conversion.h', |
- 'src/google_breakpad/common/minidump_format.h', |
- ], |
- 'include_dirs': [ |
- 'src', |
- 'src/client/mac/Framework', |
- 'src/common/mac', |
- # For GTMLogger. |
- '<(DEPTH)/third_party/GTM', |
- '<(DEPTH)/third_party/GTM/Foundation', |
- ], |
- 'link_settings': { |
- # Build the version of GTMLogger.m in third_party rather than the |
- # one in src/common/mac because the former catches all exceptions |
- # whereas the latter lets them propagate, which can cause odd |
- # crashes. |
- 'sources': [ |
- '<(DEPTH)/third_party/GTM/Foundation/GTMLogger.h', |
- '<(DEPTH)/third_party/GTM/Foundation/GTMLogger.m', |
- ], |
- 'include_dirs': [ |
- '<(DEPTH)/third_party/GTM', |
- '<(DEPTH)/third_party/GTM/Foundation', |
- ], |
- }, |
- }, |
+ } |
], |
}], |
], |