Skip to content
Permalink
Browse files

Release 0.22

  • Loading branch information...
H0zen committed May 14, 2019
1 parent 9e81d09 commit feefa3b7bf54586cdd85f706f35de6cefe7a5007
Showing with 1,556 additions and 2,416 deletions.
  1. +48 −115 CMakeLists.txt
  2. +0 −68 cmake/FindACE.cmake
  3. +42 −0 cmake/FindDL.cmake
  4. +0 −48 cmake/FindGit.cmake
  5. +102 −87 cmake/FindMySQL.cmake
  6. +0 −213 cmake/FindOpenSSL.cmake
  7. +0 −21 cmake/FindPlatform.cmake
  8. +0 −186 cmake/FindPostgreSQL.cmake
  9. +0 −22 cmake/ImportACE.cmake
  10. +0 −39 cmake/MacroMangosSourceGroup.cmake
  11. +5 −0 cmake/MangosParams.cmake
  12. 0 cmake/{FindPCHSupport.cmake → PCHSupport.cmake}
  13. +133 −127 cmake/SetDefinitions.cmake
  14. +39 −0 cmake/StatusInfo.cmake
  15. +0 −82 cmake/VersionInfo.in
  16. +0 −25 cmake/cmake_uninstall.cmake.in
  17. +0 −107 cmake/generate_product_version.cmake
  18. +55 −0 cmake/win/VersionInfo.h.in
  19. +3 −8 cmake/{VersionResource.rc → win/VersionInfo.rc}
  20. +1 −1 dep
  21. +9 −30 src/CMakeLists.txt
  22. +0 −58 src/framework/CMakeLists.txt
  23. +1 −8 src/game/AuctionHouseBot/AuctionHouseBot.cpp
  24. +2 −1 src/game/AuctionHouseBot/ahbot.conf.dist.in
  25. +190 −87 src/game/CMakeLists.txt
  26. +12 −12 src/game/ChatCommands/Level1.cpp
  27. +5 −5 src/game/ChatCommands/Level2.cpp
  28. +1 −1 src/game/Maps/MapUpdater.cpp
  29. +2 −2 src/game/MotionGenerators/PathFinder.cpp
  30. +1 −1 src/game/Object/ObjectGuid.h
  31. +1 −1 src/game/Server/DBCStores.h
  32. +1 −1 src/game/Server/WorldSocket.cpp
  33. +1 −1 src/game/Server/WorldSocket.h
  34. +1 −1 src/game/Server/WorldSocketMgr.cpp
  35. +1 −1 src/game/Warden/Warden.cpp
  36. +1 −1 src/game/WorldHandlers/Chat.h
  37. +1 −1 src/game/WorldHandlers/MoveMap.h
  38. +1 −1 src/game/WorldHandlers/ScriptMgr.cpp
  39. +2 −2 src/game/WorldHandlers/World.cpp
  40. +3 −3 src/game/vmap/TileAssembler.h
  41. +49 −128 src/mangosd/CMakeLists.txt
  42. +2 −2 src/mangosd/mangosd.conf.dist.in
  43. +576 −143 src/modules/Bots/CMakeLists.txt
  44. +2 −1 src/modules/Bots/ahbot/AhBot.cpp
  45. +23 −21 src/modules/Bots/ahbot/AhBotConfig.cpp
  46. +1 −1 src/modules/Bots/playerbot/PlayerbotAIConfig.cpp
  47. +1 −1 src/modules/Bots/playerbot/PlayerbotAIConfig.h
  48. +4 −3 src/modules/Bots/playerbot/PlayerbotFactory.cpp
  49. +1 −1 src/modules/Bots/playerbot/RandomPlayerbotFactory.cpp
  50. +1 −1 src/modules/Bots/playerbot/RandomPlayerbotMgr.cpp
  51. +7 −6 src/modules/Bots/playerbot/strategy/actions/LootAction.cpp
  52. +3 −2 src/modules/Bots/playerbot/strategy/actions/QueryItemUsageAction.cpp
  53. +0 −10 src/modules/CMakeLists.txt
  54. +1 −1 src/modules/Eluna
  55. +1 −1 src/modules/SD3
  56. +1 −1 src/realmd
  57. +185 −50 src/shared/CMakeLists.txt
  58. +1 −1 src/shared/Common/Common.h
  59. +2 −2 src/shared/Database/Database.h
  60. +0 −11 src/shared/Database/DatabaseEnv.h
  61. +10 −5 src/shared/Database/DatabaseMysql.cpp
  62. +0 −246 src/shared/Database/DatabasePostgre.cpp
  63. +0 −85 src/shared/Database/DatabasePostgre.h
  64. +0 −36 src/shared/Database/PGSQLDelayThread.h
  65. +0 −139 src/shared/Database/QueryResultPostgre.cpp
  66. +0 −96 src/shared/Database/QueryResultPostgre.h
  67. 0 src/{framework → shared}/Dynamic/FactoryHolder.h
  68. 0 src/{framework → shared}/Dynamic/ObjectRegistry.h
  69. 0 src/{framework → shared}/GameSystem/Grid.h
  70. 0 src/{framework → shared}/GameSystem/GridLoader.h
  71. 0 src/{framework → shared}/GameSystem/GridRefManager.h
  72. 0 src/{framework → shared}/GameSystem/GridReference.h
  73. 0 src/{framework → shared}/GameSystem/NGrid.h
  74. 0 src/{framework → shared}/GameSystem/TypeContainer.h
  75. 0 src/{framework → shared}/GameSystem/TypeContainerVisitor.h
  76. +1 −1 src/shared/Log/Log.cpp
  77. +1 −5 src/{framework → shared}/Platform/CompilerDefs.h
  78. +2 −23 src/{framework → shared}/Platform/Define.h
  79. 0 src/{framework → shared}/Policies/CreationPolicy.h
  80. 0 src/{framework → shared}/Policies/ObjectLifeTime.cpp
  81. 0 src/{framework → shared}/Policies/ObjectLifeTime.h
  82. 0 src/{framework → shared}/Policies/Singleton.h
  83. 0 src/{framework → shared}/Policies/ThreadingModel.h
  84. +12 −21 src/shared/SystemConfig.h.in
  85. +1 −1 src/shared/Threading/DelayExecutor.cpp
  86. +1 −1 src/shared/Threading/DelayExecutor.h
  87. 0 src/{framework → shared}/Utilities/ByteConverter.h
  88. 0 src/{framework → shared}/Utilities/Callback.h
  89. 0 src/{framework → shared}/Utilities/EventProcessor.cpp
  90. 0 src/{framework → shared}/Utilities/EventProcessor.h
  91. 0 src/{framework → shared}/Utilities/LinkedList.h
  92. 0 src/{framework → shared}/Utilities/LinkedReference/RefManager.h
  93. 0 src/{framework → shared}/Utilities/LinkedReference/Reference.h
  94. 0 src/{framework → shared}/Utilities/TypeList.h
  95. 0 src/{framework → shared}/Utilities/UnorderedMapSet.h
  96. +1 −1 src/shared/Utilities/Util.cpp
  97. +1 −1 src/shared/revision.h
  98. +1 −1 src/tools/Extractor_projects
