Skip to content

Commit

Permalink
Port to private API targets
Browse files Browse the repository at this point in the history
Rather than using what the smallest supported Qt version offers, create
the missing targets where they are missing.

# Conflicts:
#	core/CMakeLists.txt
#	launcher/core/injector/CMakeLists.txt
#	plugins/eventmonitor/CMakeLists.txt
#	plugins/guisupport/CMakeLists.txt
#	plugins/quickinspector/CMakeLists.txt
#	plugins/statemachineviewer/CMakeLists.txt
#	plugins/translatorinspector/CMakeLists.txt
#	tests/CMakeLists.txt
#	ui/CMakeLists.txt
  • Loading branch information
vkrause committed Jan 22, 2021
1 parent 92a4e39 commit 6c1fb7c
Show file tree
Hide file tree
Showing 15 changed files with 100 additions and 97 deletions.
59 changes: 1 addition & 58 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -267,41 +267,6 @@ macro(add_flag_if_supported flag name)
append_if("CXX_SUPPORTS_${name}" "${flag}" CMAKE_CXX_FLAGS)
endmacro()

function(check_private_headers_exist module)
message(STATUS "Checking whether private include directories for module ${module} exist")
# backward compatibility with Qt < 5.9
if(TARGET Qt5::${module}Private)
get_target_property(private_includes Qt5::${module}Private INTERFACE_INCLUDE_DIRECTORIES)
set(Qt5${module}_PRIVATE_INCLUDE_DIRS "${private_includes}" PARENT_SCOPE)
endif()

# HACK to work around broken Qt cmake configurations in older Qt version (up to 5.7 at least)
if(NOT "${Qt5${module}_PRIVATE_INCLUDE_DIRS}" MATCHES "/Qt${module}/")
string(REPLACE "/QtCore" "/Qt${module}" replaceme "${Qt5Core_PRIVATE_INCLUDE_DIRS}")
list(APPEND Qt5${module}_PRIVATE_INCLUDE_DIRS ${replaceme})
list(REMOVE_DUPLICATES Qt5${module}_PRIVATE_INCLUDE_DIRS)
set(Qt5${module}_PRIVATE_INCLUDE_DIRS ${Qt5${module}_PRIVATE_INCLUDE_DIRS} PARENT_SCOPE)
endif()

foreach(dir ${Qt5${module}_PRIVATE_INCLUDE_DIRS})
if(NOT EXISTS "${dir}")
message(FATAL_ERROR "The private include directory ${dir} for module ${module} do not exist! Please make sure your Qt5 installation contains private headers.\nThe required directories:\n ${Qt5${module}_PRIVATE_INCLUDE_DIRS}")
endif()
endforeach()
endfunction()

function(check_private_header_exists module file)
set(found FALSE)
foreach(dir ${Qt5${module}_PRIVATE_INCLUDE_DIRS})
if(EXISTS "${dir}/${file}")
set(found TRUE)
endif()
endforeach()
if(NOT found)
message(FATAL_ERROR "The private include file ${file} was not found in directory ${Qt5${module}_PRIVATE_INCLUDE_DIRS}! Please make sure your Qt5 installation contains private headers.")
endif()
endfunction()

set(CMAKE_CXX_VISIBILITY_PRESET hidden)
set(CMAKE_VISIBILITY_INLINES_HIDDEN ON)

Expand Down Expand Up @@ -431,6 +396,7 @@ find_package(Qt5IviCore 1.1 NO_MODULE QUIET) # 1.1 is based on 5.8
find_package(Qt5IviVehicleFunctions 1.1 NO_MODULE QUIET)
find_package(Qt5IviMedia 1.1 NO_MODULE QUIET)
find_package(Qt5Scxml 5.8 NO_MODULE QUIET)
include (Qt5LegacySupport)

if(CMAKE_CXX_COMPILER_ID MATCHES "Clang" AND Qt5Core_VERSION VERSION_EQUAL 5.9.1)
# hide -Wc++1z-extensions warnings in this Qt version -- see: https://bugreports.qt.io/browse/QTBUG-61840
Expand Down Expand Up @@ -460,29 +426,6 @@ if(GAMMARAY_BUILD_UI) # widgets are required for the UI
endif()
endif()

