1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-05 06:27:37 +00:00

graphics/qgis-ltr: Update to 3.10.9

- Update to 3.10.9
- Remove patch file for QT 5.15.0 (upstream now)
- Add a license file
- Add some Python dependencies: geopandas, pandas, jedi, nltk,
  psutil, pyrsgis, and qt5-quick
- Add INSTALLS_ICONS=yes
- Remove files/patch-src_analysis_interpolation_qgsinterpolator.h
- Update pkg-plist
- Prepare for sip5 and PyQT 5.15

PR:		248888
Submitted by:	Rainer Hurling (maintainer)
Reviewed by:	fernape, lbartoletti
This commit is contained in:
Loïc Bartoletti 2020-08-29 19:59:41 +00:00
parent 76d8579301
commit 1fc7b55791
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=546945
13 changed files with 308 additions and 87 deletions

View File

@ -3,69 +3,41 @@
PORTNAME= qgis
DISTVERSIONPREFIX= final-
DISTVERSION= 3_10_4
PORTREVISION= 3
DISTVERSION= 3_10_9
CATEGORIES= graphics geography
PKGNAMESUFFIX= -ltr
PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/
PATCHFILES= 33192f38bc7d.patch:-p1 \
12203f0ce527.patch:-p1 \
6e9d42d70099.patch:-p1
MAINTAINER= rhurlin@gwdg.de
COMMENT= Free and Open Source Geographic Information System
PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/
PATCHFILES= 4bb4bc8fb1b6.patch:-p1
LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/doc/LICENSE
BUILD_DEPENDS= gpsbabel>=1.5.4:astro/gpsbabel \
txt2tags:textproc/txt2tags \
${PYTHON_PKGNAMEPREFIX}cycler>=0.10.0:devel/py-cycler@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}dateutil>=2.8.0:devel/py-dateutil@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}future>=0.17.1:devel/py-future@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}httplib2>=0.12.1:www/py-httplib2@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}dateutil>=2.8.1:devel/py-dateutil@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}future>=0.18.2:devel/py-future@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}httplib2>=0.17.3:www/py-httplib2@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}Jinja2>=2.10.1:devel/py-Jinja2@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}MarkupSafe>=1.1.1:textproc/py-MarkupSafe@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}matplotlib>=2.2.4:math/py-matplotlib@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}mock>=2.0.0:devel/py-mock@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}OWSLib>=0.18.0:graphics/py-OWSLib@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}mock>=3.0.5:devel/py-mock@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}OWSLib>=0.20.0:graphics/py-OWSLib@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pbr>=3.1.1:devel/py-pbr@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pip>=9.0.3:devel/py-pip@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pip>=19.1.1:devel/py-pip@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}plotly>=3.0.2:graphics/py-plotly@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pygments>=2.4.1:textproc/py-pygments@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pygments>=2.5.2:textproc/py-pygments@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyproj>=2.1.3:graphics/py-pyproj@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pytz>=2019.1:devel/py-pytz@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>=2.21.0:www/py-requests@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}six>=1.12.0:devel/py-six@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}sqlite3>=3.6.8:databases/py-sqlite3@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}yaml>=5.1:devel/py-yaml@${PY_FLAVOR}
RUN_DEPENDS= astyle:devel/astyle \
${PYTHON_PKGNAMEPREFIX}cycler>=0.10.0:devel/py-cycler@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}dateutil>=2.8.0:devel/py-dateutil@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}future>=0.17.1:devel/py-future@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}gdal>=2.4.1:graphics/py-gdal@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}geojson>=2.3.0:devel/py-geojson@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}httplib2>=0.12.1:www/py-httplib2@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}Jinja2>=2.10.1:devel/py-Jinja2@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}MarkupSafe>=1.1.1:textproc/py-MarkupSafe@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}matplotlib>=2.2.4:math/py-matplotlib@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}mock>=2.0.0:devel/py-mock@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}nbformat>=4.4.0:devel/py-nbformat@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}networkx>=2.1:math/py-networkx@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}numpy>=1.16.1:math/py-numpy@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}OWSLib>=0.17.1:graphics/py-OWSLib@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pbr>=3.1.1:devel/py-pbr@${PY_FLAVOR} \
${PY_PILLOW} \
${PYTHON_PKGNAMEPREFIX}pip>=9.0.3:devel/py-pip@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}plotly>=3.0.2:graphics/py-plotly@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}psycopg2>=2.8.3:databases/py-psycopg2@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pygments>=2.4.1:textproc/py-pygments@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyproj>=2.1.3:graphics/py-pyproj@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pytz>=2019.1:devel/py-pytz@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>=2.21.0:www/py-requests@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}scikit-image>=0.14.2_2:graphics/py-scikit-image@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}Shapely>=1.6.4:devel/py-shapely@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}six>=1.12.0:devel/py-six@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}sqlite3>=3.6.8:databases/py-sqlite3@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}termcolor>=1.1.0:devel/py-termcolor@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}yaml>=5.1:devel/py-yaml@${PY_FLAVOR}
LIB_DEPENDS= libexiv2.so:graphics/exiv2 \
libexpat.so:textproc/expat2 \
libgdal.so:graphics/gdal \
@ -83,26 +55,64 @@ LIB_DEPENDS= libexiv2.so:graphics/exiv2 \
libsz.so:science/szip \
libxerces-c.so:textproc/xerces-c3 \
libzip.so:archivers/libzip
RUN_DEPENDS= astyle:devel/astyle \
${PYTHON_PKGNAMEPREFIX}black>=19.10:devel/py-black@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}cycler>=0.10.0:devel/py-cycler@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}dateutil>=2.8.1:devel/py-dateutil@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}future>=0.18.2:devel/py-future@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}gdal>=3.1.0:graphics/py-gdal@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}geojson>=2.3.0:devel/py-geojson@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}geopandas>=0.7.0:graphics/py-geopandas@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}httplib2>=0.17.3:www/py-httplib2@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}jedi>=0.12.1:devel/py-jedi@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}Jinja2>=2.10.1:devel/py-Jinja2@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}MarkupSafe>=1.1.1:textproc/py-MarkupSafe@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}matplotlib>=2.2.4:math/py-matplotlib@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}mock>=3.0.5:devel/py-mock@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}nbformat>=5.0.7:devel/py-nbformat@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}networkx>=2.1:math/py-networkx@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}nltk>=3.4.1:textproc/py-nltk@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}numpy>=1.16.6:math/py-numpy@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}OWSLib>=0.18.0:graphics/py-OWSLib@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pandas>=0.24.2:math/py-pandas@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pbr>=3.1.1:devel/py-pbr@${PY_FLAVOR} \
${PY_PILLOW} \
${PYTHON_PKGNAMEPREFIX}pip>=19.1.1:devel/py-pip@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}plotly>=3.0.2:graphics/py-plotly@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}psutil>=5.7.0:sysutils/py-psutil@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}psycopg2>=2.8.5:databases/py-psycopg2@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pygments>=2.5.2:textproc/py-pygments@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyproj>=2.1.3:graphics/py-pyproj@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyrsgis>=0.2.6:graphics/py-pyrsgis@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pytz>=2020.1:devel/py-pytz@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}qt5-quick>=5.13.1:x11-toolkits/py-qt5-quick@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>=2.22.0:www/py-requests@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}scikit-image>=0.14.3:graphics/py-scikit-image@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}Shapely>=1.6.4:devel/py-shapely@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}six>=1.14.0:devel/py-six@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}sqlite3>=3.7.7:databases/py-sqlite3@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}termcolor>=1.1.0:devel/py-termcolor@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}yaml>=5.3.1:devel/py-yaml@${PY_FLAVOR}
### Fortran is needed by numpy, GRASS, etc.
USES= bison cmake compiler:features cpe desktop-file-utils \
fortran gmake gl gnome pgsql pyqt:5 python:3.6+ qca qt:5 \
shebangfix sqlite:3
USE_GNOME= libxml2
USE_GITHUB= yes
GH_PROJECT= ${PORTNAME:tu}
USE_GL= gl
USE_GNOME= libxml2
INSTALLS_ICONS= yes
USE_LDCONFIG= yes
USE_PYQT= core gui network qml quickwidgets qscintilla2 \
sip sql svg webkit_run webkitwidgets_run xml
USE_QT= 3d buildtools_build core concurrent dbus declarative \
designer doc gamepad gui linguist_build location \
network printsupport qmake_build script serialport \
sql sql-pgsql sql-sqlite3 svg testlib uitools \
webengine widgets webkit xml
USE_PYQT= core gui network qml quickwidgets qscintilla2 \
sip sql svg webkit_run webkitwidgets_run xml
USE_LDCONFIG= yes
CONFLICTS_INSTALL= qgis
USE_GITHUB= yes
GH_PROJECT= ${PORTNAME:tu}
SHEBANG_FILES= src/plugins/grass/scripts/*.py
CMAKE_ARGS+= -DCMAKE_BUILD_TYPE:STRING=Release \
-DPYRCC_PROGRAM:FILEPATH=${LOCALBASE}/bin/pyrcc5-${PYTHON_VER} \
@ -117,13 +127,15 @@ CMAKE_ON= BUILD_TESTING ENABLE_TESTS WITH_3D WITH_ASTYLE \
WITH_POSTGRESQL
CMAKE_OFF= WITH_GLOBE WITH_QWTPOLAR
CONFLICTS_INSTALL= qgis
PLIST_SUB= DISTVERSION=${PORTVERSION}
.if !defined(MAINTAINER_MODE)
CMAKE_ARGS+= -Wno-dev
CMAKE_OFF+= SUPPRESS_QT_WARNINGS
.endif
SHEBANG_FILES= src/plugins/grass/scripts/*.py
OPTIONS_DEFINE= GRASS SERVER
OPTIONS_DEFAULT= GRASS SERVER
NO_OPTIONS_SORT= yes
@ -137,8 +149,6 @@ GRASS_CMAKE_BOOL= WITH_GRASS7
SERVER_LIB_DEPENDS= libfcgi.so:www/fcgi
SERVER_CMAKE_BOOL= WITH_SERVER WITH_SERVER_PLUGINS WITH_QSPATIALITE
PLIST_SUB= DISTVERSION=${PORTVERSION}
.include <bsd.port.pre.mk>
post-patch:
@ -149,6 +159,10 @@ post-patch:
${WRKSRC}/src/core/CMakeLists.txt
.endif
@${REINPLACE_CMD} -e 's|%%PYQT_SIPDIR%%|${PYQT_SIPDIR}|' \
${WRKSRC}/cmake/FindPyQt5.py \
${WRKSRC}/cmake/FindSIP.py
pre-configure:
${MKDIR} ${CONFIGURE_WRKSRC}/bin && ${LN} -s ${PYTHON_CMD} ${CONFIGURE_WRKSRC}/bin/python3

View File

@ -1,5 +1,9 @@
TIMESTAMP = 1591017346
SHA256 (qgis-QGIS-final-3_10_4_GH0.tar.gz) = ef900da2108d9b10069587e7eeed8f42c07f2af50e7552d938ffa9418cb55961
SIZE (qgis-QGIS-final-3_10_4_GH0.tar.gz) = 120683329
SHA256 (4bb4bc8fb1b6.patch) = 87fa55e54bb72d570747aa10f082a8c2dd3528b11d564f54461372e77e5bde71
SIZE (4bb4bc8fb1b6.patch) = 1918
TIMESTAMP = 1598608287
SHA256 (qgis-QGIS-final-3_10_9_GH0.tar.gz) = bb7cf7e83dbfac13ebe33336ac825e6b07282a9def4b9159ebce77500a4e28b3
SIZE (qgis-QGIS-final-3_10_9_GH0.tar.gz) = 121338519
SHA256 (33192f38bc7d.patch) = 97d3f882bea11c5342ddf53f6c055f9f38c5af18edb2d52c116f1dab4a49189b
SIZE (33192f38bc7d.patch) = 12604
SHA256 (12203f0ce527.patch) = bb30342fbf19f1a9150abd97fb1b5d6bbe3f3062bb217a7179332d0b02168235
SIZE (12203f0ce527.patch) = 2452
SHA256 (6e9d42d70099.patch) = 44c3ecc27c839492d9eae2d352e0ea9f37c11a419fb3f8862350b1e52cb359a6
SIZE (6e9d42d70099.patch) = 1513

View File

@ -0,0 +1,19 @@
--- CMakeLists.txt.orig 2020-08-27 11:28:26 UTC
+++ CMakeLists.txt
@@ -154,6 +154,7 @@ IF(WITH_CORE)
# as otherwise user has to use PYTHONPATH environment variable to add
# QGIS bindings to package search path
SET (BINDINGS_GLOBAL_INSTALL FALSE CACHE BOOL "Install bindings to global python directory? (might need root)")
+ SET (SIP_GLOBAL_INSTALL FALSE CACHE BOOL "Install sip source files to system sip directory? (might need root)")
SET (WITH_STAGED_PLUGINS TRUE CACHE BOOL "Stage-install core Python plugins to run from build directory? (utilities and console are always staged)")
SET (WITH_PY_COMPILE FALSE CACHE BOOL "Determines whether Python modules in staged or installed locations are byte-compiled")
# concatenate QScintilla2 API files
@@ -851,7 +852,7 @@ IF (WITH_CORE AND WITH_BINDINGS)
INCLUDE(SIPMacros)
SET(SIP_INCLUDES ${PYQT_SIP_DIR} ${CMAKE_SOURCE_DIR}/python)
- SET(SIP_CONCAT_PARTS 4)
+ SET(SIP_CONCAT_PARTS 6)
IF (NOT BINDINGS_GLOBAL_INSTALL)
SET(PYTHON_SITE_PACKAGES_DIR ${QGIS_DATA_DIR}/python)

View File

@ -0,0 +1,81 @@
--- cmake/FindPyQt5.py.orig 2020-08-28 05:25:49 UTC
+++ cmake/FindPyQt5.py
@@ -30,14 +30,15 @@
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
+import os.path
+import PyQt5.QtCore
+
try:
- import PyQt5.pyqtconfig
- pyqtcfg = PyQt5.pyqtconfig.Configuration()
+ __import__('sipbuild')
except ImportError:
- import PyQt5.QtCore
- import sipconfig # won't work for SIP v5
- import os.path
+ import sipconfig # won't work for SIP v5
import sys
+
cfg = sipconfig.Configuration()
sip_dir = cfg.default_sip_dir
if sys.platform.startswith('freebsd'):
@@ -51,38 +52,44 @@ except ImportError:
sip_dir = p
break
cfg = {
- 'pyqt_version': PyQt5.QtCore.PYQT_VERSION,
- 'pyqt_version_str': PyQt5.QtCore.PYQT_VERSION_STR,
- 'pyqt_sip_flags': PyQt5.QtCore.PYQT_CONFIGURATION['sip_flags'],
'pyqt_mod_dir': os.path.join(cfg.default_mod_dir, "PyQt5"),
'pyqt_sip_dir': sip_dir,
'pyqt_bin_dir': cfg.default_bin_dir,
}
- pyqtcfg = sipconfig.Configuration([cfg])
+else: # Code for SIP v5
+ from distutils.sysconfig import get_python_lib
+ import shutil
+ cfg = {
+ 'pyqt_mod_dir': os.path.dirname(PyQt5.__file__),
+ 'pyqt_sip_dir': "%%PYQT_SIPDIR%%",
+ 'pyqt_bin_dir': os.path.dirname(shutil.which("pyuic5")),
+ }
-print("pyqt_version:%06.0x" % pyqtcfg.pyqt_version)
-print("pyqt_version_num:%d" % pyqtcfg.pyqt_version)
-print("pyqt_version_str:%s" % pyqtcfg.pyqt_version_str)
+print("pyqt_version:%06.0x" % PyQt5.QtCore.PYQT_VERSION)
+print("pyqt_version_num:%d" % PyQt5.QtCore.PYQT_VERSION)
+print("pyqt_version_str:%s" % PyQt5.QtCore.PYQT_VERSION_STR)
pyqt_version_tag = ""
in_t = False
-for item in pyqtcfg.pyqt_sip_flags.split(' '):
+pyqt_config_list = PyQt5.QtCore.PYQT_CONFIGURATION["sip_flags"].split(' ')
+for item in pyqt_config_list:
if item == "-t":
in_t = True
elif in_t:
- if item.startswith("Qt_4"):
+ if item.startswith("Qt_5"):
pyqt_version_tag = item
else:
in_t = False
print("pyqt_version_tag:%s" % pyqt_version_tag)
-print("pyqt_mod_dir:%s" % pyqtcfg.pyqt_mod_dir)
-print("pyqt_sip_dir:%s" % pyqtcfg.pyqt_sip_dir)
-print("pyqt_sip_flags:%s" % pyqtcfg.pyqt_sip_flags)
-print("pyqt_bin_dir:%s" % pyqtcfg.pyqt_bin_dir)
+print("pyqt_mod_dir:%s" % cfg['pyqt_mod_dir'])
+print("pyqt_sip_dir:%s" % cfg['pyqt_sip_dir'])
+print("pyqt_sip_flags:%s" % PyQt5.QtCore.PYQT_CONFIGURATION['sip_flags'])
+print("pyqt_bin_dir:%s" % cfg['pyqt_bin_dir'])
try:
import PyQt5.sip
+
print("pyqt_sip_module:PyQt5.sip")
except:
print("pyqt_sip_module:sip")

View File

@ -0,0 +1,20 @@
--- cmake/FindQGIS.cmake.orig 2020-08-28 05:25:49 UTC
+++ cmake/FindQGIS.cmake
@@ -122,7 +122,7 @@ ELSE(WIN32)
PATHS
${QGIS_BUILD_PATH}/output/lib/qgis_core.framework/Headers
${QGIS_MAC_PATH}/Frameworks/qgis_core.framework/Headers
- {QGIS_PREFIX_PATH}/include/qgis
+ ${QGIS_PREFIX_PATH}/include/qgis
/usr/include/qgis
/usr/local/include/qgis
/Library/Frameworks/qgis_core.framework/Headers
@@ -133,7 +133,7 @@ ELSE(WIN32)
PATHS
${QGIS_BUILD_PATH}/src/ui
${QGIS_MAC_PATH}/Frameworks/qgis_gui.framework/Headers
- {QGIS_PREFIX_PATH}/include/qgis
+ ${QGIS_PREFIX_PATH}/include/qgis
/usr/include/qgis
/usr/local/include/qgis
/Library/Frameworks/qgis_gui.framework/Headers

View File

@ -0,0 +1,16 @@
--- cmake/FindQtQmlTools.cmake.orig 2020-08-28 05:25:49 UTC
+++ cmake/FindQtQmlTools.cmake
@@ -22,12 +22,11 @@
MACRO(FIND_QMLPLUGINDUMP)
get_filename_component(QT_BIN_DIR "${QT_QMAKE_EXECUTABLE}" DIRECTORY)
-
IF(NOT QMLPLUGINDUMP_EXECUTABLE)
IF (MSVC)
FIND_PROGRAM(QMLPLUGINDUMP_EXECUTABLE qmlplugindump.exe PATHS ${QT_BIN_DIR} NO_DEFAULT_PATH)
ELSE (MSVC)
- FIND_PROGRAM(QMLPLUGINDUMP_EXECUTABLE qmlplugindump PATHS ${QT_BIN_DIR} NO_DEFAULT_PATH)
+ FIND_PROGRAM(QMLPLUGINDUMP_EXECUTABLE qmlplugindump PATHS ${QT_BIN_DIR})
ENDIF (MSVC)
ENDIF(NOT QMLPLUGINDUMP_EXECUTABLE)

View File

@ -0,0 +1,10 @@
--- cmake/FindQwt.cmake.orig 2020-08-28 05:25:49 UTC
+++ cmake/FindQwt.cmake
@@ -32,6 +32,7 @@ endif()
FIND_PATH(QWT_INCLUDE_DIR NAMES qwt.h PATHS
"${_qwt_fw}/Headers"
/usr/include
+ /usr/include/qt5
/usr/local/include
/usr/local/include/qt5
"$ENV{LIB_DIR}/include"

View File

@ -0,0 +1,17 @@
--- cmake/FindSIP.cmake.orig 2020-08-28 05:25:49 UTC
+++ cmake/FindSIP.cmake
@@ -40,8 +40,12 @@ ELSE(SIP_VERSION)
STRING(REGEX REPLACE ".*\nsip_version_str:([^\n]+).*$" "\\1" SIP_VERSION_STR ${sip_config})
STRING(REGEX REPLACE ".*\nsip_bin:([^\n]+).*$" "\\1" SIP_BINARY_PATH ${sip_config})
STRING(REGEX REPLACE ".*\ndefault_sip_dir:([^\n]+).*$" "\\1" SIP_DEFAULT_SIP_DIR ${sip_config})
- STRING(REGEX REPLACE ".*\nsip_inc_dir:([^\n]+).*$" "\\1" SIP_INCLUDE_DIR ${sip_config})
- STRING(REGEX REPLACE ".*\nsip_module_dir:([^\n]+).*$" "\\1" SIP_MODULE_DIR ${sip_config})
+ IF(${SIP_VERSION_STR} VERSION_LESS 5)
+ STRING(REGEX REPLACE ".*\nsip_inc_dir:([^\n]+).*$" "\\1" SIP_INCLUDE_DIR ${sip_config})
+ STRING(REGEX REPLACE ".*\nsip_module_dir:([^\n]+).*$" "\\1" SIP_MODULE_DIR ${sip_config})
+ ELSE(${SIP_VERSION_STR} VERSION_LESS 5)
+ FIND_PROGRAM(SIP_MODULE_EXECUTABLE sip-module)
+ ENDIF(${SIP_VERSION_STR} VERSION_LESS 5)
SET(SIP_FOUND TRUE)
ENDIF(sip_config)

View File

@ -0,0 +1,47 @@
--- cmake/FindSIP.py.orig 2020-08-28 05:25:49 UTC
+++ cmake/FindSIP.py
@@ -30,17 +30,31 @@
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
-import sipconfig
+try:
+ import sipbuild
+except ImportError: # Code for SIP v4
+ import sipconfig
-sipcfg = sipconfig.Configuration()
-print("sip_version:%06.0x" % sipcfg.sip_version)
-print("sip_version_num:%d" % sipcfg.sip_version)
-print("sip_version_str:%s" % sipcfg.sip_version_str)
-print("sip_bin:%s" % sipcfg.sip_bin)
-print("default_sip_dir:%s" % sipcfg.default_sip_dir)
-print("sip_inc_dir:%s" % sipcfg.sip_inc_dir)
-# SIP 4.19.10+ has new sipcfg.sip_module_dir
-if hasattr(sipcfg, "sip_module_dir"):
- print("sip_module_dir:%s" % sipcfg.sip_module_dir)
-else:
- print("sip_module_dir:%s" % sipcfg.sip_mod_dir)
+ sipcfg = sipconfig.Configuration()
+ print("sip_version:%06.0x" % sipcfg.sip_version)
+ print("sip_version_num:%d" % sipcfg.sip_version)
+ print("sip_version_str:%s" % sipcfg.sip_version_str)
+ print("sip_bin:%s" % sipcfg.sip_bin)
+ print("default_sip_dir:%s" % sipcfg.default_sip_dir)
+ print("sip_inc_dir:%s" % sipcfg.sip_inc_dir)
+ # SIP 4.19.10+ has new sipcfg.sip_module_dir
+ if hasattr(sipcfg, "sip_module_dir"):
+ print("sip_module_dir:%s" % sipcfg.sip_module_dir)
+ else:
+ print("sip_module_dir:%s" % sipcfg.sip_mod_dir)
+else: # Code for SIP v5
+ print("sip_version:%06.0x" % sipbuild.version.SIP_VERSION)
+ print("sip_version_num:%d" % sipbuild.version.SIP_VERSION)
+ print("sip_version_str:%s" % sipbuild.version.SIP_VERSION_STR)
+
+ import shutil
+ print("sip_bin:%s" % shutil.which("sip5"))
+
+ from distutils.sysconfig import get_python_lib
+ python_modules_dir = "%%PYQT_SIPDIR%%"
+ print("default_sip_dir:%s" % python_modules_dir)

View File

@ -0,0 +1,15 @@
--- cmake/SIPMacros.cmake.orig 2020-08-28 05:25:49 UTC
+++ cmake/SIPMacros.cmake
@@ -121,6 +121,12 @@ MACRO(GENERATE_SIP_PYTHON_MODULE_CODE MODULE_NAME MODU
DEPENDS ${SIP_EXTRA_FILES_DEPEND}
VERBATIM
)
+ IF (SIP_MODULE_EXECUTABLE)
+ ADD_CUSTOM_COMMAND(
+ OUTPUT ${_sip_output_files} APPEND
+ COMMAND ${SIP_MODULE_EXECUTABLE} --target-dir ${CMAKE_CURRENT_BINARY_DIR}/${_module_path} --sip-h ${PYQT5_SIP_IMPORT}
+ )
+ ENDIF (SIP_MODULE_EXECUTABLE)
ADD_CUSTOM_TARGET(generate_sip_${MODULE_NAME}_cpp_files DEPENDS ${_sip_output_files})

View File

@ -1,10 +0,0 @@
--- src/analysis/interpolation/qgsinterpolator.h.orig 2019-07-10 19:11:16 UTC
+++ src/analysis/interpolation/qgsinterpolator.h
@@ -18,6 +18,7 @@
#ifndef QGSINTERPOLATOR_H
#define QGSINTERPOLATOR_H
+#include <QList>
#include <QVector>
#include "qgis_sip.h"
#include "qgis_analysis.h"

View File

@ -1,19 +1,6 @@
--- src/core/CMakeLists.txt.orig 2019-10-28 04:34:30 UTC
--- src/core/CMakeLists.txt.orig 2020-06-19 12:15:52 UTC
--- src/core/CMakeLists.txt.orig 2020-08-14 12:07:53 UTC
+++ src/core/CMakeLists.txt
@@ -693,9 +693,9 @@ SET(QGIS_CORE_SRCS
)
FILE(GLOB JSON_HELP_FILES "${CMAKE_SOURCE_DIR}/resources/function_help/json/*")
-IF(NOT USING_NINJA)
+IF(CMAKE_VERSION VERSION_LESS "3.18" AND NOT USING_NINJA)
STRING(REPLACE "$" "$$" JSON_HELP_FILES "${JSON_HELP_FILES}")
-ENDIF(NOT USING_NINJA)
+ENDIF(CMAKE_VERSION VERSION_LESS "3.18" AND NOT USING_NINJA)
STRING(REPLACE "\(" "\\(" JSON_HELP_FILES "${JSON_HELP_FILES}")
STRING(REPLACE "\)" "\\)" JSON_HELP_FILES "${JSON_HELP_FILES}")
ADD_CUSTOM_COMMAND(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/qgsexpression_texts.cpp
@@ -889,6 +889,7 @@ ELSE(MSVC)
@@ -894,6 +894,7 @@ ELSE(MSVC)
SET_SOURCE_FILES_PROPERTIES(${QGIS_CORE_MOC_SRCS} PROPERTIES COMPILE_FLAGS "-Wno-deprecated-declarations" )
IF ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" AND (CMAKE_BUILD_TYPE MATCHES Release OR CMAKE_BUILD_TYPE MATCHES RelWithDebInfo))
SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_BINARY_DIR}/qgsexpression_texts.cpp PROPERTIES COMPILE_FLAGS "-O1")

View File

@ -362,6 +362,7 @@ include/qgis/qgsfilterlineedit.h
include/qgis/qgsfilterlineeditplugin.h
include/qgis/qgsfindfilesbypatternwidget.h
include/qgis/qgsfloatingwidget.h
include/qgis/qgsfocuskeeper.h
include/qgis/qgsfocuswatcher.h
include/qgis/qgsfontbutton.h
include/qgis/qgsfontbuttonplugin.h
@ -1352,7 +1353,6 @@ share/metainfo/org.qgis.qgis.appdata.xml
%%DATADIR%%/doc/CONTRIBUTORS
%%DATADIR%%/doc/DONORS
%%DATADIR%%/doc/INSTALL
%%DATADIR%%/doc/INSTALL.html
%%DATADIR%%/doc/LICENSE
%%DATADIR%%/doc/SPONSORS
%%DATADIR%%/doc/TRANSLATORS
@ -1395,7 +1395,6 @@ share/metainfo/org.qgis.qgis.appdata.xml
%%DATADIR%%/doc/images/projects/thumbnails/f6379f3083e612fd47917e1f948d795b6951dde9.png.200x100_q85.png
%%DATADIR%%/doc/images/qgis-icon-60x60.png
%%DATADIR%%/doc/index.html
%%DATADIR%%/doc/news
%%DATADIR%%/doc/news.html
%%DATADIR%%/doc/nohelp.html
%%DATADIR%%/doc/style.css
@ -5134,6 +5133,7 @@ share/metainfo/org.qgis.qgis.appdata.xml
%%DATADIR%%/resources/themes/Blend of Gray/icons/handle-vertical.svg
%%DATADIR%%/resources/themes/Blend of Gray/icons/qcheckbox-checked-disabled.svg
%%DATADIR%%/resources/themes/Blend of Gray/icons/qcheckbox-checked.svg
%%DATADIR%%/resources/themes/Blend of Gray/icons/qcheckbox-intermediary.svg
%%DATADIR%%/resources/themes/Blend of Gray/icons/qcheckbox-unchecked-disabled.svg
%%DATADIR%%/resources/themes/Blend of Gray/icons/qcheckbox-unchecked.svg
%%DATADIR%%/resources/themes/Blend of Gray/icons/qradiobox-checked-disabled.svg
@ -5157,6 +5157,7 @@ share/metainfo/org.qgis.qgis.appdata.xml
%%DATADIR%%/resources/themes/Night Mapping/icons/handle-vertical.svg
%%DATADIR%%/resources/themes/Night Mapping/icons/qcheckbox-checked-disabled.svg
%%DATADIR%%/resources/themes/Night Mapping/icons/qcheckbox-checked.svg
%%DATADIR%%/resources/themes/Night Mapping/icons/qcheckbox-intermediary.svg
%%DATADIR%%/resources/themes/Night Mapping/icons/qcheckbox-unchecked-disabled.svg
%%DATADIR%%/resources/themes/Night Mapping/icons/qcheckbox-unchecked.svg
%%DATADIR%%/resources/themes/Night Mapping/icons/qradiobox-checked-disabled.svg