sci-geosciences/qgis: 3.4.12 version bump
authorAndreas Sturmlechner <asturm@gentoo.org>
Sun, 20 Oct 2019 08:45:46 +0000 (10:45 +0200)
committerAndreas Sturmlechner <asturm@gentoo.org>
Sun, 20 Oct 2019 14:19:34 +0000 (16:19 +0200)
Fixes build with Qt 5.13
Fixes pyyaml usage (fixed upstream)

Thanks-to: Marco Genasci <fedeliallalinea@gmail.com>
Closes: https://bugs.gentoo.org/687292
Package-Manager: Portage-2.3.77, Repoman-2.3.17
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
sci-geosciences/qgis/Manifest
sci-geosciences/qgis/files/qgis-3.4.12-qt-5.13.patch [new file with mode: 0644]
sci-geosciences/qgis/qgis-3.4.12.ebuild [new file with mode: 0644]
sci-geosciences/qgis/qgis-9999.ebuild

index 7619af9932767bfc66792e0bfa48c1899cbb65ba..3c21f68de4eba0b914e7bad56cedc81f5aff4ce1 100644 (file)
@@ -1,3 +1,4 @@
 DIST qgis-3.2.3.tar.bz2 71991789 BLAKE2B 656c0304cfc32d619a72f08185f76cf02aed7336fac8a4bf928c7f8b0e00df2e995e891a7ba757d8ce6acb5892c5c7425765608ee0441fa7eae8070a828734d4 SHA512 3366fce6232dd1b7657c0693debf742309d5594c7875017f464efd33e63bd4116eb062a0ebeb5b3108572a9658c3fb7d729e5a5db8fefb3ceae490ef1ec6bd22
+DIST qgis-3.4.12.tar.bz2 74738234 BLAKE2B 7b78dfc447cafb979dd86de2fd6d6a6248ecc5de8d82285ac22d44343bc2887f97574374ff3018da4fd74ed66b7ae55e20916b9fbb3c9d8745c22f0937d6d8b6 SHA512 c932357374b2b6c71188cc53ab8606bc056fac32147d8a267024bbe6787da524ce7b18ac6a166e3d5db1d5ca9f161ff3528e3eaa951cad1f764d98fde65f02a4
 DIST qgis-3.4.7.tar.bz2 74373862 BLAKE2B 9b3a9987df406c703b0cdac36bc5267cca23b77e1c9f142e74b5170018c7c1ccdca738908412803a6703b0d2e64ef7733f2f4e986188cf90ce79a65e72113a55 SHA512 3977a49378ecaa27556ce76c6755281e477cea4a29a6a2ab496ef8e7b9b488cb31f9a124eece6f8a4974c98f0ae5396061e8c14fd577655bb4d428b818d1e1db
 DIST qgis_sample_data-2.8.14.tar.gz 22119181 BLAKE2B 2d0565e91ec8119382bc9ab8e262dc04227fe8289146794891759ff5a32012245270614ba1119a6329fc45cf56852830c2079589309aa3467873f71f5c608eac SHA512 6b2653d5b57ffc2c2317639dac212429840984ac917ca3e452b39aabb99ea106d1a77c1c1dd967244ef16ede9deae751b170affdf08b72239eafed5b8977da3d