# Sanity checking, we need private includes for the following modules, and < Qt 5.9 backward compatibility
check_private_headers_exist(Core)
check_private_header_exists(Core "private/qobject_p.h")
check_private_headers_exist(Gui)
list(APPEND Qt5Gui_PRIVATE_INCLUDE_DIRS ${Qt5Core_PRIVATE_INCLUDE_DIRS})
if(Qt5Widgets_FOUND)
check_private_headers_exist(Widgets)
list(APPEND Qt5Widgets_PRIVATE_INCLUDE_DIRS ${Qt5Gui_PRIVATE_INCLUDE_DIRS})
endif()
if(Qt5Qml_FOUND)
check_private_headers_exist(Qml)
check_private_header_exists(Qml "private/qqmlabstractbinding_p.h")
list(APPEND Qt5Qml_PRIVATE_INCLUDE_DIRS ${Qt5Gui_PRIVATE_INCLUDE_DIRS})
endif()
if(Qt5Quick_FOUND)
check_private_headers_exist(Quick)
check_private_header_exists(Quick "private/qquickitem_p.h")
list(APPEND Qt5Quick_PRIVATE_INCLUDE_DIRS ${Qt5Qml_PRIVATE_INCLUDE_DIRS})
endif()
if(Qt5Scxml_FOUND)
check_private_headers_exist(Scxml)
endif()

set(HAVE_QT_CONCURRENT ${Qt5Concurrent_FOUND})
set(HAVE_QT_WIDGETS ${Qt5Widgets_FOUND})
set(HAVE_QT_SVG ${Qt5Svg_FOUND})
Expand Down
59 changes: 59 additions & 0 deletions cmake/Qt5LegacySupport.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
# Backward compatibility helpers with ancient Qt5 versions

# Copyright (c) 2021 Klarälvdalens Datakonsult AB, a KDAB Group company <[email protected]>
# All rights reserved.
#
# Author: Volker Krause <[email protected]>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# 1. Redistributions of source code must retain the copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# 3. The name of the author may not be used to endorse or promote products
# derived from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

macro(_create_private_target LIB)
if (NOT TARGET Qt::${LIB}Private AND NOT TARGET Qt5::${LIB}Private AND DEFINED Qt5${LIB}_PRIVATE_INCLUDE_DIRS)
# HACK to work around broken Qt cmake configurations in older Qt version (up to 5.7 at least)
if(NOT "${Qt5${LIB}_PRIVATE_INCLUDE_DIRS}" MATCHES "/Qt${LIB}/")
string(REPLACE "/QtCore" "/Qt${LIB}" replaceme "${Qt5Core_PRIVATE_INCLUDE_DIRS}")
list(APPEND Qt5${module}_PRIVATE_INCLUDE_DIRS ${replaceme})
list(REMOVE_DUPLICATES Qt5${LIB}_PRIVATE_INCLUDE_DIRS)
set(Qt5${module}_PRIVATE_INCLUDE_DIRS ${Qt5${LIB}_PRIVATE_INCLUDE_DIRS} PARENT_SCOPE)
endif()

add_library(Qt5::${LIB}Private INTERFACE IMPORTED)
set_target_properties(Qt5::${LIB}Private PROPERTIES
INTERFACE_INCLUDE_DIRECTORIES "${Qt5${LIB}_PRIVATE_INCLUDE_DIRS}"
)
if (DEFINED ARGN)
set_target_properties(Qt5::${LIB}Private PROPERTIES
INTERFACE_LINK_LIBRARIES ${ARGN}
)
endif()
endif()
endmacro()