@@ -17,164 +17,97 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

project(MaNGOS)
cmake_minimum_required(VERSION 3.0)
cmake_minimum_required(VERSION 3.8 FATAL_ERROR)

set(MANGOS_VERSION 0.21)
set(MANGOS_EXP "CLASSIC")
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")

# Set the correct macro directory path
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
cmake_policy(SET CMP0028 NEW)
cmake_policy(SET CMP0054 NEW)
cmake_policy(SET CMP0042 NEW)
cmake_policy(SET CMP0048 NEW)
cmake_policy(SET CMP0063 NEW)

set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)

set_property(GLOBAL
PROPERTY USE_FOLDERS ON
)

#==================================================================================
# Define available cmake options below
if(WIN32)
set(CONF_DIR "" CACHE STRING "Path to the configs, can be absolute or relative.")
else()
set(CONF_DIR "etc/" CACHE STRING "Path to the configs, can be absolute or relative.")
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(USE_STORMLIB "Use StormLib for reading MPQs" OFF)
option(SCRIPT_LIB_ELUNA "Compile with support for Eluna scripts" ON)
option(SCRIPT_LIB_SD3 "Compile with support for ScriptDev3 scripts" ON)
option(PLAYERBOTS "Enable Player Bots" OFF)
option(SOAP "Enable remote access via SOAP" OFF)
# Hidden option to enable/disable PCH. DEV ONLY!
set(PCH ON)

