commit:     055faefeb641ce9d594adfa8da7d26a0e592306f
Author:     Eli Schwartz <eschwartz93 <AT> gmail <DOT> com>
AuthorDate: Thu Mar 14 01:10:10 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Mar 14 01:59:48 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=055faefe

sci-geosciences/gpsbabel: sync live ebuild

Last "synced" in commit 26a3ddf088c3363bbe4d9ffaec95c25f70bb7024 but
unfortunately at the time it somehow set S= twice, resulting in:

 * Checking out https://github.com/gpsbabel/gpsbabel.git to 
/var/tmp/portage/sci-geosciences/gpsbabel-9999/work/gpsbabel-9999 ...

 * ERROR: sci-geosciences/gpsbabel-9999::gentoo failed (prepare phase):
 *   The source directory 
'/var/tmp/portage/sci-geosciences/gpsbabel-9999/work/gpsbabel-gpsbabel_9999' 
doesn't exist

???

It's also really old and still uses EAPI 7 and qmake while the stable
releases have followed upstream over to cmake.

Signed-off-by: Eli Schwartz <eschwartz93 <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sci-geosciences/gpsbabel/gpsbabel-9999.ebuild | 106 ++++++++++++++++----------
 1 file changed, 64 insertions(+), 42 deletions(-)

diff --git a/sci-geosciences/gpsbabel/gpsbabel-9999.ebuild 
b/sci-geosciences/gpsbabel/gpsbabel-9999.ebuild
index 4da02d15793a..35c11165c352 100644
--- a/sci-geosciences/gpsbabel/gpsbabel-9999.ebuild
+++ b/sci-geosciences/gpsbabel/gpsbabel-9999.ebuild
@@ -1,38 +1,30 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=7
+EAPI=8
 
-inherit qmake-utils
+CMAKE_IN_SOURCE_BUILD=1
+inherit cmake desktop xdg
 
 MY_PV="${PV//./_}"
 MY_P="${PN}_${MY_PV}"
 
 DESCRIPTION="GPS waypoints, tracks and routes converter"
 HOMEPAGE="https://www.gpsbabel.org/ https://github.com/gpsbabel/gpsbabel";
+
 if [[ ${PV} == 9999 ]] ; then
        inherit git-r3
        EGIT_REPO_URI="https://github.com/gpsbabel/gpsbabel.git";
-       SRC_URI="doc? ( https://www.gpsbabel.org/style3.css -> 
gpsbabel.org-style3.css )"
 else
-       SRC_URI="
-               
https://github.com/gpsbabel/gpsbabel/archive/gpsbabel_${MY_PV}.tar.gz
-               doc? ( https://www.gpsbabel.org/style3.css -> 
gpsbabel.org-style3.css )
-       "
-       KEYWORDS="~amd64 ~ppc ~x86"
+       
SRC_URI="https://github.com/gpsbabel/gpsbabel/archive/gpsbabel_${MY_PV}.tar.gz";
+       KEYWORDS="~amd64 ~arm ~arm64 ~x86"
        S="${WORKDIR}/gpsbabel-gpsbabel_${MY_PV}"
 fi
 
 LICENSE="GPL-2"
 SLOT="0"
-IUSE="doc"
+IUSE="doc qt6"
 
-DEPEND="
-       dev-qt/qtcore:5
-       sci-libs/shapelib:=
-       sys-libs/zlib
-       virtual/libusb:1
-"
 BDEPEND="
        virtual/pkgconfig
        doc? (
@@ -40,47 +32,77 @@ BDEPEND="
                dev-lang/perl
                dev-libs/libxslt
        )
+       !qt6? ( dev-qt/linguist-tools:5 )
+       qt6? ( dev-qt/qttools:6[linguist] )
+"
+
+RDEPEND="
+       dev-libs/expat
+       sci-libs/shapelib:=
+       sys-libs/zlib:=[minizip]
+       virtual/libusb:1
+       !qt6? (
+               dev-qt/qtcore:5
+               dev-qt/qtgui:5
+               dev-qt/qtnetwork:5
+               dev-qt/qtserialport:5
+               dev-qt/qtwebchannel:5
+               dev-qt/qtwebengine:5[widgets]
+               dev-qt/qtwidgets:5
+               dev-qt/qtxml:5
+       )
+       qt6? (
+               dev-qt/qtbase:6[gui,network,widgets,xml]
+               dev-qt/qtserialport:6
+               dev-qt/qtwebchannel:6
+               dev-qt/qtwebengine:6[widgets]
+               dev-qt/qt5compat:6
+       )
 "
-RDEPEND="${DEPEND}"
+
+DEPEND="${RDEPEND}"
+
+DOCS=( AUTHORS NEWS README.{contrib,igc,mapconverter,md} 
gui/README.{contrib,gui} )
 
 PATCHES=(
-       "${FILESDIR}"/${PN}-1.7.0-xmldoc.patch
-       "${FILESDIR}"/${PN}-1.7.0-use_system_shapelib.patch
+       "${FILESDIR}/${PN}-1.8.0-no-automagic-qt5-qt6.patch"
 )
 
-S="${WORKDIR}/${PN}-${MY_P}"
-
 src_prepare() {
-       default
+       cmake_src_prepare
 
        # ensure bundled libs are not used
        rm -r shapelib zlib || die
-       # remove prerequisite zlib/zlib.h
-       sed -i -e "s: zlib\/[a-z]*\.h::g" Makefile.in || die
-       # remove failing test (fixed by f91d28bf)
-       rm testo.d/arc-project.test || die
-
-       use doc && cp "${DISTDIR}/gpsbabel.org-style3.css" "${S}"
 }
 
 src_configure() {
-       econf \
-               $(use_with doc doc "${S}"/doc/manual) \
-               QMAKE=$(qt5_get_bindir)/qmake \
-               --with-zlib=system
-}
+       local mycmakeargs=(
+               -DGPSBABEL_WITH_LIBUSB=pkgconfig
+               -DGPSBABEL_WITH_SHAPELIB=pkgconfig
+               -DGPSBABEL_WITH_ZLIB=pkgconfig
+               -DGPSBABEL_MAPPREVIEW=ON
+               -DGPSBABEL_EMBED_MAP=ON
+               -DGPSBABEL_EMBED_TRANSLATIONS=ON
+               -DUSE_QT6="$(usex qt6)"
+       )
 
-src_compile() {
-       default
+       cmake_src_configure
+}
 
-       if use doc; then
-               perl xmldoc/makedoc || die
-               emake gpsbabel.html
-       fi
+cmake_src_compile() {
+       cmake_build gpsbabel
+       cmake_build gpsbabelfe
+       use doc && cmake_build gpsbabel.html
 }
 
 src_install() {
-       use doc && HTML_DOCS=( "${S}"/${PN}.html "${S}"/${PN}.org-style3.css )
-
-       default
+       use doc && dodoc gpsbabel.html
+       einstalldocs
+
+       dobin gpsbabel
+       dobin gui/GPSBabelFE/gpsbabelfe
+       insinto /usr/share/${PN}/translations/
+       doins gui/gpsbabel*_*.qm
+       newicon gui/images/appicon.png ${PN}.png
+       domenu gui/gpsbabel.desktop
 }

Reply via email to