_create_private_target(Core)
_create_private_target(Gui Core)
_create_private_target(IviCore Core)
_create_private_target(Qml Gui)
_create_private_target(Quick Qml)
_create_private_target(Scxml Core)
_create_private_target(Widgets Gui)
11 changes: 7 additions & 4 deletions core/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -121,20 +121,23 @@ gammaray_target_relocatable_interfaces(gammaray_core_ipaths)
target_include_directories(gammaray_core PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}> $<INSTALL_INTERFACE:${gammaray_core_ipaths}>)
target_include_directories(gammaray_core SYSTEM PRIVATE
${CMAKE_SOURCE_DIR}/3rdparty/backward-cpp
${Qt5Core_PRIVATE_INCLUDE_DIRS}
${Qt5Gui_PRIVATE_INCLUDE_DIRS}
)
target_link_libraries(gammaray_core
LINK_PUBLIC gammaray_common
LINK_PRIVATE gammaray_common_internal gammaray_kitemmodels ${CMAKE_DL_LIBS}
LINK_PRIVATE
gammaray_common_internal
gammaray_kitemmodels
${CMAKE_DL_LIBS}
Qt5::CorePrivate
Qt5::GuiPrivate
)
set_target_properties(gammaray_core PROPERTIES
${GAMMARAY_DEFAULT_LIBRARY_PROPERTIES}
OUTPUT_NAME gammaray_core-${GAMMARAY_PROBE_ABI}
)
gammaray_set_rpath(gammaray_core ${LIB_INSTALL_DIR})

target_link_libraries(gammaray_core LINK_PUBLIC Qt5::Core LINK_PRIVATE Qt5::Gui)
target_link_libraries(gammaray_core LINK_PUBLIC Qt5::Core LINK_PRIVATE Qt5::Gui Qt5::GuiPrivate)
if (TARGET Qt5::AndroidExtras)
target_link_libraries(gammaray_core LINK_PRIVATE Qt5::AndroidExtras)
endif()
Expand Down
5 changes: 3 additions & 2 deletions launcher/core/injector/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,11 @@ if(Qt5Widgets_FOUND)

add_library(gammaray_injector_style MODULE ${gammaray_injector_style_srcs})

target_include_directories(gammaray_injector_style SYSTEM PRIVATE ${Qt5Gui_PRIVATE_INCLUDE_DIRS})
target_link_libraries(gammaray_injector_style
Qt5::Core
Qt5::Gui Qt5::Widgets
Qt5::Gui
Qt5::Widgets
Qt5::GuiPrivate
)

