# Maintainer: Daniel Fancsali <fancsali@gmail.com>
pkgname=gpsbabel
pkgver=1.9.0
pkgrel=0
pkgdesc="Convert, manipulate, and transfer data from GPS programs or GPS receivers"
url="https://www.gpsbabel.org/"
arch="aarch64 x86_64 armv7"
license="GPL-2.0-or-later"
makedepends="
	cmake
	libusb-dev
	qt5-qtserialport-dev
	qt5-qttools-dev
	qt5-qtwebchannel-dev
	qt5-qtwebengine-dev
	samurai
	shapelib-dev
	zlib-dev
	"
checkdepends="diffutils"
subpackages="$pkgname-lang"
source="$pkgname-$pkgver.tar.gz::https://github.com/GPSBabel/gpsbabel/archive/refs/tags/gpsbabel_${pkgver//./_}.tar.gz"
builddir="$srcdir/gpsbabel-gpsbabel_${pkgver//./_}"

build() {
	CFLAGS="$CFLAGS -flto=auto -O2" \
	CXXFLAGS="$CXXFLAGS -flto=auto -O2" \
	cmake -B build -G Ninja \
		-DCMAKE_BUILD_TYPE=None \
		-DCMAKE_INSTALL_PREFIX=/usr \
		-DCMAKE_SKIP_INSTALL_RPATH=ON \
		-DGPSBABEL_WITH_ZLIB=pkgconfig \
		-DGPSBABEL_WITH_SHAPELIB=pkgconfig \
		-DGPSBABEL_WITH_LIBUSB=pkgconfig \
		-DQT_VERSION_MAJOR=6
	cmake --build build
}

check() {
	ctest --test-dir build
}

package() {
	DESTDIR="$pkgdir" cmake --install build

	# XXX: the above doesn't install anything (broken)
	install -Dm755 build/gpsbabel build/gui/GPSBabelFE/gpsbabelfe -t "$pkgdir"/usr/bin
	install -Dm644 gui/*.qm gui/coretool/*.qm -t "$pkgdir"/usr/share/gpsbabel/translations
	install -Dm644 gui/gmapbase.html -t "$pkgdir"/usr/share/gpsbabel
	install -Dm644 gui/gpsbabel.desktop -t "$pkgdir"/usr/share/applications
}

lang() {
	pkgdesc="translations for $pkgname"
	install_if="$pkgname=$pkgver-r$pkgrel lang"

	amove usr/share/gpsbabel/translations
}

sha512sums="
e8591aef8015470471ff7ff6a75ab4a71a584f8de2ac00f3957d06ee76145bf1f53c26a12b8d963f1b96ce09270f54fbd5e96c80eccbeb8466ff94a75b72972d  gpsbabel-1.9.0.tar.gz
"
