mirror of
https://github.com/SapphireServer/Sapphire.git
synced 2025-04-24 21:57:44 +00:00
Simplified some cmake logic
This commit is contained in:
parent
02dca45cfe
commit
2761a9029a
8 changed files with 52 additions and 60 deletions
|
@ -8,13 +8,17 @@ set( EXECUTABLE_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/bin )
|
||||||
set( LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin )
|
set( LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin )
|
||||||
set( EXECUTABLE_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin )
|
set( EXECUTABLE_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin )
|
||||||
|
|
||||||
set( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_SOURCE_DIR}/cmake )
|
set( CMAKE_MODULE_PATH
|
||||||
|
${CMAKE_MODULE_PATH}
|
||||||
|
${CMAKE_SOURCE_DIR}/cmake )
|
||||||
|
|
||||||
##########################################################################
|
######################################
|
||||||
# Dependencies and compiler settings
|
# Dependencies and compiler settings #
|
||||||
|
######################################
|
||||||
include( "cmake/mysql.cmake" )
|
include( "cmake/mysql.cmake" )
|
||||||
include( "cmake/compiler.cmake" )
|
include( "cmake/compiler.cmake" )
|
||||||
include( "cmake/cotire.cmake" )
|
include( "cmake/cotire.cmake" )
|
||||||
|
|
||||||
##############################
|
##############################
|
||||||
# Git #
|
# Git #
|
||||||
##############################
|
##############################
|
||||||
|
|
|
@ -1,34 +1,41 @@
|
||||||
|
|
||||||
if(UNIX)
|
if( UNIX )
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17 -fPIC")
|
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17 -fPIC" )
|
||||||
# set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m32")
|
|
||||||
else()
|
else()
|
||||||
add_definitions(-D_WIN32_WINNT=0x601)
|
add_definitions( -D_WIN32_WINNT=0x601 )
|
||||||
add_definitions(-D_CRT_SECURE_NO_WARNINGS)
|
add_definitions( -D_CRT_SECURE_NO_WARNINGS )
|
||||||
add_definitions(-DNOMINMAX)
|
add_definitions( -DNOMINMAX )
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /EHc")
|
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP")
|
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /bigobj")
|
|
||||||
set(CMAKE_CXX_STANDARD 17)
|
|
||||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
||||||
set(CMAKE_CXX_EXTENSIONS ON)
|
|
||||||
|
|
||||||
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
|
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /EHc" )
|
||||||
|
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP" )
|
||||||
|
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /bigobj" )
|
||||||
|
set( CMAKE_CXX_STANDARD 17 )
|
||||||
|
set( CMAKE_CXX_STANDARD_REQUIRED ON )
|
||||||
|
set( CMAKE_CXX_EXTENSIONS ON )
|
||||||
|
|
||||||
|
set( CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_CURRENT_SOURCE_DIR}/bin/" )
|
||||||
|
set( CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_CURRENT_SOURCE_DIR}/bin/" )
|
||||||
|
set( CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO "${CMAKE_CURRENT_SOURCE_DIR}/bin/" )
|
||||||
|
set( CMAKE_RUNTIME_OUTPUT_DIRECTORY_MINSIZEREL "${CMAKE_CURRENT_SOURCE_DIR}/bin/" )
|
||||||
|
|
||||||
|
set( VS_DEBUGGER_WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/bin/" )
|
||||||
|
|
||||||
|
if( CMAKE_BUILD_TYPE STREQUAL "Debug" )
|
||||||
# disabling SAFESEH
|
# disabling SAFESEH
|
||||||
message(STATUS "Disabling Safe Exception Handlers..")
|
message( STATUS "Disabling Safe Exception Handlers.." )
|
||||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /SAFESEH:NO")
|
set( CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /SAFESEH:NO" )
|
||||||
|
|
||||||
# edit and continue
|
# edit and continue
|
||||||
message(STATUS "Enabling Edit and Continue..")
|
message( STATUS "Enabling Edit and Continue.." )
|
||||||
add_definitions(/Zi)
|
add_definitions( /Zi )
|
||||||
|
|
||||||
# incremental linking
|
# incremental linking
|
||||||
message(STATUS "Enabling Incremental Linking..")
|
message( STATUS "Enabling Incremental Linking.." )
|
||||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /INCREMENTAL")
|
set( CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /INCREMENTAL" )
|
||||||
|
|
||||||
# enable building with multiple processes
|
# enable building with multiple processes
|
||||||
message(STATUS "Enabling Build with Multiple Processes..")
|
message( STATUS "Enabling Build with Multiple Processes.." )
|
||||||
add_definitions(/MP)
|
add_definitions( /MP )
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
|
@ -7,14 +7,6 @@ file( GLOB SERVER_SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}*.c*" )
|
||||||
|
|
||||||
add_executable( api ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES} )
|
add_executable( api ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES} )
|
||||||
|
|
||||||
set_target_properties( api PROPERTIES
|
|
||||||
RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/"
|
|
||||||
RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/"
|
|
||||||
RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/"
|
|
||||||
RUNTIME_OUTPUT_DIRECTORY_MINSIZEREL "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/"
|
|
||||||
VS_DEBUGGER_WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/"
|
|
||||||
)
|
|
||||||
|
|
||||||
target_link_libraries( api common )
|
target_link_libraries( api common )
|
||||||
if( UNIX )
|
if( UNIX )
|
||||||
target_link_libraries( api mysqlclient stdc++fs )
|
target_link_libraries( api mysqlclient stdc++fs )
|
||||||
|
|
|
@ -7,18 +7,12 @@ file( GLOB SERVER_SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}*.c*" )
|
||||||
|
|
||||||
add_executable( dbm ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES} )
|
add_executable( dbm ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES} )
|
||||||
|
|
||||||
set_target_properties( dbm PROPERTIES
|
|
||||||
RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/"
|
|
||||||
RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/"
|
|
||||||
RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/"
|
|
||||||
RUNTIME_OUTPUT_DIRECTORY_MINSIZEREL "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/"
|
|
||||||
)
|
|
||||||
|
|
||||||
target_include_directories( dbm
|
target_include_directories( dbm
|
||||||
PUBLIC
|
PUBLIC
|
||||||
"${CMAKE_CURRENT_SOURCE_DIR}/"
|
"${CMAKE_CURRENT_SOURCE_DIR}/"
|
||||||
PRIVATE
|
PRIVATE
|
||||||
"${CMAKE_CURRENT_SOURCE_DIR}/../" )
|
"${CMAKE_CURRENT_SOURCE_DIR}/../" )
|
||||||
|
|
||||||
target_link_libraries( dbm PRIVATE mysqlConnector common xivdat )
|
target_link_libraries( dbm PRIVATE mysqlConnector common xivdat )
|
||||||
if (UNIX)
|
if (UNIX)
|
||||||
target_link_libraries( dbm PRIVATE stdc++fs )
|
target_link_libraries( dbm PRIVATE stdc++fs )
|
||||||
|
|
|
@ -8,14 +8,6 @@ file( GLOB SERVER_SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}*.c*" )
|
||||||
|
|
||||||
add_executable( lobby ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES} )
|
add_executable( lobby ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES} )
|
||||||
|
|
||||||
set_target_properties( lobby
|
|
||||||
PROPERTIES
|
|
||||||
RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/"
|
|
||||||
RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/"
|
|
||||||
RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/"
|
|
||||||
RUNTIME_OUTPUT_DIRECTORY_MINSIZEREL "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/"
|
|
||||||
VS_DEBUGGER_WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/"
|
|
||||||
)
|
|
||||||
target_link_libraries( lobby
|
target_link_libraries( lobby
|
||||||
PRIVATE
|
PRIVATE
|
||||||
common
|
common
|
||||||
|
|
|
@ -10,7 +10,6 @@ set(EXECUTABLE_OUTPUT_PATH "${SCRIPT_LIB_DIR}")
|
||||||
set(LIBRARY_OUTPUT_PATH "${SCRIPT_LIB_DIR}")
|
set(LIBRARY_OUTPUT_PATH "${SCRIPT_LIB_DIR}")
|
||||||
set(RUNTIME_OUTPUT_DIRECTORY "${SCRIPT_LIB_DIR}")
|
set(RUNTIME_OUTPUT_DIRECTORY "${SCRIPT_LIB_DIR}")
|
||||||
|
|
||||||
|
|
||||||
file(GLOB children "${CMAKE_CURRENT_SOURCE_DIR}/*" )
|
file(GLOB children "${CMAKE_CURRENT_SOURCE_DIR}/*" )
|
||||||
foreach(_scriptDir ${children})
|
foreach(_scriptDir ${children})
|
||||||
get_filename_component(_name "${_scriptDir}" NAME_WE)
|
get_filename_component(_name "${_scriptDir}" NAME_WE)
|
||||||
|
|
|
@ -13,6 +13,7 @@
|
||||||
#include "subquest/gridania/SubFst002.cpp"
|
#include "subquest/gridania/SubFst002.cpp"
|
||||||
#include "subquest/gridania/SubFst003.cpp"
|
#include "subquest/gridania/SubFst003.cpp"
|
||||||
#include "subquest/gridania/SubFst004.cpp"
|
#include "subquest/gridania/SubFst004.cpp"
|
||||||
|
#include "subquest/gridania/SubFst005.cpp"
|
||||||
#include "subquest/gridania/SubFst008.cpp"
|
#include "subquest/gridania/SubFst008.cpp"
|
||||||
#include "subquest/gridania/SubFst009.cpp"
|
#include "subquest/gridania/SubFst009.cpp"
|
||||||
#include "subquest/gridania/SubFst010.cpp"
|
#include "subquest/gridania/SubFst010.cpp"
|
||||||
|
@ -25,6 +26,7 @@
|
||||||
#include "subquest/gridania/SubFst029.cpp"
|
#include "subquest/gridania/SubFst029.cpp"
|
||||||
#include "subquest/gridania/SubFst030.cpp"
|
#include "subquest/gridania/SubFst030.cpp"
|
||||||
#include "subquest/gridania/SubFst041.cpp"
|
#include "subquest/gridania/SubFst041.cpp"
|
||||||
|
#include "subquest/gridania/SubFst045.cpp"
|
||||||
#include "subquest/limsa/SubSea001.cpp"
|
#include "subquest/limsa/SubSea001.cpp"
|
||||||
#include "subquest/uldah/SubWil000.cpp"
|
#include "subquest/uldah/SubWil000.cpp"
|
||||||
#include "subquest/uldah/SubWil001.cpp"
|
#include "subquest/uldah/SubWil001.cpp"
|
||||||
|
@ -55,6 +57,7 @@ const Sapphire::ScriptAPI::ScriptObject* ptrs[] =
|
||||||
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubFst002 ),
|
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubFst002 ),
|
||||||
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubFst003 ),
|
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubFst003 ),
|
||||||
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubFst004 ),
|
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubFst004 ),
|
||||||
|
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubFst005 ),
|
||||||
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubFst008 ),
|
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubFst008 ),
|
||||||
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubFst009 ),
|
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubFst009 ),
|
||||||
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubFst010 ),
|
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubFst010 ),
|
||||||
|
@ -67,6 +70,7 @@ const Sapphire::ScriptAPI::ScriptObject* ptrs[] =
|
||||||
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubFst029 ),
|
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubFst029 ),
|
||||||
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubFst030 ),
|
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubFst030 ),
|
||||||
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubFst041 ),
|
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubFst041 ),
|
||||||
|
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubFst045 ),
|
||||||
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubSea001 ),
|
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubSea001 ),
|
||||||
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubWil000 ),
|
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubWil000 ),
|
||||||
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubWil001 ),
|
static_cast< Sapphire::ScriptAPI::ScriptObject* >( new SubWil001 ),
|
||||||
|
|
|
@ -23,19 +23,19 @@ file( GLOB SERVER_SOURCE_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
|
|
||||||
add_executable( world ${SERVER_SOURCE_FILES} )
|
add_executable( world ${SERVER_SOURCE_FILES} )
|
||||||
|
|
||||||
set_target_properties( world PROPERTIES
|
set_target_properties( world
|
||||||
|
PROPERTIES
|
||||||
ENABLE_EXPORTS ON
|
ENABLE_EXPORTS ON
|
||||||
WINDOWS_EXPORT_ALL_SYMBOLS ON
|
WINDOWS_EXPORT_ALL_SYMBOLS ON
|
||||||
RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/"
|
|
||||||
RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/"
|
|
||||||
RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/"
|
|
||||||
RUNTIME_OUTPUT_DIRECTORY_MINSIZEREL "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/"
|
|
||||||
VS_DEBUGGER_WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
target_link_libraries( world PUBLIC common )
|
target_link_libraries( world
|
||||||
target_include_directories( world PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}" )
|
PUBLIC
|
||||||
|
common )
|
||||||
|
target_include_directories( world
|
||||||
|
PUBLIC
|
||||||
|
"${CMAKE_CURRENT_SOURCE_DIR}" )
|
||||||
|
|
||||||
|
|
||||||
if( UNIX )
|
if( UNIX )
|
||||||
|
|
Loading…
Add table
Reference in a new issue