set_target_properties(gammaray_injector_style
Expand Down
2 changes: 1 addition & 1 deletion plugins/eventmonitor/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,9 @@ gammaray_add_plugin(gammaray_eventmonitor_plugin
SOURCES ${gammaray_eventmonitor_plugin_srcs}
)

target_include_directories(gammaray_eventmonitor_plugin SYSTEM PRIVATE ${Qt5Core_PRIVATE_INCLUDE_DIRS})
target_link_libraries(gammaray_eventmonitor_plugin
Qt5::Gui
Qt5::CorePrivate
gammaray_core
)
endif()
Expand Down
3 changes: 1 addition & 2 deletions plugins/guisupport/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,7 @@ set(gammaray_guisupport_srcs
)
gammaray_add_plugin(gammaray_guisupport JSON gammaray_guisupport.json SOURCES ${gammaray_guisupport_srcs})
target_link_libraries(gammaray_guisupport gammaray_core)
target_include_directories(gammaray_guisupport SYSTEM PRIVATE ${Qt5Gui_PRIVATE_INCLUDE_DIRS})
target_link_libraries(gammaray_guisupport Qt5::Gui)
target_link_libraries(gammaray_guisupport Qt5::Gui Qt5::GuiPrivate)
endif()

# ui plugin
Expand Down
2 changes: 1 addition & 1 deletion plugins/positioning/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,10 @@ if (NOT Qt5Core_VERSION VERSION_LESS 5.7)

add_library(gammaray_geopositioninfosource MODULE ${gammaray_geopositioninfosource_srcs})
target_compile_features(gammaray_geopositioninfosource PUBLIC ${GAMMARAY_REQUIRED_CXX_FEATURES})
target_include_directories(gammaray_geopositioninfosource SYSTEM PRIVATE ${Qt5Core_PRIVATE_INCLUDE_DIRS})
target_link_libraries(gammaray_geopositioninfosource
gammaray_common
Qt5::Positioning
Qt5::CorePrivate
)
install(TARGETS gammaray_geopositioninfosource DESTINATION ${TARGET_PLUGIN_INSTALL_DIR}/position)
endif()
Expand Down
7 changes: 5 additions & 2 deletions plugins/qmlsupport/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,11 @@ set(gammaray_qmlsupport_srcs
)

gammaray_add_plugin(gammaray_qmlsupport JSON gammaray_qmlsupport.json SOURCES ${gammaray_qmlsupport_srcs})
target_include_directories(gammaray_qmlsupport SYSTEM PRIVATE ${Qt5Qml_PRIVATE_INCLUDE_DIRS})
target_link_libraries(gammaray_qmlsupport gammaray_core Qt5::Qml)
target_link_libraries(gammaray_qmlsupport
gammaray_core
Qt5::Qml
Qt5::QmlPrivate
)
endif()


Expand Down
7 changes: 5 additions & 2 deletions plugins/qtivi/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,11 @@ if(Qt5IviCore_FOUND)
set(plugin_files ${plugin_files} qtivipropertymodel.cpp qtivipropertyoverrider.cpp)
endif()
gammaray_add_plugin(gammaray_qtivi JSON gammaray_qtivi.json SOURCES ${plugin_files})
target_include_directories(gammaray_qtivi SYSTEM PRIVATE ${Qt5IviCore_PRIVATE_INCLUDE_DIRS})
target_link_libraries(gammaray_qtivi gammaray_core Qt5::IviCore)
target_link_libraries(gammaray_qtivi
gammaray_core
Qt5::IviCore
Qt5::IviCorePrivate
)
if(Qt5IviVehicleFunctions_FOUND)
target_link_libraries(gammaray_qtivi Qt5::IviVehicleFunctions)
endif()
Expand Down
5 changes: 3 additions & 2 deletions plugins/quickinspector/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -44,10 +44,11 @@ if(Qt5Quick_FOUND)
target_sources(gammaray_quickinspector PUBLIC ${CMAKE_CURRENT_LIST_DIR}/quickimplicitbindingdependencyprovider.cpp)
endif()

target_include_directories(gammaray_quickinspector SYSTEM PRIVATE ${Qt5Quick_PRIVATE_INCLUDE_DIRS})
target_link_libraries(gammaray_quickinspector
gammaray_quickinspector_shared
gammaray_core Qt5::Quick
gammaray_core
Qt5::Quick
Qt5::QuickPrivate
gammaray_kitemmodels
)
endif()
Expand Down
3 changes: 1 addition & 2 deletions plugins/statemachineviewer/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,7 @@ target_link_libraries(gammaray_statemachineviewer_plugin
)

if(Qt5Scxml_FOUND)
target_link_libraries(gammaray_statemachineviewer_plugin Qt5::Scxml)
target_include_directories(gammaray_statemachineviewer_plugin SYSTEM PRIVATE ${Qt5Scxml_PRIVATE_INCLUDE_DIRS})
target_link_libraries(gammaray_statemachineviewer_plugin Qt5::Scxml Qt5::ScxmlPrivate)
endif()
endif()

Expand Down
3 changes: 1 addition & 2 deletions plugins/translatorinspector/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,7 @@ gammaray_add_plugin(gammaray_translatorinspector
JSON gammaray_translatorinspector.json
SOURCES translatorinspector.cpp translatorinspectorinterface.cpp translatorwrapper.cpp translatorsmodel.cpp
)
target_include_directories(gammaray_translatorinspector SYSTEM PRIVATE ${Qt5Core_PRIVATE_INCLUDE_DIRS})
target_link_libraries(gammaray_translatorinspector gammaray_core Qt5::Core)
target_link_libraries(gammaray_translatorinspector gammaray_core Qt5::Core Qt5::CorePrivate)
endif()

# ui part
Expand Down
2 changes: 1 addition & 1 deletion probe/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ target_include_directories(gammaray_probe_obj PUBLIC
$<TARGET_PROPERTY:gammaray_core,INTERFACE_INCLUDE_DIRECTORIES>
$<TARGET_PROPERTY:gammaray_common,INTERFACE_INCLUDE_DIRECTORIES>
)
target_include_directories(gammaray_probe_obj SYSTEM PRIVATE ${Qt5Core_PRIVATE_INCLUDE_DIRS})
target_link_libraries(gammaray_probe_obj Qt5::CorePrivate)

# probe lib
# DYLD_INSERT_LIBRARIES only works with real shared libraries, not modules
Expand Down
21 changes: 7 additions & 14 deletions tests/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -207,8 +207,7 @@ gammaray_add_probe_test(propertymodeltest propertymodeltest.cpp $<TARGET_OBJECTS
target_link_libraries(propertymodeltest gammaray_core gammaray_shared_test_data)

gammaray_add_test(qmetaobjectvalidatortest qmetaobjectvalidatortest.cpp)
target_include_directories(qmetaobjectvalidatortest SYSTEM PRIVATE ${Qt5Core_PRIVATE_INCLUDE_DIRS})
target_link_libraries(qmetaobjectvalidatortest Qt5::Gui gammaray_core)
target_link_libraries(qmetaobjectvalidatortest Qt5::Gui Qt5::CorePrivate gammaray_core)

if(GAMMARAY_BUILD_UI)
gammaray_add_test(metatypemodeltest
Expand Down Expand Up @@ -240,8 +239,7 @@ if(NOT GAMMARAY_CLIENT_ONLY_BUILD)
${CMAKE_SOURCE_DIR}/ui/tools/objectinspector/clientmethodmodel.cpp
$<TARGET_OBJECTS:modeltestobj>
)
target_include_directories(methodmodeltest SYSTEM PRIVATE ${Qt5Core_PRIVATE_INCLUDE_DIRS})
target_link_libraries(methodmodeltest gammaray_core Qt5::Gui Qt5::Widgets)
target_link_libraries(methodmodeltest gammaray_core Qt5::Gui Qt5::Widgets Qt5::CorePrivate)
endif()
endif()

Expand Down Expand Up @@ -398,17 +396,15 @@ if(NOT GAMMARAY_CLIENT_ONLY_BUILD)
${CMAKE_SOURCE_DIR}/plugins/qmlsupport/qjsvaluepropertyadaptor.cpp
${CMAKE_SOURCE_DIR}/plugins/qmlsupport/qmlcontextpropertyadaptor.cpp
)
target_include_directories(qmlsupporttest SYSTEM PRIVATE ${Qt5Qml_PRIVATE_INCLUDE_DIRS})
target_link_libraries(qmlsupporttest gammaray_core Qt5::Quick)
target_link_libraries(qmlsupporttest gammaray_core Qt5::Quick Qt5::QmlPrivate)
endif()

if(Qt5Quick_FOUND AND NOT Qt5Quick_VERSION VERSION_LESS 5.7) # requires MSVC 2013 or higher
gammaray_add_quick_test(bindinginspectortest
bindinginspectortest.cpp
$<TARGET_OBJECTS:modeltestobj>
)
target_include_directories(bindinginspectortest SYSTEM PRIVATE ${Qt5Quick_PRIVATE_INCLUDE_DIRS})
target_link_libraries(bindinginspectortest gammaray_core Qt5::Quick)
target_link_libraries(bindinginspectortest gammaray_core Qt5::Quick Qt5::QuickPrivate)
target_sources(bindinginspectortest PUBLIC
${CMAKE_SOURCE_DIR}/plugins/quickinspector/quickimplicitbindingdependencyprovider.cpp
)
Expand All @@ -424,8 +420,7 @@ if(NOT GAMMARAY_CLIENT_ONLY_BUILD)
quickinspectortest.qrc
$<TARGET_OBJECTS:modeltestobj>
)
target_include_directories(quickinspectortest SYSTEM PRIVATE ${Qt5Quick_PRIVATE_INCLUDE_DIRS})
target_link_libraries(quickinspectortest gammaray_core gammaray_quickinspector_shared Qt5::Quick)
target_link_libraries(quickinspectortest gammaray_core gammaray_quickinspector_shared Qt5::Quick Qt5::QuickPrivate)

