[Cleanup] Part 7

Updated and streamlined CMake copyright header

All CMake files now follow the same structure

Todo: Possibly remove more unnecessary stuff, add some needed definitions and clean up more of the structure
This commit is contained in:
Foereaper 2015-04-12 01:52:08 +02:00
parent 6b095e39da
commit 5a5664131d
13 changed files with 267 additions and 400 deletions

View File

@ -1,5 +1,7 @@
# MaNGOS is a full featured server for World of Warcraft, supporting
# the following clients: 1.12.x, 2.4.3, 3.3.5a, 4.3.4a and 5.4.8
# #
# This code is part of MaNGOS. Contributor & Copyright details are in AUTHORS/THANKS. # Copyright (C) 2005-2015 MaNGOS project <http://getmangos.eu>
# #
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by # it under the terms of the GNU General Public License as published by
@ -14,7 +16,6 @@
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
project(MaNGOS) project(MaNGOS)
set(MANGOS_VERSION 0.21) set(MANGOS_VERSION 0.21)

View File

@ -1,10 +1,8 @@
# MaNGOS is a full featured server for World of Warcraft, supporting # MaNGOS is a full featured server for World of Warcraft, supporting
# the following clients: 1.12.x, 2.4.3, 3.2.5a, 4.2.3 and 5.4.8 # the following clients: 1.12.x, 2.4.3, 3.3.5a, 4.3.4a and 5.4.8
# #
# Copyright (C) 2005-2015 MaNGOS project <http://getmangos.eu> # Copyright (C) 2005-2015 MaNGOS project <http://getmangos.eu>
# #
# ***** BEGIN GPL LICENSE BLOCK *****
#
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by # it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or # the Free Software Foundation; either version 2 of the License, or
@ -18,47 +16,31 @@
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# ***** END GPL LICENSE BLOCK *****
#
# World of Warcraft, and all World of Warcraft or Warcraft art, images,
# and lore are copyrighted by Blizzard Entertainment, Inc.
# Needs to link against mangos_worldd.lib # Needs to link against mangos_world.lib
if(WIN32) if(WIN32)
link_directories( link_directories("${CMAKE_BINARY_DIR}/src/mangosd/${CMAKE_CFG_INTDIR}")
"${CMAKE_BINARY_DIR}/src/mangosd/${CMAKE_CFG_INTDIR}" include_directories(${CMAKE_SOURCE_DIR}/dep/include)
)
include_directories(
"${CMAKE_SOURCE_DIR}/dep/include"
)
endif() endif()
#-----------------------------------------------------------------------------
# Build the mangos framework library # Build the mangos framework library
add_subdirectory(framework) add_subdirectory(framework)
#-----------------------------------------------------------------------------
# Build the mangos shared library # Build the mangos shared library
add_subdirectory(shared) add_subdirectory(shared)
#-----------------------------------------------------------------------------
# Build the mangos game library # Build the mangos game library
add_subdirectory(game) add_subdirectory(game)
#-----------------------------------------------------------------------------
# Build the mangos realm authentication server # Build the mangos realm authentication server
add_subdirectory(realmd) add_subdirectory(realmd)
#-----------------------------------------------------------------------------
# Build the mangos world server # Build the mangos world server
add_subdirectory(mangosd) add_subdirectory(mangosd)
#-----------------------------------------------------------------------------
# Build the selected modules # Build the selected modules
add_subdirectory(modules) add_subdirectory(modules)
#-----------------------------------------------------------------------------
# If we want the tools for map/vmap/mmap extraction # If we want the tools for map/vmap/mmap extraction
if(BUILD_TOOLS) if(BUILD_TOOLS)
add_subdirectory(tools) add_subdirectory(tools)

View File

