commit: 32f2b98e9f02b90a652832a55498c662f77c56d3 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> AuthorDate: Mon Oct 7 19:06:41 2024 +0000 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> CommitDate: Mon Oct 21 17:56:40 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=32f2b98e
sci-geosciences/merkaartor: Port to Qt6 Bug: https://bugs.gentoo.org/941138 Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org> .../files/merkaartor-0.20.0-GNUInstallDirs.patch | 44 ++++++++++ .../files/merkaartor-0.20.0-disable-git.patch | 13 +++ sci-geosciences/merkaartor/merkaartor-9999.ebuild | 94 ++++++++-------------- sci-geosciences/merkaartor/metadata.xml | 1 + 4 files changed, 90 insertions(+), 62 deletions(-) diff --git a/sci-geosciences/merkaartor/files/merkaartor-0.20.0-GNUInstallDirs.patch b/sci-geosciences/merkaartor/files/merkaartor-0.20.0-GNUInstallDirs.patch new file mode 100644 index 000000000000..202f4e0ed6e2 --- /dev/null +++ b/sci-geosciences/merkaartor/files/merkaartor-0.20.0-GNUInstallDirs.patch @@ -0,0 +1,44 @@ +From 97fab944083c7a3a5716f1aaf40b9c62a3f84cf2 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Robert-Andr=C3=A9=20Mauchin?= <[email protected]> +Date: Sun, 26 May 2024 18:43:12 +0200 +Subject: [PATCH] Use CMAKE_INSTALL_LIBDIR for library installation path + +--- + CMakeLists.txt | 10 ++++++++-- + plugins/plugins.cmake | 2 ++ + 2 files changed, 10 insertions(+), 2 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index e107439d..50d82e1d 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -21,8 +21,14 @@ project(merkaartor VERSION ${VCS_VERSION}) + # compatibility. + # Using configure_file() allows us to store the metadata in a .cpp file, thus + # only rebuilding that one and linking. +-set(SHARE_DIR ${CMAKE_INSTALL_PREFIX}/share/merkaartor) +-set(LIB_DIR ${CMAKE_INSTALL_PREFIX}/lib/merkaartor) ++if (${CMAKE_SYSTEM_NAME} MATCHES "Linux") ++ include(GNUInstallDirs) ++ set(SHARE_DIR ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_DATAROOTDIR}/merkaartor) ++ set(LIB_DIR ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/merkaartor) ++else() ++ set(SHARE_DIR ${CMAKE_INSTALL_PREFIX}/share/merkaartor) ++ set(LIB_DIR ${CMAKE_INSTALL_PREFIX}/lib/merkaartor) ++endif() + configure_file("${PROJECT_SOURCE_DIR}/cmake/build-metadata.cpp.in" "${PROJECT_BINARY_DIR}/build-metadata.cpp" @ONLY) + + set(CMAKE_CXX_STANDARD 17) +diff --git a/plugins/plugins.cmake b/plugins/plugins.cmake +index 955be124..4c9fa499 100644 +--- a/plugins/plugins.cmake ++++ b/plugins/plugins.cmake +@@ -1,6 +1,8 @@ + + if (APPLE) + set(PLUGINS_INSTALL_POSTFIX "merkaartor.app/Contents/plugins") ++elseif (${CMAKE_SYSTEM_NAME} MATCHES "Linux") ++set(PLUGINS_INSTALL_POSTFIX "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/merkaartor/plugins") + else() + set(PLUGINS_INSTALL_POSTFIX "lib/merkaartor/plugins") + endif() diff --git a/sci-geosciences/merkaartor/files/merkaartor-0.20.0-disable-git.patch b/sci-geosciences/merkaartor/files/merkaartor-0.20.0-disable-git.patch new file mode 100644 index 000000000000..1f0188c86174 --- /dev/null +++ b/sci-geosciences/merkaartor/files/merkaartor-0.20.0-disable-git.patch @@ -0,0 +1,13 @@ +Description: Don't use git for version information. +Author: Bas Couwenberg <[email protected]> +Forwarded: not-needed + +--- a/cmake/vcs.cmake ++++ b/cmake/vcs.cmake +@@ -1,5 +1,5 @@ + +-if (EXISTS "${CMAKE_SOURCE_DIR}/.git") ++if (EXISTS "${CMAKE_SOURCE_DIR}/.git" AND NOT EXISTS "${CMAKE_SOURCE_DIR}/debian") + # If git directory is present, we require git executable and gather our info from git commands. + find_package(Git) + if (NOT ${GIT_FOUND}) diff --git a/sci-geosciences/merkaartor/merkaartor-9999.ebuild b/sci-geosciences/merkaartor/merkaartor-9999.ebuild index f0f4b1dbd195..892191a4c37c 100644 --- a/sci-geosciences/merkaartor/merkaartor-9999.ebuild +++ b/sci-geosciences/merkaartor/merkaartor-9999.ebuild @@ -1,12 +1,11 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -PLOCALES="cs de en es fi fr hr hu id_ID it ja nl pl pt_BR ru sv uk zh_TW" -inherit flag-o-matic plocale qmake-utils xdg +inherit cmake xdg -if [[ ${PV} != *9999 ]] ; then +if [[ ${PV} != *9999* ]] ; then SRC_URI="https://github.com/openstreetmap/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" KEYWORDS="~amd64 ~x86" else @@ -15,87 +14,58 @@ else fi DESCRIPTION="Qt based map editor for the openstreetmap.org project" -HOMEPAGE="http://www.merkaartor.be https://github.com/openstreetmap/merkaartor" +HOMEPAGE="https://www.merkaartor.be https://github.com/openstreetmap/merkaartor" LICENSE="GPL-2" SLOT="0" -IUSE="debug exif gps libproxy webengine" +IUSE="exif gps libproxy webengine zbar" +# bundles qtsingleapplication again, unfortunately DEPEND=" - dev-qt/qtconcurrent:5 - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtnetwork:5 - dev-qt/qtprintsupport:5 - dev-qt/qtsingleapplication[X,qt5(+)] - dev-qt/qtsvg:5 - dev-qt/qtwidgets:5 - dev-qt/qtxml:5 + dev-libs/protobuf:= + dev-qt/qt5compat:6 + dev-qt/qtbase:6[concurrent,gui,network,widgets,xml] + dev-qt/qtnetworkauth:6 + dev-qt/qtsvg:6 sci-libs/gdal:= sci-libs/proj:= sys-libs/zlib exif? ( media-gfx/exiv2:= ) gps? ( >=sci-geosciences/gpsd-3.17-r2:= ) - libproxy? ( net-libs/libproxy ) - webengine? ( dev-qt/qtwebengine:5[widgets] ) + libproxy? ( >=net-libs/libproxy-0.5 ) + webengine? ( dev-qt/qtwebengine:6[widgets] ) + zbar? ( media-gfx/zbar ) " RDEPEND="${DEPEND}" BDEPEND=" - dev-qt/linguist-tools:5 + dev-qt/qttools:6[linguist] virtual/pkgconfig " -PATCHES=( "${FILESDIR}"/${PN}-0.18.3-sharedir-pluginsdir.patch ) # bug 621826 - DOCS=( AUTHORS CHANGELOG ) -src_prepare() { - default - - rm -r 3rdparty || die "Failed to remove bundled libs" - - my_rm_loc() { - sed -i -e "s:../translations/${PN}_${1}.\(ts\|qm\)::" src/src.pro || die - rm "translations/${PN}_${1}.ts" || die - } +PATCHES=( + "${FILESDIR}"/${PN}-0.20.0-disable-git.patch # downstream patch + # pending upstream PR: https://github.com/openstreetmap/merkaartor/pull/291 + "${FILESDIR}"/${PN}-0.20.0-GNUInstallDirs.patch +) - if [[ -n "$(plocale_get_locales)" ]]; then - plocale_for_each_disabled_locale my_rm_loc - $(qt5_get_bindir)/lrelease src/src.pro || die - fi +src_prepare() { + # no Qt5 automagic, please + sed -e "/^ *find_package.*QT NAMES/s/Qt5 //" -i CMakeLists.txt || die - # build system expects to be building from git - if [[ ${PV} != *9999 ]] ; then - sed -i src/Config.pri -e "s:SION = .*:SION = \"${PV}\":g" || die - fi + cmake_src_prepare } src_configure() { - if has_version "<sci-libs/proj-8.0.0" ; then - # bug #685234 - append-cppflags -DACCEPT_USE_OF_DEPRECATED_PROJ_API_H - fi - - # TRANSDIR_SYSTEM is for bug #385671 - local myeqmakeargs=( - PREFIX="${EPREFIX}/usr" - LIBDIR="${EPREFIX}/usr/$(get_libdir)" - PLUGINS_DIR="/usr/$(get_libdir)/${PN}/plugins" - SHARE_DIR_PATH="/usr/share/${PN}" - TRANSDIR_MERKAARTOR="${EPREFIX}/usr/share/${PN}/translations" - TRANSDIR_SYSTEM="${EPREFIX}/usr/share/qt5/translations" - SYSTEM_QTSA=1 - NODEBUG=$(usex debug 0 1) - GEOIMAGE=$(usex exif 1 0) - GPSDLIB=$(usex gps 1 0) - LIBPROXY=$(usex libproxy 1 0) - USEWEBENGINE=$(usex webengine 1 0) + local mycmakeargs=( + -DGEOIMAGE=$(usex exif) + -DGPSD=$(usex gps) + -DLIBPROXY=$(usex libproxy) + -DWEBENGINE=$(usex webengine) + -DZBAR=$(usex zbar) + -DEXTRA_TESTS=OFF ) - [[ ${PV} != *9999 ]] && myeqmakeargs+=( RELEASE=1 ) - - eqmake5 "${myeqmakeargs[@]}" Merkaartor.pro -} -src_install() { - emake install INSTALL_ROOT="${D}" + cmake_src_configure } diff --git a/sci-geosciences/merkaartor/metadata.xml b/sci-geosciences/merkaartor/metadata.xml index 45f8b6b3867e..d312634d92a6 100644 --- a/sci-geosciences/merkaartor/metadata.xml +++ b/sci-geosciences/merkaartor/metadata.xml @@ -8,6 +8,7 @@ <use> <flag name="libproxy">Use <pkg>net-libs/libproxy</pkg> for getting the HTTP/HTTPS/SOCKS proxy configuration</flag> <flag name="webengine">Enable <pkg>dev-qt/qtwebengine</pkg> in some plugins</flag> + <flag name="zbar">Enable barcode support in MWalkingPapersBackground/GeoImage via <pkg>media-gfx/zbar</pkg></flag> </use> <upstream> <remote-id type="github">openstreetmap/merkaartor</remote-id>
