Files
cpp-project-template/third_party/breakpad/CMakeLists.txt

116 lines
4.5 KiB
CMake
Raw Normal View History

2025-08-22 18:22:57 +08:00
cmake_minimum_required(VERSION 3.10)
project(
breakpad
LANGUAGES CXX
C
ASM)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
add_library(
breakpad-common STATIC
src/common/linux/breakpad_getcontext.S
src/common/dwarf_range_list_handler.cc
src/common/stabs_to_module.cc
src/common/language.cc
src/common/path_helper.cc
# src/common/windows/guid_string.cc
# src/common/windows/symbol_collector_client.cc
# src/common/windows/string_utils.cc
# src/common/windows/omap.cc
# src/common/windows/pe_util.cc
# src/common/windows/dia_util.cc
# src/common/windows/sym_upload_v2_protocol.cc
# src/common/windows/pe_source_line_writer.cc
# src/common/windows/pdb_source_line_writer.cc
# src/common/windows/http_upload.cc
src/common/convert_UTF.cc
# src/common/solaris/dump_symbols.cc
# src/common/solaris/file_id.cc
# src/common/solaris/guid_creator.cc
src/common/test_assembler.cc
src/common/long_string_dictionary.cc
src/common/md5.cc
src/common/dwarf_cu_to_module.cc
src/common/dwarf_line_to_module.cc
src/common/linux/elfutils.cc
src/common/linux/synth_elf.cc
src/common/linux/symbol_collector_client.cc
src/common/linux/linux_libc_support.cc
src/common/linux/memory_mapped_file.cc
src/common/linux/crc32.cc
src/common/linux/scoped_tmpfile.cc
src/common/linux/elf_core_dump.cc
src/common/linux/dump_symbols.cc
src/common/linux/file_id.cc
src/common/linux/guid_creator.cc
src/common/linux/scoped_pipe.cc
src/common/linux/safe_readlink.cc
src/common/linux/google_crashdump_uploader.cc
src/common/linux/libcurl_wrapper.cc
src/common/linux/elf_symbols_to_module.cc
src/common/linux/http_upload.cc
src/common/linux/symbol_upload.cc
src/common/module.cc
src/common/simple_string_dictionary.cc
src/common/dwarf/cfi_assembler.cc
src/common/dwarf/elf_reader.cc
src/common/dwarf/bytereader.cc
src/common/dwarf/functioninfo.cc
src/common/dwarf/dwarf2diehandler.cc
src/common/dwarf/dwarf2reader.cc
# src/common/mac/launch_reporter.cc
# src/common/mac/macho_utilities.cc
# src/common/mac/arch_utilities.cc
# src/common/mac/file_id.cc
# src/common/mac/string_utilities.cc
# src/common/mac/macho_reader.cc
# src/common/mac/macho_id.cc
# src/common/mac/bootstrap_compat.cc
# src/common/mac/macho_walker.cc
# src/common/mac/dump_syms.cc
src/common/string_conversion.cc
src/common/dwarf_cfi_to_module.cc
src/common/stabs_reader.cc)
add_library(
breakpad
SHARED
# src/client/windows/crash_generation/minidump_generator.cc
# src/client/windows/crash_generation/crash_generation_server.cc
# src/client/windows/crash_generation/client_info.cc
# src/client/windows/crash_generation/crash_generation_client.cc
# src/client/windows/sender/crash_report_sender.cc
# src/client/windows/handler/exception_handler.cc
# src/client/solaris/handler/minidump_generator.cc
# src/client/solaris/handler/exception_handler.cc
# src/client/solaris/handler/solaris_lwp.cc
# src/client/ios/exception_handler_no_mach.cc
src/client/linux/log/log.cc
src/client/linux/dump_writer_common/ucontext_reader.cc
src/client/linux/dump_writer_common/thread_info.cc
src/client/linux/minidump_writer/linux_ptrace_dumper.cc
src/client/linux/minidump_writer/minidump_writer.cc
src/client/linux/minidump_writer/linux_dumper.cc
src/client/linux/minidump_writer/linux_core_dumper.cc
src/client/linux/minidump_writer/pe_file.cc
src/client/linux/microdump_writer/microdump_writer.cc
src/client/linux/crash_generation/crash_generation_server.cc
src/client/linux/crash_generation/crash_generation_client.cc
# src/client/linux/sender/google_crash_report_sender.cc
src/client/linux/handler/minidump_descriptor.cc
src/client/linux/handler/exception_handler.cc
# src/client/mac/crash_generation/crash_generation_server.cc
# src/client/mac/crash_generation/crash_generation_client.cc
# src/client/mac/handler/minidump_generator.cc
# src/client/mac/handler/dynamic_images.cc
# src/client/mac/handler/protected_memory_allocator.cc
# src/client/mac/handler/breakpad_nlist_64.cc
# src/client/mac/handler/exception_handler.cc
src/client/minidump_file_writer.cc)
target_include_directories(breakpad-common PUBLIC src/)
target_link_libraries(breakpad-common PRIVATE z)
target_include_directories(breakpad PUBLIC src/)
target_link_libraries(breakpad PRIVATE breakpad-common)