sci-geosciences/gpsbabel: Force Qt6 properly, drop obsolete 9999 patch

Closes: https://bugs.gentoo.org/961578
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
This commit is contained in:
Andreas Sturmlechner
2026-05-17 00:29:02 +02:00
parent d67a319d34
commit 555a29df7c
4 changed files with 105 additions and 41 deletions

View File

@@ -1,34 +0,0 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2a7d805..65bd4db 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -26,7 +26,11 @@ set(CMAKE_AUTORCC ON)
add_executable(gpsbabel)
# Find the QtCore library
-find_package(QT NAMES Qt6 Qt5 COMPONENTS Core REQUIRED)
+if(USE_QT6)
+ find_package(QT NAMES Qt6 COMPONENTS Core REQUIRED)
+else()
+ find_package(QT NAMES Qt5 COMPONENTS Core REQUIRED)
+endif()
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core REQUIRED)
list(APPEND QT_LIBRARIES Qt${QT_VERSION_MAJOR}::Core)
if(${Qt${QT_VERSION_MAJOR}Core_VERSION} VERSION_LESS 5.12)
diff --git a/gui/CMakeLists.txt b/gui/CMakeLists.txt
index 4c839c2..ac329dd 100644
--- a/gui/CMakeLists.txt
+++ b/gui/CMakeLists.txt
@@ -23,7 +23,11 @@ endif()
add_executable(${TARGET} WIN32 MACOSX_BUNDLE)
# Find the QtCore library
-find_package(QT NAMES Qt6 Qt5 COMPONENTS Core REQUIRED)
+if(USE_QT6)
+ find_package(QT NAMES Qt6 COMPONENTS Core REQUIRED)
+else()
+ find_package(QT NAMES Qt5 COMPONENTS Core REQUIRED)
+endif()
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Gui Network SerialPort Widgets Xml REQUIRED)
list(APPEND QT_LIBRARIES Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Gui Qt${QT_VERSION_MAJOR}::Network Qt${QT_VERSION_MAJOR}::SerialPort Qt${QT_VERSION_MAJOR}::Widgets Qt${QT_VERSION_MAJOR}::Xml)
if(${Qt${QT_VERSION_MAJOR}Core_VERSION} VERSION_LESS 5.12)

View File

