From ddb9c73eb58cdaf168bbc5d79c5dc935245fc5e5 Mon Sep 17 00:00:00 2001 From: Dennis Brakhane Date: Tue, 1 Jul 2025 13:26:55 +0200 Subject: [PATCH] cmake: workaround source dirs containing regex meta characters --- Editor/CMakeLists.txt | 5 ++++- WickedEngine/Utility/CMakeLists.txt | 7 +++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/Editor/CMakeLists.txt b/Editor/CMakeLists.txt index 7e1c29b62..4b044cc94 100644 --- a/Editor/CMakeLists.txt +++ b/Editor/CMakeLists.txt @@ -1,7 +1,10 @@ cmake_minimum_required(VERSION 3.19) +# workaround for source dir containing regex meta characters +string(REGEX REPLACE "([.+?*])" "\\\\\\1" SDIR "${CMAKE_CURRENT_SOURCE_DIR}") + file(GLOB SOURCE_FILES CONFIGURE_DEPENDS *.cpp) -list(FILTER SOURCE_FILES EXCLUDE REGEX ${CMAKE_CURRENT_SOURCE_DIR}/main_.*) +list(FILTER SOURCE_FILES EXCLUDE REGEX ${SDIR}/main_.*) list(APPEND SOURCE_FILES main_${PLATFORM}.cpp) diff --git a/WickedEngine/Utility/CMakeLists.txt b/WickedEngine/Utility/CMakeLists.txt index fbe927c39..dd2f9657f 100644 --- a/WickedEngine/Utility/CMakeLists.txt +++ b/WickedEngine/Utility/CMakeLists.txt @@ -15,12 +15,15 @@ file(GLOB_RECURSE SOURCE_FILES CONFIGURE_DEPENDS *.cpp ) +# workaround for source dir containing regex meta characters +string(REGEX REPLACE "([.+?*])" "\\\\\\1" SDIR "${CMAKE_CURRENT_SOURCE_DIR}") + # FAudio has their own CMakeLists list(FILTER HEADER_FILES - EXCLUDE REGEX ${CMAKE_CURRENT_SOURCE_DIR}/FAudio/.* + EXCLUDE REGEX "${SDIR}/FAudio/.*" ) list(FILTER SOURCE_FILES - EXCLUDE REGEX ${CMAKE_CURRENT_SOURCE_DIR}/FAudio/.* + EXCLUDE REGEX "${SDIR}/FAudio/.*" ) install(FILES ${HEADER_FILES}