[kddockwidgets] Update to 2.4.0, add support for qtquick frontend (#48822)

This commit is contained in:
Andrew Tribick 2025-12-16 00:09:13 +01:00 committed by GitHub
parent 185dae611b
commit 0baafbb09b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 54 additions and 56 deletions

View File

@ -1,38 +0,0 @@
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 02895b0..c36650f 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -566,7 +566,7 @@ endif()
if(KDDW_FRONTEND_QT)
install(
- TARGETS kddockwidgets kdbindings
+ TARGETS kddockwidgets
EXPORT kddockwidgetsTargets
RUNTIME DESTINATION ${INSTALL_RUNTIME_DIR}
LIBRARY DESTINATION ${INSTALL_LIBRARY_DIR}
diff --git a/src/KDDockWidgetsConfig.cmake.in b/src/KDDockWidgetsConfig.cmake.in
index fbec60a..31d45e5 100644
--- a/src/KDDockWidgetsConfig.cmake.in
+++ b/src/KDDockWidgetsConfig.cmake.in
@@ -24,5 +24,8 @@ if (NOT WIN32 AND NOT APPLE AND NOT EMSCRIPTEN AND NOT @KDDockWidgets_QT6@ AND @
find_dependency(Qt5X11Extras REQUIRED)
endif()
+find_dependency(KDBindings CONFIG)
+find_dependency(nlohmann_json)
+
# Add the targets file
include("${CMAKE_CURRENT_LIST_DIR}/KDDockWidgets@KDDockWidgets_LIBRARY_QTID@Targets.cmake")
diff --git a/src/kdbindings.cmake b/src/kdbindings.cmake
index c923cd9..da7ad32 100644
--- a/src/kdbindings.cmake
+++ b/src/kdbindings.cmake
@@ -11,5 +11,5 @@
# Use a separate target for our kdbindings/signal.h header as it doesn't compile
# with -Wweak-vtables
-add_library(kdbindings INTERFACE)
-target_include_directories(kdbindings SYSTEM INTERFACE $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/3rdparty>)
+find_package(KDBindings CONFIG REQUIRED GLOBAL)
+add_library(kdbindings ALIAS KDAB::KDBindings)

View File

@ -1,11 +1,23 @@
if("qtwidgets" IN_LIST FEATURES)
list(APPEND FRONTEND_LIST "qtwidgets")
endif()
if("qtquick" IN_LIST FEATURES)
list(APPEND FRONTEND_LIST "qtquick")
endif()
if(FRONTEND_LIST)
list(JOIN FRONTEND_LIST ";" FRONTENDS)
else()
message(FATAL_ERROR "No front-ends selected for ${PORT}, cannot build package")
endif()
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO KDAB/KDDockWidgets
REF "v${VERSION}"
SHA512 7b88f354e2aca4ac4c0f59874b6a7d6baaf77f5b54dd57b981ec7831e40acc0e2f6d3c6300af3d93c594bf34c7072c6a8a19a50c65039ccae22a9e47b90499d8
SHA512 1e220c5cf608c5bb9242b530eb1e45a15dae462b126c12d253483a1213e72374baa75943d8734c5dc79e34b03b480d1a87cd59cb945996abc0ab20b5d649a5cb
HEAD_REF master
PATCHES
dependencies.diff
)
file(REMOVE_RECURSE
"${SOURCE_PATH}/src/3rdparty"
@ -25,7 +37,7 @@ vcpkg_cmake_configure(
OPTIONS
${_qarg_OPTIONS}
-DKDDockWidgets_QT6=ON
-DKDDockWidgets_FRONTENDS=qtwidgets
-DKDDockWidgets_FRONTENDS=${FRONTENDS}
-DKDDockWidgets_STATIC=${KD_STATIC}
-DKDDockWidgets_PYTHON_BINDINGS=OFF
-DKDDockWidgets_TESTS=OFF

View File

@ -1,20 +1,13 @@
{
"name": "kddockwidgets",
"version": "2.1.0",
"port-version": 1,
"version": "2.4.0",
"description": "KDAB's Dock Widget Framework for Qt",
"homepage": "https://www.kdab.com/development-resources/qt-tools/kddockwidgets/",
"license": "GPL-2.0-only OR GPL-3.0-only",
"supports": "!android & !ios",
"dependencies": [
"kdbindings",
"nlohmann-json",
{
"name": "qtbase",
"default-features": false,
"features": [
"widgets"
]
},
{
"name": "vcpkg-cmake",
"host": true
@ -23,5 +16,28 @@
"name": "vcpkg-cmake-config",
"host": true
}
]
],
"default-features": [
"qtwidgets"
],
"features": {
"qtquick": {
"description": "Build for Qt Quick frontend",
"dependencies": [
"qtdeclarative"
]
},
"qtwidgets": {
"description": "Build for Qt Widgets frontend",
"dependencies": [
{
"name": "qtbase",
"default-features": false,
"features": [
"widgets"
]
}
]
}
}
}

View File

@ -615,8 +615,11 @@ jkqtplotter(uwp) = cascade
jsonnet:arm64-uwp = cascade
jsonnet:arm64-windows = cascade
jsonnet:x64-uwp = cascade
kddockwidgets:arm64-uwp = cascade
kddockwidgets:x64-uwp = cascade
kddockwidgets[core] = combination-fails # configure: error: *** No frontend enabled. ***
kddockwidgets[qtquick]:arm64-uwp = cascade
kddockwidgets[qtquick]:x64-uwp = cascade
kddockwidgets[qtwidgets]:arm64-uwp = cascade
kddockwidgets[qtwidgets]:x64-uwp = cascade
kealib(uwp) = cascade
kenlm:x64-uwp = cascade
kf5archive:arm64-uwp = cascade

View File

@ -4189,8 +4189,8 @@
"port-version": 0
},
"kddockwidgets": {
"baseline": "2.1.0",
"port-version": 1
"baseline": "2.4.0",
"port-version": 0
},
"kdreports": {
"baseline": "2.3.0",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "8871fb0aab496fa6d5ab688a834f0ceb869f7133",
"version": "2.4.0",
"port-version": 0
},
{
"git-tree": "c841c3a78eee0afc5376e39977217a497475089a",
"version": "2.1.0",