aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cmake/macros/FindPCHSupport.cmake6
-rw-r--r--src/server/scripts/CMakeLists.txt4
2 files changed, 8 insertions, 2 deletions
diff --git a/cmake/macros/FindPCHSupport.cmake b/cmake/macros/FindPCHSupport.cmake
index 46520e4a2d6..b1c911a7c13 100644
--- a/cmake/macros/FindPCHSupport.cmake
+++ b/cmake/macros/FindPCHSupport.cmake
@@ -18,3 +18,9 @@ function(ADD_CXX_PCH TARGET_NAME_LIST PCH_HEADER)
target_precompile_headers(${TARGET_NAME} PRIVATE ${PCH_HEADER})
endforeach()
endfunction(ADD_CXX_PCH)
+
+function(REUSE_CXX_PCH TARGET_NAME_LIST REUSE_FROM_TARGET_NAME)
+ foreach(TARGET_NAME ${TARGET_NAME_LIST})
+ target_precompile_headers(${TARGET_NAME} REUSE_FROM ${REUSE_FROM_TARGET_NAME})
+ endforeach()
+endfunction(REUSE_CXX_PCH)
diff --git a/src/server/scripts/CMakeLists.txt b/src/server/scripts/CMakeLists.txt
index 319aafaec9b..337ef999de1 100644
--- a/src/server/scripts/CMakeLists.txt
+++ b/src/server/scripts/CMakeLists.txt
@@ -225,8 +225,8 @@ set_target_properties(scripts
# Generate precompiled header
if(USE_SCRIPTPCH)
- list(APPEND ALL_SCRIPT_PROJECTS scripts ${DYNAMIC_SCRIPT_MODULE_PROJECTS})
- add_cxx_pch("${ALL_SCRIPT_PROJECTS}" ${PRIVATE_PCH_HEADER})
+ add_cxx_pch("scripts" ${PRIVATE_PCH_HEADER} ${DYNAMIC_SCRIPT_MODULE_PROJECTS})
+ reuse_cxx_pch("${DYNAMIC_SCRIPT_MODULE_PROJECTS}" scripts)
endif()
# Remove all shared libraries in the installl directory which