diff --git a/scripts/ci/jobs/check-header.yml b/scripts/ci/jobs/check-header.yml index ebdd741911e4520befd156ae27e9f4f35195c543..1501557469158e337a5b290ac163caab83879679 100644 --- a/scripts/ci/jobs/check-header.yml +++ b/scripts/ci/jobs/check-header.yml @@ -6,7 +6,7 @@ check header: needs: [ meta, ci_images ] variables: BUILD_DIR: "../build/check-header" - CMAKE_ARGS: "-DOGS_CHECK_HEADER_COMPILATION=ON -DOGS_BUILD_GUI=ON -DBUILD_SHARED_LIBS=OFF" + CMAKE_ARGS: "-DOGS_CHECK_HEADER_COMPILATION=ON -DOGS_BUILD_GUI=ON -DBUILD_SHARED_LIBS=OFF -DOGS_USE_POETRY=OFF" image: $CONTAINER_GCC_GUI_IMAGE script: - rm -rf $BUILD_DIR diff --git a/scripts/cmake/CheckHeaderCompilation.cmake b/scripts/cmake/CheckHeaderCompilation.cmake index 0fc5c8472065e8c453bbdf2950353a643066a839..efe12f7dae7f29a86880febf022519a0d600f844 100644 --- a/scripts/cmake/CheckHeaderCompilation.cmake +++ b/scripts/cmake/CheckHeaderCompilation.cmake @@ -82,8 +82,19 @@ function(_check_header_compilation target) ${Qt5Gui_INCLUDE_DIRS} ${Qt5Widgets_INCLUDE_DIRS} ) endif() - get_target_property(COMPILE_DEFINITIONS ${target} _target_defs) - set(CMAKE_REQUIRED_DEFINITIONS ${_target_defs} ${DEFS_CLEANED}) + + get_target_property(_target_defs ${target} COMPILE_DEFINITIONS) + foreach(def ${_target_defs}) + # strip generator expressions + if(${def} MATCHES "\\$<.*") + continue() + endif() + if(${def} MATCHES ".*[0-9]\\(.*") + continue() + endif() + list(APPEND DEFS_CLEANED "-D${def}") + endforeach() + set(CMAKE_REQUIRED_DEFINITIONS ${DEFS_CLEANED}) foreach(file ${SOURCE_FILES})