gammaray_add_quick_test(quickinspectortest2
quickinspectortest2.cpp
Expand Down Expand Up @@ -467,8 +462,7 @@ if(NOT GAMMARAY_CLIENT_ONLY_BUILD)
quickinspectortest.qrc
$<TARGET_OBJECTS:modeltestobj>
)
target_include_directories(quickmaterialtest SYSTEM PRIVATE ${Qt5Quick_PRIVATE_INCLUDE_DIRS})
target_link_libraries(quickmaterialtest gammaray_core Qt5::Quick)
target_link_libraries(quickmaterialtest gammaray_core Qt5::Quick Qt5::QuickPrivate)
endif()

if(Qt5IviCore_FOUND AND Qt5IviVehicleFunctions_FOUND AND Qt5IviCore_VERSION VERSION_LESS 1.2)
Expand All @@ -478,8 +472,7 @@ if(NOT GAMMARAY_CLIENT_ONLY_BUILD)
../plugins/qtivi/qtivipropertymodel.cpp
$<TARGET_OBJECTS:modeltestobj>
)
target_include_directories(qtivipropertymodeltest SYSTEM PRIVATE ${Qt5IviCore_PRIVATE_INCLUDE_DIRS})
target_link_libraries(qtivipropertymodeltest Qt5::Gui Qt5::IviCore Qt5::IviVehicleFunctions)
target_link_libraries(qtivipropertymodeltest Qt5::Gui Qt5::IviCore Qt5::IviVehicleFunctions Qt5::IviCorePrivate)
if(Qt5IviMedia_FOUND)
target_link_libraries(qtivipropertymodeltest Qt5::IviMedia)
endif()
Expand Down
8 changes: 4 additions & 4 deletions ui/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -100,11 +100,10 @@ target_compile_features(gammaray_ui PUBLIC ${GAMMARAY_REQUIRED_CXX_FEATURES})