diff --git a/sci-geosciences/qgis/files/qgis-3.4.12-qt-5.13.patch b/sci-geosciences/qgis/files/qgis-3.4.12-qt-5.13.patch
new file mode 100644 (file)
index 0000000..9edb442
--- /dev/null
@@ -0,0 +1,22 @@
+From ef8f06330f57882f740cfe7f8f3659b54b1bb1fb Mon Sep 17 00:00:00 2001
+From: Matthias Kuhn <matthias@opengis.ch>
+Date: Sat, 22 Jun 2019 10:11:31 +0200
+Subject: [PATCH] Add missing include
+
+Fix https://github.com/qgis/QGIS/issues/30316
+---
+ src/analysis/interpolation/qgsinterpolator.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/analysis/interpolation/qgsinterpolator.h b/src/analysis/interpolation/qgsinterpolator.h
+index 35343ccdf7f..5d694418299 100644
+--- a/src/analysis/interpolation/qgsinterpolator.h
++++ b/src/analysis/interpolation/qgsinterpolator.h
+@@ -19,6 +19,7 @@
+ #define QGSINTERPOLATOR_H
+ #include <QVector>
++#include <QList>
+ #include "qgis_sip.h"
+ #include "qgis_analysis.h"
diff --git a/sci-geosciences/qgis/qgis-3.4.12.ebuild b/sci-geosciences/qgis/qgis-3.4.12.ebuild
new file mode 100644 (file)
index 0000000..dc087c0
--- /dev/null
@@ -0,0 +1,216 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{5,6} )
+PYTHON_REQ_USE="sqlite"
+QT_MIN_VER="5.9.4"
+
+if [[ ${PV} = *9999 ]]; then
+       EGIT_REPO_URI="https://github.com/${PN}/${PN^^}.git"
+       inherit git-r3
+else
+       SRC_URI="https://qgis.org/downloads/${P}.tar.bz2
+               examples? ( https://qgis.org/downloads/data/qgis_sample_data.tar.gz -> qgis_sample_data-2.8.14.tar.gz )"
+       KEYWORDS="~amd64 ~x86"
+fi
+inherit cmake-utils desktop python-single-r1 qmake-utils xdg
+
+DESCRIPTION="User friendly Geographic Information System"
+HOMEPAGE="https://www.qgis.org/"
+
+LICENSE="GPL-2+ GPL-3+"
+SLOT="0"
+IUSE="3d examples georeferencer grass hdf5 mapserver netcdf opencl oracle polar postgres python qml webkit"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE} mapserver? ( python )"
+
+BDEPEND="
+       >=dev-qt/linguist-tools-${QT_MIN_VER}:5
+       sys-devel/bison
+       sys-devel/flex
+"
+COMMON_DEPEND="
+       app-crypt/qca:2[qt5(+),ssl]
+       >=dev-db/spatialite-4.2.0
+       dev-db/sqlite:3
+       dev-libs/expat
+       dev-libs/libzip:=
+       dev-libs/qtkeychain[qt5(+)]
+       >=dev-qt/designer-${QT_MIN_VER}:5
+       >=dev-qt/qtconcurrent-${QT_MIN_VER}:5
+       >=dev-qt/qtcore-${QT_MIN_VER}:5
+       >=dev-qt/qtgui-${QT_MIN_VER}:5
+       >=dev-qt/qtnetwork-${QT_MIN_VER}:5[ssl]
+       >=dev-qt/qtpositioning-${QT_MIN_VER}:5
+       >=dev-qt/qtprintsupport-${QT_MIN_VER}:5
+       >=dev-qt/qtserialport-${QT_MIN_VER}:5
+       >=dev-qt/qtsvg-${QT_MIN_VER}:5
+       >=dev-qt/qtsql-${QT_MIN_VER}:5
+       >=dev-qt/qtwidgets-${QT_MIN_VER}:5
+       >=dev-qt/qtxml-${QT_MIN_VER}:5
+       >=sci-libs/gdal-2.2.3:=[geos]
+       sci-libs/geos
+       sci-libs/libspatialindex:=
+       sci-libs/proj
+       >=x11-libs/qscintilla-2.10.1:=[qt5(+)]
+       >=x11-libs/qwt-6.1.2:6=[qt5(+),svg]
+       3d? ( >=dev-qt/qt3d-${QT_MIN_VER}:5 )
+       georeferencer? ( sci-libs/gsl:= )
+       grass? ( =sci-geosciences/grass-7*:= )
+       hdf5? ( sci-libs/hdf5:= )
+       mapserver? ( dev-libs/fcgi )
+       netcdf? ( sci-libs/netcdf:= )
+       opencl? ( virtual/opencl )
+       oracle? (
+               dev-db/oracle-instantclient:=
+               sci-libs/gdal:=[oracle]
+       )
+       polar? ( >=x11-libs/qwtpolar-1.1.1-r1[qt5(+)] )
+       postgres? ( dev-db/postgresql:= )
+       python? (
+               ${PYTHON_DEPS}
+               dev-python/future[${PYTHON_USEDEP}]
+               dev-python/httplib2[${PYTHON_USEDEP}]
+               dev-python/jinja[${PYTHON_USEDEP}]
+               dev-python/markupsafe[${PYTHON_USEDEP}]
+               dev-python/owslib[${PYTHON_USEDEP}]
+               dev-python/pygments[${PYTHON_USEDEP}]
+               dev-python/PyQt5[designer,network,sql,svg,webkit?,${PYTHON_USEDEP}]
+               dev-python/python-dateutil[${PYTHON_USEDEP}]
+               dev-python/pytz[${PYTHON_USEDEP}]
+               dev-python/pyyaml[${PYTHON_USEDEP}]
+               >=dev-python/qscintilla-python-2.10.1[qt5(+),${PYTHON_USEDEP}]
+               dev-python/requests[${PYTHON_USEDEP}]
+               dev-python/sip:=[${PYTHON_USEDEP}]
+               dev-python/six[${PYTHON_USEDEP}]
+               >=sci-libs/gdal-2.2.3[python,${PYTHON_USEDEP}]
+               postgres? ( dev-python/psycopg:2[${PYTHON_USEDEP}] )
+       )
+       qml? ( >=dev-qt/qtdeclarative-${QT_MIN_VER}:5 )
+       webkit? ( >=dev-qt/qtwebkit-5.9.1:5 )
+"
+DEPEND="${COMMON_DEPEND}
+       >=dev-qt/qttest-${QT_MIN_VER}:5
+       >=dev-qt/qtxmlpatterns-${QT_MIN_VER}:5
+       python? ( ${PYTHON_DEPS} )
+"
+RDEPEND="${COMMON_DEPEND}
+       sci-geosciences/gpsbabel
+"
+
+# Disabling test suite because upstream disallow running from install path
+RESTRICT="test"
+
+PATCHES=(
+       # git master
+       "${FILESDIR}/${PN}-2.18.12-cmake-lib-suffix.patch"
+       "${FILESDIR}/${P}-qt-5.13.patch"
+       # TODO upstream
+       "${FILESDIR}/${PN}-3.4.7-featuresummary.patch"
+       "${FILESDIR}/${PN}-3.4.7-default-qmldir.patch"
+)
+
+pkg_setup() {
+       python-single-r1_pkg_setup
+}
+
+src_prepare() {
+       cmake-utils_src_prepare
+
+       sed -e "/FIND_PACKAGE(QtQmlTools/s/ REQUIRED//" \
+               -i CMakeLists.txt || die # TODO fixed in master
+}
+
+src_configure() {
+       local mycmakeargs=(
+               -DQGIS_MANUAL_SUBDIR=share/man/
+               -DQGIS_LIB_SUBDIR=$(get_libdir)
+               -DQGIS_PLUGIN_SUBDIR=$(get_libdir)/qgis
+               -DQWT_INCLUDE_DIR=/usr/include/qwt6
+               -DQWT_LIBRARY=/usr/$(get_libdir)/libqwt6-qt5.so
+               -DPEDANTIC=OFF
+               -DUSE_CCACHE=OFF
+               -DWITH_APIDOC=OFF
+               -DWITH_INTERNAL_MDAL=ON # not packaged, bug 684538
+               -DWITH_QSPATIALITE=ON
+               -DENABLE_TESTS=OFF
+               -DWITH_3D=$(usex 3d)
+               -DWITH_GEOREFERENCER=$(usex georeferencer)
+               -DWITH_GRASS7=$(usex grass)
+               $(cmake-utils_use_find_package hdf5 HDF5)
+               -DWITH_SERVER=$(usex mapserver)
+               $(cmake-utils_use_find_package netcdf NetCDF)
+               -DUSE_OPENCL=$(usex opencl)
+               -DWITH_ORACLE=$(usex oracle)
+               -DWITH_QWTPOLAR=$(usex polar)
+               -DWITH_POSTGRESQL=$(usex postgres)
+               -DWITH_BINDINGS=$(usex python)
+               -DWITH_CUSTOM_WIDGETS=$(usex python)
+               -DWITH_QUICK=$(usex qml)
+               -DWITH_QTWEBKIT=$(usex webkit)
+       )
+
+       if use grass; then
+               mycmakeargs+=(
+                       -DGRASS_PREFIX7=/usr/$(get_libdir)/grass70
+               )
+       fi
+
+       use python && mycmakeargs+=( -DBINDINGS_GLOBAL_INSTALL=ON )
+
+       # bugs 612956, 648726
+       addpredict /dev/dri/renderD128
+       addpredict /dev/dri/renderD129
+
+       cmake-utils_src_configure
+}
+
+src_install() {
+       cmake-utils_src_install
+
+       newmenu linux/org.qgis.qgis.desktop.in org.qgis.qgis.desktop
+
+       local size type
+       for size in 16 22 24 32 48 64 96 128 256; do
+               newicon -s ${size} linux/icons/${PN}-icon${size}x${size}.png ${PN}.png
+               newicon -c mimetypes -s ${size} linux/icons/${PN}-mime-icon${size}x${size}.png ${PN}-mime.png
+               for type in qgs qml qlr qpt; do
+                       newicon -c mimetypes -s ${size} linux/icons/${PN}-${type}${size}x${size}.png ${PN}-${type}.png
+               done
+       done
+       newicon -s scalable images/icons/qgis_icon.svg qgis.svg
+
+       insinto /usr/share/mime/packages
+       doins debian/qgis.xml
+
+       if use examples; then
+               docinto examples
+               dodoc -r "${WORKDIR}"/qgis_sample_data/.
+               docompress -x /usr/share/doc/${PF}/examples
+       fi
+
+       if use python; then
+               python_optimize "${ED}"/usr/share/qgis/python
+       fi
+
+       if use grass; then
+               python_fix_shebang "${ED}"/usr/share/qgis/grass/scripts
+       fi
+}
+
+pkg_postinst() {
+       if use postgres; then
+               elog "If you don't intend to use an external PostGIS server"
+               elog "you should install:"
+               elog "   dev-db/postgis"
+       elif use python; then
+               elog "Support of PostgreSQL is disabled."
+               elog "But some installed python-plugins import the psycopg2 module."
+               elog "If you do not need these plugins just disable them"
+               elog "in the Plugins menu, else you need to set USE=\"postgres\""
+       fi
+
+       xdg_pkg_postinst
+}
index a541d6c46fd26fff71406203292929017cd521d2..682733a10ddea92bb6f3721d8e36ac5c1d2bc00d 100644 (file)
@@ -207,9 +207,6 @@ pkg_postinst() {
                elog "If you do not need these plugins just disable them"
                elog "in the Plugins menu, else you need to set USE=\"postgres\""
        fi
-       if has_version "<sci-geosciences/qgis-3"; then
-               elog "QGIS is now based on PyQt5. Old scripts may not work anymore."
-       fi
 
        xdg_pkg_postinst
 }