diff --git a/cmake/QtCreatorAPI.cmake b/cmake/QtCreatorAPI.cmake index ccba5909d3f..79b8494fac2 100644 --- a/cmake/QtCreatorAPI.cmake +++ b/cmake/QtCreatorAPI.cmake @@ -906,3 +906,18 @@ function(qtc_add_resources target resourceName) target_sources(${target} PRIVATE "${generatedSourceCode}") set_property(SOURCE "${generatedSourceCode}" PROPERTY SKIP_AUTOGEN ON) endfunction() + +function(qtc_add_public_header header) + if (NOT IS_ABSOLUTE ${header}) + set(header "${CMAKE_CURRENT_SOURCE_DIR}/${header}") + endif() + + get_filename_component(source_dir ${header} DIRECTORY) + file(RELATIVE_PATH include_dir_relative_path ${PROJECT_SOURCE_DIR} ${source_dir}) + + install( + FILES ${header} + DESTINATION "include/${include_dir_relative_path}" + COMPONENT Devel EXCLUDE_FROM_ALL + ) +endfunction() diff --git a/cmake/QtCreatorAPIInternal.cmake b/cmake/QtCreatorAPIInternal.cmake index 8e55d4e8a1a..abf6406df8c 100644 --- a/cmake/QtCreatorAPIInternal.cmake +++ b/cmake/QtCreatorAPIInternal.cmake @@ -179,19 +179,7 @@ endfunction() function(set_public_headers target sources) foreach(source IN LISTS sources) if (source MATCHES "\.h$|\.hpp$") - - if (NOT IS_ABSOLUTE ${source}) - set(source "${CMAKE_CURRENT_SOURCE_DIR}/${source}") - endif() - - get_filename_component(source_dir ${source} DIRECTORY) - file(RELATIVE_PATH include_dir_relative_path ${PROJECT_SOURCE_DIR} ${source_dir}) - - install( - FILES ${source} - DESTINATION "include/${include_dir_relative_path}" - COMPONENT Devel EXCLUDE_FROM_ALL - ) + qtc_add_public_header(${source}) endif() endforeach() endfunction() diff --git a/src/libs/3rdparty/syntax-highlighting/CMakeLists.txt b/src/libs/3rdparty/syntax-highlighting/CMakeLists.txt index b2020ff065c..e451df24d83 100644 --- a/src/libs/3rdparty/syntax-highlighting/CMakeLists.txt +++ b/src/libs/3rdparty/syntax-highlighting/CMakeLists.txt @@ -1,6 +1,8 @@ add_qtc_library(KSyntaxHighlighting SHARED INCLUDES autogenerated/ - PUBLIC_INCLUDES src/lib autogenerated/src/lib + PUBLIC_INCLUDES + src/lib + autogenerated/src/lib DEFINES KSYNTAXHIGHLIGHTING_LIBRARY DEPENDS Qt5::Network Qt5::Widgets SOURCES @@ -32,6 +34,7 @@ add_qtc_library(KSyntaxHighlighting SHARED src/lib/wildcardmatcher.cpp src/lib/wildcardmatcher_p.h src/lib/xml_p.h ) +qtc_add_public_header(autogenerated/src/lib/State) install( DIRECTORY data/syntax