HyperDbg/hyperdbg/CMakeLists.txt
2026-06-20 09:28:37 +02:00

94 lines
2.4 KiB
CMake

# Code generated by Visual Studio kit, DO NOT EDIT.
cmake_minimum_required(VERSION 3.28)
project(hyperdbg C CXX)
set(CMAKE_CXX_STANDARD 23)
enable_language(ASM_MASM)
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
if(LINUX)
message(STATUS "Building on Linux")
elseif(WIN32)
message(STATUS "Building on Windows")
find_package(WDK REQUIRED)
include_directories(
"dependencies/zydis/include"
"dependencies/zydis/src"
"dependencies/zydis/dependencies/zycore/include"
)
file(GLOB ZydisSourceFiles "dependencies/zydis/src/*.c")
file(GLOB ZycoreSourceFiles "dependencies/zydis/dependencies/zycore/*.c")
set(SourceFiles
${ZydisSourceFiles}
${ZycoreSourceFiles}
# examples/ZydisWinKernel.c
)
add_definitions(
-DZYAN_NO_LIBC
-DZYDIS_NO_LIBC
-DZYCORE_STATIC_BUILD
-DZYDIS_STATIC_BUILD
)
wdk_add_library(zydisKernel
KMDF 1.15
${SourceFiles}
)
link_directories(libraries/kdserial/x64)
add_subdirectory(kdserial)
target_link_libraries(kdserial kdserialtransport kdhv kdtelemetry)
add_subdirectory(hyperlog)
link_directories(libraries/zydis/kernel)
add_subdirectory(hyperhv)
target_link_libraries(hyperhv Zycore Zydis)
add_subdirectory(hyperkd)
target_link_libraries(hyperkd hyperlog hyperhv kdserial)
endif()
#add_subdirectory(dependencies/pdbex/Source)
#add_subdirectory(symbol-parser)
#target_link_libraries(symbol-parser pdbex)
#target_link_libraries(script-engine symbol-parser)
#add_subdirectory(hyperdbg-test)
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}")
#add_subdirectory(symbol-parser)
#target_link_libraries(symbol-parser pdbex)
#add_subdirectory(script-engine)
#target_link_libraries(script-engine symbol-parser)
add_subdirectory(script-engine)
link_directories(libraries/zydis/user libraries/keystone/release-lib)
add_subdirectory(libhyperdbg)
find_package(Threads REQUIRED)
target_link_libraries(libhyperdbg Zycore Zydis script-engine keystone Threads::Threads)
add_subdirectory(hyperdbg-cli)
target_link_libraries(hyperdbg-cli libhyperdbg)
#set(save_src_dir ${CMAKE_CURRENT_SOURCE_DIR}/examples)
#execute_process( COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_CURRENT_SOURCE_DIR}/../examples ${save_src_dir})
#
#add_subdirectory(examples/kernel/hyperdbg_driver)
#target_link_libraries(hyperdbg_driver hyperlog hyperhv)
#
#
#add_subdirectory(examples/user/hyperdbg_app)
#target_link_libraries(hyperdbg_app libhyperdbg)