kicad/thirdparty/sentry-native/external/libunwindstack-ndk/cmake/CMakeLists.txt

104 lines
3.6 KiB
CMake
Raw Normal View History

project(unwindstack LANGUAGES C CXX ASM)
cmake_minimum_required(VERSION 3.10)
set(UNWINDSTACK_ROOT ${CMAKE_CURRENT_SOURCE_DIR}/../)
include_directories(${UNWINDSTACK_ROOT} ${UNWINDSTACK_ROOT}/include)
set(ANDROID_SOURCES
${UNWINDSTACK_ROOT}/android-base/errno_restorer.h
${UNWINDSTACK_ROOT}/android-base/file.cpp
${UNWINDSTACK_ROOT}/android-base/file.h
${UNWINDSTACK_ROOT}/android-base/log_main.h
${UNWINDSTACK_ROOT}/android-base/logging.h
${UNWINDSTACK_ROOT}/android-base/macros.h
${UNWINDSTACK_ROOT}/android-base/off64_t.h
${UNWINDSTACK_ROOT}/android-base/parseint.h
${UNWINDSTACK_ROOT}/android-base/stringprintf.cpp
${UNWINDSTACK_ROOT}/android-base/stringprintf.h
${UNWINDSTACK_ROOT}/android-base/strings.cpp
${UNWINDSTACK_ROOT}/android-base/strings.h
${UNWINDSTACK_ROOT}/android-base/threads.h
${UNWINDSTACK_ROOT}/android-base/unique_fd.h
${UNWINDSTACK_ROOT}/android-base/utf8.h
${UNWINDSTACK_ROOT}/procinfo/process_map.h
${UNWINDSTACK_ROOT}/procinfo/process.h
)
set(UNWINDSTACK_SOURCES
${UNWINDSTACK_ROOT}/ArmExidx.cpp
${UNWINDSTACK_ROOT}/ArmExidx.h
${UNWINDSTACK_ROOT}/Check.h
${UNWINDSTACK_ROOT}/DexFiles.cpp
${UNWINDSTACK_ROOT}/DwarfCfa.cpp
${UNWINDSTACK_ROOT}/DwarfCfa.h
${UNWINDSTACK_ROOT}/DwarfDebugFrame.h
${UNWINDSTACK_ROOT}/DwarfEhFrame.h
${UNWINDSTACK_ROOT}/DwarfEhFrameWithHdr.cpp
${UNWINDSTACK_ROOT}/DwarfEhFrameWithHdr.h
${UNWINDSTACK_ROOT}/DwarfEncoding.h
${UNWINDSTACK_ROOT}/DwarfMemory.cpp
${UNWINDSTACK_ROOT}/DwarfOp.cpp
${UNWINDSTACK_ROOT}/DwarfOp.h
${UNWINDSTACK_ROOT}/DwarfSection.cpp
${UNWINDSTACK_ROOT}/Elf.cpp
${UNWINDSTACK_ROOT}/ElfInterface.cpp
${UNWINDSTACK_ROOT}/ElfInterfaceArm.cpp
${UNWINDSTACK_ROOT}/ElfInterfaceArm.h
${UNWINDSTACK_ROOT}/Global.cpp
${UNWINDSTACK_ROOT}/JitDebug.cpp
${UNWINDSTACK_ROOT}/GlobalDebugImpl.h
${UNWINDSTACK_ROOT}/LogAndroid.cpp
${UNWINDSTACK_ROOT}/LogStdout.cpp
${UNWINDSTACK_ROOT}/MapInfo.cpp
${UNWINDSTACK_ROOT}/Maps.cpp
${UNWINDSTACK_ROOT}/Memory.cpp
${UNWINDSTACK_ROOT}/MemoryBuffer.h
${UNWINDSTACK_ROOT}/MemoryCache.h
${UNWINDSTACK_ROOT}/MemoryFileAtOffset.h
${UNWINDSTACK_ROOT}/MemoryLocal.h
${UNWINDSTACK_ROOT}/MemoryMte.cpp
${UNWINDSTACK_ROOT}/MemoryOffline.h
${UNWINDSTACK_ROOT}/MemoryOfflineBuffer.h
${UNWINDSTACK_ROOT}/MemoryRange.h
${UNWINDSTACK_ROOT}/MemoryRemote.h
${UNWINDSTACK_ROOT}/Regs.cpp
${UNWINDSTACK_ROOT}/RegsArm.cpp
${UNWINDSTACK_ROOT}/RegsArm64.cpp
${UNWINDSTACK_ROOT}/RegsInfo.h
${UNWINDSTACK_ROOT}/RegsX86_64.cpp
${UNWINDSTACK_ROOT}/RegsX86.cpp
${UNWINDSTACK_ROOT}/Symbols.cpp
${UNWINDSTACK_ROOT}/Symbols.h
${UNWINDSTACK_ROOT}/ThreadEntry.cpp
${UNWINDSTACK_ROOT}/ThreadEntry.h
${UNWINDSTACK_ROOT}/ThreadUnwinder.cpp
${UNWINDSTACK_ROOT}/unistdfix.h
${UNWINDSTACK_ROOT}/Unwinder.cpp
)
if(${CMAKE_SYSTEM_PROCESSOR} MATCHES arm)
elseif(${CMAKE_SYSTEM_PROCESSOR} MATCHES "amd64.*|x86_64.*|AMD64.*")
set(UNWINDSTACK_SOURCES_GETREG
${UNWINDSTACK_ROOT}/AsmGetRegsX86_64.S
)
elseif(${CMAKE_SYSTEM_PROCESSOR} MATCHES "i686.*|i386.*|x86.*")
set(UNWINDSTACK_SOURCES_GETREG
${UNWINDSTACK_ROOT}/AsmGetRegsX86.S
)
else()
add_definitions(-DEM_ARM=40)
endif()
add_library(unwindstack STATIC
${ANDROID_SOURCES}
${UNWINDSTACK_SOURCES}
${UNWINDSTACK_SOURCES_GETREG}
)
target_link_libraries(unwindstack log)
set_property(TARGET unwindstack PROPERTY CXX_STANDARD 17)
if(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
target_compile_options(unwindstack PRIVATE $<BUILD_INTERFACE:-Wno-unknown-attributes>)
endif()