|
|
|
|
@@ -10,11 +10,6 @@
|
|
|
|
|
|
|
|
|
|
# Enable precompiled headers when using the GCC compiler.
|
|
|
|
|
|
|
|
|
|
if (USE_SCRIPTPCH)
|
|
|
|
|
set(scripts_STAT_PCH_HDR PrecompiledHeaders/ScriptPCH.h)
|
|
|
|
|
set(scripts_STAT_PCH_SRC PrecompiledHeaders/ScriptPCH.cpp)
|
|
|
|
|
endif ()
|
|
|
|
|
|
|
|
|
|
message(STATUS "SCRIPT PREPARATIONS")
|
|
|
|
|
|
|
|
|
|
macro(PrepareScripts name out)
|
|
|
|
|
@@ -26,130 +21,56 @@ macro(PrepareScripts name out)
|
|
|
|
|
message(STATUS " -> Prepared: ${name}")
|
|
|
|
|
endmacro(PrepareScripts)
|
|
|
|
|
|
|
|
|
|
set(scripts_STAT_SRCS
|
|
|
|
|
${scripts_STAT_SRCS}
|
|
|
|
|
../game/AI/ScriptedAI/ScriptedEscortAI.cpp
|
|
|
|
|
../game/AI/ScriptedAI/ScriptedCreature.cpp
|
|
|
|
|
../game/AI/ScriptedAI/ScriptedFollowerAI.cpp
|
|
|
|
|
../game/Maps/AreaBoundary.cpp
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
PrepareScripts(Spells scripts_STAT_SRCS)
|
|
|
|
|
PrepareScripts(Commands scripts_STAT_SRCS)
|
|
|
|
|
PrepareScripts(Spells PRIVATE_SOURCES)
|
|
|
|
|
PrepareScripts(Commands PRIVATE_SOURCES)
|
|
|
|
|
|
|
|
|
|
if(SCRIPTS)
|
|
|
|
|
PrepareScripts(Custom scripts_STAT_SRCS)
|
|
|
|
|
PrepareScripts(World scripts_STAT_SRCS)
|
|
|
|
|
PrepareScripts(OutdoorPvP scripts_STAT_SRCS)
|
|
|
|
|
PrepareScripts(EasternKingdoms scripts_STAT_SRCS)
|
|
|
|
|
PrepareScripts(Kalimdor scripts_STAT_SRCS)
|
|
|
|
|
PrepareScripts(Outland scripts_STAT_SRCS)
|
|
|
|
|
PrepareScripts(Northrend scripts_STAT_SRCS)
|
|
|
|
|
PrepareScripts(Events scripts_STAT_SRCS)
|
|
|
|
|
PrepareScripts(Pet scripts_STAT_SRCS)
|
|
|
|
|
PrepareScripts(Custom PRIVATE_SOURCES)
|
|
|
|
|
PrepareScripts(World PRIVATE_SOURCES)
|
|
|
|
|
PrepareScripts(OutdoorPvP PRIVATE_SOURCES)
|
|
|
|
|
PrepareScripts(EasternKingdoms PRIVATE_SOURCES)
|
|
|
|
|
PrepareScripts(Kalimdor PRIVATE_SOURCES)
|
|
|
|
|
PrepareScripts(Outland PRIVATE_SOURCES)
|
|
|
|
|
PrepareScripts(Northrend PRIVATE_SOURCES)
|
|
|
|
|
PrepareScripts(Events PRIVATE_SOURCES)
|
|
|
|
|
PrepareScripts(Pet PRIVATE_SOURCES)
|
|
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
message(STATUS "SCRIPT PREPARATION COMPLETE")
|
|
|
|
|
message("")
|
|
|
|
|
|
|
|
|
|
include_directories(
|
|
|
|
|
${CMAKE_SOURCE_DIR}/dep/cppformat
|
|
|
|
|
${CMAKE_SOURCE_DIR}/dep/g3dlite/include
|
|
|
|
|
${CMAKE_SOURCE_DIR}/dep/recastnavigation/Detour/Include
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/common/
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/common/Collision
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/common/Collision/Management
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/common/Collision/Maps
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/common/Collision/Models
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/common/Configuration
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/common/Debugging
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/common/Logging
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/common/Threading
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/common/Utilities
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/database/Database
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Accounts
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Achievements
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Addons
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/AI
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/AI/CoreAI
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/AI/PlayerAI
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/AI/ScriptedAI
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/AI/SmartScripts
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/AuctionHouse
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/AuctionHouseBot
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Battlefield
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Battlefield/Zones
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Battlegrounds
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Battlegrounds/Zones
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Chat
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Chat/Channels
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Combat
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Conditions
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/DataStores
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/DungeonFinding
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Entities/Corpse
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Entities/Creature
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Entities/DynamicObject
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Entities/GameObject
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Entities/Item
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Entities/Item/Container
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Entities/Object
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Entities/Object/Updates
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Entities/Pet
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Entities/Player
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Entities/Transport
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Entities/Unit
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Entities/Vehicle
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Events
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Globals
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Grids
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Grids/Cells
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Grids/Notifiers
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Groups
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Guilds
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Handlers
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Instances
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Loot
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Mails
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Maps
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Miscellaneous
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Movement
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Movement/MovementGenerators
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Movement/Spline
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Movement/Waypoints
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/OutdoorPvP
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Pools
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Quests
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Reputation
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Scripting
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Server
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Server/Protocol
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Skills
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Spells
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Spells/Auras
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Texts
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Tickets
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Tools
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Warden
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/Weather
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/game/World
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/shared
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/shared/DataStores
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/shared/Dynamic
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/shared/Dynamic/LinkedReference
|
|
|
|
|
${CMAKE_SOURCE_DIR}/src/server/shared/Packets
|
|
|
|
|
${MYSQL_INCLUDE_DIR}
|
|
|
|
|
${VALGRIND_INCLUDE_DIR}
|
|
|
|
|
)
|
|
|
|
|
list(APPEND PRIVATE_SOURCES
|
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/ScriptLoader.h
|
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/ScriptLoader.cpp)
|
|
|
|
|
|
|
|
|
|
if (USE_SCRIPTPCH)
|
|
|
|
|
set(PRIVATE_PCH_HEADER PrecompiledHeaders/ScriptPCH.h)
|
|
|
|
|
set(PRIVATE_PCH_SOURCE PrecompiledHeaders/ScriptPCH.cpp)
|
|
|
|
|
endif ()
|
|
|
|
|
|
|
|
|
|
GroupSources(${CMAKE_CURRENT_SOURCE_DIR})
|
|
|
|
|
|
|
|
|
|
add_library(scripts STATIC
|
|
|
|
|
${scripts_STAT_SRCS}
|
|
|
|
|
${scripts_STAT_PCH_SRC}
|
|
|
|
|
add_library(scripts
|
|
|
|
|
${PRIVATE_SOURCES}
|
|
|
|
|
${PRIVATE_PCH_SOURCE}
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
target_include_directories(scripts
|
|
|
|
|
PUBLIC
|
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}
|
|
|
|
|
PRIVATE
|
|
|
|
|
${CMAKE_CURRENT_BINARY_DIR})
|
|
|
|
|
|
|
|
|
|
target_link_libraries(scripts
|
|
|
|
|
PUBLIC
|
|
|
|
|
game)
|
|
|
|
|
|
|
|
|
|
set_target_properties(scripts
|
|
|
|
|
PROPERTIES
|
|
|
|
|
FOLDER
|
|
|
|
|
"server")
|
|
|
|
|
|
|
|
|
|
# Generate precompiled header
|
|
|
|
|
if (USE_SCRIPTPCH)
|
|
|
|
|
add_cxx_pch(scripts ${scripts_STAT_PCH_HDR} ${scripts_STAT_PCH_SRC})
|
|
|
|
|
add_cxx_pch(scripts ${PRIVATE_PCH_HEADER} ${PRIVATE_PCH_SOURCE})
|
|
|
|
|
endif()
|
|
|
|
|
|