gammaray_target_relocatable_interfaces(gammaray_ui_ipaths)
target_include_directories(gammaray_ui PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}> $<INSTALL_INTERFACE:${gammaray_ui_ipaths}>)
target_include_directories(gammaray_ui SYSTEM PRIVATE ${Qt5Widgets_PRIVATE_INCLUDE_DIRS})

target_link_libraries(gammaray_ui
LINK_PUBLIC Qt5::Core Qt5::Gui Qt5::Widgets gammaray_common
LINK_PRIVATE gammaray_common_internal gammaray_kitemmodels
LINK_PRIVATE gammaray_common_internal gammaray_kitemmodels Qt5::WidgetsPrivate
)
if(TARGET KF5::SyntaxHighlighting)
target_link_libraries(gammaray_ui LINK_PRIVATE KF5::SyntaxHighlighting)
Expand All @@ -121,10 +120,11 @@ set(gammaray_ui_internal_srcs
add_library(gammaray_ui_internal STATIC ${gammaray_ui_internal_srcs})
set_target_properties(gammaray_ui_internal PROPERTIES POSITION_INDEPENDENT_CODE ON)
target_compile_features(gammaray_ui_internal PUBLIC ${GAMMARAY_REQUIRED_CXX_FEATURES})
target_include_directories(gammaray_ui_internal SYSTEM PRIVATE ${Qt5Gui_PRIVATE_INCLUDE_DIRS})
target_link_libraries(gammaray_ui_internal
Qt5::Core
Qt5::Gui Qt5::Widgets
Qt5::Gui
Qt5::Widgets
Qt5::GuiPrivate
gammaray_common_internal
gammaray_ui
gammaray_kitemmodels
Expand Down

0 comments on commit 6c1fb7c

Please sign in to comment.