From 13519fe87a76a0efeb59efccba4558cb90d8abd7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20St=C3=BCrz?= Date: Tue, 12 Aug 2025 12:20:40 +0200 Subject: [PATCH] Add Qt6 support --- debian | 1 + {debian => debian-qt5}/changelog | 0 {debian => debian-qt5}/compat | 0 {debian => debian-qt5}/control | 4 ++-- {debian => debian-qt5}/copyright | 2 +- .../nymea-networkmanager.install | 0 {debian => debian-qt5}/rules | 0 {debian => debian-qt5}/source/format | 0 debian-qt6/changelog | 1 + debian-qt6/compat | 1 + debian-qt6/control | 23 +++++++++++++++++++ debian-qt6/copyright | 1 + debian-qt6/nymea-networkmanager.install | 1 + debian-qt6/rules | 12 ++++++++++ debian-qt6/source | 1 + nymea-networkmanager.pri | 16 +++++++++++-- nymea-networkmanager/main.cpp | 2 +- nymea-networkmanager/nymea-networkmanager.pro | 13 +++++++++++ 18 files changed, 72 insertions(+), 6 deletions(-) create mode 120000 debian rename {debian => debian-qt5}/changelog (100%) rename {debian => debian-qt5}/compat (100%) rename {debian => debian-qt5}/control (84%) rename {debian => debian-qt5}/copyright (85%) rename {debian => debian-qt5}/nymea-networkmanager.install (100%) rename {debian => debian-qt5}/rules (100%) rename {debian => debian-qt5}/source/format (100%) create mode 120000 debian-qt6/changelog create mode 100644 debian-qt6/compat create mode 100644 debian-qt6/control create mode 120000 debian-qt6/copyright create mode 120000 debian-qt6/nymea-networkmanager.install create mode 100755 debian-qt6/rules create mode 120000 debian-qt6/source diff --git a/debian b/debian new file mode 120000 index 0000000..cd83f55 --- /dev/null +++ b/debian @@ -0,0 +1 @@ +debian-qt5 \ No newline at end of file diff --git a/debian/changelog b/debian-qt5/changelog similarity index 100% rename from debian/changelog rename to debian-qt5/changelog diff --git a/debian/compat b/debian-qt5/compat similarity index 100% rename from debian/compat rename to debian-qt5/compat diff --git a/debian/control b/debian-qt5/control similarity index 84% rename from debian/control rename to debian-qt5/control index c1ec8ef..76f104d 100644 --- a/debian/control +++ b/debian-qt5/control @@ -1,7 +1,7 @@ Source: nymea-networkmanager Section: utils Priority: optional -Maintainer: Simon Stürz +Maintainer: nymea GmbH Standards-Version: 4.6.0 Build-Depends: debhelper (>= 9.0.0), dpkg-dev (>= 1.16.1~), @@ -20,4 +20,4 @@ Depends: ${misc:Depends}, libnymea-gpio Description: Daemon for wireless configuration using bluetooth LE. This daemon allows to configure a wireless network using a bluetooth - low energy gatt server. The tool is written in Qt 5. + low energy gatt server. diff --git a/debian/copyright b/debian-qt5/copyright similarity index 85% rename from debian/copyright rename to debian-qt5/copyright index 7a2994b..3990070 100644 --- a/debian/copyright +++ b/debian-qt5/copyright @@ -7,5 +7,5 @@ License: GPL-3 Public License can be found in `/usr/share/common-licenses/GPL-3'. Files: * -Copyright: (C) 2018 - 2024 nymea GmbH +Copyright: (C) 2018 - 2025 nymea GmbH License: GPL-3 diff --git a/debian/nymea-networkmanager.install b/debian-qt5/nymea-networkmanager.install similarity index 100% rename from debian/nymea-networkmanager.install rename to debian-qt5/nymea-networkmanager.install diff --git a/debian/rules b/debian-qt5/rules similarity index 100% rename from debian/rules rename to debian-qt5/rules diff --git a/debian/source/format b/debian-qt5/source/format similarity index 100% rename from debian/source/format rename to debian-qt5/source/format diff --git a/debian-qt6/changelog b/debian-qt6/changelog new file mode 120000 index 0000000..98cdf8f --- /dev/null +++ b/debian-qt6/changelog @@ -0,0 +1 @@ +../debian-qt5/changelog \ No newline at end of file diff --git a/debian-qt6/compat b/debian-qt6/compat new file mode 100644 index 0000000..b1bd38b --- /dev/null +++ b/debian-qt6/compat @@ -0,0 +1 @@ +13 diff --git a/debian-qt6/control b/debian-qt6/control new file mode 100644 index 0000000..06c43de --- /dev/null +++ b/debian-qt6/control @@ -0,0 +1,23 @@ +Source: nymea-networkmanager +Section: utils +Priority: optional +Maintainer: nymea GmbH +Standards-Version: 4.7.2 +Build-Depends: debhelper, + dpkg-dev, + qt6-base-dev, + qt6-base-dev-tools, + qt6-connectivity-dev, + libnymea-networkmanager-dev, + libnymea-gpio-dev + + +Package: nymea-networkmanager +Architecture: any +Depends: ${misc:Depends}, + network-manager, + libnymea-networkmanager, + libnymea-gpio +Description: Daemon for wireless configuration using bluetooth LE. + This daemon allows to configure a wireless network using a bluetooth + low energy gatt server. diff --git a/debian-qt6/copyright b/debian-qt6/copyright new file mode 120000 index 0000000..cc65877 --- /dev/null +++ b/debian-qt6/copyright @@ -0,0 +1 @@ +../debian-qt5/copyright \ No newline at end of file diff --git a/debian-qt6/nymea-networkmanager.install b/debian-qt6/nymea-networkmanager.install new file mode 120000 index 0000000..416e9d1 --- /dev/null +++ b/debian-qt6/nymea-networkmanager.install @@ -0,0 +1 @@ +../debian-qt5/nymea-networkmanager.install \ No newline at end of file diff --git a/debian-qt6/rules b/debian-qt6/rules new file mode 100755 index 0000000..6f32bf3 --- /dev/null +++ b/debian-qt6/rules @@ -0,0 +1,12 @@ +#!/usr/bin/make -f + +export DH_VERBOSE=1 + +override_dh_missing: + dh_missing --list-missing + +override_dh_installsystemd: + dh_installsystemd --restart-after-upgrade + +%: + dh $@ --buildsystem=qmake6 --parallel diff --git a/debian-qt6/source b/debian-qt6/source new file mode 120000 index 0000000..1eac8ea --- /dev/null +++ b/debian-qt6/source @@ -0,0 +1 @@ +../debian-qt5/source \ No newline at end of file diff --git a/nymea-networkmanager.pri b/nymea-networkmanager.pri index a94a33d..e669f67 100644 --- a/nymea-networkmanager.pri +++ b/nymea-networkmanager.pri @@ -1,5 +1,17 @@ -QMAKE_CXXFLAGS *= -Werror -std=c++1z -g -QMAKE_LFLAGS *= -std=c++1z +greaterThan(QT_MAJOR_VERSION, 5) { + message("Building using Qt6 support") + CONFIG *= c++17 + QMAKE_LFLAGS *= -std=c++17 + QMAKE_CXXFLAGS *= -std=c++17 +} else { + message("Building using Qt5 support") + CONFIG *= c++11 + QMAKE_LFLAGS *= -std=c++11 + QMAKE_CXXFLAGS *= -std=c++11 + DEFINES += QT_DISABLE_DEPRECATED_UP_TO=0x050F00 +} + +QMAKE_CXXFLAGS *= -Werror -g top_srcdir=$$PWD top_builddir=$$shadowed($$PWD) diff --git a/nymea-networkmanager/main.cpp b/nymea-networkmanager/main.cpp index 92d8c4b..774c093 100644 --- a/nymea-networkmanager/main.cpp +++ b/nymea-networkmanager/main.cpp @@ -109,7 +109,7 @@ int main(int argc, char *argv[]) parser.addHelpOption(); parser.addVersionOption(); parser.setApplicationDescription(QString("\nThis daemon allows to configure a wifi network using a bluetooth low energy connection.\n\n" - "Copyright %1 2018-2024 Simon Stürz \n\n" + "Copyright %1 2018-2025 Simon Stürz \n\n" "Modes: \n" " - offline This mode starts the bluetooth server once the device is offline\n" " and not connected to any LAN network.\n" diff --git a/nymea-networkmanager/nymea-networkmanager.pro b/nymea-networkmanager/nymea-networkmanager.pro index 48db5f0..3bf690f 100644 --- a/nymea-networkmanager/nymea-networkmanager.pro +++ b/nymea-networkmanager/nymea-networkmanager.pro @@ -2,6 +2,19 @@ include(../nymea-networkmanager.pri) TARGET = nymea-networkmanager +greaterThan(QT_MAJOR_VERSION, 5) { + message("Building using Qt6 support") + CONFIG *= c++17 + QMAKE_LFLAGS *= -std=c++17 + QMAKE_CXXFLAGS *= -std=c++17 +} else { + message("Building using Qt5 support") + CONFIG *= c++11 + QMAKE_LFLAGS *= -std=c++11 + QMAKE_CXXFLAGS *= -std=c++11 + DEFINES += QT_DISABLE_DEPRECATED_UP_TO=0x050F00 +} + QT += core network bluetooth dbus QT -= gui