# Print CLI helper message
option(PCH "Enable precompiled headers" OFF)
option(DEBUG "Enable debug build (only on non IDEs)" OFF)
#==================================================================================
message("")
message(
"This script builds the MaNGOS server.
Options that can be used in order to configure the process:
General:
CMAKE_INSTALL_PREFIX Path where the server should be installed to
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
USE_STORMLIB Use StormLib for reading MPQs
SOAP Enable remote access via SOAP
PCH Enable use of precompiled headers
DEBUG Debug build, only for systems without IDE (Linux, *BSD)
Scripting engines:
SCRIPT_LIB_ELUNA Compile with support for Eluna scripts
SCRIPT_LIB_SD3 Compile with support for ScriptDev3 scripts
Modules:
PLAYERBOTS Enable Player Bots
To set an option simply type -D<OPTION>=<VALUE> after 'cmake <srcs>'.
Also, you can specify the generator with -G. see 'cmake --help' for more details
For example: cmake .. -DDEBUG=1 -DCMAKE_INSTALL_PREFIX=/opt/mangos
Note: On UNIX systems, CONF_DIR is relative to the bin folder."
To set an option simply type -D<OPTION>=<VALUE> after 'cmake <srcs>'.
Also, you can specify the generator with -G. See 'cmake --help' for more details
For example: cmake .. -DCMAKE_INSTALL_PREFIX=/opt/mangos -DSCRIPT_LIB_SD3=0"
)
message("")
#==================================================================================#

# Search for and set up the needed packages
set(OPENSSL_EXPECTED_VERSION 1.1.0)

find_package(Platform REQUIRED)
find_package(Git)
find_package(PCHSupport)
find_package(OpenSSL REQUIRED)

if(ACE_USE_EXTERNAL)
find_package(ACE)
if(NOT ACE_FOUND)
message(FATAL_ERROR
"This project requires ACE installed when ACE_USE_EXTERNAL is set. Please download the ACE Micro Release Kit from http://download.dre.vanderbilt.edu/ and install it. If this script didn't find ACE and it was correctly installed please set ACE_ROOT to the correct path."
)
endif()
else()
include(cmake/ImportACE.cmake)
endif()
project(MaNGOS VERSION 0.22.0)

if(POSTGRESQL)
find_package(PostgreSQL REQUIRED)
if(DEBUG)
set(CMAKE_BUILD_TYPE Debug)
else()
find_package(MySQL REQUIRED)
set(CMAKE_BUILD_TYPE Release)
endif()

if(UNIX)
find_package(ZLIB)
find_package(BZip2)
endif()

#Include platform/compiler-specific definitions
include(${CMAKE_SOURCE_DIR}/cmake/SetDefinitions.cmake)

add_definitions(-DCLASSIC)

message(STATUS "Install server to : ${CMAKE_INSTALL_PREFIX}")
message(STATUS "Install configs to : ${CONF_INSTALL_DIR}")
if("${CONF_DIR}" STREQUAL "")
message(STATUS "Search configs from : binary directory (default)")
set(BIN_DIR ${CMAKE_INSTALL_PREFIX}/bin)
set(CONF_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/etc)
else()
message(STATUS "Search configs from : ${CONF_DIR}")
set(BIN_DIR ${CMAKE_INSTALL_PREFIX})
set(CONF_INSTALL_DIR ${CMAKE_INSTALL_PREFIX})
endif()

