hooks/CMakeLists_win-gcc.cmake

47 lines
1.6 KiB
CMake
Raw Permalink Normal View History

2024-08-29 03:36:39 +00:00
## Global settings ##
# Binaries prefix
set(CMAKE_STATIC_LIBRARY_PREFIX "")
set(CMAKE_SHARED_LIBRARY_PREFIX "")
set(CMAKE_IMPORT_LIBRARY_PREFIX "")
# Binaries output directory
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${PROJECT_SOURCE_DIR}/bin/${TOOLCHAIN_CONFIG}")
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${PROJECT_SOURCE_DIR}/bin/${TOOLCHAIN_CONFIG}")
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${PROJECT_SOURCE_DIR}/bin/${TOOLCHAIN_CONFIG}")
# Compilation profile specific
set(CMAKE_C_STANDARD 11)
set(CMAKE_CXX_STANDARD 17)
if (NOT CMAKE_BUILD_TYPE STREQUAL "Debug")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O3")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3")
endif ()
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -frtti")
# Compiler stage
add_compile_definitions(CMAKE_BUILD WINDOWS_TARGET)
add_compile_options(-Wall -Wextra -Wno-attributes -Wno-pragmas -Wno-unknown-pragmas -Wno-eof-newline -Wno-deprecated-declarations -Wenum-conversion -Wno-unused-function -Wno-unused-parameter)
add_compile_options(-fPIC)
include_directories(
lib/win_gcc/include
lib/nix_gcc/include/${TOOLCHAIN_TARGET_ARCH}
)
# Linker stage
link_directories(
"${PROJECT_SOURCE_DIR}/lib/win_gcc"
"${PROJECT_SOURCE_DIR}/lib/win_gcc/${TOOLCHAIN_TARGET_ARCH}"
"${PROJECT_SOURCE_DIR}/lib/win_gcc/${TOOLCHAIN_TARGET_ARCH}/dll"
)
## Add projects ##
# hooking support
add_subdirectory(
lib/minhook
)
# omnimix banner coloring
add_subdirectory(
src/omnimix-banner
)
# omnimix clear/combo data
add_subdirectory(
src/omnimix-dataloader
)