Fix documentation build if include paths contain generator expressions

We already filtered them out for the translation targets, also do that
for the developer documentation.

Change-Id: I256ddc80471176a7ba1b53d1a28e1d5eacf6fb86
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
This commit is contained in:
Eike Ziller
2024-09-11 12:14:43 +02:00
parent 2dc3c87758
commit 6ec3c8f9c9
4 changed files with 16 additions and 3 deletions

View File

@@ -1,5 +1,7 @@
# Defines function add_translation_targets
include(${CMAKE_CURRENT_LIST_DIR}/Utils.cmake)
function(_extract_ts_data_from_targets outprefix)
set(_sources "")
set(_includes "")
@@ -18,9 +20,7 @@ function(_extract_ts_data_from_targets outprefix)
if (NOT _skip_translation)
if(_include_dirs)
list(FILTER _include_dirs EXCLUDE REGEX "\\$<TARGET_PROPERTY")
list(FILTER _include_dirs EXCLUDE REGEX "\\$<INSTALL_INTERFACE")
list(TRANSFORM _include_dirs REPLACE "\\$<BUILD_INTERFACE:([^>]+)>" "\\1")
remove_generator_expressions(_include_dirs ${_include_dirs})
list(APPEND _includes ${_include_dirs})
endif()

View File

@@ -119,3 +119,11 @@ function(configure_qml_designer Qt6_VERSION)
endif()
endif()
endfunction()
function(remove_generator_expressions out_var list)
set(result ${list})
list(FILTER result EXCLUDE REGEX "\\$<TARGET_PROPERTY")
list(FILTER result EXCLUDE REGEX "\\$<INSTALL_INTERFACE")
list(TRANSFORM result REPLACE "\\$<BUILD_INTERFACE:([^>]+)>" "\\1")
set(${out_var} ${result} PARENT_SCOPE)
endfunction()

View File

@@ -1,5 +1,7 @@
# Generate documentation
include(Utils)
option(BUILD_DEVELOPER_DOCS "Include developer documentation" OFF)
add_feature_info("Include developer documentation" BUILD_DEVELOPER_DOCS "")
@@ -15,6 +17,7 @@ function(_find_all_includes _ret_includes _ret_framework_paths)
string(FIND "${_include}" "/src/libs/" _in_libs)
string(FIND "${_include}" "${CMAKE_BINARY_DIR}" _in_build)
if(_in_plugins LESS 0 AND _in_libs LESS 0 AND _in_build LESS 0)
remove_generator_expressions(_include ${_include})
list(APPEND _all_includes ${_include})
endif()
endforeach()

View File

@@ -91,6 +91,7 @@ file(COPY
${PROJECT_SOURCE_DIR}/cmake/Config.cmake.in
${PROJECT_SOURCE_DIR}/cmake/QtcSeparateDebugInfo.cmake
${PROJECT_SOURCE_DIR}/cmake/QtcSeparateDebugInfo.Info.plist.in
${PROJECT_SOURCE_DIR}/cmake/Utils.cmake
DESTINATION ${CMAKE_BINARY_DIR}/cmake
)
@@ -105,6 +106,7 @@ install(
${PROJECT_SOURCE_DIR}/cmake/Config.cmake.in
${PROJECT_SOURCE_DIR}/cmake/QtcSeparateDebugInfo.cmake
${PROJECT_SOURCE_DIR}/cmake/QtcSeparateDebugInfo.Info.plist.in
${PROJECT_SOURCE_DIR}/cmake/Utils.cmake
${CMAKE_BINARY_DIR}/cmake/QtCreatorConfig.cmake
DESTINATION ${IDE_CMAKE_INSTALL_PATH}/QtCreator
COMPONENT Devel EXCLUDE_FROM_ALL