if(SOAP)
message(STATUS "Support for SOAP : Yes")
add_definitions(-DENABLE_SOAP)
else()
message(STATUS "Support for SOAP : No (default)")
endif()

if(SCRIPT_LIB_ELUNA)
message(STATUS "Script engine Eluna : Yes (default)")
add_definitions(-DENABLE_ELUNA)
else()
message(STATUS "Script engine Eluna : No")
endif()

if(SCRIPT_LIB_SD3)
message(STATUS "Script engine SD3 : Yes (default)")
add_definitions(-DENABLE_SD3)
else()
message(STATUS "Script engine SD3 : No")
endif()

if(PLAYERBOTS)
message(STATUS "Enable Player Bots : Yes (default)")
add_definitions(-DENABLE_PLAYERBOTS)
else()
message(STATUS "Enable Player Bots : No")
endif()
find_package(Threads REQUIRED)
find_package(MySQL REQUIRED)
find_package(OpenSSL REQUIRED)
find_package(DL REQUIRED)

if(BUILD_MANGOSD)
message(STATUS "Build main server : Yes (default)")
else()
message(STATUS "Build main server : No")
endif()
find_package(ZLIB QUIET)
find_package(BZip2 QUIET)

if(BUILD_REALMD)
message(STATUS "Build login server : Yes (default)")
else()
message(STATUS "Build login server : No")
endif()
include(${CMAKE_SOURCE_DIR}/cmake/MangosParams.cmake)
include(${CMAKE_SOURCE_DIR}/cmake/SetDefinitions.cmake)

if(BUILD_TOOLS)
message(STATUS "Build tools : Yes (default)")
else()
message(STATUS "Build tools : No")
if(PCH)
include(${CMAKE_SOURCE_DIR}/cmake/PCHSupport.cmake)
endif()

if(DEBUG)
set(CMAKE_BUILD_TYPE Debug)
message(STATUS "Build in debug-mode : Yes")
else()
set(CMAKE_BUILD_TYPE Release)
message(STATUS "Build in debug-mode : No (default)")
endif()
add_subdirectory(dep)
add_subdirectory(src)

# Add dependency path
if(BUILD_MANGOSD OR BUILD_TOOLS)
add_subdirectory(dep)
else()
add_subdirectory(dep/acelite)
endif()
include(${CMAKE_SOURCE_DIR}/cmake/StatusInfo.cmake)

# Add source path
add_subdirectory(src)

This file was deleted.

Oops, something went wrong.
@@ -0,0 +1,42 @@
# - find where dlopen and friends are located.
# DL_FOUND - system has dynamic linking interface available
# DL_INCLUDE_DIR - where dlfcn.h is located.
# DL_LIBRARY - libraries needed to use dlopen

include(CheckFunctionExists)

find_path(DL_INCLUDE_DIR NAMES dlfcn.h)
find_library(DL_LIBRARY NAMES dl)
if(DL_LIBRARY)
set(DL_FOUND TRUE)
else(DL_LIBRARY)
check_function_exists(dlopen DL_FOUND)
# If dlopen can be found without linking in dl then dlopen is part
# of libc, so don't need to link extra libs.
set(DL_LIBRARY "")
endif(DL_LIBRARY)

if(DL_FOUND)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(DL
FOUND_VAR
DL_FOUND
REQUIRED_VARS
DL_LIBRARY
DL_INCLUDE_DIR
)

mark_as_advanced(DL_INCLUDE_DIR DL_LIBRARY)
endif()

if(NOT TARGET DL::DL)
add_library(DL::DL INTERFACE IMPORTED)
if(DL_FOUND)
if (DL_LIBRARY)
set_target_properties(DL::DL PROPERTIES
INTERFACE_LINK_LIBRARIES "${DL_LIBRARY}")
endif()
set_target_properties(DL::DL PROPERTIES
INTERFACE_INCLUDE_DIRECTORIES "${DL_INCLUDE_DIR}")
endif()
endif()

This file was deleted.

Oops, something went wrong.
Oops, something went wrong.

0 comments on commit feefa3b

Please sign in to comment.
You can’t perform that action at this time.