mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-16 07:30:42 +01:00
Buildsystem: Minor PCH building changes
* *PCH.cpp are now only compiled with MSVC, other compilers use custom helper commands to generate the precompiled header * Don't call the linker for pch helpertargets
This commit is contained in:
@@ -78,7 +78,7 @@ FUNCTION(GENERATE_CXX_PCH_COMMAND TARGET_NAME_LIST INCLUDE_FLAGS IN PCH_SRC OUT)
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${OUT}
|
||||
COMMAND ${CMAKE_CXX_COMPILER}
|
||||
ARGS ${DEFINITION_FLAGS} ${COMPILE_FLAGS} ${INCLUDE_FLAGS} -x c++-header ${IN} -o ${OUT}
|
||||
ARGS ${DEFINITION_FLAGS} ${COMPILE_FLAGS} ${INCLUDE_FLAGS} -x c++-header -c ${IN} -o ${OUT}
|
||||
DEPENDS ${IN} ${PCH_SRC_N}_dephelp
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
)
|
||||
|
||||
@@ -26,6 +26,9 @@ list(APPEND PRIVATE_SOURCES
|
||||
if (USE_COREPCH)
|
||||
set(PRIVATE_PCH_HEADER PrecompiledHeaders/commonPCH.h)
|
||||
set(PRIVATE_PCH_SOURCE PrecompiledHeaders/commonPCH.cpp)
|
||||
if (MSVC)
|
||||
list(INSERT PRIVATE_SOURCES 0 PrecompiledHeaders/commonPCH.cpp)
|
||||
endif (MSVC)
|
||||
endif (USE_COREPCH)
|
||||
|
||||
GroupSources(${CMAKE_CURRENT_SOURCE_DIR})
|
||||
@@ -33,7 +36,6 @@ GroupSources(${CMAKE_CURRENT_SOURCE_DIR})
|
||||
add_definitions(-DTRINITY_API_EXPORT_COMMON)
|
||||
|
||||
add_library(common
|
||||
${PRIVATE_PCH_SOURCE}
|
||||
${PRIVATE_SOURCES}
|
||||
)
|
||||
|
||||
|
||||
@@ -26,12 +26,14 @@ endif()
|
||||
if (USE_COREPCH)
|
||||
set(PRIVATE_PCH_HEADER PrecompiledHeaders/bnetPCH.h)
|
||||
set(PRIVATE_PCH_SOURCE PrecompiledHeaders/bnetPCH.cpp)
|
||||
if (MSVC)
|
||||
list(INSERT PRIVATE_SOURCES 0 PrecompiledHeaders/bnetPCH.cpp)
|
||||
endif (MSVC)
|
||||
endif()
|
||||
|
||||
GroupSources(${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
||||
add_executable(bnetserver
|
||||
${PRIVATE_PCH_SOURCE}
|
||||
${PRIVATE_SOURCES}
|
||||
)
|
||||
|
||||
|
||||
@@ -17,12 +17,14 @@ CollectSourceFiles(
|
||||
if (USE_COREPCH)
|
||||
set(PRIVATE_PCH_HEADER PrecompiledHeaders/databasePCH.h)
|
||||
set(PRIVATE_PCH_SOURCE PrecompiledHeaders/databasePCH.cpp)
|
||||
if (MSVC)
|
||||
list(INSERT PRIVATE_SOURCES 0 PrecompiledHeaders/databasePCH.cpp)
|
||||
endif (MSVC)
|
||||
endif()
|
||||
|
||||
GroupSources(${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
||||
add_library(database
|
||||
${PRIVATE_PCH_SOURCE}
|
||||
${PRIVATE_SOURCES}
|
||||
)
|
||||
|
||||
|
||||
@@ -17,6 +17,9 @@ CollectSourceFiles(
|
||||
if (USE_COREPCH)
|
||||
set(PRIVATE_PCH_HEADER PrecompiledHeaders/gamePCH.h)
|
||||
set(PRIVATE_PCH_SOURCE PrecompiledHeaders/gamePCH.cpp)
|
||||
if (MSVC)
|
||||
list(INSERT PRIVATE_SOURCES 0 PrecompiledHeaders/gamePCH.cpp)
|
||||
endif (MSVC)
|
||||
endif ()
|
||||
|
||||
GroupSources(${CMAKE_CURRENT_SOURCE_DIR})
|
||||
@@ -43,7 +46,6 @@ target_link_libraries(game-interface
|
||||
Detour)
|
||||
|
||||
add_library(game
|
||||
${PRIVATE_PCH_SOURCE}
|
||||
${PRIVATE_SOURCES})
|
||||
|
||||
target_include_directories(game
|
||||
|
||||
@@ -25,6 +25,9 @@ CollectSourceFiles(
|
||||
if (USE_COREPCH)
|
||||
set(PRIVATE_PCH_HEADER PrecompiledHeaders/protoPCH.h)
|
||||
set(PRIVATE_PCH_SOURCE PrecompiledHeaders/protoPCH.cpp)
|
||||
if (MSVC)
|
||||
list(INSERT PRIVATE_SOURCES 0 PrecompiledHeaders/protoPCH.cpp)
|
||||
endif (MSVC)
|
||||
endif()
|
||||
|
||||
GroupSources(${CMAKE_CURRENT_SOURCE_DIR})
|
||||
@@ -32,7 +35,6 @@ GroupSources(${CMAKE_CURRENT_SOURCE_DIR})
|
||||
add_definitions(-DTRINITY_API_EXPORT_PROTO)
|
||||
|
||||
add_library(proto
|
||||
${PRIVATE_PCH_SOURCE}
|
||||
${PRIVATE_SOURCES}
|
||||
)
|
||||
|
||||
|
||||
@@ -92,6 +92,9 @@ endforeach()
|
||||
if (USE_SCRIPTPCH)
|
||||
set(PRIVATE_PCH_HEADER ScriptPCH.h)
|
||||
set(PRIVATE_PCH_SOURCE ScriptPCH.cpp)
|
||||
if (MSVC)
|
||||
list(INSERT PRIVATE_SOURCES 0 ScriptPCH.cpp)
|
||||
endif (MSVC)
|
||||
endif ()
|
||||
|
||||
GroupSources(${CMAKE_CURRENT_SOURCE_DIR})
|
||||
@@ -158,9 +161,11 @@ foreach(SCRIPT_MODULE ${SCRIPT_MODULE_LIST})
|
||||
GetProjectNameOfScriptModule(${SCRIPT_MODULE} SCRIPT_MODULE_PROJECT_NAME)
|
||||
# Add the module name to DYNAMIC_SCRIPT_MODULES
|
||||
list(APPEND DYNAMIC_SCRIPT_MODULE_PROJECTS ${SCRIPT_MODULE_PROJECT_NAME})
|
||||
if (USE_SCRIPTPCH)
|
||||
list(INSERT SCRIPT_MODULE_PRIVATE_SOURCES 0 ScriptPCH.cpp)
|
||||
endif (USE_SCRIPTPCH)
|
||||
# Create the script module project
|
||||
add_library(${SCRIPT_MODULE_PROJECT_NAME} SHARED
|
||||
${PRIVATE_PCH_SOURCE}
|
||||
${SCRIPT_MODULE_PRIVATE_SOURCES}
|
||||
${SCRIPT_MODULE_PRIVATE_SCRIPTLOADER})
|
||||
target_link_libraries(${SCRIPT_MODULE_PROJECT_NAME}
|
||||
@@ -200,7 +205,6 @@ ConfigureScriptLoader("static" SCRIPT_MODULE_PRIVATE_SCRIPTLOADER OFF ${STATIC_S
|
||||
|
||||
add_library(scripts STATIC
|
||||
ScriptLoader.h
|
||||
${PRIVATE_PCH_SOURCE}
|
||||
${SCRIPT_MODULE_PRIVATE_SCRIPTLOADER}
|
||||
${PRIVATE_SOURCES})
|
||||
|
||||
|
||||
@@ -24,12 +24,14 @@ endif()
|
||||
if (USE_COREPCH)
|
||||
set(PRIVATE_PCH_HEADER PrecompiledHeaders/worldPCH.h)
|
||||
set(PRIVATE_PCH_SOURCE PrecompiledHeaders/worldPCH.cpp)
|
||||
if (MSVC)
|
||||
list(INSERT PRIVATE_SOURCES 0 PrecompiledHeaders/worldPCH.cpp)
|
||||
endif (MSVC)
|
||||
endif()
|
||||
|
||||
GroupSources(${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
||||
add_executable(worldserver
|
||||
${PRIVATE_PCH_SOURCE}
|
||||
${PRIVATE_SOURCES}
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user