[PATCH phonesim 3/3] Make configure script detect and enable Qt6 if available

Andres Salomon <[email protected]> Sat, 28 Feb 2026 04:17:32 -0500
Newsgroups dev.linux.lists.ofono
Message-ID <20260228041732.346c5b16@5400>
From: Andres Salomon <[email protected]>

We also bump the C++ standard up to C++17.
---
 configure.ac | 26 +++++++++++++++++---------
 1 file changed, 17 insertions(+), 9 deletions(-)

diff --git a/configure.ac b/configure.ac
index ec40d8c..fd8d9fd 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,17 +26,25 @@ AC_ARG_ENABLE(optimization, AS_HELP_STRING([--disable-optimization],
 	fi
 ])
 
-PKG_CHECK_MODULES(QT, Qt5Core Qt5Gui Qt5Xml Qt5Network Qt5Qml Qt5DBus [Qt5Widgets >= 5.10],
-				dummy=yes, AC_MSG_ERROR(Qt5 is required))
+PKG_CHECK_MODULES(QT6, Qt6Core Qt6Gui Qt6Xml Qt6Network Qt6Qml Qt6DBus Qt6Core5Compat [Qt6Widgets >= 6.0.0], AC_SUBST(QT6_ENABLED, "yes"),
+	[PKG_CHECK_MODULES(QT5, Qt5Core Qt5Gui Qt5Xml Qt5Network Qt5Qml Qt5DBus [Qt5Widgets >= 5.10], dummy=yes, AC_MSG_ERROR(Qt5 is required))]
+)
 
 # Needed for qOverload
-CXXFLAGS="$CXXFLAGS --std=gnu++14"
-
-AC_SUBST(QT_CFLAGS)
-AC_SUBST(QT_LIBS)
-
-AC_MSG_CHECKING(for Qt5 host_bins)
-PKG_CHECK_VAR(QMAKE_PATH_HOST_BINS, Qt5Core, host_bins)
+CXXFLAGS="$CXXFLAGS --std=gnu++17"
+
+AC_SUBST(QT_CFLAGS, "${QT5_CFLAGS} ${QT6_CFLAGS}")
+AC_SUBST(QT_LIBS, "${QT6_LIBS} ${QT5_LIBS}")
+
+AS_IF([test "x$QT6_ENABLED" = "xyes"], [
+	# Try for Qt6
+	AC_MSG_CHECKING(for Qt6 host_bins)
+	PKG_CHECK_VAR(QMAKE_PATH_HOST_BINS, Qt6Core, libexecdir)
+], [
+	# Try for Qt5
+	AC_MSG_CHECKING(for Qt5 host_bins)
+	PKG_CHECK_VAR(QMAKE_PATH_HOST_BINS, Qt5Core, host_bins)
+])
 AC_SUBST(QMAKE_PATH_HOST_BINS)
 AC_MSG_RESULT($QMAKE_PATH_HOST_BINS)
 
-- 
2.51.0