@ -1,4 +1,7 @@
# This code is part of MaNGOS. Contributor & Copyright details are in AUTHORS/THANKS. # MaNGOS is a full featured server for World of Warcraft, supporting
# the following clients: 1.12.x, 2.4.3, 3.3.5a, 4.3.4a and 5.4.8
#
# Copyright (C) 2005-2015 MaNGOS project <http://getmangos.eu>
# #
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by # it under the terms of the GNU General Public License as published by
@ -16,102 +19,40 @@
set(LIBRARY_NAME framework) set(LIBRARY_NAME framework)
set(SRC_GRP_DYNAMIC file(GLOB SRC_GRP_DYNAMIC Dynamic/*.h)
Dynamic/FactoryHolder.h source_group("Dynamic" FILES ${SRC_GRP_DYNAMIC})
Dynamic/ObjectRegistry.h
)
set(SRC_GRP_GAMESYSTEM file(GLOB SRC_GRP_GAMESYSTEM GameSystem/*.h)
GameSystem/Grid.h source_group("GameSystem" FILES ${SRC_GRP_GAMESYSTEM})
GameSystem/GridLoader.h
GameSystem/GridReference.h
GameSystem/GridRefManager.h
GameSystem/NGrid.h
GameSystem/TypeContainer.h
GameSystem/TypeContainerFunctions.h
GameSystem/TypeContainerVisitor.h
)
set(SRC_GRP_PLATFORM file(GLOB SRC_GRP_PLATFORM Platform/*.h)
Platform/CompilerDefs.h source_group("Platform" FILES ${SRC_GRP_PLATFORM})
Platform/Define.h
)
set(SRC_GRP_POLICIES file(GLOB SRC_GRP_POLICIES Policies/*.h Policies/*.cpp)
Policies/CreationPolicy.h source_group("Policies" FILES ${SRC_GRP_POLICIES})
Policies/ObjectLifeTime.cpp
Policies/ObjectLifeTime.h
Policies/Singleton.h
Policies/ThreadingModel.h
)
set(SRC_GRP_UTIL file(GLOB SRC_GRP_UTILITIES Utilities/*.h Utilities/*.cpp)
Utilities/ByteConverter.h source_group("Utilities" FILES ${SRC_GRP_UTILITIES})
Utilities/Callback.h
Utilities/EventProcessor.cpp
Utilities/EventProcessor.h
Utilities/LinkedList.h
Utilities/TypeList.h
Utilities/UnorderedMapSet.h
)
set(SRC_GRP_LINKED_REFERENCE file(GLOB SRC_GRP_LINKED_REFERENCE Utilities/LinkedReference/*.h)
Utilities/LinkedReference/Reference.h source_group("Utilities\\LinkedReference" FILES ${SRC_GRP_LINKED_REFERENCE})
Utilities/LinkedReference/RefManager.h
)
set(LIBRARY_SRCS set(LIBRARY_SRCS
${SRC_GRP_DYNAMIC} ${SRC_GRP_DYNAMIC}
${SRC_GRP_GAMESYSTEM} ${SRC_GRP_GAMESYSTEM}
${SRC_GRP_PLATFORM} ${SRC_GRP_PLATFORM}
${SRC_GRP_POLICIES} ${SRC_GRP_POLICIES}
${SRC_GRP_UTIL} ${SRC_GRP_UTILITIES}
${SRC_GRP_LINKED_REFERENCE}
)
source_group("Dynamic"
FILES
${SRC_GRP_DYNAMIC}
)
source_group("GameSystem"
FILES
${SRC_GRP_GAMESYSTEM}
)
source_group("Platform"
FILES
${SRC_GRP_PLATFORM}
)
source_group("Policies"
FILES
${SRC_GRP_POLICIES}
)
source_group("Utilities"
FILES
${SRC_GRP_UTIL}
)
source_group("Utilities\\LinkedReference"
FILES
${SRC_GRP_LINKED_REFERENCE} ${SRC_GRP_LINKED_REFERENCE}
) )
include_directories( include_directories(
"${CMAKE_CURRENT_SOURCE_DIR}" ${CMAKE_CURRENT_SOURCE_DIR}
"${ACE_INCLUDE_DIR}" ${ACE_INCLUDE_DIR}
) )
add_library(${LIBRARY_NAME} STATIC add_library(${LIBRARY_NAME} STATIC ${LIBRARY_SRCS})
${LIBRARY_SRCS}
)
if(NOT ACE_USE_EXTERNAL) if(NOT ACE_USE_EXTERNAL)
add_dependencies(${LIBRARY_NAME} ace) add_dependencies(${LIBRARY_NAME} ace)
endif() endif()
target_link_libraries(${LIBRARY_NAME}
${TBB_LIBRARIES}
)

View File

@ -1,4 +1,7 @@
# This code is part of MaNGOS. Contributor & Copyright details are in AUTHORS/THANKS. # MaNGOS is a full featured server for World of Warcraft, supporting
# the following clients: 1.12.x, 2.4.3, 3.3.5a, 4.3.4a and 5.4.8
#
# Copyright (C) 2005-2015 MaNGOS project <http://getmangos.eu>
# #
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by # it under the terms of the GNU General Public License as published by
@ -19,148 +22,102 @@ set(LIBRARY_NAME game)
add_definitions(-DDT_POLYREF64) add_definitions(-DDT_POLYREF64)
include_directories( include_directories(
"${CMAKE_CURRENT_SOURCE_DIR}" ${CMAKE_CURRENT_SOURCE_DIR}
"${CMAKE_CURRENT_SOURCE_DIR}/AuctionHouseBot" ${CMAKE_CURRENT_SOURCE_DIR}/AuctionHouseBot
"${CMAKE_CURRENT_SOURCE_DIR}/BattleGround" ${CMAKE_CURRENT_SOURCE_DIR}/BattleGround
"${CMAKE_CURRENT_SOURCE_DIR}/ChatCommands" ${CMAKE_CURRENT_SOURCE_DIR}/ChatCommands
"${CMAKE_CURRENT_SOURCE_DIR}/Maps" ${CMAKE_CURRENT_SOURCE_DIR}/Maps
"${CMAKE_CURRENT_SOURCE_DIR}/MotionGenerators" ${CMAKE_CURRENT_SOURCE_DIR}/MotionGenerators
"${CMAKE_CURRENT_SOURCE_DIR}/Object" ${CMAKE_CURRENT_SOURCE_DIR}/Object
"${CMAKE_CURRENT_SOURCE_DIR}/OutdoorPvP" ${CMAKE_CURRENT_SOURCE_DIR}/OutdoorPvP
"${CMAKE_CURRENT_SOURCE_DIR}/References" ${CMAKE_CURRENT_SOURCE_DIR}/References
"${CMAKE_CURRENT_SOURCE_DIR}/Server" ${CMAKE_CURRENT_SOURCE_DIR}/Server
"${CMAKE_CURRENT_SOURCE_DIR}/Tools" ${CMAKE_CURRENT_SOURCE_DIR}/Tools
"${CMAKE_CURRENT_SOURCE_DIR}/vmap" ${CMAKE_CURRENT_SOURCE_DIR}/vmap
"${CMAKE_CURRENT_SOURCE_DIR}/Warden" ${CMAKE_CURRENT_SOURCE_DIR}/Warden
"${CMAKE_CURRENT_SOURCE_DIR}/Warden/Modules" ${CMAKE_CURRENT_SOURCE_DIR}/Warden/Modules
"${CMAKE_CURRENT_SOURCE_DIR}/WorldHandlers" ${CMAKE_CURRENT_SOURCE_DIR}/WorldHandlers
"${CMAKE_SOURCE_DIR}/dep/g3dlite" ${CMAKE_SOURCE_DIR}/dep/g3dlite
"${CMAKE_SOURCE_DIR}/dep/zlib" ${CMAKE_SOURCE_DIR}/dep/zlib
"${CMAKE_SOURCE_DIR}/dep/recastnavigation/Detour/Include" ${CMAKE_SOURCE_DIR}/dep/recastnavigation/Detour/Include
"${CMAKE_SOURCE_DIR}/dep/recastnavigation/Detour" ${CMAKE_SOURCE_DIR}/dep/recastnavigation/Detour
"${CMAKE_SOURCE_DIR}/dep/recastnavigation/" ${CMAKE_SOURCE_DIR}/dep/recastnavigation
"${CMAKE_SOURCE_DIR}/dep/include" ${CMAKE_SOURCE_DIR}/dep/include
"${CMAKE_SOURCE_DIR}/src/shared" ${CMAKE_SOURCE_DIR}/src/shared
"${CMAKE_SOURCE_DIR}/src/shared/Auth" ${CMAKE_SOURCE_DIR}/src/shared/Auth
"${CMAKE_SOURCE_DIR}/src/shared/Config" ${CMAKE_SOURCE_DIR}/src/shared/Config
"${CMAKE_SOURCE_DIR}/src/shared/Common" ${CMAKE_SOURCE_DIR}/src/shared/Common
"${CMAKE_SOURCE_DIR}/src/shared/Database" ${CMAKE_SOURCE_DIR}/src/shared/Database
"${CMAKE_SOURCE_DIR}/src/shared/DataStores" ${CMAKE_SOURCE_DIR}/src/shared/DataStores
"${CMAKE_SOURCE_DIR}/src/shared/Utilities" ${CMAKE_SOURCE_DIR}/src/shared/Utilities
"${CMAKE_SOURCE_DIR}/src/shared/Log" ${CMAKE_SOURCE_DIR}/src/shared/Log
"${CMAKE_SOURCE_DIR}/src/shared/Threading" ${CMAKE_SOURCE_DIR}/src/shared/Threading
"${CMAKE_SOURCE_DIR}/src/framework" ${CMAKE_SOURCE_DIR}/src/framework
"${CMAKE_BINARY_DIR}/src/shared" ${CMAKE_BINARY_DIR}/src/shared
"${MYSQL_INCLUDE_DIR}" ${MYSQL_INCLUDE_DIR}
"${OPENSSL_INCLUDE_DIR}" ${OPENSSL_INCLUDE_DIR}
"${ACE_INCLUDE_DIR}" ${ACE_INCLUDE_DIR}
) )
#AH Bot group #AH Bot group
file(GLOB SRC_GRP_AHBOT AuctionHouseBot/*.cpp AuctionHouseBot/*.h) file(GLOB SRC_GRP_AHBOT AuctionHouseBot/*.cpp AuctionHouseBot/*.h)
source_group("AhBot" source_group("AhBot" FILES ${SRC_GRP_AHBOT})
FILES
${SRC_GRP_AHBOT}
)
#Battlegrounds group #Battlegrounds group
file(GLOB SRC_GRP_BATTLEGROUND BattleGround/*.cpp BattleGround/*.h) file(GLOB SRC_GRP_BATTLEGROUND BattleGround/*.cpp BattleGround/*.h)
source_group("BattleGround" source_group("BattleGround" FILES ${SRC_GRP_BATTLEGROUND})
FILES
${SRC_GRP_BATTLEGROUND}
)
#Chat Commands group #Chat Commands group
file(GLOB SRC_GRP_CHAT_COMMANDS ChatCommands/*.cpp ChatCommands/*.h) file(GLOB SRC_GRP_CHAT_COMMANDS ChatCommands/*.cpp ChatCommands/*.h)
source_group("Chat Commands" source_group("Chat Commands" FILES ${SRC_GRP_CHAT_COMMANDS})
FILES
${SRC_GRP_CHAT_COMMANDS}
)
#Map Threading group #Map Threading group
file(GLOB SRC_GRP_MAP_THREAD Maps/*.cpp Maps/*.h) file(GLOB SRC_GRP_MAP_THREAD Maps/*.cpp Maps/*.h)
source_group("Map Threading" source_group("Map Threading" FILES ${SRC_GRP_MAP_THREAD})
FILES
${SRC_GRP_MAP_THREAD}
)
#Motion Generator group #Motion Generator group
file(GLOB SRC_GRP_MOTION_GEN MotionGenerators/*.cpp MotionGenerators/*.h) file(GLOB SRC_GRP_MOTION_GEN MotionGenerators/*.cpp MotionGenerators/*.h)
source_group("Motion generators" source_group("Motion generators" FILES ${SRC_GRP_MOTION_GEN})
FILES
${SRC_GRP_MOTION_GEN}
)
#Movement group #Movement group
file(GLOB SRC_GRP_MOVEMENT movement/*.cpp movement/*.h) file(GLOB SRC_GRP_MOVEMENT movement/*.cpp movement/*.h)
source_group("Movement" source_group("Movement" FILES ${SRC_GRP_MOVEMENT})
FILES
${SRC_GRP_MOVEMENT}
)
#Object group #Object group
file(GLOB SRC_GRP_OBJECT Object/*.cpp Object/*.h) file(GLOB SRC_GRP_OBJECT Object/*.cpp Object/*.h)
source_group("Object" source_group("Object" FILES ${SRC_GRP_OBJECT})
FILES
${SRC_GRP_OBJECT}
)
#Outdoors PvP group #Outdoors PvP group
file(GLOB SRC_GRP_OUTDOOR_PVP OutdoorPvP/*.cpp OutdoorPvP/*.h) file(GLOB SRC_GRP_OUTDOOR_PVP OutdoorPvP/*.cpp OutdoorPvP/*.h)
source_group("Outdoor PvP" source_group("Outdoor PvP" FILES ${SRC_GRP_OUTDOOR_PVP})
FILES
${SRC_GRP_OUTDOOR_PVP}
)
#References group #References group
file(GLOB SRC_GRP_REFERENCES References/*.cpp References/*.h) file(GLOB SRC_GRP_REFERENCES References/*.cpp References/*.h)
source_group("References" source_group("References" FILES ${SRC_GRP_REFERENCES})
FILES
${SRC_GRP_REFERENCES}
)
#Server group #Server group
file(GLOB SRC_GRP_SERVER Server/*.cpp Server/*.h) file(GLOB SRC_GRP_SERVER Server/*.cpp Server/*.h)
source_group("Server" source_group("Server" FILES ${SRC_GRP_SERVER})
FILES
${SRC_GRP_SERVER}
)
#Tools group #Tools group
file(GLOB SRC_GRP_TOOL Tools/*.cpp Tools/*.h) file(GLOB SRC_GRP_TOOL Tools/*.cpp Tools/*.h)
source_group("Tool" source_group("Tool" FILES ${SRC_GRP_TOOL})
FILES
${SRC_GRP_TOOL}
)
#VMap group #VMap group
file(GLOB SRC_GRP_VMAPS vmap/*.cpp vmap/*.h) file(GLOB SRC_GRP_VMAPS vmap/*.cpp vmap/*.h)
source_group("vmaps" source_group("vmaps" FILES ${SRC_GRP_VMAPS})
FILES
${SRC_GRP_VMAPS}
)
#Warden group #Warden group
file(GLOB SRC_GRP_WARDEN Warden/*.cpp Warden/*.h) file(GLOB SRC_GRP_WARDEN Warden/*.cpp Warden/*.h)
source_group("Warden" source_group("Warden" FILES ${SRC_GRP_WARDEN})
FILES
${SRC_GRP_WARDEN}
)
#Warden Modules group #Warden Modules group
file(GLOB SRC_GRP_WARDEN_MODULES Warden/Modules/*.cpp Warden/Modules/*.h) file(GLOB SRC_GRP_WARDEN_MODULES Warden/Modules/*.cpp Warden/Modules/*.h)
source_group("Warden\\Modules" source_group("Warden\\Modules" FILES ${SRC_GRP_WARDEN_MODULES})
FILES
${SRC_GRP_WARDEN_MODULES}
)
#World and Handlers group #World and Handlers group
file(GLOB SRC_GRP_WORLD_HANDLERS WorldHandlers/*.cpp WorldHandlers/*.h) file(GLOB SRC_GRP_WORLD_HANDLERS WorldHandlers/*.cpp WorldHandlers/*.h)
source_group("World/Handlers" source_group("World/Handlers" FILES ${SRC_GRP_WORLD_HANDLERS})
FILES
${SRC_GRP_WORLD_HANDLERS}
)
set(LIBRARY_SRCS set(LIBRARY_SRCS
${SRC_GRP_AHBOT} ${SRC_GRP_AHBOT}
@ -183,24 +140,17 @@ set(LIBRARY_SRCS
) )
if(PCH) if(PCH)
include_directories("${CMAKE_CURRENT_BINARY_DIR}") include_directories(${CMAKE_CURRENT_BINARY_DIR})
endif() endif()
add_library(${LIBRARY_NAME} STATIC add_library(${LIBRARY_NAME} STATIC ${LIBRARY_SRCS})
${LIBRARY_SRCS}
)
target_link_libraries(${LIBRARY_NAME} target_link_libraries(${LIBRARY_NAME} shared detour)
shared
detour
)
if(UNIX) if(UNIX)
# Both systems don't have libdl and don't need them # Both systems don't have libdl and don't need them
if (NOT (CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR CMAKE_SYSTEM_NAME STREQUAL "NetBSD")) if (NOT (CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR CMAKE_SYSTEM_NAME STREQUAL "NetBSD"))
target_link_libraries(${LIBRARY_NAME} target_link_libraries(${LIBRARY_NAME} dl)
dl
)
endif() endif()
endif() endif()
@ -217,39 +167,27 @@ add_subdirectory(AuctionHouseBot)
if(PLAYERBOTS) if(PLAYERBOTS)
include_directories( include_directories(
"${CMAKE_SOURCE_DIR}/src/modules/Bots/playerbot" ${CMAKE_SOURCE_DIR}/src/modules/Bots/playerbot
"${CMAKE_SOURCE_DIR}/src/modules/Bots/ahbot" ${CMAKE_SOURCE_DIR}/src/modules/Bots/ahbot
)
target_link_libraries(${LIBRARY_NAME}
Bots
) )
target_link_libraries(${LIBRARY_NAME} Bots)
add_dependencies(${LIBRARY_NAME} Bots) add_dependencies(${LIBRARY_NAME} Bots)
endif() endif()
if(SCRIPT_LIB_SD2) if(SCRIPT_LIB_SD2)
include_directories( include_directories(${CMAKE_SOURCE_DIR}/src/modules/SD2)
"${CMAKE_SOURCE_DIR}/src/modules/SD2" target_link_libraries(${LIBRARY_NAME} mangosscript)
)
target_link_libraries(${LIBRARY_NAME}
mangosscript
)
add_dependencies(${LIBRARY_NAME} mangosscript) add_dependencies(${LIBRARY_NAME} mangosscript)
endif() endif()
#Eluna specific start
if(SCRIPT_LIB_ELUNA) if(SCRIPT_LIB_ELUNA)
include_directories( include_directories(
"${CMAKE_SOURCE_DIR}/dep/lualib" ${CMAKE_SOURCE_DIR}/dep/lualib
"${CMAKE_SOURCE_DIR}/src/modules/Eluna" ${CMAKE_SOURCE_DIR}/src/modules/Eluna
) )
list(APPEND LIBRARY_SRCS ${SRC_GRP_LUAENGINE}) list(APPEND LIBRARY_SRCS ${SRC_GRP_LUAENGINE})
target_link_libraries(${LIBRARY_NAME} LuaEngine) target_link_libraries(${LIBRARY_NAME} LuaEngine)
target_link_libraries(${LIBRARY_NAME} lualib) target_link_libraries(${LIBRARY_NAME} lualib)
add_dependencies(${LIBRARY_NAME} LuaEngine) add_dependencies(${LIBRARY_NAME} LuaEngine)
add_dependencies(${LIBRARY_NAME} lualib) add_dependencies(${LIBRARY_NAME} lualib)
endif() endif()
#Eluna specific end

View File

@ -1,4 +1,7 @@
# This code is part of MaNGOS. Contributor & Copyright details are in AUTHORS/THANKS. # MaNGOS is a full featured server for World of Warcraft, supporting
# the following clients: 1.12.x, 2.4.3, 3.3.5a, 4.3.4a and 5.4.8
#
# Copyright (C) 2005-2015 MaNGOS project <http://getmangos.eu>
# #
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by # it under the terms of the GNU General Public License as published by
@ -16,26 +19,26 @@
set(EXECUTABLE_NAME mangosd) set(EXECUTABLE_NAME mangosd)
#Command Line #Main Files
file(GLOB_RECURSE SRC_GRP_COMM Comm/*.cpp Comm/*.h) file(GLOB SRC_GRP_MAIN *.cpp *.h)
source_group("Main" FILES ${SRC_GRP_MAIN})
#Command Line Files
file(GLOB SRC_GRP_COMM Comm/*.cpp Comm/*.h)
source_group("Command Line" FILES ${SRC_GRP_COMM}) source_group("Command Line" FILES ${SRC_GRP_COMM})
#Remote Access #Remote Access Files
file(GLOB_RECURSE SRC_GRP_RA RA/*.cpp RA/*.h) file(GLOB SRC_GRP_RA RA/*.cpp RA/*.h)
source_group("Remote Access" FILES ${SRC_GRP_RA}) source_group("Remote Access" FILES ${SRC_GRP_RA})
set(EXECUTABLE_SRCS set(EXECUTABLE_SRCS
${SRC_GRP_COMM} ${SRC_GRP_COMM}
${SRC_GRP_RA} ${SRC_GRP_RA}
Main.cpp ${SRC_GRP_MAIN}
Master.cpp
Master.h
WorldRunnable.cpp
WorldRunnable.h
) )
if(SOAP) if(SOAP)
file(GLOB_RECURSE SRC_GRP_SOAP SOAP/*.cpp SOAP/*.h) file(GLOB SRC_GRP_SOAP SOAP/*.cpp SOAP/*.h)
source_group("SOAP" FILES ${SRC_GRP_SOAP}) source_group("SOAP" FILES ${SRC_GRP_SOAP})
LIST(APPEND EXECUTABLE_SRCS ${SRC_GRP_SOAP}) LIST(APPEND EXECUTABLE_SRCS ${SRC_GRP_SOAP})
endif() endif()
@ -73,8 +76,8 @@ include_directories(
if(PLAYERBOTS) if(PLAYERBOTS)
include_directories( include_directories(
"${CMAKE_SOURCE_DIR}/src/modules/Bots/playerbot" ${CMAKE_SOURCE_DIR}/src/modules/Bots/playerbot
"${CMAKE_SOURCE_DIR}/src/modules/Bots/ahbot" ${CMAKE_SOURCE_DIR}/src/modules/Bots/ahbot
) )
endif() endif()

View File

@ -1,17 +1,33 @@
#----------------------------------------------------------------------------- # MaNGOS is a full featured server for World of Warcraft, supporting
# Build the mangos script library if wished for # the following clients: 1.12.x, 2.4.3, 3.3.5a, 4.3.4a and 5.4.8
#
# Copyright (C) 2005-2015 MaNGOS project <http://getmangos.eu>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# Build the mangos script library if enabled
if(SCRIPT_LIB_SD2) if(SCRIPT_LIB_SD2)
add_subdirectory(SD2) add_subdirectory(SD2)
endif() endif()
#----------------------------------------------------------------------------- # Build the Eluna library if enabled
# Build the Eluna library if wished for
if(SCRIPT_LIB_ELUNA) if(SCRIPT_LIB_ELUNA)
add_subdirectory(Eluna) add_subdirectory(Eluna)
endif() endif()
#----------------------------------------------------------------------------- # Include Player Bots if enabled
# Include Player Bots if wished for
if(PLAYERBOTS) if(PLAYERBOTS)
add_subdirectory(Bots) add_subdirectory(Bots)
endif() endif()

View File

@ -1,5 +1,8 @@
# MaNGOS is a full featured server for World of Warcraft, supporting
# the following clients: 1.12.x, 2.4.3, 3.3.5a, 4.3.4a and 5.4.8
# #
# Copyright (C) 2005-2015 MaNGOS <http://getmangos.eu/> # Copyright (C) 2005-2015 MaNGOS project <http://getmangos.eu>
# Copyright (C) 2006-2013 ScriptDev2 project <http://www.scriptdev2.com>
# #
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by # it under the terms of the GNU General Public License as published by
@ -14,11 +17,6 @@
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# ***** END GPL LICENSE BLOCK *****
#
# World of Warcraft, and all World of Warcraft or Warcraft art, images,
# and lore are copyrighted by Blizzard Entertainment, Inc.
include(MacroMangosSourceGroup) include(MacroMangosSourceGroup)
@ -210,9 +208,7 @@ file(GLOB sources_raid_k_taq scripts/kalimdor/temple_of_ahnqiraj/*.cpp scripts/k
LIST(APPEND mangosscript_LIB_SRCS ${sources_raid_k_taq}) LIST(APPEND mangosscript_LIB_SRCS ${sources_raid_k_taq})
source_group("Kalimdor Scripts\\Raids\\Temple of AQ" FILES ${sources_raid_k_taq}) source_group("Kalimdor Scripts\\Raids\\Temple of AQ" FILES ${sources_raid_k_taq})
add_library(mangosscript STATIC add_library(mangosscript STATIC ${mangosscript_LIB_SRCS})
${mangosscript_LIB_SRCS}
)
# Generate PCH # Generate PCH
if(PCH) if(PCH)

View File

@ -1,6 +1,7 @@
# This code is part of MaNGOS. Contributor & Copyright details are in AUTHORS/THANKS. # MaNGOS is a full featured server for World of Warcraft, supporting
# the following clients: 1.12.x, 2.4.3, 3.3.5a, 4.3.4a and 5.4.8
# #
# ***** BEGIN GPL LICENSE BLOCK ***** # Copyright (C) 2005-2015 MaNGOS project <http://getmangos.eu>
# #
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by # it under the terms of the GNU General Public License as published by
@ -15,39 +16,34 @@
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# ***** END GPL LICENSE BLOCK *****
#
# World of Warcraft, and all World of Warcraft or Warcraft art, images,
# and lore are copyrighted by Blizzard Entertainment, Inc.
set(LIBRARY_NAME shared) set(LIBRARY_NAME shared)
file(GLOB_RECURSE SRC_GRP_AUTH Auth/*.cpp Auth/*.h) file(GLOB SRC_GRP_AUTH Auth/*.cpp Auth/*.h)
source_group("Auth" FILES ${SRC_GRP_AUTH}) source_group("Auth" FILES ${SRC_GRP_AUTH})
file(GLOB_RECURSE SRC_GRP_COMMON Common/*.cpp Common/*.h) file(GLOB SRC_GRP_COMMON Common/*.cpp Common/*.h)
source_group("Common" FILES ${SRC_GRP_COMMON}) source_group("Common" FILES ${SRC_GRP_COMMON})
file(GLOB_RECURSE SRC_GRP_CONFIG Config/*.cpp Config/*.h) file(GLOB SRC_GRP_CONFIG Config/*.cpp Config/*.h)
source_group("Config" FILES ${SRC_GRP_CONFIG}) source_group("Config" FILES ${SRC_GRP_CONFIG})
file(GLOB_RECURSE SRC_GRP_DATABASE Database/*.cpp Database/*.h) file(GLOB SRC_GRP_DATABASE Database/*.cpp Database/*.h)
source_group("Database" FILES ${SRC_GRP_DATABASE}) source_group("Database" FILES ${SRC_GRP_DATABASE})
file(GLOB_RECURSE SRC_GRP_DATASTORE DataStores/*.cpp DataStores/*.h) file(GLOB SRC_GRP_DATASTORE DataStores/*.cpp DataStores/*.h)
source_group("DataStores" FILES ${SRC_GRP_DATASTORE}) source_group("DataStores" FILES ${SRC_GRP_DATASTORE})
file(GLOB_RECURSE SRC_GRP_LOCKQ LockedQueue/*.cpp LockedQueue/*.h) file(GLOB SRC_GRP_LOCKQ LockedQueue/*.cpp LockedQueue/*.h)
source_group("LockedQueue" FILES ${SRC_GRP_LOCKQ}) source_group("LockedQueue" FILES ${SRC_GRP_LOCKQ})
file(GLOB_RECURSE SRC_GRP_LOG Log/*.cpp Log/*.h) file(GLOB SRC_GRP_LOG Log/*.cpp Log/*.h)
source_group("Log" FILES ${SRC_GRP_LOG}) source_group("Log" FILES ${SRC_GRP_LOG})
file(GLOB_RECURSE SRC_GRP_THREAD Threading/*.cpp Threading/*.h) file(GLOB SRC_GRP_THREAD Threading/*.cpp Threading/*.h)
source_group("Threading" FILES ${SRC_GRP_THREAD}) source_group("Threading" FILES ${SRC_GRP_THREAD})
file(GLOB_RECURSE SRC_GRP_UTIL Utilities/*.cpp Utilities/*.h) file(GLOB SRC_GRP_UTIL Utilities/*.cpp Utilities/*.h)
source_group("Utilities" FILES ${SRC_GRP_UTIL}) source_group("Utilities" FILES ${SRC_GRP_UTIL})
set(LIBRARY_SRCS set(LIBRARY_SRCS
@ -65,10 +61,10 @@ set(LIBRARY_SRCS
# OS specific files # OS specific files
if(WIN32) if(WIN32)
file(GLOB_RECURSE SRC_GRP_WIN Win/*.cpp Win/*.h) file(GLOB SRC_GRP_WIN Win/*.cpp Win/*.h)
LIST(APPEND LIBRARY_SRCS ${SRC_GRP_WIN}) LIST(APPEND LIBRARY_SRCS ${SRC_GRP_WIN})
else() else()
file(GLOB_RECURSE SRC_GRP_LINUX Linux/*.cpp Linux/*.h) file(GLOB SRC_GRP_LINUX Linux/*.cpp Linux/*.h)
LIST(APPEND LIBRARY_SRCS ${SRC_GRP_LINUX}) LIST(APPEND LIBRARY_SRCS ${SRC_GRP_LINUX})
endif() endif()
@ -89,9 +85,7 @@ endif()
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/SystemConfig.h.in" "${CMAKE_CURRENT_BINARY_DIR}/SystemConfig.h") configure_file("${CMAKE_CURRENT_SOURCE_DIR}/SystemConfig.h.in" "${CMAKE_CURRENT_BINARY_DIR}/SystemConfig.h")
add_library(${LIBRARY_NAME} STATIC add_library(${LIBRARY_NAME} STATIC ${LIBRARY_SRCS})
${LIBRARY_SRCS}
)
if(POSTGRESQL) if(POSTGRESQL)
target_link_libraries(${LIBRARY_NAME} ${PostgreSQL_LIBRARIES}) target_link_libraries(${LIBRARY_NAME} ${PostgreSQL_LIBRARIES})

View File

@ -1,5 +1,7 @@
# MaNGOS is a full featured server for World of Warcraft, supporting
# the following clients: 1.12.x, 2.4.3, 3.3.5a, 4.3.4a and 5.4.8
# #
# This code is part of MaNGOS. Contributor & Copyright details are in AUTHORS/THANKS. # Copyright (C) 2005-2015 MaNGOS project <http://getmangos.eu>
# #
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by # it under the terms of the GNU General Public License as published by
@ -14,15 +16,14 @@
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
#Used by vmap-assembler and mmap-generator #Used by vmap-assembler and mmap-generator
include_directories( include_directories(
"${CMAKE_SOURCE_DIR}/src/shared" ${CMAKE_SOURCE_DIR}/src/shared
"${CMAKE_SOURCE_DIR}/src/game/vmap/" ${CMAKE_SOURCE_DIR}/src/game/vmap
"${CMAKE_SOURCE_DIR}/dep/g3dlite/" ${CMAKE_SOURCE_DIR}/dep/g3dlite
"${CMAKE_SOURCE_DIR}/src/framework/" ${CMAKE_SOURCE_DIR}/src/framework
"${ACE_INCLUDE_DIR}" ${ACE_INCLUDE_DIR}
) )
add_definitions(-DMMAP_GENERATOR -DNO_CORE_FUNCS) add_definitions(-DMMAP_GENERATOR -DNO_CORE_FUNCS)

View File

@ -1,5 +1,7 @@
# MaNGOS is a full featured server for World of Warcraft, supporting
# the following clients: 1.12.x, 2.4.3, 3.3.5a, 4.3.4a and 5.4.8
# #
# This code is part of MaNGOS. Contributor & Copyright details are in AUTHORS/THANKS. # Copyright (C) 2005-2015 MaNGOS project <http://getmangos.eu>
# #
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by # it under the terms of the GNU General Public License as published by
@ -14,9 +16,6 @@
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
cmake_minimum_required (VERSION 2.8)
project(mmap-generator) project(mmap-generator)
@ -39,17 +38,17 @@ endif()
add_definitions(-DDT_POLYREF64) add_definitions(-DDT_POLYREF64)
include_directories( include_directories(
"${CMAKE_SOURCE_DIR}/src" ${CMAKE_SOURCE_DIR}/src
"${CMAKE_SOURCE_DIR}/src/shared" ${CMAKE_SOURCE_DIR}/src/shared
"${CMAKE_SOURCE_DIR}/src/game" ${CMAKE_SOURCE_DIR}/src/game
"${CMAKE_SOURCE_DIR}/src/game/vmap" ${CMAKE_SOURCE_DIR}/src/game/vmap
"${CMAKE_SOURCE_DIR}/dep/g3dlite" ${CMAKE_SOURCE_DIR}/dep/g3dlite
"${CMAKE_SOURCE_DIR}/dep/g3dlite/G3D" ${CMAKE_SOURCE_DIR}/dep/g3dlite/G3D
"${CMAKE_SOURCE_DIR}/src/framework" ${CMAKE_SOURCE_DIR}/src/framework
"${CMAKE_SOURCE_DIR}/src/game/WorldHandlers" ${CMAKE_SOURCE_DIR}/src/game/WorldHandlers
"${CMAKE_SOURCE_DIR}/dep/recastnavigation/Detour/Include" ${CMAKE_SOURCE_DIR}/dep/recastnavigation/Detour/Include
"${CMAKE_SOURCE_DIR}/dep/recastnavigation/Recast/Include" ${CMAKE_SOURCE_DIR}/dep/recastnavigation/Recast/Include
"${CMAKE_SOURCE_DIR}/dep/zlib" ${CMAKE_SOURCE_DIR}/dep/zlib
) )
set(SOURCES set(SOURCES

View File

@ -1,5 +1,7 @@
# MaNGOS is a full featured server for World of Warcraft, supporting
# the following clients: 1.12.x, 2.4.3, 3.3.5a, 4.3.4a and 5.4.8
# #
# This code is part of MaNGOS. Contributor & Copyright details are in AUTHORS/THANKS. # Copyright (C) 2005-2015 MaNGOS project <http://getmangos.eu>
# #
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by # it under the terms of the GNU General Public License as published by
@ -14,9 +16,6 @@
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
cmake_minimum_required (VERSION 2.8)
project(MANGOS_MAP_EXTRACTOR) project(MANGOS_MAP_EXTRACTOR)
@ -28,8 +27,8 @@ if(WIN32)
endif() endif()
include_directories( include_directories(
"${CMAKE_SOURCE_DIR}/dep/libmpq" ${CMAKE_SOURCE_DIR}/dep/libmpq
"${CMAKE_SOURCE_DIR}/dep/loadlib" ${CMAKE_SOURCE_DIR}/dep/loadlib
) )
add_executable(${EXECUTABLE_NAME} dbcfile.cpp System.cpp ${EXECUTABLE_SRCS}) add_executable(${EXECUTABLE_NAME} dbcfile.cpp System.cpp ${EXECUTABLE_SRCS})

View File

@ -1,5 +1,7 @@
# MaNGOS is a full featured server for World of Warcraft, supporting
# the following clients: 1.12.x, 2.4.3, 3.3.5a, 4.3.4a and 5.4.8
# #
# This code is part of MaNGOS. Contributor & Copyright details are in AUTHORS/THANKS. # Copyright (C) 2005-2015 MaNGOS project <http://getmangos.eu>
# #
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by # it under the terms of the GNU General Public License as published by
@ -14,26 +16,22 @@
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
cmake_minimum_required(VERSION 2.8)
project(MANGOS_VMAP_ASSEMB_IO) project(MANGOS_VMAP_ASSEMB_IO)
set(EXECUTABLE_NAME "vmap-assembler") set(EXECUTABLE_NAME "vmap-assembler")
# comment next line to disable debug mode # comment next line to disable debug mode
#TODO: These should be general, not with the -D part for windows to work too?
add_definitions("-DIOMAP_DEBUG") add_definitions("-DIOMAP_DEBUG")
add_definitions("-DNO_CORE_FUNCS") add_definitions("-DNO_CORE_FUNCS")
include_directories( include_directories(
"${CMAKE_SOURCE_DIR}/src/shared" ${CMAKE_SOURCE_DIR}/src/shared
"${CMAKE_SOURCE_DIR}/src/game/vmap/" ${CMAKE_SOURCE_DIR}/src/game/vmap
"${CMAKE_SOURCE_DIR}/dep/g3dlite/" ${CMAKE_SOURCE_DIR}/dep/g3dlite
"${CMAKE_SOURCE_DIR}/dep/g3dlite/G3D" ${CMAKE_SOURCE_DIR}/dep/g3dlite/G3D
"${CMAKE_SOURCE_DIR}/src/framework/" ${CMAKE_SOURCE_DIR}/src/framework
"${ACE_INCLUDE_DIR}" ${ACE_INCLUDE_DIR}
) )
if(WIN32) if(WIN32)

View File

@ -1,5 +1,7 @@
# MaNGOS is a full featured server for World of Warcraft, supporting
# the following clients: 1.12.x, 2.4.3, 3.3.5a, 4.3.4a and 5.4.8
# #
# This code is part of MaNGOS. Contributor & Copyright details are in AUTHORS/THANKS. # Copyright (C) 2005-2015 MaNGOS project <http://getmangos.eu>
# #
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by # it under the terms of the GNU General Public License as published by
@ -14,9 +16,6 @@
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software # along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
cmake_minimum_required (VERSION 2.8)
set(EXECUTABLE_NAME "vmap-extractor") set(EXECUTABLE_NAME "vmap-extractor")
@ -26,8 +25,8 @@ if(WIN32)
endif() endif()
include_directories( include_directories(
"${CMAKE_SOURCE_DIR}/dep/libmpq" ${CMAKE_SOURCE_DIR}/dep/libmpq
"${CMAKE_SOURCE_DIR}/dep/loadlib" ${CMAKE_SOURCE_DIR}/dep/loadlib
) )
add_executable(${EXECUTABLE_NAME} ${EXECUTABLE_SRCS} add_executable(${EXECUTABLE_NAME} ${EXECUTABLE_SRCS}