mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-01-13 09:17:18 +00:00
feat(Cmake/Database): separate database lib from common (#5334)
* feat(Core/Database): separate databse lib from common * 1
This commit is contained in:
@@ -54,7 +54,6 @@ target_link_libraries(common
|
||||
PUBLIC
|
||||
acore-core-interface
|
||||
ace
|
||||
mysql
|
||||
g3dlib
|
||||
Detour
|
||||
sfmt
|
||||
|
||||
@@ -22,8 +22,9 @@ set(winService
|
||||
${CMAKE_SOURCE_DIR}/src/common/Platform/ServiceWin32.h)
|
||||
endif()
|
||||
|
||||
add_subdirectory(shared)
|
||||
add_subdirectory(game)
|
||||
add_subdirectory(authserver)
|
||||
add_subdirectory(database)
|
||||
add_subdirectory(game)
|
||||
add_subdirectory(shared)
|
||||
add_subdirectory(scripts)
|
||||
add_subdirectory(worldserver)
|
||||
|
||||
58
src/server/database/CMakeLists.txt
Normal file
58
src/server/database/CMakeLists.txt
Normal file
@@ -0,0 +1,58 @@
|
||||
#
|
||||
# Copyright (C) 2016+ AzerothCore <www.azerothcore.org>, released under GNU AGPL v3 license: https://github.com/azerothcore/azerothcore-wotlk/blob/master/LICENSE-AGPL3
|
||||
#
|
||||
|
||||
CollectSourceFiles(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
PRIVATE_SOURCES
|
||||
# Exclude
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/PrecompiledHeaders)
|
||||
|
||||
if(USE_COREPCH)
|
||||
set(PRIVATE_PCH_HEADER PrecompiledHeaders/databasePCH.h)
|
||||
endif()
|
||||
|
||||
# Group sources
|
||||
GroupSources(${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
||||
add_library(database
|
||||
${PRIVATE_SOURCES})
|
||||
|
||||
# Do NOT add any extra include directory unless it does not create unneeded extra dependencies,
|
||||
# and specially, not add any dependency to neither of these: shared, game, scripts
|
||||
# This way we ensure that if either a PR does that without modifying this file,
|
||||
# a compile error will be generated, either this file will be modified so it
|
||||
# is detected more easily.
|
||||
# While it is OK to include files from other libs as long as they don't require
|
||||
# linkage (enums, defines...) it is discouraged to do so unless necessary, as it will pullute
|
||||
# include_directories leading to further unnoticed dependency aditions
|
||||
# Linker Depencency requirements: common
|
||||
CollectIncludeDirectories(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
PUBLIC_INCLUDES
|
||||
# Exclude
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/PrecompiledHeaders)
|
||||
|
||||
target_include_directories(database
|
||||
PUBLIC
|
||||
${PUBLIC_INCLUDES}
|
||||
PRIVATE
|
||||
${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
||||
target_link_libraries(database
|
||||
# PRIVATE
|
||||
# acore-core-interface
|
||||
# mysql
|
||||
PUBLIC
|
||||
common
|
||||
mysql)
|
||||
|
||||
set_target_properties(database
|
||||
PROPERTIES
|
||||
FOLDER
|
||||
"server")
|
||||
|
||||
# Generate precompiled header
|
||||
if(USE_COREPCH)
|
||||
add_cxx_pch(database ${PRIVATE_PCH_HEADER})
|
||||
endif()
|
||||
@@ -9,9 +9,8 @@
|
||||
|
||||
#include "Common.h"
|
||||
#include "Log.h"
|
||||
|
||||
#include <mysql.h>
|
||||
#include <array>
|
||||
#include <mysql.h>
|
||||
|
||||
class Field
|
||||
{
|
||||
19
src/server/database/PrecompiledHeaders/databasePCH.h
Normal file
19
src/server/database/PrecompiledHeaders/databasePCH.h
Normal file
@@ -0,0 +1,19 @@
|
||||
/*
|
||||
* Copyright (C) 2016+ AzerothCore <www.azerothcore.org>, released under GNU AGPL v3 license: https://github.com/azerothcore/azerothcore-wotlk/blob/master/LICENSE-AGPL3
|
||||
*/
|
||||
|
||||
#include "Define.h"
|
||||
// #include "DatabaseEnvFwd.h"
|
||||
#include "Errors.h"
|
||||
#include "Field.h"
|
||||
#include "Log.h"
|
||||
#include "MySQLConnection.h"
|
||||
// #include "MySQLPreparedStatement.h"
|
||||
// #include "MySQLWorkaround.h"
|
||||
#include "PreparedStatement.h"
|
||||
#include "QueryResult.h"
|
||||
#include "SQLOperation.h"
|
||||
#include "Transaction.h"
|
||||
#include <mysql.h>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
@@ -24,7 +24,7 @@ target_include_directories(shared
|
||||
|
||||
target_link_libraries(shared
|
||||
PUBLIC
|
||||
common)
|
||||
database)
|
||||
|
||||
set_target_properties(shared
|
||||
PROPERTIES
|
||||
|
||||
@@ -20,8 +20,6 @@
|
||||
#include <errno.h>
|
||||
#endif
|
||||
|
||||
#include "Database/DatabaseEnv.h"
|
||||
|
||||
enum NavTerrain
|
||||
{
|
||||
NAV_EMPTY = 0x00,
|
||||
|
||||
Reference in New Issue
Block a user