commit:     9a4b8baa6cad9a48f162dfb82fe01baa66c20718
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 27 18:38:03 2020 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Sep 27 18:39:48 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9a4b8baa

kde-apps/marble: Fix build w/ IUSE=gps and >=sci-libs/gpsd-3.21

Upstream commit 7039b70f0255376e5d67dad603f5d67f8c3c07db

Thanks-to: <mario.haustein <AT> hrz.tu-chemnitz.de>
Closes: https://bugs.gentoo.org/744823
Package-Manager: Portage-3.0.8, Repoman-3.0.1
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../marble/files/marble-20.04.3-gpsd-3.21.patch    | 29 ++++++++++++++++++++++
 kde-apps/marble/marble-20.04.3.ebuild              |  2 ++
 2 files changed, 31 insertions(+)

diff --git a/kde-apps/marble/files/marble-20.04.3-gpsd-3.21.patch 
b/kde-apps/marble/files/marble-20.04.3-gpsd-3.21.patch
new file mode 100644
index 00000000000..acde5d8b661
--- /dev/null
+++ b/kde-apps/marble/files/marble-20.04.3-gpsd-3.21.patch
@@ -0,0 +1,29 @@
+From 7039b70f0255376e5d67dad603f5d67f8c3c07db Mon Sep 17 00:00:00 2001
+From: Antonio Rojas <aro...@archlinux.org>
+Date: Wed, 5 Aug 2020 14:20:37 +0200
+Subject: [PATCH] Fix build with gpsd 3.21
+
+Adapt to API changes
+---
+ .../positionprovider/gpsd/GpsdPositionProviderPlugin.cpp      | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/src/plugins/positionprovider/gpsd/GpsdPositionProviderPlugin.cpp 
b/src/plugins/positionprovider/gpsd/GpsdPositionProviderPlugin.cpp
+index 3a787eb1f..02dc4a355 100644
+--- a/src/plugins/positionprovider/gpsd/GpsdPositionProviderPlugin.cpp
++++ b/src/plugins/positionprovider/gpsd/GpsdPositionProviderPlugin.cpp
+@@ -79,7 +79,11 @@ void GpsdPositionProviderPlugin::update( gps_data_t data )
+ {
+     PositionProviderStatus oldStatus = m_status;
+     GeoDataCoordinates oldPosition = m_position;
++#if defined( GPSD_API_MAJOR_VERSION ) && ( GPSD_API_MAJOR_VERSION >= 10 )
++    if ( data.fix.status == STATUS_NO_FIX || std::isnan( data.fix.longitude ) 
|| std::isnan( data.fix.latitude ) )
++#else
+     if ( data.status == STATUS_NO_FIX || std::isnan( data.fix.longitude ) || 
std::isnan( data.fix.latitude ) )
++#endif
+         m_status = PositionProviderStatusAcquiring;
+     else {
+         m_status = PositionProviderStatusAvailable;
+-- 
+GitLab
+

diff --git a/kde-apps/marble/marble-20.04.3.ebuild 
b/kde-apps/marble/marble-20.04.3.ebuild
index f6ee6bf963a..72acb503e88 100644
--- a/kde-apps/marble/marble-20.04.3.ebuild
+++ b/kde-apps/marble/marble-20.04.3.ebuild
@@ -64,6 +64,8 @@ RDEPEND="${DEPEND}"
 # bug 588320
 RESTRICT+=" test"
 
+PATCHES=( "${FILESDIR}/${P}-gpsd-3.21.patch" ) # bug 744823
+
 src_prepare() {
        ecm_src_prepare
 

Reply via email to