mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2026-04-13 17:52:37 +02:00
338 lines
9.5 KiB
Plaintext
338 lines
9.5 KiB
Plaintext
# Contributor: Holger Jaekel <holger.jaekel@gmx.de>
|
|
# Maintainer: Holger Jaekel <holger.jaekel@gmx.de>
|
|
pkgname=qgis
|
|
pkgver=3.28.12
|
|
pkgrel=1
|
|
pkgdesc="Geographic Information System (GIS) that supports vector, raster & database formats"
|
|
url="https://qgis.org/"
|
|
# armhf: py3-qscintilla qt5-qt3d-dev qt5-qtlocation-dev missing
|
|
# ppc64le and riscv64: qt5-qtwebengine-dev missing
|
|
# s390x: grass-gis-dev netcdf-dev qt5-qtwebengine-dev missing
|
|
arch="all !armhf !ppc64le !riscv64 !s390x"
|
|
license="GPL-2.0-or-later"
|
|
depends="font-opensans font-cantarell qt5-qtbase-sqlite postgresql-client"
|
|
makedepends="
|
|
bison
|
|
cmake
|
|
exiv2-dev
|
|
expat-dev
|
|
fcgi-dev
|
|
flex
|
|
gdal-dev
|
|
geos-dev
|
|
gsl-dev
|
|
grass-gis-dev
|
|
hdf5-dev
|
|
hdf5-static
|
|
libspatialindex-dev
|
|
libspatialite-dev
|
|
libzip-dev
|
|
netcdf-dev
|
|
opencl-dev
|
|
pdal-dev
|
|
postgresql-dev
|
|
proj-dev
|
|
protobuf-dev
|
|
py3-ply
|
|
py3-pyqt-builder
|
|
py3-qscintilla
|
|
py3-qt5
|
|
py3-sip
|
|
python3-dev
|
|
qca-dev
|
|
qscintilla-dev
|
|
qt5-qt3d-dev
|
|
qt5-qtbase-dev
|
|
qt5-qtlocation-dev
|
|
qt5-qtmultimedia-dev
|
|
qt5-qtserialport-dev
|
|
qt5-qtsvg-dev
|
|
qt5-qttools-dev
|
|
qt5-qtwebengine-dev
|
|
qtkeychain-dev
|
|
qwt-dev
|
|
samurai
|
|
sqlite-dev
|
|
unixodbc-dev
|
|
yarn
|
|
"
|
|
checkdepends="py3-nose2 py3-yaml py3-gdal py3-psycopg2 py3-oauthlib py3-owslib gdal-tools gdal-driver-all py3-mock py3-termcolor qpdf poppler-utils xvfb-run firefox bash"
|
|
subpackages="
|
|
$pkgname-dev
|
|
$pkgname-doc
|
|
$pkgname-lang
|
|
$pkgname-server
|
|
$pkgname-grass
|
|
py3-$pkgname:py3
|
|
"
|
|
options="!check" # test failures on builders
|
|
source="https://qgis.org/downloads/qgis-$pkgver.tar.bz2
|
|
10-exiv2-0.28.patch
|
|
20-protobuf-23.patch
|
|
30-qgstyle-infinite-loop.patch
|
|
40-pdal.patch
|
|
"
|
|
langdir="/usr/share/qgis/i18n"
|
|
|
|
build() {
|
|
if [ "$CBUILD" != "$CHOST" ]; then
|
|
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
|
|
fi
|
|
cmake -B build -G Ninja \
|
|
-DCMAKE_BUILD_TYPE=MinSizeRel \
|
|
-DCMAKE_INSTALL_PREFIX=/usr \
|
|
-DQGIS_CGIBIN_SUBDIR=libexec/qgis \
|
|
-DBINDINGS_GLOBAL_INSTALL=TRUE \
|
|
-DBUILD_TESTING="$(want_check && echo TRUE || echo FALSE)" \ \
|
|
-DENABLE_TESTS="$(want_check && echo TRUE || echo FALSE)" \
|
|
-DWITH_3D=TRUE \
|
|
-DWITH_ANALYSIS=TRUE \
|
|
-DWITH_AUTH=TRUE \
|
|
-DWITH_BINDINGS=TRUE \
|
|
-DWITH_COPC=TRUE \
|
|
-DWITH_DESKTOP=TRUE \
|
|
-DWITH_EPT=TRUE \
|
|
-DWITH_GUI=TRUE \
|
|
-DWITH_GRASS8=TRUE \
|
|
-DGRASS_PREFIX8="$(pkg-config --variable=prefix grass)" \
|
|
-DWITH_HANA=TRUE \
|
|
-DWITH_ORACLE=FALSE \
|
|
-DWITH_PDAL=TRUE \
|
|
-DWITH_POSTGRESQL=TRUE \
|
|
-DWITH_QGIS_PROCESS=TRUE \
|
|
-DWITH_QSPATIALITE=TRUE \
|
|
-DWITH_SERVER=TRUE \
|
|
-DWITH_SERVER_LANDINGPAGE_WEBAPP=TRUE \
|
|
-DWITH_CUSTOM_WIDGETS=TRUE \
|
|
-DQGIS_MANUAL_SUBDIR=share/man \
|
|
-DWITH_QTWEBKIT=FALSE \
|
|
-DWITH_QWTPOLAR=TRUE \
|
|
-DQWTPOLAR_LIBRARY=/usr/lib/libqwt.so \
|
|
-DQWTPOLAR_INCLUDE_DIR=/usr/include/qwt \
|
|
-DCMAKE_CXX_FLAGS="$CXXFLAGS -DQWT_POLAR_VERSION=0x060200" \
|
|
-DWITH_INTERNAL_QWTPOLAR=FALSE \
|
|
$CMAKE_CROSSOPTS
|
|
cmake --build build
|
|
}
|
|
|
|
check() {
|
|
local test_excludes="(
|
|
logGitStatus$|
|
|
checkGitStatus$|
|
|
ProcessingQgisAlgorithmsTestPt1$|
|
|
ProcessingQgisAlgorithmsTestPt4$|
|
|
ProcessingGdalAlgorithmsRasterTest$|
|
|
ProcessingGdalAlgorithmsVectorTest$|
|
|
ProcessingGrass7AlgorithmsImageryTest$|
|
|
ProcessingGrass7AlgorithmsRasterTestPt1$|
|
|
ProcessingGrass7AlgorithmsRasterTestPt2$|
|
|
ProcessingOtbAlgorithmsTest$|
|
|
test_core_authconfig$|
|
|
test_core_authmanager$|
|
|
test_core_blendmodes$|
|
|
test_core_compositionconverter$|
|
|
test_core_dataitem$|
|
|
test_core_dxfexport$|
|
|
test_core_expression$|
|
|
test_core_gdalprovider$|
|
|
test_core_gdalutils$|
|
|
test_core_labelingengine$|
|
|
test_core_layoutgeopdfexport$|
|
|
test_core_layoutmap$|
|
|
test_core_layoutmapoverview$|
|
|
test_core_layoutpicture$|
|
|
test_core_layouttable$|
|
|
test_core_maprendererjob$|
|
|
test_core_maprotation$|
|
|
test_core_overlayexpression$|
|
|
test_core_projectstorage$|
|
|
test_core_rasterlayer$|
|
|
test_core_rastersublayer$|
|
|
test_core_openclutils$|
|
|
test_core_coordinatereferencesystem$|
|
|
test_gui_filedownloader$|
|
|
test_gui_layoutgui$|
|
|
test_gui_queryresultwidget$|
|
|
test_3d_3drendering$|
|
|
test_analysis_processingalgspt2$|
|
|
test_analysis_processing$|
|
|
test_geometry_checker_geometrychecks$|
|
|
test_provider_wcsprovider$|
|
|
test_provider_eptprovider$|
|
|
test_app_gpsinformationwidget$|
|
|
PyQgsAnnotation$|
|
|
PyQgsAuthenticationSystem$|
|
|
PyQgsBlendModes$|
|
|
PyQgsBlockingProcess$|
|
|
PyQgsConnectionRegistry$|
|
|
PyQgsDatumTransform$|
|
|
PyQgsExpression$|
|
|
PyQgsExternalStorageWebDAV$|
|
|
PyQgsFillSymbolLayers$|
|
|
PyQgsFileUtils$|
|
|
PyQgsGeometryTest$|
|
|
PyQgsHashLineSymbolLayer$|
|
|
PyQgsInterpolatedLineSymbolLayer$|
|
|
PyQgsLayerMetadataProviderPython$|
|
|
PyQgsLayoutExporter$|
|
|
PyQgsLayoutHtml$|
|
|
PyQgsLayoutLegend$|
|
|
PyQgsLayoutMapOverview$|
|
|
PyQgsLineSymbolLayers$|
|
|
PyQgsMapClippingRegion$|
|
|
PyQgsMapLayerComboBox$|
|
|
PyQgsMapLayerProxyModel$|
|
|
PyQgsMapUnitScale$|
|
|
PyQgsMergedFeatureRenderer$|
|
|
PyQgsNoApplication$|
|
|
PyQgsPalLabelingPlacement$|
|
|
PyQgsProcessExecutablePt1$|
|
|
PyQgsProcessExecutablePt2$|
|
|
PyQgsProviderConnectionGpkg$|
|
|
PyQgsProviderConnectionSpatialite$|
|
|
PyQgsRasterFileWriter$|
|
|
PyQgsRasterLayerRenderer$|
|
|
PyQgsShapefileProvider$|
|
|
PyQgsSvgCache$|
|
|
PyQgsTextRenderer$|
|
|
PyQgsOGRProvider$|
|
|
PyQgsSpatialiteProvider$|
|
|
PyQgsStyleModel$|
|
|
PyQgsVectorFileWriter$|
|
|
PyQgsVectorLayerEditBuffer$|
|
|
PyQgsVectorLayerNamedStyle$|
|
|
PyQgsVectorLayerProfileGenerator$|
|
|
PyQgsDBManagerGpkg$|
|
|
PyQgsSelectiveMasking$|
|
|
PyQgsPalLabelingServer$|
|
|
PyQgsAppStartup$|
|
|
PyQgsServerWMS$|
|
|
PyQgsServerWMSGetFeatureInfo$|
|
|
PyQgsServerWMSGetMap$|
|
|
PyQgsServerWMSGetLegendGraphic$|
|
|
PyQgsServerWMSGetPrint$|
|
|
PyQgsServerWMSGetPrintExtra$|
|
|
PyQgsServerWMSGetPrintOutputs$|
|
|
PyQgsServerWMSDimension$|
|
|
PyQgsServerProjectUtils$|
|
|
PyQgsServerWFS$|
|
|
PyQgsServerLocaleOverride$|
|
|
PyQgsServerConfigCache$|
|
|
qgis_sipify$|
|
|
qgis_sip_include$|
|
|
qgis_sip_uptodate$|
|
|
ProcessingQgisAlgorithmsTestPt2$|
|
|
ProcessingQgisAlgorithmsTestPt3$|
|
|
ProcessingGrass7AlgorithmsVectorTest$|
|
|
test_core_application$|
|
|
test_core_callout$|
|
|
test_core_centroidfillsymbol$|
|
|
test_core_filledmarker$|
|
|
test_core_gradients$|
|
|
test_core_layoutitem$|
|
|
test_core_linefillsymbol$|
|
|
test_core_meshlayer$|
|
|
test_core_meshlayerrenderer$|
|
|
test_core_networkaccessmanager$|
|
|
test_core_pointcloudexpression$|
|
|
test_core_pointcloudlayerexporter$|
|
|
test_core_pointpatternfillsymbol$|
|
|
test_core_rastercontourrenderer$|
|
|
test_core_simplemarker$|
|
|
test_core_svgmarker$|
|
|
test_gui_processinggui$|
|
|
test_3d_layout3dmap$|
|
|
test_3d_tessellator$|
|
|
test_analysis_processingalgspt1$|
|
|
test_analysis_meshcalculator$|
|
|
test_analysis_meshcontours$|
|
|
test_analysis_triangulation$|
|
|
test_provider_wmsprovider$|
|
|
test_provider_copcprovider$|
|
|
qgis_grassprovidertest8$|
|
|
test_app_fieldcalculator$|
|
|
test_app_maptoolcircularstring$|
|
|
test_app_maptooleditmesh$|
|
|
test_app_vertextool$|
|
|
PyQgsAnimatedMarkerSymbolLayer$|
|
|
PyQgsEmbeddedSymbolRenderer$|
|
|
PyQgsExpressionBuilderWidget$|
|
|
PyQgsGdalProvider$|
|
|
PyQgsGroupLayer$|
|
|
PyQgsHistoryProviderRegistry$|
|
|
PyQgsLayoutMap$|
|
|
PyQgsLayoutPicture$|
|
|
PyQgsPalLabelingCanvas$|
|
|
PyQgsPalLabelingLayout$|
|
|
PyQgsPointCloudAttributeByRampRenderer$|
|
|
PyQgsPointCloudClassifiedRenderer$|
|
|
PyQgsPointCloudLayerProfileGenerator$|
|
|
PyQgsPointCloudRgbRenderer$|
|
|
PyQgsProcessingAlgRunner$|
|
|
TestQgsRandomMarkerSymbolLayer$|
|
|
PyQgsRasterLayer$|
|
|
PyQgsRasterResampler$|
|
|
PyQgsWFSProvider$|
|
|
PyQgsServerPlugins$|
|
|
PyQgsServerApi$|
|
|
test_core_tiledownloadmanager$|
|
|
test_app_qgisappclipboard$|
|
|
PyQgsServerCacheManager$
|
|
)"
|
|
local test_excludes_regexp
|
|
local testcase; for testcase in $test_excludes
|
|
do
|
|
test_excludes_regexp=$test_excludes_regexp$testcase
|
|
done
|
|
xvfb-run -a -s "-screen 0 1280x1024x24 -dpi 96" ctest -j 1 --test-dir build --output-on-failure --timeout 15000 -E $test_excludes_regexp
|
|
}
|
|
|
|
package() {
|
|
DESTDIR="$pkgdir" cmake --install build
|
|
}
|
|
|
|
dev() {
|
|
default_dev
|
|
amove usr/share/qgis/FindQGIS.cmake
|
|
amove usr/lib/qt5/plugins/designer/libqgis_customwidgets.so*
|
|
}
|
|
|
|
server() {
|
|
pkgdesc="FCGI-based OGC web map server"
|
|
amove usr/bin/qgis_mapserver
|
|
amove usr/lib/qgis/server
|
|
amove usr/lib/libqgis_server.so*
|
|
amove usr/libexec/qgis
|
|
amove usr/lib/python3*/site-packages/qgis/server
|
|
amove usr/lib/python3*/site-packages/qgis/_server.so
|
|
amove usr/share/qgis/resources/server
|
|
}
|
|
|
|
grass() {
|
|
pkgdesc="GRASS Support Libraries for QGIS"
|
|
amove usr/lib/libqgisgrass*.so.*
|
|
amove usr/lib/qgis/plugins/libplugin_grass8.so
|
|
amove usr/lib/qgis/plugins/libprovider_grass8.so
|
|
amove usr/lib/qgis/plugins/libprovider_grassraster8.so
|
|
amove usr/lib/qgis/grass/
|
|
amove usr/share/qgis/grass/
|
|
}
|
|
|
|
py3() {
|
|
pkgdesc="Python integration and plug-ins for QGIS"
|
|
depends="py3-owslib py3-pyaml py3-gdal py3-httplib2 py3-jinja2
|
|
py3-matplotlib py3-psycopg2 py3-pygments py3-qscintilla"
|
|
amove usr/lib/libqgispython.so*
|
|
amove usr/share/qgis/python/
|
|
amove usr/lib/python3*/site-packages/qgis/
|
|
amove usr/lib/python3*/site-packages/PyQt5/uic/widget-plugins/
|
|
}
|
|
|
|
sha512sums="
|
|
0c5a095ba1c66391bc7feb5ac91595e4de29889c3921e6a6123a8446c85f5a81be32ef799e51c6483f795e2abd90367e05f6662a6eb6c76dea62488a41566cf7 qgis-3.28.12.tar.bz2
|
|
47cec7b889a2b12f321e8727b06b5edc24a5bb5947dd98671a9aebbbd17adffa515769afcc0e05911a2754b36e78acf0cea2e074b1316beb48a72f78b860a43a 10-exiv2-0.28.patch
|
|
a93bbd7655ded2aae734356ed06346f4508c7a9da916e424892abbdc88c8c1818bd53e818c1a5c41fb14f2bf9bc5309b11b331021ba44b5b4e530b942227ad79 20-protobuf-23.patch
|
|
ab9fe3afac98abbec5007c9c9604c9e3bef5e576f695a8b0a73a5fe29b3c07baec3f46ef4503d4f1df8e5587735c7565ae583f312167bd9c7e20554f88bb0bff 30-qgstyle-infinite-loop.patch
|
|
1beb94b0ccfd1f990c4cd2ed66793ac878526670c1295588539c026e214237c61a4f9f2d3474cbeb6f59f55138ab997fa4f02cf358f36687dd11666527d7616a 40-pdal.patch
|
|
"
|