@@ -0,0 +1,102 @@
From 59b36e14fb713bf2c6147cd0bcf6397544501b0f Mon Sep 17 00:00:00 2001
From: Andreas Sturmlechner <asturm@gentoo.org>
Date: Sun, 17 May 2026 00:24:32 +0200
Subject: [PATCH] Force Qt6 properly
Closes: https://bugs.gentoo.org/961578
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
---
CMakeLists.txt | 6 +++---
gui/CMakeLists.txt | 7 +++----
gui/coretool/CMakeLists.txt | 5 ++---
3 files changed, 8 insertions(+), 10 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index eb8bada..4d4bf54 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -9,6 +9,7 @@ project(gpsbabel LANGUAGES C CXX VERSION ${GB.VERSION})
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED True)
+set(QT_VERSION_MAJOR 6)
# Do this after we set up common variables but before creating other
# variables that will be inherited.
add_subdirectory(gui)
@@ -26,8 +27,7 @@ set(CMAKE_AUTORCC ON)
add_executable(gpsbabel)
# Find the QtCore library
-find_package(QT NAMES Qt6 Qt5 COMPONENTS Core REQUIRED)
-find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core REQUIRED)
+find_package(Qt${QT_VERSION_MAJOR} CONFIG REQUIRED COMPONENTS Core)
list(APPEND QT_LIBRARIES Qt${QT_VERSION_MAJOR}::Core)
if(${Qt${QT_VERSION_MAJOR}Core_VERSION} VERSION_LESS 5.12)
message(FATAL_ERROR "Qt version ${Qt${QT_VERSION_MAJOR}Core_VERSION} found, but version 5.12 or newer is required.")
@@ -35,7 +35,7 @@ else()
message(STATUS "Using Qt${QT_VERSION_MAJOR} version ${Qt${QT_VERSION_MAJOR}Core_VERSION}")
endif()
if(${QT_VERSION_MAJOR} EQUAL "6")
- find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core5Compat REQUIRED)
+ find_package(Qt${QT_VERSION_MAJOR} CONFIG REQUIRED COMPONENTS Core5Compat)
list(APPEND QT_LIBRARIES Qt${QT_VERSION_MAJOR}::Core5Compat)
endif()
diff --git a/gui/CMakeLists.txt b/gui/CMakeLists.txt
index 97062e8..0489038 100644
--- a/gui/CMakeLists.txt
+++ b/gui/CMakeLists.txt
@@ -22,8 +22,7 @@ if(NOT UNIX OR APPLE)
endif()
# Find the QtCore library
-find_package(QT NAMES Qt6 Qt5 COMPONENTS Core REQUIRED)
-find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Gui Network SerialPort Widgets Xml REQUIRED)
+find_package(Qt${QT_VERSION_MAJOR} CONFIG REQUIRED COMPONENTS Core Gui Network SerialPort Widgets Xml)
list(APPEND QT_LIBRARIES Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Gui Qt${QT_VERSION_MAJOR}::Network Qt${QT_VERSION_MAJOR}::SerialPort Qt${QT_VERSION_MAJOR}::Widgets Qt${QT_VERSION_MAJOR}::Xml)
if(${Qt${QT_VERSION_MAJOR}Core_VERSION} VERSION_LESS 5.12)
message(FATAL_ERROR "Qt version ${Qt${QT_VERSION_MAJOR}Core_VERSION} found, but version 5.12 or newer is required.")
@@ -33,7 +32,7 @@ endif()
option(GPSBABEL_MAPPREVIEW "enable map preview." ON)
if (GPSBABEL_MAPPREVIEW)
- find_package(Qt${QT_VERSION_MAJOR} COMPONENTS WebEngineWidgets WebChannel REQUIRED)
+ find_package(Qt${QT_VERSION_MAJOR} CONFIG REQUIRED COMPONENTS WebEngineWidgets WebChannel)
list(APPEND QT_LIBRARIES Qt${QT_VERSION_MAJOR}::WebEngineWidgets Qt${QT_VERSION_MAJOR}::WebChannel)
else()
target_compile_definitions(gpsbabelfe PRIVATE DISABLE_MAPPREVIEW)
@@ -173,7 +172,7 @@ message(STATUS "Libs are: \"${LnkLibs}\"")
get_target_property(IncDirs gpsbabelfe INCLUDE_DIRECTORIES)
message(STATUS "Include Directores are: \"${IncDirs}\"")
-find_package(Qt${QT_VERSION_MAJOR} QUIET COMPONENTS LinguistTools)
+find_package(Qt${QT_VERSION_MAJOR} CONFIG QUIET COMPONENTS LinguistTools)
if (NOT Qt${QT_VERSION_MAJOR}LinguistTools_FOUND)
message(WARNING "Qt${QT_VERSION_MAJOR}LinguistTools not found, gpsbabelfe translations cannot be updated or released, and application cannot be packaged.")
else()
diff --git a/gui/coretool/CMakeLists.txt b/gui/coretool/CMakeLists.txt
index dbe37b7..677050b 100644
--- a/gui/coretool/CMakeLists.txt
+++ b/gui/coretool/CMakeLists.txt
@@ -4,8 +4,7 @@ endif()
add_executable(coretool EXCLUDE_FROM_ALL)
-find_package(QT NAMES Qt6 Qt5 COMPONENTS Core REQUIRED)
-find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Widgets REQUIRED)
+find_package(Qt${QT_VERSION_MAJOR} CONFIG REQUIRED COMPONENTS Core Widgets)
list(APPEND QT_LIBRARIES Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Widgets)
list(APPEND SOURCES ../formatload.cc)
@@ -39,7 +38,7 @@ list(APPEND TRANSLATIONS gpsbabel_hu.ts)
list(APPEND TRANSLATIONS gpsbabel_it.ts)
list(APPEND TRANSLATIONS gpsbabel_ru.ts)
-find_package(Qt${QT_VERSION_MAJOR} QUIET COMPONENTS LinguistTools)
+find_package(Qt${QT_VERSION_MAJOR} CONFIG QUIET COMPONENTS LinguistTools)
if(Qt${QT_VERSION_MAJOR}LinguistTools_FOUND)
# The line numbers are almost meaningless the way we generate corestrings.h, and we force everything to the same context.
# With line numbers and the similartext heuristic enabled translations can be copied from an old message to a new message,
--
2.54.0

View File

@@ -1,4 +1,4 @@
# Copyright 1999-2025 Gentoo Authors
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -57,7 +57,7 @@ DEPEND="${RDEPEND}"
DOCS=( AUTHORS NEWS README.{contrib,igc,md} gui/README.gui )
PATCHES=(
"${FILESDIR}/${PN}-1.8.0-no-automagic-qt5-qt6.patch"
"${FILESDIR}"/${P}-force-qt6.patch # bug 961578
"${FILESDIR}"/${P}-xmldoc.patch
"${FILESDIR}"/${P}-xmllint.patch
)
@@ -77,7 +77,6 @@ src_configure() {
-DGPSBABEL_WITH_LIBUSB=pkgconfig
-DGPSBABEL_WITH_SHAPELIB=pkgconfig
-DGPSBABEL_WITH_ZLIB=pkgconfig
-DUSE_QT6=ON
)
cmake_src_configure

View File

@@ -1,4 +1,4 @@
# Copyright 1999-2025 Gentoo Authors
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -49,8 +49,6 @@ DEPEND="${RDEPEND}"
DOCS=( AUTHORS NEWS README.{contrib,igc,md} gui/README.gui )
PATCHES=( "${FILESDIR}/${PN}-1.8.0-no-automagic-qt5-qt6.patch" )
src_prepare() {
cmake_src_prepare
@@ -66,7 +64,6 @@ src_configure() {
-DGPSBABEL_MAPPREVIEW=ON
-DGPSBABEL_EMBED_MAP=ON
-DGPSBABEL_EMBED_TRANSLATIONS=ON
-DUSE_QT6=ON
)
cmake_src_configure