OLD | NEW |
(Empty) | |
| 1 # Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. |
| 4 |
| 5 config("tools_config") { |
| 6 include_dirs = [ "src", "src/third_party" ] |
| 7 if (is_android) { |
| 8 defines = [ "__ANDROID__" ] |
| 9 } |
| 10 if (is_clang) { |
| 11 cflags = [ "-Wno-tautological-constant-out-of-range-compare" ] |
| 12 } |
| 13 } |
| 14 |
| 15 config("internal_config") { |
| 16 include_dirs = [ "src" ] |
| 17 defines = [] |
| 18 if (is_debug) { |
| 19 # This is needed for GTMLogger to work correctly. |
| 20 defines += [ "DEBUG" ] |
| 21 } |
| 22 if (is_android) { |
| 23 defines += [ "__ANDROID__" ] |
| 24 } |
| 25 } |
| 26 |
| 27 # minidump_stackwalk and minidump_dump are tool-type executables that do |
| 28 # not build on iOS. |
| 29 if (current_toolchain == host_toolchain && !is_win) { |
| 30 executable("minidump_stackwalk") { |
| 31 sources = [ |
| 32 "src/processor/basic_code_module.h", |
| 33 "src/processor/basic_code_modules.cc", |
| 34 "src/processor/basic_code_modules.h", |
| 35 "src/processor/basic_source_line_resolver.cc", |
| 36 "src/processor/binarystream.cc", |
| 37 "src/processor/binarystream.h", |
| 38 "src/processor/call_stack.cc", |
| 39 "src/processor/cfi_frame_info.cc", |
| 40 "src/processor/cfi_frame_info.h", |
| 41 "src/processor/disassembler_x86.cc", |
| 42 "src/processor/disassembler_x86.h", |
| 43 "src/processor/exploitability.cc", |
| 44 "src/processor/logging.cc", |
| 45 "src/processor/logging.h", |
| 46 "src/processor/minidump.cc", |
| 47 "src/processor/minidump_processor.cc", |
| 48 "src/processor/minidump_stackwalk.cc", |
| 49 "src/processor/pathname_stripper.cc", |
| 50 "src/processor/pathname_stripper.h", |
| 51 "src/processor/process_state.cc", |
| 52 "src/processor/simple_symbol_supplier.cc", |
| 53 "src/processor/simple_symbol_supplier.h", |
| 54 "src/processor/source_line_resolver_base.cc", |
| 55 "src/processor/stack_frame_cpu.cc", |
| 56 "src/processor/stack_frame_symbolizer.cc", |
| 57 "src/processor/stackwalker.cc", |
| 58 "src/processor/stackwalker_amd64.cc", |
| 59 "src/processor/stackwalker_amd64.h", |
| 60 "src/processor/stackwalker_arm.cc", |
| 61 "src/processor/stackwalker_arm.h", |
| 62 "src/processor/stackwalker_arm64.cc", |
| 63 "src/processor/stackwalker_arm64.h", |
| 64 "src/processor/stackwalker_mips.cc", |
| 65 "src/processor/stackwalker_mips.h", |
| 66 "src/processor/stackwalker_ppc.cc", |
| 67 "src/processor/stackwalker_ppc.h", |
| 68 "src/processor/stackwalker_ppc64.cc", |
| 69 "src/processor/stackwalker_ppc64.h", |
| 70 "src/processor/stackwalker_sparc.cc", |
| 71 "src/processor/stackwalker_sparc.h", |
| 72 "src/processor/stackwalker_x86.cc", |
| 73 "src/processor/stackwalker_x86.h", |
| 74 "src/processor/tokenize.cc", |
| 75 "src/processor/tokenize.h", |
| 76 # libdisasm |
| 77 "src/third_party/libdisasm/ia32_implicit.c", |
| 78 "src/third_party/libdisasm/ia32_implicit.h", |
| 79 "src/third_party/libdisasm/ia32_insn.c", |
| 80 "src/third_party/libdisasm/ia32_insn.h", |
| 81 "src/third_party/libdisasm/ia32_invariant.c", |
| 82 "src/third_party/libdisasm/ia32_invariant.h", |
| 83 "src/third_party/libdisasm/ia32_modrm.c", |
| 84 "src/third_party/libdisasm/ia32_modrm.h", |
| 85 "src/third_party/libdisasm/ia32_opcode_tables.c", |
| 86 "src/third_party/libdisasm/ia32_opcode_tables.h", |
| 87 "src/third_party/libdisasm/ia32_operand.c", |
| 88 "src/third_party/libdisasm/ia32_operand.h", |
| 89 "src/third_party/libdisasm/ia32_reg.c", |
| 90 "src/third_party/libdisasm/ia32_reg.h", |
| 91 "src/third_party/libdisasm/ia32_settings.c", |
| 92 "src/third_party/libdisasm/ia32_settings.h", |
| 93 "src/third_party/libdisasm/libdis.h", |
| 94 "src/third_party/libdisasm/qword.h", |
| 95 "src/third_party/libdisasm/x86_disasm.c", |
| 96 "src/third_party/libdisasm/x86_format.c", |
| 97 "src/third_party/libdisasm/x86_imm.c", |
| 98 "src/third_party/libdisasm/x86_imm.h", |
| 99 "src/third_party/libdisasm/x86_insn.c", |
| 100 "src/third_party/libdisasm/x86_misc.c", |
| 101 "src/third_party/libdisasm/x86_operand_list.c", |
| 102 "src/third_party/libdisasm/x86_operand_list.h", |
| 103 ] |
| 104 |
| 105 defines = [ "BPLOG_MINIMUM_SEVERITY=SEVERITY_ERROR" ] |
| 106 |
| 107 configs -= [ "//build/config/compiler:chromium_code" ] |
| 108 configs += [ "//build/config/compiler:no_chromium_code" ] |
| 109 configs += [ ":tools_config" ] |
| 110 |
| 111 # Always want these files included regardless of platform. |
| 112 set_sources_assignment_filter([]) |
| 113 sources += [ |
| 114 "src/processor/exploitability_linux.cc", |
| 115 "src/processor/exploitability_linux.h", |
| 116 "src/processor/exploitability_win.cc", |
| 117 "src/processor/exploitability_win.h", |
| 118 ] |
| 119 } |
| 120 |
| 121 executable("minidump_dump") { |
| 122 sources = [ |
| 123 "src/processor/basic_code_module.h", |
| 124 "src/processor/basic_code_modules.cc", |
| 125 "src/processor/basic_code_modules.h", |
| 126 "src/processor/logging.cc", |
| 127 "src/processor/logging.h", |
| 128 "src/processor/minidump.cc", |
| 129 "src/processor/minidump_dump.cc", |
| 130 "src/processor/pathname_stripper.cc", |
| 131 "src/processor/pathname_stripper.h", |
| 132 ] |
| 133 |
| 134 configs += [ ":tools_config" ] |
| 135 } |
| 136 } |
| 137 |
| 138 # Mac -------------------------------------------------------------------------- |
| 139 |
| 140 if (current_toolchain == host_toolchain && is_mac) { |
| 141 # TODO(GYP) This should be only 64-bit on Mac. From .gypi: |
| 142 # Like ld, dump_syms needs to operate on enough data that it may |
| 143 # actually need to be able to address more than 4GB. Use x86_64. |
| 144 # Don't worry! An x86_64 dump_syms is perfectly able to dump |
| 145 # 32-bit files. |
| 146 executable("dump_syms") { |
| 147 sources = [ |
| 148 "src/common/dwarf/bytereader.cc", |
| 149 "src/common/dwarf_cfi_to_module.cc", |
| 150 "src/common/dwarf_cu_to_module.cc", |
| 151 "src/common/dwarf/dwarf2diehandler.cc", |
| 152 "src/common/dwarf/dwarf2reader.cc", |
| 153 "src/common/dwarf_line_to_module.cc", |
| 154 "src/common/language.cc", |
| 155 "src/common/mac/arch_utilities.cc", |
| 156 "src/common/mac/arch_utilities.h", |
| 157 "src/common/mac/dump_syms.mm", |
| 158 "src/common/mac/file_id.cc", |
| 159 "src/common/mac/macho_id.cc", |
| 160 "src/common/mac/macho_reader.cc", |
| 161 "src/common/mac/macho_utilities.cc", |
| 162 "src/common/mac/macho_walker.cc", |
| 163 "src/common/md5.cc", |
| 164 "src/common/module.cc", |
| 165 "src/common/stabs_reader.cc", |
| 166 "src/common/stabs_to_module.cc", |
| 167 "src/tools/mac/dump_syms/dump_syms_tool.mm", |
| 168 ] |
| 169 |
| 170 # For src/common/stabs_reader.h. |
| 171 defines = [ "HAVE_MACH_O_NLIST_H" ] |
| 172 include_dirs = [ "src/common/mac" ] |
| 173 |
| 174 # The DWARF utilities require -funsigned-char. |
| 175 cflags = [ "-funsigned-char" ] |
| 176 |
| 177 configs += [ ":internal_config" ] |
| 178 |
| 179 configs -= [ "//build/config/compiler:chromium_code" ] |
| 180 configs += [ "//build/config/compiler:no_chromium_code" ] |
| 181 |
| 182 # dwarf2reader.cc uses dynamic_cast. |
| 183 configs -= [ "//build/config/compiler:no_rtti" ] |
| 184 configs += [ "//build/config/compiler:rtti" ] |
| 185 |
| 186 libs = [ "Foundation.framework" ] |
| 187 |
| 188 if (!is_debug) { |
| 189 # dump_syms crashes when built at -O1, -O2, and -O3. It does |
| 190 # not crash at -Os. To play it safe, dump_syms is always built |
| 191 # at -O0 until this can be sorted out. |
| 192 # http://code.google.com/p/google-breakpad/issues/detail?id=329 |
| 193 configs -= [ "//build/config/compiler:optimize" ] |
| 194 cflags += [ "-O0" ] |
| 195 } |
| 196 } |
| 197 |
| 198 executable("symupload") { |
| 199 sources = [ |
| 200 "src/common/mac/HTTPMultipartUpload.m", |
| 201 "src/tools/mac/symupload/symupload.m", |
| 202 ] |
| 203 |
| 204 libs = [ "Foundaction.framework" ] |
| 205 } |
| 206 } |
| 207 |
| 208 if (is_mac) { |
| 209 static_library("breakpad_utilities") { |
| 210 sources = [ |
| 211 "src/client/mac/handler/breakpad_nlist_64.cc", |
| 212 "src/client/mac/handler/dynamic_images.cc", |
| 213 "src/client/mac/handler/minidump_generator.cc", |
| 214 "src/client/minidump_file_writer.cc", |
| 215 "src/common/convert_UTF.c", |
| 216 "src/common/mac/MachIPC.mm", |
| 217 "src/common/mac/arch_utilities.cc", |
| 218 "src/common/mac/bootstrap_compat.cc", |
| 219 "src/common/mac/file_id.cc", |
| 220 "src/common/mac/macho_id.cc", |
| 221 "src/common/mac/macho_utilities.cc", |
| 222 "src/common/mac/macho_walker.cc", |
| 223 "src/common/mac/string_utilities.cc", |
| 224 "src/common/md5.cc", |
| 225 "src/common/simple_string_dictionary.cc", |
| 226 "src/common/string_conversion.cc", |
| 227 ] |
| 228 |
| 229 configs += [ ":internal_config" ] |
| 230 } |
| 231 |
| 232 executable("crash_inspector") { |
| 233 sources = [ |
| 234 "src/client/mac/crash_generation/ConfigFile.mm", |
| 235 "src/client/mac/crash_generation/Inspector.mm", |
| 236 "src/client/mac/crash_generation/InspectorMain.mm", |
| 237 ] |
| 238 |
| 239 # TODO(GYP): 'mac_real_dsym': 1, |
| 240 |
| 241 include_dirs = [ |
| 242 "src/client/apple/Framework", |
| 243 "src/common/mac", |
| 244 ] |
| 245 libs = [ |
| 246 "CoreServices.framework", |
| 247 "Foundation.framework", |
| 248 ] |
| 249 |
| 250 deps = [ |
| 251 ":breakpad_utilities" |
| 252 ] |
| 253 } |
| 254 |
| 255 executable("crash_report_sender") { |
| 256 # TODO(GYP) this target has some mac_bundle_resources stuff. |
| 257 } |
| 258 |
| 259 config("breakpad_config") { |
| 260 include_dirs = [ "src/client/apple/Framework" ] |
| 261 } |
| 262 |
| 263 static_library("breakpad") { |
| 264 sources = [ |
| 265 "src/client/mac/crash_generation/crash_generation_client.cc", |
| 266 "src/client/mac/crash_generation/crash_generation_client.h", |
| 267 "src/client/mac/handler/protected_memory_allocator.cc", |
| 268 "src/client/mac/handler/exception_handler.cc", |
| 269 "src/client/mac/Framework/Breakpad.mm", |
| 270 "src/client/mac/Framework/OnDemandServer.mm", |
| 271 ] |
| 272 |
| 273 configs += [ ":internal_config" ] |
| 274 direct_dependent_configs = [ ":breakpad_config" ] |
| 275 |
| 276 defines = [ "USE_PROTECTED_ALLOCATIONS=1" ] |
| 277 include_dirs = [ |
| 278 "src/client/apple/Framework", |
| 279 ] |
| 280 |
| 281 deps = [ |
| 282 ":breakpad_utilities", |
| 283 ":crash_inspector", |
| 284 ":crash_report_sender", |
| 285 ] |
| 286 } |
| 287 } |
| 288 |
| 289 if (is_linux || is_android) { |
| 290 executable("symupload") { |
| 291 sources = [ |
| 292 "src/tools/linux/symupload/sym_upload.cc", |
| 293 "src/common/linux/http_upload.cc", |
| 294 "src/common/linux/http_upload.h", |
| 295 ] |
| 296 |
| 297 include_dirs = [ |
| 298 "src", |
| 299 "src/third_party", |
| 300 ] |
| 301 |
| 302 configs += [ ":tools_config" ] |
| 303 |
| 304 libs = [ "dl" ] |
| 305 } |
| 306 } |
| 307 |
| 308 if (is_linux && current_toolchain == host_toolchain) { |
| 309 executable("dump_syms") { |
| 310 sources = [ |
| 311 "src/common/dwarf/bytereader.cc", |
| 312 "src/common/dwarf_cfi_to_module.cc", |
| 313 "src/common/dwarf_cfi_to_module.h", |
| 314 "src/common/dwarf_cu_to_module.cc", |
| 315 "src/common/dwarf_cu_to_module.h", |
| 316 "src/common/dwarf/dwarf2diehandler.cc", |
| 317 "src/common/dwarf/dwarf2reader.cc", |
| 318 "src/common/dwarf_line_to_module.cc", |
| 319 "src/common/dwarf_line_to_module.h", |
| 320 "src/common/language.cc", |
| 321 "src/common/language.h", |
| 322 "src/common/linux/crc32.cc", |
| 323 "src/common/linux/crc32.h", |
| 324 "src/common/linux/dump_symbols.cc", |
| 325 "src/common/linux/dump_symbols.h", |
| 326 "src/common/linux/elf_symbols_to_module.cc", |
| 327 "src/common/linux/elf_symbols_to_module.h", |
| 328 "src/common/linux/elfutils.cc", |
| 329 "src/common/linux/elfutils.h", |
| 330 "src/common/linux/file_id.cc", |
| 331 "src/common/linux/file_id.h", |
| 332 "src/common/linux/linux_libc_support.cc", |
| 333 "src/common/linux/linux_libc_support.h", |
| 334 "src/common/linux/memory_mapped_file.cc", |
| 335 "src/common/linux/memory_mapped_file.h", |
| 336 "src/common/linux/guid_creator.h", |
| 337 "src/common/module.cc", |
| 338 "src/common/module.h", |
| 339 "src/common/stabs_reader.cc", |
| 340 "src/common/stabs_reader.h", |
| 341 "src/common/stabs_to_module.cc", |
| 342 "src/common/stabs_to_module.h", |
| 343 "src/tools/linux/dump_syms/dump_syms.cc", |
| 344 ] |
| 345 |
| 346 # dwarf2reader.cc uses dynamic_cast. Because we don't typically |
| 347 # don't support RTTI, we enable it for this single target. Since |
| 348 # dump_syms doesn't share any object files with anything else, |
| 349 # this doesn't end up polluting Chrome itself. |
| 350 configs -= [ "//build/config/compiler:no_rtti" ] |
| 351 configs += [ "//build/config/compiler:rtti" ] |
| 352 |
| 353 # Breakpad rev 583 introduced this flag. |
| 354 # Using this define, stabs_reader.h will include a.out.h to |
| 355 # build on Linux. |
| 356 defines = [ "HAVE_A_OUT_H" ] |
| 357 |
| 358 include_dirs = [ "src" ] |
| 359 } |
| 360 |
| 361 config("breakpad_client_config") { |
| 362 if (is_android) { |
| 363 include_dirs = [ "src/common/android/include" ] |
| 364 } |
| 365 } |
| 366 |
| 367 static_library("breakpad_client") { |
| 368 sources = [ |
| 369 "src/client/linux/crash_generation/crash_generation_client.cc", |
| 370 "src/client/linux/crash_generation/crash_generation_client.h", |
| 371 "src/client/linux/handler/exception_handler.cc", |
| 372 "src/client/linux/handler/exception_handler.h", |
| 373 "src/client/linux/handler/minidump_descriptor.cc", |
| 374 "src/client/linux/handler/minidump_descriptor.h", |
| 375 "src/client/linux/log/log.cc", |
| 376 "src/client/linux/log/log.h", |
| 377 "src/client/linux/minidump_writer/cpu_set.h", |
| 378 "src/client/linux/minidump_writer/directory_reader.h", |
| 379 "src/client/linux/minidump_writer/line_reader.h", |
| 380 "src/client/linux/minidump_writer/linux_core_dumper.cc", |
| 381 "src/client/linux/minidump_writer/linux_core_dumper.h", |
| 382 "src/client/linux/minidump_writer/linux_dumper.cc", |
| 383 "src/client/linux/minidump_writer/linux_dumper.h", |
| 384 "src/client/linux/minidump_writer/linux_ptrace_dumper.cc", |
| 385 "src/client/linux/minidump_writer/linux_ptrace_dumper.h", |
| 386 "src/client/linux/minidump_writer/minidump_writer.cc", |
| 387 "src/client/linux/minidump_writer/minidump_writer.h", |
| 388 "src/client/linux/minidump_writer/proc_cpuinfo_reader.h", |
| 389 "src/client/minidump_file_writer-inl.h", |
| 390 "src/client/minidump_file_writer.cc", |
| 391 "src/client/minidump_file_writer.h", |
| 392 "src/common/convert_UTF.c", |
| 393 "src/common/convert_UTF.h", |
| 394 "src/common/linux/elf_core_dump.cc", |
| 395 "src/common/linux/elf_core_dump.h", |
| 396 "src/common/linux/elfutils.cc", |
| 397 "src/common/linux/elfutils.h", |
| 398 "src/common/linux/file_id.cc", |
| 399 "src/common/linux/file_id.h", |
| 400 "src/common/linux/google_crashdump_uploader.cc", |
| 401 "src/common/linux/google_crashdump_uploader.h", |
| 402 "src/common/linux/guid_creator.cc", |
| 403 "src/common/linux/guid_creator.h", |
| 404 "src/common/linux/libcurl_wrapper.cc", |
| 405 "src/common/linux/libcurl_wrapper.h", |
| 406 "src/common/linux/linux_libc_support.cc", |
| 407 "src/common/linux/linux_libc_support.h", |
| 408 "src/common/linux/memory_mapped_file.cc", |
| 409 "src/common/linux/memory_mapped_file.h", |
| 410 "src/common/linux/safe_readlink.cc", |
| 411 "src/common/linux/safe_readlink.h", |
| 412 "src/common/memory.h", |
| 413 "src/common/simple_string_dictionary.cc", |
| 414 "src/common/simple_string_dictionary.h", |
| 415 "src/common/string_conversion.cc", |
| 416 "src/common/string_conversion.h", |
| 417 ] |
| 418 |
| 419 direct_dependent_configs = [ ":breakpad_client_config" ] |
| 420 |
| 421 # Android NDK toolchain doesn't support -mimplicit-it=always |
| 422 if (cpu_arch == "arm" && !is_android) { |
| 423 cflags = [ "-Wa,-mimplicit-it=always" ] |
| 424 } |
| 425 if (cpu_arch == "arm" && is_chromeos) { |
| 426 # Avoid running out of registers in |
| 427 # linux_syscall_support.h:sys_clone()'s inline assembly. |
| 428 cflags = [ "-marm" ] |
| 429 } |
| 430 |
| 431 if (is_android) { |
| 432 sources += [ "src/common/android/breakpad_getcontext.S" ] |
| 433 } |
| 434 |
| 435 libs = [ "dl" ] |
| 436 |
| 437 include_dirs = [ |
| 438 ".", |
| 439 "src", |
| 440 "src/client", |
| 441 "src/third_party/linux/include", |
| 442 ] |
| 443 } |
| 444 |
| 445 static_library("breakpad_processor_support") { |
| 446 sources = [ |
| 447 "src/common/scoped_ptr.h", |
| 448 "src/processor/basic_code_modules.cc", |
| 449 "src/processor/basic_code_modules.h", |
| 450 "src/processor/logging.cc", |
| 451 "src/processor/logging.h", |
| 452 "src/processor/minidump.cc", |
| 453 "src/processor/pathname_stripper.cc", |
| 454 "src/processor/pathname_stripper.h", |
| 455 ] |
| 456 |
| 457 include_dirs = [ |
| 458 "src", |
| 459 "src/client", |
| 460 "src/third_party/linux/include", |
| 461 ".", |
| 462 ] |
| 463 } |
| 464 |
| 465 executable("breakpad_unittests") { |
| 466 sources = [ |
| 467 "linux/breakpad_googletest_includes.h", |
| 468 "src/client/linux/handler/exception_handler_unittest.cc", |
| 469 "src/client/linux/minidump_writer/cpu_set_unittest.cc", |
| 470 "src/client/linux/minidump_writer/directory_reader_unittest.cc", |
| 471 "src/client/linux/minidump_writer/line_reader_unittest.cc", |
| 472 "src/client/linux/minidump_writer/linux_core_dumper_unittest.cc", |
| 473 "src/client/linux/minidump_writer/linux_ptrace_dumper_unittest.cc", |
| 474 "src/client/linux/minidump_writer/minidump_writer_unittest.cc", |
| 475 "src/client/linux/minidump_writer/minidump_writer_unittest_utils.cc", |
| 476 "src/client/linux/minidump_writer/proc_cpuinfo_reader_unittest.cc", |
| 477 "src/common/linux/elf_core_dump_unittest.cc", |
| 478 "src/common/linux/file_id_unittest.cc", |
| 479 "src/common/linux/linux_libc_support_unittest.cc", |
| 480 "src/common/linux/synth_elf.cc", |
| 481 "src/common/linux/tests/auto_testfile.h", |
| 482 "src/common/linux/tests/crash_generator.cc", |
| 483 "src/common/linux/tests/crash_generator.h", |
| 484 "src/common/memory_range.h", |
| 485 "src/common/memory_unittest.cc", |
| 486 "src/common/simple_string_dictionary_unittest.cc", |
| 487 "src/common/test_assembler.cc", |
| 488 "src/common/tests/file_utils.cc", |
| 489 "src/common/tests/file_utils.h", |
| 490 "src/tools/linux/md2core/minidump_memory_range.h", |
| 491 "src/tools/linux/md2core/minidump_memory_range_unittest.cc", |
| 492 ] |
| 493 |
| 494 deps = [ |
| 495 ":breakpad_client", |
| 496 ":breakpad_processor_support", |
| 497 ":linux_dumper_unittest_helper", |
| 498 "//testing/gtest", |
| 499 "//testing/gtest:gtest_main", |
| 500 "//testing/gmock", |
| 501 ] |
| 502 |
| 503 include_dirs = [ |
| 504 "linux", # Use our copy of breakpad_googletest_includes.h |
| 505 "src", |
| 506 ".", |
| 507 ] |
| 508 |
| 509 # There are some warnings in this code. |
| 510 configs -= [ "//build/config/compiler:chromium_code" ] |
| 511 configs += [ "//build/config/compiler:no_chromium_code" ] |
| 512 |
| 513 if (is_clang) { |
| 514 # See http://crbug.com/138571#c18 |
| 515 cflags += [ "-Wno-unused-value" ] |
| 516 } |
| 517 |
| 518 |
| 519 if (is_android) { |
| 520 sources += [ "src/common/android/breakpad_getcontext_unittest.cc" ] |
| 521 libs = [ "log" ] |
| 522 include_dirs = [ "src/common/android/include" ] |
| 523 } |
| 524 } |
| 525 |
| 526 executable("linux_dumper_unittest_helper") { |
| 527 sources = [ |
| 528 "src/client/linux/minidump_writer/linux_dumper_unittest_helper.cc", |
| 529 ] |
| 530 deps = [ |
| 531 ":breakpad_processor_support", |
| 532 ] |
| 533 |
| 534 include_dirs = [ |
| 535 "src", |
| 536 ] |
| 537 |
| 538 if (cpu_arch == "mipsel" && is_android) { |
| 539 include_dirs += [ "src/common/android/include" ] |
| 540 } |
| 541 } |
| 542 |
| 543 |
| 544 executable("generate_test_dump") { |
| 545 sources = [ |
| 546 "linux/generate-test-dump.cc", |
| 547 ] |
| 548 |
| 549 # This file has an unused variable warning. |
| 550 cflags = [ "-Wno-unused-variable" ] |
| 551 |
| 552 deps = [ ":breakpad_client" ] |
| 553 |
| 554 include_dirs = [ "src" ] |
| 555 |
| 556 if (is_android) { |
| 557 libs = [ "log" ] |
| 558 include_dirs += [ "src/common/android/include" ] |
| 559 } |
| 560 } |
| 561 |
| 562 executable("minidump-2-core") { |
| 563 sources = [ "src/tools/linux/md2core/minidump-2-core.cc" ] |
| 564 |
| 565 include_dirs = [ "src" ] |
| 566 |
| 567 deps = [ ":breakpad_client" ] |
| 568 } |
| 569 |
| 570 executable("core-2-minidump") { |
| 571 sources = [ |
| 572 "src/tools/linux/core2md/core2md.cc", |
| 573 ] |
| 574 |
| 575 deps = [ |
| 576 ":breakpad_client", |
| 577 ] |
| 578 |
| 579 include_dirs = [ "src" ] |
| 580 } |
| 581 } |
| 582 |
| 583 if (is_ios) { |
| 584 static_library("breakpad_client") { |
| 585 sources = [ |
| 586 "src/client/ios/Breakpad.h", |
| 587 "src/client/ios/Breakpad.mm", |
| 588 "src/client/ios/BreakpadController.h", |
| 589 "src/client/ios/BreakpadController.mm", |
| 590 "src/client/ios/handler/ios_exception_minidump_generator.mm", |
| 591 "src/client/ios/handler/ios_exception_minidump_generator.h", |
| 592 "src/client/mac/crash_generation/ConfigFile.h", |
| 593 "src/client/mac/crash_generation/ConfigFile.mm", |
| 594 "src/client/mac/handler/breakpad_nlist_64.cc", |
| 595 "src/client/mac/handler/breakpad_nlist_64.h", |
| 596 "src/client/mac/handler/dynamic_images.cc", |
| 597 "src/client/mac/handler/dynamic_images.h", |
| 598 "src/client/mac/handler/protected_memory_allocator.cc", |
| 599 "src/client/mac/handler/protected_memory_allocator.h", |
| 600 "src/client/mac/handler/exception_handler.cc", |
| 601 "src/client/mac/handler/exception_handler.h", |
| 602 "src/client/mac/handler/minidump_generator.cc", |
| 603 "src/client/mac/handler/minidump_generator.h", |
| 604 "src/client/mac/sender/uploader.h", |
| 605 "src/client/mac/sender/uploader.mm", |
| 606 "src/client/minidump_file_writer.cc", |
| 607 "src/client/minidump_file_writer.h", |
| 608 "src/client/minidump_file_writer-inl.h", |
| 609 "src/common/convert_UTF.c", |
| 610 "src/common/convert_UTF.h", |
| 611 "src/common/mac/file_id.cc", |
| 612 "src/common/mac/file_id.h", |
| 613 "src/common/mac/HTTPMultipartUpload.m", |
| 614 "src/common/mac/macho_id.cc", |
| 615 "src/common/mac/macho_id.h", |
| 616 "src/common/mac/macho_utilities.cc", |
| 617 "src/common/mac/macho_utilities.h", |
| 618 "src/common/mac/macho_walker.cc", |
| 619 "src/common/mac/macho_walker.h", |
| 620 "src/common/mac/string_utilities.cc", |
| 621 "src/common/mac/string_utilities.h", |
| 622 "src/common/md5.cc", |
| 623 "src/common/md5.h", |
| 624 "src/common/simple_string_dictionary.cc", |
| 625 "src/common/simple_string_dictionary.h", |
| 626 "src/common/string_conversion.cc", |
| 627 "src/common/string_conversion.h", |
| 628 "src/google_breakpad/common/minidump_format.h", |
| 629 ] |
| 630 |
| 631 include_dirs = [ |
| 632 "src", |
| 633 "src/client/mac/Framework", |
| 634 "src/common/mac", |
| 635 ] |
| 636 } |
| 637 |
| 638 # TODO(GYP) There is some XCode-only targets like ninja-breakpad. |
| 639 } |
OLD | NEW |