[neon/snap-packaging/kf6-snap] /: WIP - add missing qt libraries

Benjamin Port null at kde.org
Fri Apr 19 18:49:48 BST 2024


Git commit e3ef86029e29fc62da35fe47f332961591561694 by Benjamin Port, on behalf of Benjamin Port.
Committed on 19/04/2024 at 17:49.
Pushed by bport into branch 'master'.

WIP - add missing qt libraries

A  +52   -0    patches/libdbusmenu-qt6/01_build_without_cmake_automoc_relaxed_mode
A  +44   -0    patches/libdbusmenu-qt6/02_Fix_warnings_in_build_with_Qt_5_12_5
A  +107  -0    patches/libdbusmenu-qt6/03_Fix_build_with_Qt_6
A  +206  -0    patches/libdbusmenu-qt6/04_add_qt6_to_the_build
A  +11   -0    patches/libdbusmenu-qt6/05_turn_off_tests.diff
A  +5    -0    patches/libdbusmenu-qt6/series
M  +121  -12   snapcraft.yaml

https://invent.kde.org/neon/snap-packaging/kf6-snap/-/commit/e3ef86029e29fc62da35fe47f332961591561694

diff --git a/patches/libdbusmenu-qt6/01_build_without_cmake_automoc_relaxed_mode b/patches/libdbusmenu-qt6/01_build_without_cmake_automoc_relaxed_mode
new file mode 100644
index 0000000..a31c3cc
--- /dev/null
+++ b/patches/libdbusmenu-qt6/01_build_without_cmake_automoc_relaxed_mode
@@ -0,0 +1,52 @@
+From dfcdb1635eb87b226f8942d27a4cd451a405cc81 Mon Sep 17 00:00:00 2001
+From: John Preston <johnprestonmail at gmail.com>
+Date: Wed, 5 Feb 2020 14:14:44 +0400
+Subject: [PATCH] Support CMake build without CMAKE_AUTOMOC_RELAXED_MODE.
+
+---
+ src/dbusmenu_p.cpp             | 2 +-
+ src/dbusmenuexporter.cpp       | 2 +-
+ src/dbusmenuexporterdbus_p.cpp | 2 +-
+ src/dbusmenuimporter.cpp       | 2 +-
+ 4 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/src/dbusmenu_p.cpp b/src/dbusmenu_p.cpp
+index bc84092..5a960b1 100644
+--- a/src/dbusmenu_p.cpp
++++ b/src/dbusmenu_p.cpp
+@@ -91,4 +91,4 @@ void DBusMenu::deleteMe()
+     delete this;
+ }
+
+-#include "dbusmenu_p.moc"
++#include "moc_dbusmenu_p.cpp"
+diff --git a/src/dbusmenuexporter.cpp b/src/dbusmenuexporter.cpp
+index f25718d..f30ce11 100644
+--- a/src/dbusmenuexporter.cpp
++++ b/src/dbusmenuexporter.cpp
+@@ -503,4 +503,4 @@ QString DBusMenuExporter::status() const
+     return d->m_dbusObject->status();
+ }
+
+-#include "dbusmenuexporter.moc"
++#include "moc_dbusmenuexporter.cpp"
+diff --git a/src/dbusmenuexporterdbus_p.cpp b/src/dbusmenuexporterdbus_p.cpp
+index 006eec6..c9707e0 100644
+--- a/src/dbusmenuexporterdbus_p.cpp
++++ b/src/dbusmenuexporterdbus_p.cpp
+@@ -183,4 +183,4 @@ QString DBusMenuExporterDBus::status() const
+ }
+
+
+-#include "dbusmenuexporterdbus_p.moc"
++#include "moc_dbusmenuexporterdbus_p.cpp"
+diff --git a/src/dbusmenuimporter.cpp b/src/dbusmenuimporter.cpp
+index 39f5995..ce6ef18 100644
+--- a/src/dbusmenuimporter.cpp
++++ b/src/dbusmenuimporter.cpp
+@@ -582,4 +582,4 @@ QIcon DBusMenuImporter::iconForName(const QString &/*name*/)
+     return QIcon();
+ }
+
+-#include "dbusmenuimporter.moc"
++#include "moc_dbusmenuimporter.cpp"
diff --git a/patches/libdbusmenu-qt6/02_Fix_warnings_in_build_with_Qt_5_12_5 b/patches/libdbusmenu-qt6/02_Fix_warnings_in_build_with_Qt_5_12_5
new file mode 100644
index 0000000..16683e5
--- /dev/null
+++ b/patches/libdbusmenu-qt6/02_Fix_warnings_in_build_with_Qt_5_12_5
@@ -0,0 +1,44 @@
+From 75afa1003c1d0f6fdfa3a76ce2db689b49f86968 Mon Sep 17 00:00:00 2001
+From: John Preston <johnprestonmail at gmail.com>
+Date: Wed, 5 Feb 2020 14:15:18 +0400
+Subject: [PATCH] Fix warnings in build with Qt 5.12.5.
+
+---
+ src/com.canonical.dbusmenu.xml | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/src/com.canonical.dbusmenu.xml b/src/com.canonical.dbusmenu.xml
+index b04afa6..1fb735b 100644
+--- a/src/com.canonical.dbusmenu.xml
++++ b/src/com.canonical.dbusmenu.xml
+@@ -184,7 +184,7 @@ License version 3 and version 2.1 along with this program.  If not, see
+ <!-- Functions -->
+
+ 		<method name="GetLayout">
+-			<annotation name="com.trolltech.QtDBus.QtTypeName.Out1" value="DBusMenuLayoutItem"/>
++			<annotation name="org.qtproject.QtDBus.QtTypeName.Out1" value="DBusMenuLayoutItem"/>
+ 			<dox:d>
+ 			  Provides the layout and propertiers that are attached to the entries
+ 			  that are in the layout.  It only gives the items that are children
+@@ -225,8 +225,8 @@ License version 3 and version 2.1 along with this program.  If not, see
+ 		</method>
+
+ 		<method name="GetGroupProperties">
+-			<annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="QList<int>"/>
+-			<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="DBusMenuItemList"/>
++			<annotation name="org.qtproject.QtDBus.QtTypeName.In0" value="QList<int>"/>
++			<annotation name="org.qtproject.QtDBus.QtTypeName.Out0" value="DBusMenuItemList"/>
+ 			<dox:d>
+ 			Returns the list of items which are children of @a parentId.
+ 			</dox:d>
+@@ -316,8 +316,8 @@ License version 3 and version 2.1 along with this program.  If not, see
+
+ <!-- Signals -->
+ 		<signal name="ItemsPropertiesUpdated">
+-			<annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="DBusMenuItemList"/>
+-			<annotation name="com.trolltech.QtDBus.QtTypeName.In1" value="DBusMenuItemKeysList"/>
++			<annotation name="org.qtproject.QtDBus.QtTypeName.Out0" value="DBusMenuItemList"/>
++			<annotation name="org.qtproject.QtDBus.QtTypeName.Out1" value="DBusMenuItemKeysList"/>
+ 			<dox:d>
+ 			Triggered when there are lots of property updates across many items
+ 			so they all get grouped into a single dbus message.  The format is
diff --git a/patches/libdbusmenu-qt6/03_Fix_build_with_Qt_6 b/patches/libdbusmenu-qt6/03_Fix_build_with_Qt_6
new file mode 100644
index 0000000..48443e2
--- /dev/null
+++ b/patches/libdbusmenu-qt6/03_Fix_build_with_Qt_6
@@ -0,0 +1,107 @@
+From af9fa001dac49eedc76e15613b67abfd097105f3 Mon Sep 17 00:00:00 2001
+From: Ilya Fedin <fedin-ilja2010 at ya.ru>
+Date: Sun, 24 Oct 2021 04:25:58 +0400
+Subject: [PATCH] Fix build with Qt 6
+
+---
+ src/dbusmenuexporter.cpp   |  3 ++-
+ src/dbusmenuimporter.cpp   |  1 +
+ src/dbusmenushortcut_p.cpp | 27 +++++++++++++++++++++++++++
+ src/dbusmenushortcut_p.h   |  4 ++++
+ 4 files changed, 34 insertions(+), 1 deletion(-)
+
+diff --git a/src/dbusmenuexporter.cpp b/src/dbusmenuexporter.cpp
+index f30ce11..9bb5c10 100644
+--- a/src/dbusmenuexporter.cpp
++++ b/src/dbusmenuexporter.cpp
+@@ -29,6 +29,7 @@
+ #include <QTimer>
+ #include <QToolButton>
+ #include <QWidgetAction>
++#include <QActionGroup>
+
+ // Local
+ #include "dbusmenu_config.h"
+@@ -484,7 +485,7 @@ void DBusMenuExporter::activateAction(QAction *action)
+ {
+     int id = d->idForAction(action);
+     DMRETURN_IF_FAIL(id >= 0);
+-    uint timeStamp = QDateTime::currentDateTime().toTime_t();
++    uint timeStamp = QDateTime::currentDateTime().toSecsSinceEpoch();
+     d->m_dbusObject->ItemActivationRequested(id, timeStamp);
+ }
+
+diff --git a/src/dbusmenuimporter.cpp b/src/dbusmenuimporter.cpp
+index ce6ef18..94abb59 100644
+--- a/src/dbusmenuimporter.cpp
++++ b/src/dbusmenuimporter.cpp
+@@ -34,6 +34,7 @@
+ #include <QTimer>
+ #include <QToolButton>
+ #include <QWidgetAction>
++#include <QActionGroup>
+
+ // Local
+ #include "dbusmenutypes_p.h"
+diff --git a/src/dbusmenushortcut_p.cpp b/src/dbusmenushortcut_p.cpp
+index 29d2e58..9f4fc0a 100644
+--- a/src/dbusmenushortcut_p.cpp
++++ b/src/dbusmenushortcut_p.cpp
+@@ -22,6 +22,7 @@
+
+ // Qt
+ #include <QtGui/QKeySequence>
++#include <QtDBus/QDBusArgument>
+
+ // Local
+ #include "debug_p.h"
+@@ -83,3 +84,29 @@ QKeySequence DBusMenuShortcut::toKeySequence() const
+     QString string = tmp.join(QLatin1String(", "));
+     return QKeySequence::fromString(string);
+ }
++
++QDBusArgument &operator<<(QDBusArgument &argument, const DBusMenuShortcut &obj)
++{
++    int id = qMetaTypeId<QStringList>();
++    argument.beginArray(id);
++    typename DBusMenuShortcut::ConstIterator it = obj.constBegin();
++    typename DBusMenuShortcut::ConstIterator end = obj.constEnd();
++    for ( ; it != end; ++it)
++        argument << *it;
++    argument.endArray();
++    return argument;
++}
++
++const QDBusArgument &operator>>(const QDBusArgument &argument, DBusMenuShortcut &obj)
++{
++    argument.beginArray();
++    obj.clear();
++    while (!argument.atEnd()) {
++        QStringList item;
++        argument >> item;
++        obj.push_back(item);
++    }
++    argument.endArray();
++
++    return argument;
++}
+diff --git a/src/dbusmenushortcut_p.h b/src/dbusmenushortcut_p.h
+index e26dd8c..d62c272 100644
+--- a/src/dbusmenushortcut_p.h
++++ b/src/dbusmenushortcut_p.h
+@@ -30,6 +30,7 @@
+
+
+ class QKeySequence;
++class QDBusArgument;
+
+ class DBUSMENU_EXPORT DBusMenuShortcut : public QList<QStringList>
+ {
+@@ -40,4 +41,7 @@ class DBUSMENU_EXPORT DBusMenuShortcut : public QList<QStringList>
+
+ Q_DECLARE_METATYPE(DBusMenuShortcut)
+
++DBUSMENU_EXPORT QDBusArgument &operator<<(QDBusArgument &argument, const DBusMenuShortcut &);
++DBUSMENU_EXPORT const QDBusArgument &operator>>(const QDBusArgument &argument, DBusMenuShortcut &);
++
+ #endif /* DBUSMENUSHORTCUT_H */
diff --git a/patches/libdbusmenu-qt6/04_add_qt6_to_the_build b/patches/libdbusmenu-qt6/04_add_qt6_to_the_build
new file mode 100644
index 0000000..ec78aa3
--- /dev/null
+++ b/patches/libdbusmenu-qt6/04_add_qt6_to_the_build
@@ -0,0 +1,206 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 72cbc45..15b3ffe 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -25,7 +25,7 @@ set(dbusmenu_qt_lib_PATCH_VERSION 0)
+ set(dbusmenu_qt_lib_VERSION ${dbusmenu_qt_lib_SOVERSION}.${dbusmenu_qt_lib_API_VERSION}.${dbusmenu_qt_lib_PATCH_VERSION})
+
+ # Check if we want to explicitly select the Qt version to be used or autodetect
+-if (NOT USE_QT4 AND NOT USE_QT5)
++if (NOT USE_QT4 AND NOT USE_QT5 AND NOT USE_QT6)
+     # Autodetect, prefering Qt5
+     message(STATUS "Autodetecting Qt version to use")
+     find_package(Qt5Widgets QUIET)
+@@ -35,7 +35,15 @@ if (NOT USE_QT4 AND NOT USE_QT5)
+ endif()
+
+ # Detect for which Qt version we're building
+-if (USE_QT5)
++if (USE_QT6)
++    find_package(Qt6 REQUIRED COMPONENTS Core Widgets DBus)
++    include_directories(${Qt5Widgets_INCLUDE_DIRS} ${Qt5DBus_INCLUDE_DIRS})
++    set(CMAKE_AUTOMOC ON)
++    set(CMAKE_AUTOMOC_RELAXED_MODE ON)
++    set(CMAKE_POSITION_INDEPENDENT_CODE ON)
++
++    set(QT_SUFFIX "qt6")
++elseif (USE_QT5)
+     find_package(Qt5Widgets REQUIRED)
+     find_package(Qt5DBus REQUIRED)
+     include_directories(${Qt5Widgets_INCLUDE_DIRS} ${Qt5DBus_INCLUDE_DIRS})
+@@ -69,9 +77,9 @@ if (__DBUSMENU_HAVE_W_OVERLOADED_VIRTUAL)
+     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Woverloaded-virtual")
+ endif (__DBUSMENU_HAVE_W_OVERLOADED_VIRTUAL)
+
+-check_cxx_compiler_flag(-std=c++11 __DBUSMENU_HAVE_CXX11)
++check_cxx_compiler_flag(-std=c++17 __DBUSMENU_HAVE_CXX11)
+ if (__DBUSMENU_HAVE_CXX11)
+-    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
++    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17")
+ endif (__DBUSMENU_HAVE_CXX11)
+
+ include(CMakePackageConfigHelpers)
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 2c4a4e8..e99d24a 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -21,20 +21,23 @@ if (__DBUSMENU_HAVE_W_ALL)
+     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall")
+ endif (__DBUSMENU_HAVE_W_ALL)
+
+-check_cxx_compiler_flag(-std=c++11 __DBUSMENU_HAVE_CXX11)
++check_cxx_compiler_flag(-std=c++17 __DBUSMENU_HAVE_CXX11)
+ if (__DBUSMENU_HAVE_CXX11)
+-    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
++    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17")
+ endif (__DBUSMENU_HAVE_CXX11)
+
+ # Check whether QIcon::name() exists. It was added in late Qt 4.7 cycle, and is
+ # not present in betas.
+
+-if (NOT USE_QT5)
++if (NOT USE_QT5 AND NOT USE_QT6)
+     set(CMAKE_REQUIRED_INCLUDES "${QT_INCLUDE_DIR}")
+     set(CMAKE_REQUIRED_LIBRARIES "${QT_QTGUI_LIBRARIES};${QT_QTCORE_LIBRARIES}")
+-else()
++elseif(USE_QT5)
+     set(CMAKE_REQUIRED_INCLUDES "${Qt5Gui_INCLUDE_DIRS};${Qt5Core_INCLUDE_DIRS}")
+     set(CMAKE_REQUIRED_LIBRARIES "${Qt5Gui_LIBRARIES};${Qt5Core_LIBRARIES}")
++else()
++    set(CMAKE_REQUIRED_INCLUDES "${Qt6Gui_INCLUDE_DIRS};${Qt6Core_INCLUDE_DIRS}")
++    set(CMAKE_REQUIRED_LIBRARIES "${Qt6Gui_LIBRARIES};${Qt6Core_LIBRARIES}")
+ endif()
+ check_cxx_source_compiles("
+ #include <QtGui/QIcon>
+@@ -64,17 +67,22 @@ include_directories(
+     ${CMAKE_BINARY_DIR}/src
+     )
+
+-if (NOT USE_QT5)
++if (NOT USE_QT5 AND NOT USE_QT6)
+     qt4_automoc(${dbusmenu_qt_SRCS})
+     qt4_add_dbus_adaptor(dbusmenu_qt_SRCS
+         ${CMAKE_CURRENT_SOURCE_DIR}/com.canonical.dbusmenu.xml
+         ${CMAKE_CURRENT_SOURCE_DIR}/dbusmenuexporterdbus_p.h DBusMenuExporterDBus
+         )
+-else()
++elseif(USE_QT5)
+     qt5_add_dbus_adaptor(dbusmenu_qt_SRCS
+         ${CMAKE_CURRENT_SOURCE_DIR}/com.canonical.dbusmenu.xml
+         ${CMAKE_CURRENT_SOURCE_DIR}/dbusmenuexporterdbus_p.h DBusMenuExporterDBus
+         )
++else()
++    qt6_add_dbus_adaptor(dbusmenu_qt_SRCS
++        ${CMAKE_CURRENT_SOURCE_DIR}/com.canonical.dbusmenu.xml
++        ${CMAKE_CURRENT_SOURCE_DIR}/dbusmenuexporterdbus_p.h DBusMenuExporterDBus
++        )
+ endif()
+
+ configure_file(dbusmenu_version.h.in
+@@ -88,7 +96,7 @@ set_target_properties(dbusmenu-${QT_SUFFIX} PROPERTIES
+     )
+
+
+-if (NOT USE_QT5)
++if (NOT USE_QT5 AND NOT USE_QT6)
+     target_link_libraries(dbusmenu-${QT_SUFFIX}
+         ${QT_QTGUI_LIBRARIES}
+         ${QT_QTDBUS_LIBRARIES}
+@@ -96,10 +104,10 @@ if (NOT USE_QT5)
+         )
+ else()
+     target_link_libraries(dbusmenu-${QT_SUFFIX}
+-        ${Qt5Gui_LIBRARIES}
+-        ${Qt5Core_LIBRARIES}
+-        ${Qt5DBus_LIBRARIES}
+-        ${Qt5Widgets_LIBRARIES}
++        Qt::Gui
++        Qt::Core
++        Qt::DBus
++        Qt::Widgets
+         )
+ endif()
+
+diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
+index 6be27f5..4f21cb7 100644
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -1,9 +1,9 @@
+-if (NOT USE_QT5)
++if (NOT USE_QT5 AND NOT USE_QT6)
+     qt4_automoc(slowmenu.cpp)
+ endif()
+ add_executable(slowmenu slowmenu.cpp)
+
+-if (NOT USE_QT5)
++if (NOT USE_QT5 AND NOT USE_QT6)
+     target_link_libraries(slowmenu
+         ${QT_QTGUI_LIBRARIES}
+         ${QT_QTDBUS_LIBRARIES}
+@@ -26,7 +26,7 @@ if (NOT USE_QT5)
+         ${QT_QTTEST_INCLUDE_DIR}
+         ${QT_QTDBUS_INCLUDE_DIR}
+         )
+-else()
++elseif(USE_QT5)
+     find_package(Qt5Test REQUIRED)
+
+     target_link_libraries(slowmenu
+@@ -51,6 +51,31 @@ else()
+         ${Qt5Test_INCLUDE_DIRS}
+         ${Qt5DBus_INCLUDE_DIRS}
+         )
++else()
++    find_package(Qt6Test REQUIRED)
++
++    target_link_libraries(slowmenu
++        ${Qt6Gui_LIBRARIES}
++        ${Qt6Core_LIBRARIES}
++        ${Qt6DBus_LIBRARIES}
++        dbusmenu-qt6
++    )
++
++    set(test_LIBRARIES
++        ${Qt6Gui_LIBRARIES}
++        ${Qt6Core_LIBRARIES}
++        ${Qt6DBus_LIBRARIES}
++        ${Qt6Test_LIBRARIES}
++        dbusmenu-qt6
++    )
++
++    include_directories(
++        ${CMAKE_CURRENT_SOURCE_DIR}/../src
++        ${CMAKE_CURRENT_BINARY_DIR}/../src
++        ${CMAKE_CURRENT_BINARY_DIR}
++        ${Qt6Test_INCLUDE_DIRS}
++        ${Qt6DBus_INCLUDE_DIRS}
++        )
+ endif()
+
+ # Macros to create "check" target
+@@ -77,7 +102,7 @@ set(dbusmenuexportertest_SRCS
+     testutils.cpp
+     )
+
+-if (NOT USE_QT5)
++if (NOT USE_QT5 AND NOT USE_QT6)
+     qt4_automoc(${dbusmenuexportertest_SRCS})
+ endif()
+
+@@ -94,7 +119,7 @@ set(dbusmenuimportertest_SRCS
+     testutils.cpp
+     )
+
+-if (NOT USE_QT5)
++if (NOT USE_QT5 AND NOT USE_QT6)
+     qt4_automoc(${dbusmenuimportertest_SRCS})
+ endif()
+
+@@ -110,7 +135,7 @@ set(dbusmenushortcuttest_SRCS
+     dbusmenushortcuttest.cpp
+     )
+
+-if (NOT USE_QT5)
++if (NOT USE_QT5 AND NOT USE_QT6)
+     qt4_automoc(${dbusmenushortcuttest_SRCS})
+ endif()
diff --git a/patches/libdbusmenu-qt6/05_turn_off_tests.diff b/patches/libdbusmenu-qt6/05_turn_off_tests.diff
new file mode 100644
index 0000000..34c8b25
--- /dev/null
+++ b/patches/libdbusmenu-qt6/05_turn_off_tests.diff
@@ -0,0 +1,11 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -115,7 +115,7 @@
+     )
+ 
+ add_subdirectory(src)
+-add_subdirectory(tests)
++#add_subdirectory(tests)
+ add_subdirectory(tools)
+ 
+ if(WITH_DOC)
diff --git a/patches/libdbusmenu-qt6/series b/patches/libdbusmenu-qt6/series
new file mode 100644
index 0000000..b8103be
--- /dev/null
+++ b/patches/libdbusmenu-qt6/series
@@ -0,0 +1,5 @@
+01_build_without_cmake_automoc_relaxed_mode
+02_Fix_warnings_in_build_with_Qt_5_12_5
+03_Fix_build_with_Qt_6
+04_add_qt6_to_the_build
+05_turn_off_tests.diff
diff --git a/snapcraft.yaml b/snapcraft.yaml
index 7e601a3..ef1b0c4 100644
--- a/snapcraft.yaml
+++ b/snapcraft.yaml
@@ -816,6 +816,123 @@ parts:
         cmake-generator: Ninja
         cmake-parameters: *cmakeparameters
         build-environment: *buildenvironment
+    libpoppler:
+        after:
+        - qtconf
+        - libgpgmepp-qt6
+        plugin: cmake
+        source: https://gitlab.freedesktop.org/poppler/poppler.git
+        source-tag: poppler-24.04.0
+        build-packages:
+        - libboost-dev
+        - libjpeg-dev
+        - libopenjp2-7-dev
+        - libnss3-dev
+        - libcurl4-nss-dev
+        - liblcms2-dev
+        - libboost-container-dev
+        - libtiff-dev
+        stage-packages:
+        - libfreetype6
+        - liblcms2-2
+        - libcurl3-gnutls
+        - libfontconfig1
+        - libjpeg-turbo8
+        - libnspr4
+        - libnss3
+        - libopenjp2-7
+        - libpng16-16
+        - zlib1g
+        - libtiff5
+        build-snaps:
+        - kde-qt6-core22-sdk
+        cmake-generator: Ninja
+        cmake-parameters:
+        - -DCMAKE_INSTALL_PREFIX=/usr
+        - -DCMAKE_BUILD_TYPE=RelWithDebInfo
+        - -DQT_MAJOR_VERSION=6
+        - -DENABLE_QT5=OFF
+        - -DENABLE_QT6=ON
+        - -DENABLE_GLIB=OFF
+        - -DBUILD_QT5_TESTS=OFF
+        - -DBUILD_QT6_TESTS=OFF
+        - -DBUILD_CPP_TESTS=OFF
+        - -DBUILD_GTK_TESTS=OFF
+        - -DBUILD_MANUAL_TESTS=OFF
+        - -DCMAKE_INSTALL_SYSCONFDIR=/etc
+        - -DCMAKE_INSTALL_LOCALSTATEDIR=/var
+        - -DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON
+        - -DCMAKE_FIND_USE_PACKAGE_REGISTRY=OFF
+        - -DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON
+        - -DCMAKE_INSTALL_RUNSTATEDIR=/run
+        - -DCMAKE_SKIP_INSTALL_ALL_DEPENDENCY=ON
+        - -DCMAKE_VERBOSE_MAKEFILE=ON
+        - -DCMAKE_INSTALL_LIBDIR=lib/$CRAFT_ARCH_TRIPLET_BUILD_FOR
+        - -DENABLE_DOCS=OFF
+        - --log-level=STATUS
+        - -DCMAKE_LIBRARY_PATH=lib/$CRAFT_ARCH_TRIPLET_BUILD_FOR
+        - "-DCMAKE_FIND_ROOT_PATH=$CRAFT_STAGE\\;/snap/kde-qt6-core22-sdk/current\\;/usr"
+        - "-DCMAKE_PREFIX_PATH=$CRAFT_STAGE\\;/snap/kde-qt6-core22-sdk/current\\;/usr"
+        build-environment: *buildenvironment
+    packagekit-qt6:
+        after:
+        - qtconf
+        source: "https://www.freedesktop.org/software/PackageKit/releases/PackageKit-Qt-1.1.1.tar.xz"
+        source-checksum: sha256/8ad57523dbfd5a4b2086fa420b8ded63024e12efb8ca0ac42db767842e506212
+        plugin: cmake
+#        build-packages:
+#        - packagekit-dev
+#        stage-packages:
+#        - packagekit
+        build-snaps:
+        - kde-qt6-core22-sdk
+        cmake-generator: Ninja
+        cmake-parameters:
+        - -DCMAKE_INSTALL_PREFIX=/usr
+        - -DCMAKE_BUILD_TYPE=RelWithDebInfo
+        - -DQT_MAJOR_VERSION=6
+        - -DBUILD_WITH_QT5=OFF
+        - -DBUILD_WITH_QT6=ON
+        - -DCMAKE_INSTALL_SYSCONFDIR=/etc
+        - -DCMAKE_INSTALL_LOCALSTATEDIR=/var
+        - -DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON
+        - -DCMAKE_FIND_USE_PACKAGE_REGISTRY=OFF
+        - -DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON
+        - -DCMAKE_INSTALL_RUNSTATEDIR=/run
+        - -DCMAKE_SKIP_INSTALL_ALL_DEPENDENCY=ON
+        - -DCMAKE_VERBOSE_MAKEFILE=ON
+        - -DCMAKE_INSTALL_LIBDIR=lib/$CRAFT_ARCH_TRIPLET_BUILD_FOR
+        - -DENABLE_DOCS=OFF
+        - --log-level=STATUS
+        - -DCMAKE_LIBRARY_PATH=lib/$CRAFT_ARCH_TRIPLET_BUILD_FOR
+        - "-DCMAKE_FIND_ROOT_PATH=$CRAFT_STAGE\\;/snap/kde-qt6-core22-sdk/current\\;/usr"
+        - "-DCMAKE_PREFIX_PATH=$CRAFT_STAGE\\;/snap/kde-qt6-core22-sdk/current\\;/usr"
+#    libdbusmenu-qt6:
+#        after:
+#        - qtconf
+#        source: http://archive.ubuntu.com/ubuntu/pool/main/libd/libdbusmenu-qt/libdbusmenu-qt_0.9.3+16.04.20160218.orig.tar.gz
+#        source-checksum: sha256/a8e6358a31c44ccdf1bfc46c95a77a6bfc7fc1f536aadb913ed4f4405c570cf6
+# TODO need to patch it to support qt6
+#    libappstream-qt6:
+#        after:
+#        - qtconf
+#        source:
+    libgpgmepp-qt6:
+        after:
+        - qtconf
+        build-packages:
+        - libassuan-dev
+        - libgpg-error-dev
+        stage-packages:
+        - libassuan0
+        - libgpg-error0
+        source: https://www.gnupg.org/ftp/gcrypt/gpgme/gpgme-1.23.2.tar.bz2
+        source-checksum: sha256/9499e8b1f33cccb6815527a1bc16049d35a6198a6c5fae0185f2bd561bce5224
+        plugin: autotools
+        autotools-configure-parameters:
+        - --disable-gpgsm-test
+        - --enable-languages=cpp,qt6
+        build-environment: *buildenvironment
     kfilemetadata:
         after:
         - extra-cmake-modules
@@ -823,6 +940,7 @@ parts:
         - kconfig
         - kcoreaddons
         - ki18n
+        - libpoppler
         source: https://invent.kde.org/frameworks/kfilemetadata.git
         source-tag: *kf6-version
         build-packages:
@@ -833,7 +951,6 @@ parts:
         - libattr1-dev
         - libepub-dev
         - libexiv2-dev
-        - libpoppler-qt6-dev
         - libpostproc-dev
         - libswscale-dev
         - pkg-config
@@ -847,7 +964,6 @@ parts:
         - libavutil56
         - libepub0
         - libexiv2-27
-        - libpoppler-qt6-3
         plugin: cmake
         cmake-generator: Ninja
         cmake-parameters: *cmakeparameters-ffmpeg
@@ -902,7 +1018,7 @@ parts:
         - dbus-x11
         - doxygen
         - graphviz
-        - libdbusmenu-qt6-dev
+#        - libdbusmenu-qt6-dev
         - pkg-config
         stage-packages:
         - libcanberra0
@@ -928,6 +1044,7 @@ parts:
         - kservice
         - kwidgetsaddons
         - kwindowsystem
+        - libgpgmepp-qt6
         source: https://invent.kde.org/frameworks/kwallet.git
         source-tag: *kf6-version
         build-packages:
@@ -935,9 +1052,6 @@ parts:
         - graphviz
         - libboost-dev
         - libgcrypt20-dev
-        - libgpgme-dev
-        - libgpgmepp-dev
-        - libqgpgme15-qt6-dev
         build-snaps:
         - kde-qt6-core22-sdk
         plugin: cmake
@@ -946,7 +1060,6 @@ parts:
         build-environment: *buildenvironment
         stage-packages:
         - libgcrypt20
-        - libgpgmepp6
     kjobwidgets:
         after:
         - extra-cmake-modules
@@ -1288,19 +1401,18 @@ parts:
         - knotifications
         - kpackage
         - kwidgetsaddons
+        - packagekit-qt6
         source: https://invent.kde.org/frameworks/frameworkintegration.git
         source-tag: *kf6-version
         build-packages:
         - dbus-x11
         - libappstreamqt-dev
-        - libpackagekitqt6-dev
         - libxcursor-dev
         - pkg-config
         build-snaps:
         - kde-qt6-core22-sdk
         stage-packages:
         - libappstreamqt-3
-        - libpackagekitqt6
         plugin: cmake
         cmake-generator: Ninja
         cmake-parameters: *cmakeparameters-ffmpeg
@@ -1437,7 +1549,6 @@ parts:
         source-tag: *kf6-version
         build-packages:
         - intltool
-        - libaccounts-glib-dev
         - pkg-config
         build-snaps:
         - kde-qt6-core22-sdk
@@ -1445,8 +1556,6 @@ parts:
         cmake-generator: Ninja
         cmake-parameters: *cmakeparameters-ffmpeg
         build-environment: *buildenvironment
-        stage-packages:
-        - libaccounts-qt6-1
     kdav:
         after:
         - extra-cmake-modules



More information about the Neon-commits mailing list