forked from metin-server/m2dev-client-src
init
This commit is contained in:
55
CMakeLists.txt
Normal file
55
CMakeLists.txt
Normal file
@@ -0,0 +1,55 @@
|
||||
cmake_minimum_required(VERSION 3.19)
|
||||
|
||||
project(m2dev-client-src)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 17)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
if (MSVC)
|
||||
add_compile_options("/Zc:__cplusplus")
|
||||
add_compile_options("/Zc:preprocessor")
|
||||
endif()
|
||||
|
||||
set(CMAKE_MODULE_PATH
|
||||
${CMAKE_MODULE_PATH}
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/buildtool"
|
||||
)
|
||||
|
||||
include(Utils)
|
||||
|
||||
set(CMAKE_CONFIGURATION_TYPES "Debug;RelWithDebInfo;Release" CACHE STRING "Configurations" FORCE)
|
||||
set(CMAKE_MSVC_DEBUG_INFORMATION_FORMAT "$<$<CONFIG:Debug,RelWithDebInfo,Release>:ProgramDatabase>")
|
||||
|
||||
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
|
||||
set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
|
||||
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Zi")
|
||||
set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /DEBUG")
|
||||
|
||||
add_compile_options("$<$<CXX_COMPILER_ID:MSVC>:/utf-8>")
|
||||
add_compile_options(/MP)
|
||||
|
||||
add_compile_options(
|
||||
$<$<CXX_COMPILER_ID:MSVC>:/wd4828>
|
||||
$<$<CXX_COMPILER_ID:MSVC>:/wd4996>
|
||||
)
|
||||
|
||||
add_definitions(-DNOMINMAX)
|
||||
add_definitions(-D_CRT_SECURE_NO_WARNINGS)
|
||||
add_definitions(-DWINDOWS_IGNORE_PACKING_MISMATCH)
|
||||
|
||||
add_definitions(-DUSE_LOD)
|
||||
add_definitions(-DDUNGEON_WORK)
|
||||
add_definitions(-DBUILDING_GRANNY_STATIC)
|
||||
add_definitions(-DGRANNY_THREADED)
|
||||
|
||||
add_compile_definitions("$<$<CONFIG:Debug>:DEBUG>")
|
||||
add_compile_definitions("$<$<CONFIG:RelWithDebInfo>:_DISTRIBUTE>")
|
||||
add_compile_definitions("$<$<CONFIG:Release>:_DISTRIBUTE>")
|
||||
|
||||
include_directories("src")
|
||||
include_directories("extern/include")
|
||||
|
||||
# Add subdirectories for libraries and executables
|
||||
add_subdirectory(vendor)
|
||||
add_subdirectory(src)
|
||||
add_subdirectory(extern)
|
||||
Reference in New Issue
Block a user