39 lines
861 B
CMake
39 lines
861 B
CMake
|
cmake_minimum_required(VERSION 3.8.0)
|
||
|
project(distorm C)
|
||
|
|
||
|
set(CMAKE_C_STANDARD 99)
|
||
|
|
||
|
if(MSVC)
|
||
|
add_compile_options(/W3 /wd4005 /wd4996 /wd4018 -D_CRT_SECURE_NO_WARNINGS -DNOMINMAX)
|
||
|
endif()
|
||
|
|
||
|
include_directories(include src)
|
||
|
|
||
|
add_library(distorm
|
||
|
src/decoder.c
|
||
|
src/distorm.c
|
||
|
src/instructions.c
|
||
|
src/insts.c
|
||
|
src/mnemonics.c
|
||
|
src/operands.c
|
||
|
src/prefix.c
|
||
|
src/textdefs.c
|
||
|
)
|
||
|
|
||
|
if(BUILD_SHARED_LIBS)
|
||
|
target_compile_definitions(distorm PRIVATE -DDISTORM_DYNAMIC=1 -DSUPPORT_64BIT_OFFSET=1)
|
||
|
else()
|
||
|
target_compile_definitions(distorm PRIVATE -DDISTORM_STATIC=1 -DSUPPORT_64BIT_OFFSET=1)
|
||
|
endif()
|
||
|
|
||
|
install(
|
||
|
TARGETS distorm
|
||
|
RUNTIME DESTINATION bin
|
||
|
LIBRARY DESTINATION lib
|
||
|
ARCHIVE DESTINATION lib
|
||
|
)
|
||
|
|
||
|
if(NOT DISABLE_INSTALL_HEADERS)
|
||
|
install(FILES include/distorm.h include/mnemonics.h DESTINATION include)
|
||
|
endif()
|