sci-geosciences/qgis: Fix build w/ sip-4.19.1, qscintilla-2.10
authorAndreas Sturmlechner <asturm@gentoo.org>
Fri, 17 Mar 2017 22:14:10 +0000 (23:14 +0100)
committerAndreas Sturmlechner <asturm@gentoo.org>
Sat, 18 Mar 2017 00:07:33 +0000 (01:07 +0100)
Silence cmake warnings.

Gentoo-bug: 612924

Package-Manager: Portage-2.3.3, Repoman-2.3.1

sci-geosciences/qgis/files/qgis-2.18.3-qscintilla-2.10.patch [new file with mode: 0644]
sci-geosciences/qgis/files/qgis-2.18.3-sip-4.19.1.patch [new file with mode: 0644]
sci-geosciences/qgis/qgis-2.18.3-r1.ebuild
sci-geosciences/qgis/qgis-2.18.4.ebuild

diff --git a/sci-geosciences/qgis/files/qgis-2.18.3-qscintilla-2.10.patch b/sci-geosciences/qgis/files/qgis-2.18.3-qscintilla-2.10.patch
new file mode 100644 (file)
index 0000000..fb71465
--- /dev/null
@@ -0,0 +1,24 @@
+From 30577386cbe0ee9a5509e7f6f54df2c1194153ee Mon Sep 17 00:00:00 2001
+From: Larry Shaffer <lshaffer@boundlessgeo.com>
+Date: Thu, 2 Mar 2017 15:00:18 -0700
+Subject: [PATCH] Followup to dfe268f; update QScintilla new lib name in 2.10
+ for Qt4
+
+[ci skip]
+---
+ cmake/FindQScintilla.cmake | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cmake/FindQScintilla.cmake b/cmake/FindQScintilla.cmake
+index 7f97624..2f87e4c 100644
+--- a/cmake/FindQScintilla.cmake
++++ b/cmake/FindQScintilla.cmake
+@@ -36,7 +36,7 @@ ELSE(EXISTS QSCINTILLA_VERSION_STR)
+   if(ENABLE_QT5)
+     set(QSCINTILLA_LIBRARY_NAMES qscintilla2-qt5 qscintilla2_qt5 libqt5scintilla2 libqscintilla2-qt5 qt5scintilla2 libqscintilla2-qt5.dylib)
+   else(ENABLE_QT5)
+-    set(QSCINTILLA_LIBRARY_NAMES qscintilla2 libqscintilla2 libqscintilla2.dylib)
++    set(QSCINTILLA_LIBRARY_NAMES qscintilla2 qscintilla2_qt4 libqscintilla2 libqscintilla2.dylib)
+   endif(ENABLE_QT5)
+   find_library(QSCINTILLA_LIBRARY
diff --git a/sci-geosciences/qgis/files/qgis-2.18.3-sip-4.19.1.patch b/sci-geosciences/qgis/files/qgis-2.18.3-sip-4.19.1.patch
new file mode 100644 (file)
index 0000000..ff89892
--- /dev/null
@@ -0,0 +1,42 @@
+From 85a0db24f32351f6096cd8282f03ad5c2f4e6ef5 Mon Sep 17 00:00:00 2001
+From: Sandro Mani <manisandro@gmail.com>
+Date: Wed, 1 Mar 2017 16:12:38 +0100
+Subject: [PATCH] Fix build against recent sip/PyQt4:
+
+qgsfiledownloader.sip:33:0:
+src/gui/qgsfiledownloader.h:94:5: error: overriding non-deleted function 'virtual QgsFileDownloader::~QgsFileDownloader()'
+
+RuntimeError: qgis._core cannot import type 'QList<QVariant>' from PyQt4.QtCore
+---
+ python/core/core.sip        | 1 +
+ src/gui/qgsfiledownloader.h | 4 +++-
+ 2 files changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/python/core/core.sip b/python/core/core.sip
+index 8f0b6af..41f5450 100644
+--- a/python/core/core.sip
++++ b/python/core/core.sip
+@@ -3,6 +3,7 @@
+ %Feature QT5_SUPPORT
++%Import QtCore/QtCoremod.sip
+ %Import QtXml/QtXmlmod.sip
+ %Import QtNetwork/QtNetworkmod.sip
+ %Import QtSql/QtSqlmod.sip
+diff --git a/src/gui/qgsfiledownloader.h b/src/gui/qgsfiledownloader.h
+index c9276f7..841e4b6 100644
+--- a/src/gui/qgsfiledownloader.h
++++ b/src/gui/qgsfiledownloader.h
+@@ -90,8 +90,10 @@ class GUI_EXPORT QgsFileDownloader : public QObject
+     void onSslErrors( QNetworkReply *reply, const QList<QSslError> &errors );
+ #endif
+-  private:
++  protected:
+     ~QgsFileDownloader();
++
++  private:
+     /**
+      * Abort current request and show an error if the instance has GUI
+      * notifications enabled.
index 463a3b19ca1a5cfe38a132b3853d3fa822958327..81e16bdc05fa36fece658f1f3882b73f342fc340 100644 (file)
@@ -84,6 +84,8 @@ PATCHES=(
        "${FILESDIR}"/${P}-app-icon.patch
        "${FILESDIR}"/${P}-webkit.patch
        "${FILESDIR}"/${P}-sip-4.19.patch
+       "${FILESDIR}"/${P}-qscintilla-2.10.patch
+       "${FILESDIR}"/${P}-sip-4.19.1.patch
 )
 
 pkg_setup() {
index 5cc7c2eb87812568fad416d5bade91f455957901..4a1f1c1c736ff48dc0d704cb2bf07c4e6a02521e 100644 (file)
@@ -34,8 +34,8 @@ COMMON_DEPEND="
        dev-qt/qtcore:4
        dev-qt/qtgui:4
        dev-qt/qtscript:4
-       dev-qt/qtsvg:4
        dev-qt/qtsql:4
+       dev-qt/qtsvg:4
        sci-libs/gdal:=[geos,python?,${PYTHON_USEDEP}]
        sci-libs/geos
        sci-libs/libspatialindex:=
@@ -80,6 +80,11 @@ RDEPEND="${COMMON_DEPEND}
 # Disabling test suite because upstream disallow running from install path
 RESTRICT="test"
 
+PATCHES=(
+       "${FILESDIR}"/${PN}-2.18.3-qscintilla-2.10.patch
+       "${FILESDIR}"/${PN}-2.18.3-sip-4.19.1.patch
+)
+
 pkg_setup() {
        use python && python-single-r1_pkg_setup
 }
@@ -99,30 +104,41 @@ src_configure() {
                -DQGIS_PLUGIN_SUBDIR=$(get_libdir)/qgis
                -DQWT_INCLUDE_DIR=/usr/include/qwt6
                -DQWT_LIBRARY=/usr/$(get_libdir)/libqwt6-qt4.so
-               -DWITH_INTERNAL_DATEUTIL=OFF
-               -DWITH_INTERNAL_FUTURE=OFF
-               -DWITH_INTERNAL_HTTPLIB2=OFF
-               -DWITH_INTERNAL_JINJA2=OFF
-               -DWITH_INTERNAL_MARKUPSAFE=OFF
-               -DWITH_INTERNAL_PYGMENTS=OFF
-               -DWITH_INTERNAL_PYTZ=OFF
                -DWITH_INTERNAL_QWTPOLAR=OFF
-               -DWITH_INTERNAL_SIX=OFF
-               -DWITH_INTERNAL_YAML=OFF
                -DPEDANTIC=OFF
                -DWITH_APIDOC=OFF
                -DWITH_QSPATIALITE=ON
                -DENABLE_TESTS=OFF
-               -DWITH_BINDINGS="$(usex python)"
-               -DWITH_GRASS7="$(usex grass)"
-               -DGRASS_PREFIX7=/usr/$(get_libdir)/grass70
-               -DWITH_ORACLE="$(usex oracle)"
-               -DWITH_POSTGRESQL="$(usex postgres)"
-               -DWITH_PYSPATIALITE="$(usex python)"
-               -DWITH_SERVER="$(usex mapserver)"
-               -DWITH_QTWEBKIT="$(usex webkit)"
+               -DWITH_GRASS=$(usex grass)
+               -DWITH_SERVER=$(usex mapserver)
+               -DWITH_ORACLE=$(usex oracle)
+               -DWITH_POSTGRESQL=$(usex postgres)
+               -DWITH_BINDINGS=$(usex python)
+               -DWITH_QTWEBKIT=$(usex webkit)
        )
 
+       if use grass; then
+               mycmakeargs+=(
+                       -DWITH_GRASS7=ON
+                       -DGRASS_PREFIX7=/usr/$(get_libdir)/grass70
+               )
+       fi
+
+       if use python; then
+               mycmakeargs+=(
+                       -DWITH_PYSPATIALITE=ON
+                       -DWITH_INTERNAL_DATEUTIL=OFF
+                       -DWITH_INTERNAL_FUTURE=OFF
+                       -DWITH_INTERNAL_HTTPLIB2=OFF
+                       -DWITH_INTERNAL_JINJA2=OFF
+                       -DWITH_INTERNAL_MARKUPSAFE=OFF
+                       -DWITH_INTERNAL_PYGMENTS=OFF
+                       -DWITH_INTERNAL_PYTZ=OFF
+                       -DWITH_INTERNAL_SIX=OFF
+                       -DWITH_INTERNAL_YAML=OFF
+               )
+       fi
+
        cmake-utils_src_configure
 }