aboutsummaryrefslogtreecommitdiff
path: root/src/server/game
diff options
context:
space:
mode:
authorNaios <naios-dev@live.de>2016-04-13 14:35:04 +0200
committerNaios <naios-dev@live.de>2016-04-14 21:30:27 +0200
commitea4ac00ac7d900d78d57774e18b70cb62afb7f4c (patch)
tree2e0a6bbf12694c4fa7ecd1569c76e6a9a9ed38a2 /src/server/game
parent6217cb4bf3c3bfd08119d3dfe152f624b9888c9e (diff)
Core/Build: Provide an interface target for game
* Increases the build time because dependent projects can build without waiting for the game project. (cherry picked from commit ff8a54ab928c00968266d0b1a574f81536152758)
Diffstat (limited to 'src/server/game')
-rw-r--r--src/server/game/CMakeLists.txt27
1 files changed, 18 insertions, 9 deletions
diff --git a/src/server/game/CMakeLists.txt b/src/server/game/CMakeLists.txt
index 60e86093f89..239e59d6dbb 100644
--- a/src/server/game/CMakeLists.txt
+++ b/src/server/game/CMakeLists.txt
@@ -23,27 +23,36 @@ GroupSources(${CMAKE_CURRENT_SOURCE_DIR})
add_definitions(-DTRINITY_API_EXPORT_GAME)
-add_library(game
- ${PRIVATE_PCH_SOURCE}
- ${PRIVATE_SOURCES}
-)
-
CollectIncludeDirectories(
${CMAKE_CURRENT_SOURCE_DIR}
PUBLIC_INCLUDES
# Exclude
${CMAKE_CURRENT_SOURCE_DIR}/PrecompiledHeaders)
+# Provide an interface target for the game project to allow
+# dependent projects to build meanwhile.
+add_library(game-interface INTERFACE)
+
+target_include_directories(game-interface
+ INTERFACE
+ ${PUBLIC_INCLUDES})
+
+target_link_libraries(game-interface
+ INTERFACE
+ shared
+ Detour)
+
+add_library(game
+ ${PRIVATE_PCH_SOURCE}
+ ${PRIVATE_SOURCES})
+
target_include_directories(game
- PUBLIC
- ${PUBLIC_INCLUDES}
PRIVATE
${CMAKE_CURRENT_BINARY_DIR})
target_link_libraries(game
PUBLIC
- shared
- Detour
+ game-interface
PRIVATE
efsw)