reactos/dll/win32/dbghelp/CMakeLists.txt
Jérôme Gardou 493ceb7ade [CMAKE] Fix host tools build on x86-64 mingw
Dynamically check for sys/types.h and pid_t in wine config.h
Use TARGET_xxx defines instead of _X86_ as this is undefined by GCC
Add some sense in include directories management by using interface
libraries
2019-11-15 16:22:06 +01:00

91 lines
2.1 KiB
CMake

if(MSVC)
# Disable warning C4477 (printf format warnings)
add_compile_flags("/wd4477")
endif()
if(NOT CMAKE_CROSSCOMPILING)
add_definitions(-DDBGHELP_STATIC_LIB)
include_directories(
${REACTOS_SOURCE_DIR}/tools
${REACTOS_SOURCE_DIR}/sdk/include/reactos/libs/zlib)
list(APPEND SOURCE
compat.c
dbghelp.c
dwarf.c
module.c
pe_module.c
source.c
stabs.c
storage.c
symbol.c
type.c)
if(ARCH STREQUAL "i386")
list(APPEND SOURCE cpu_i386.c)
endif()
add_library(dbghelphost ${SOURCE})
target_link_libraries(dbghelphost PRIVATE host_includes)
else()
add_definitions(
-D__WINESRC__
-D_WINE
-DHAVE_ALLOCA_H
-D_IMAGEHLP_SOURCE_)
if(ARCH STREQUAL "amd64")
add_definitions(-DUNW_FLAG_NHANDLER=0 -DUNW_FLAG_EHANDLER=1 -DUNW_FLAG_UHANDLER=2 -DUNW_FLAG_CHAININFO=3)
endif()
include_directories(
BEFORE ${REACTOS_SOURCE_DIR}/sdk/include/reactos/wine
${REACTOS_SOURCE_DIR}/sdk/include/reactos/libs/zlib)
spec2def(dbghelp.dll dbghelp.spec ADD_IMPORTLIB)
list(APPEND SOURCE
coff.c
cpu_arm.c
cpu_arm64.c
cpu_i386.c
cpu_ppc.c
cpu_x86_64.c
crc32.c
dbghelp.c
dwarf.c
elf_module.c
image.c
macho_module.c
minidump.c
module.c
msc.c
path.c
pe_module.c
rosstubs.c
rsym.c
source.c
stabs.c
stack.c
storage.c
symbol.c
type.c
precomp.h)
add_library(dbghelp MODULE
${SOURCE}
version.rc
${CMAKE_CURRENT_BINARY_DIR}/dbghelp_stubs.c
${CMAKE_CURRENT_BINARY_DIR}/dbghelp.def)
set_module_type(dbghelp win32dll)
target_link_libraries(dbghelp wine ${PSEH_LIB} oldnames zlib)
add_delay_importlibs(dbghelp version)
add_importlibs(dbghelp psapi msvcrt kernel32 ntdll)
add_pch(dbghelp precomp.h SOURCE)
add_cd_file(TARGET dbghelp DESTINATION reactos/system32 FOR all)
endif()