From c4c83f5b58ed5c433d8251a2832aab6e46073355 Mon Sep 17 00:00:00 2001 From: Antz Date: Thu, 15 Sep 2016 00:51:25 +0100 Subject: [PATCH] [Build] Enhanced Build System Added additional build options: BUILD_MANGOSD BUILD_REALMD ALSO DECOUPLED BUILD_TOOLS All three can now be built separately from each other EasyBuild has been update to support the extra options --- CMakeLists.txt | 22 +++++++++++++++++++++- src/CMakeLists.txt | 26 ++++++++++++++++---------- win/MaNGOS_EasyBuild.exe | Bin 128000 -> 128512 bytes 3 files changed, 37 insertions(+), 11 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 9552fe9f0..a5cbfb0ad 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -46,6 +46,8 @@ endif() option(DEBUG "Debug mode (strict compile, all warnings)" OFF) option(ACE_USE_EXTERNAL "Use external ACE" OFF) option(POSTGRESQL "Use PostgreSQL instead of MySQL" OFF) +option(BUILD_MANGOSD "Build the main server" ON) +option(BUILD_REALMD "Build the login server" ON) option(BUILD_TOOLS "Build the map/vmap/mmap extractors" ON) option(SCRIPT_LIB_ELUNA "Compile with support for Eluna scripts" OFF) option(SCRIPT_LIB_SD3 "Compile with support for ScriptDev2 scripts" ON) @@ -65,6 +67,8 @@ message( CONF_DIR Path to the configs, can be absolute or relative. DEBUG Debug mode (strict compile, all warnings) ACE_USE_EXTERNAL Use external ACE + BUILD_MANGOSD Build the main server + BUILD_REALMD Build the login server BUILD_TOOLS Build the map/vmap/mmap extractors SOAP Enable remote access via SOAP Scripting engines: @@ -185,6 +189,18 @@ endif() # message(STATUS "Enable Player Bots : No") #endif() +if(BUILD_MANGOSD) + message(STATUS "Build main server : Yes (default)") +else() + message(STATUS "Build main server : No") +endif() + +if(BUILD_REALMD) + message(STATUS "Build login server : Yes (default)") +else() + message(STATUS "Build login server : No") +endif() + if(BUILD_TOOLS) message(STATUS "Build tools : Yes (default)") else() @@ -200,7 +216,11 @@ else() endif() # Add dependency path -add_subdirectory(dep) +if(BUILD_MANGOSD OR BUILD_TOOLS) + add_subdirectory(dep) +else() + add_subdirectory(dep/acelite) +endif() # Add source path add_subdirectory(src) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index b4f3582de..b5ef43fd5 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -19,8 +19,10 @@ # Needs to link against mangos_world.lib if(WIN32) - link_directories("${CMAKE_BINARY_DIR}/src/mangosd/${CMAKE_CFG_INTDIR}") - include_directories(${CMAKE_SOURCE_DIR}/dep/include) + if(BUILD_MANGOSD OR BUILD_TOOLS) + link_directories("${CMAKE_BINARY_DIR}/src/mangosd/${CMAKE_CFG_INTDIR}") + include_directories(${CMAKE_SOURCE_DIR}/dep/include) + endif() endif() # Build the mangos framework library @@ -29,17 +31,21 @@ add_subdirectory(framework) # Build the mangos shared library add_subdirectory(shared) -# Build the mangos game library -add_subdirectory(game) - # Build the mangos realm authentication server -add_subdirectory(realmd) +if(BUILD_REALMD) + add_subdirectory(realmd) +endif() -# Build the mangos world server -add_subdirectory(mangosd) +if(BUILD_MANGOSD) + # Build the mangos game library + add_subdirectory(game) -# Build the selected modules -add_subdirectory(modules) + # Build the mangos world server + add_subdirectory(mangosd) + + # Build the selected modules + add_subdirectory(modules) +endif() # If we want the tools for map/vmap/mmap extraction if(BUILD_TOOLS) diff --git a/win/MaNGOS_EasyBuild.exe b/win/MaNGOS_EasyBuild.exe index a89f44873179559bf7723dd0bdf9f4d7c3bea0ca..6abe1265beed5802e83bd8c66157bcecff44a38b 100644 GIT binary patch delta 6664 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