From 45d7a44555d3f73ff354b33eda3ea7f0095184de Mon Sep 17 00:00:00 2001 From: Shauren Date: Sun, 25 Feb 2024 00:05:19 +0100 Subject: Build: Reuse PCH file between all script modules (cherry picked from commit eac4bf825ab7cc0f423dd11a6dea85ad3563af66) --- cmake/macros/FindPCHSupport.cmake | 6 ++++++ src/server/scripts/CMakeLists.txt | 4 ++-- 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 -- cgit v1.2.3