mirror of
https://github.com/trustedsec/LLVM-Obfuscation-Experiments
synced 2026-06-08 17:57:15 +00:00
45 lines
1.6 KiB
Plaintext
45 lines
1.6 KiB
Plaintext
cmake_minimum_required (VERSION 3.20)
|
|
|
|
MACRO(HEADER_DIRECTORIES return_list)
|
|
FILE(GLOB_RECURSE new_list /opt/winsdk/sdk/*.h /opt/winsdk/crt/*.h)
|
|
SET(dir_list "")
|
|
FOREACH(file_path ${new_list})
|
|
GET_FILENAME_COMPONENT(dir_path ${file_path} PATH)
|
|
SET(dir_list ${dir_list} ${dir_path})
|
|
ENDFOREACH()
|
|
LIST(REMOVE_DUPLICATES dir_list)
|
|
SET(${return_list} ${dir_list})
|
|
ENDMACRO()
|
|
|
|
if(NOT CACHE_KEY)
|
|
HEADER_DIRECTORIES(sdkheaders)
|
|
set(CACHE_KEY "${sdkheaders}" CACHE INTERNAL "Cached result of the macro")
|
|
else()
|
|
set(sdkheaders ${CACHE_KEY})
|
|
endif()
|
|
|
|
set(RC_INCLUDES "")
|
|
FOREACH(OPT ${sdkheaders})
|
|
set(RC_INCLUDES ${RC_INCLUDES} " -I ${OPT} ")
|
|
ENDFOREACH()
|
|
string(REPLACE ";" " " RC_INCLUDES ${RC_INCLUDES})
|
|
|
|
set(CMAKE_SYSTEM_NAME Windows)
|
|
set(CMAKE_SYSTEM_VERSION 10.0)
|
|
set(CMAKE_SYSTEM_PROCESSOR x86_64)
|
|
|
|
set(CMAKE_ASM_COMPILER "/usr/bin/llvm-ml")
|
|
set(CMAKE_MASM_COMPILER "/usr/bin/llvm-ml")
|
|
set(CMAKE_ASM_MASM_COMPILER "/usr/bin/llvm-ml")
|
|
|
|
set(CMAKE_C_COMPILER "/usr/bin/clang-cl")
|
|
set(CMAKE_CXX_COMPILER "/usr/bin/clang-cl")
|
|
set(CMAKE_RC_COMPILER "/usr/bin/llvm-rc")
|
|
set(CMAKE_MT "/usr/bin/llvm-mt")
|
|
set(CMAKE_LINKER "/usr/bin/lld-link")
|
|
set(CMAKE_C_FLAGS_INIT "/winsdkdir /opt/winsdk/sdk /vctoolsdir /opt/winsdk/crt")
|
|
set(CMAKE_CXX_FLAGS_INIT "/winsdkdir /opt/winsdk/sdk /vctoolsdir /opt/winsdk/crt")
|
|
set(CMAKE_EXE_LINKER_FLAGS_INIT "/winsdkdir:/opt/winsdk/sdk /vctoolsdir:/opt/winsdk/crt /MANIFEST:NO")
|
|
set(CMAKE_RC_FLAGS_INIT "${RC_INCLUDES}")
|
|
set(CMAKE_C_STANDARD_INCLUDE_DIRECTORIES "${sdkheaders}")
|
|
set(CMAKE_CXX_STANDARD_INCLUDE_DIRECTORIES "${sdkheaders}") |