From 3891fcb8a1d5285544ac629cea5bb20a6e063fed Mon Sep 17 00:00:00 2001 From: classabbyamp Date: Wed, 27 Sep 2023 02:36:46 -0400 Subject: [PATCH] grass: update to 8.3.0, orphan move back to /usr/lib, enable shared libraries for qgis, wxwidgets gui is now default again, don't version the install prefix because that makes it harder to build other packages against grass --- common/shlibs | 9 ++++ srcpkgs/grass-devel | 1 + .../grass/patches/generic-installdir.patch | 34 ++++++++++++ srcpkgs/grass/patches/musl.patch | 10 ++++ srcpkgs/grass/template | 53 +++++++++++++------ 5 files changed, 92 insertions(+), 15 deletions(-) create mode 120000 srcpkgs/grass-devel create mode 100644 srcpkgs/grass/patches/generic-installdir.patch create mode 100644 srcpkgs/grass/patches/musl.patch diff --git a/common/shlibs b/common/shlibs index 85ead20844eccc..92619c29e29399 100644 --- a/common/shlibs +++ b/common/shlibs @@ -4271,3 +4271,12 @@ libb64.so.0 libb64-1.2.1_1 libei.so.1 libei-1.1.0_1 libeis.so.1 libei-1.1.0_1 liboeffis.so.1 libei-1.1.0_1 +libgrass_datetime.8.3.so grass-8.3.0_1 +libgrass_dbmibase.8.3.so grass-8.3.0_1 +libgrass_dbmiclient.8.3.so grass-8.3.0_1 +libgrass_gis.8.3.so grass-8.3.0_1 +libgrass_gmath.8.3.so grass-8.3.0_1 +libgrass_gproj.8.3.so grass-8.3.0_1 +libgrass_imagery.8.3.so grass-8.3.0_1 +libgrass_raster.8.3.so grass-8.3.0_1 +libgrass_vector.8.3.so grass-8.3.0_1 diff --git a/srcpkgs/grass-devel b/srcpkgs/grass-devel new file mode 120000 index 00000000000000..0b83126164de48 --- /dev/null +++ b/srcpkgs/grass-devel @@ -0,0 +1 @@ +grass \ No newline at end of file diff --git a/srcpkgs/grass/patches/generic-installdir.patch b/srcpkgs/grass/patches/generic-installdir.patch new file mode 100644 index 00000000000000..c0567bc17b396c --- /dev/null +++ b/srcpkgs/grass/patches/generic-installdir.patch @@ -0,0 +1,34 @@ +--- a/grass.pc.in ++++ b/grass.pc.in +@@ -2,13 +2,13 @@ + # + # See also: grass --config + +-prefix=@prefix@/grass-@GRASS_VERSION_MAJOR@.@GRASS_VERSION_MINOR@.@GRASS_VERSION_RELEASE@ +-exec_prefix=@prefix@/grass-@GRASS_VERSION_MAJOR@.@GRASS_VERSION_MINOR@.@GRASS_VERSION_RELEASE@ +-libdir=@prefix@/grass-@GRASS_VERSION_MAJOR@.@GRASS_VERSION_MINOR@.@GRASS_VERSION_RELEASE@/lib +-includedir=@prefix@/grass-@GRASS_VERSION_MAJOR@.@GRASS_VERSION_MINOR@.@GRASS_VERSION_RELEASE@/include ++prefix=@prefix@/grass ++exec_prefix=@prefix@/grass ++libdir=@prefix@/grass ++includedir=@prefix@/grass + + Name: GRASS + Description: GRASS GIS + Version: @GRASS_VERSION_MAJOR@.@GRASS_VERSION_MINOR@.@GRASS_VERSION_RELEASE@ +-Libs: -L@prefix@/grass-@GRASS_VERSION_MAJOR@.@GRASS_VERSION_MINOR@.@GRASS_VERSION_RELEASE@/lib -lgrass_gmath -lgrass_gis -lgrass_datetime -lgrass_gproj -lgrass_raster -lgrass_vector -lgrass_dbmibase -lgrass_dbmiclient -lm -lz +-Cflags: -I@prefix@/grass-@GRASS_VERSION_MAJOR@.@GRASS_VERSION_MINOR@.@GRASS_VERSION_RELEASE@/include ++Libs: -L@prefix@/grass/lib -lgrass_gmath -lgrass_gis -lgrass_datetime -lgrass_gproj -lgrass_raster -lgrass_vector -lgrass_dbmibase -lgrass_dbmiclient -lm -lz ++Cflags: -I@prefix@/grass/include + +--- a/configure ++++ b/configure +@@ -4243,7 +4243,7 @@ + if test -n "$MACOSX_APP" ; then + INSTDIR='${prefix}'"/GRASS-${GRASS_VERSION_MAJOR}.${GRASS_VERSION_MINOR}.app/Contents/MacOS" + else +- INSTDIR='${prefix}'"/grass${GRASS_VERSION_MAJOR}${GRASS_VERSION_MINOR}" ++ INSTDIR='${prefix}'"/grass" + fi + + diff --git a/srcpkgs/grass/patches/musl.patch b/srcpkgs/grass/patches/musl.patch new file mode 100644 index 00000000000000..7cb2b8f74ad1ec --- /dev/null +++ b/srcpkgs/grass/patches/musl.patch @@ -0,0 +1,10 @@ +--- a/include/grass/gis.h ++++ b/include/grass/gis.h +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include + + /* Grass and local include files */ + #include diff --git a/srcpkgs/grass/template b/srcpkgs/grass/template index ded8e40daaf10b..8910865f17529a 100644 --- a/srcpkgs/grass/template +++ b/srcpkgs/grass/template @@ -1,28 +1,51 @@ # Template file for 'grass' pkgname=grass -version=8.2.1 -revision=3 -_binver=${version//./} -_binver=${_binver:0:2} +version=8.3.0 +revision=1 build_style=gnu-configure -configure_args="--prefix=/opt/grass +configure_args="--prefix=/usr/lib --enable-shared --without-pdal + --with-bzlib --with-nls --with-pthread --with-readline --with-geos + --with-blas --with-lapack --with-netcdf --with-odbc --with-openmp --with-freetype-includes=${XBPS_CROSS_BASE}/usr/include/freetype2" -hostmakedepends="flex libgdal-tools pkg-config python3-numpy python3-six tar" -makedepends="proj-devel tiff-devel libgdal-devel sqlite-devel - fftw-devel cairo-devel glu-devel" +hostmakedepends="flex gettext libgdal-tools pkg-config python3-numpy python3-six + tar" +makedepends="proj-devel tiff-devel libgdal-devel sqlite-devel fftw-devel + cairo-devel glu-devel libzstd-devel bzip2-devel geos-devel gettext-devel + readline-devel lapack-devel blas-devel netcdf-devel unixodbc-devel libgomp-devel + wxPython" depends="python3-numpy python3-dateutil python3-Pillow python3-matplotlib python3-six python3-ply wxPython" short_desc="Geographic Resources Analysis Support System - GIS" -maintainer="Alex Jarosch " +maintainer="Orphaned " license="GPL-2.0-or-later" homepage="https://grass.osgeo.org/" -distfiles="https://grass.osgeo.org/grass${_binver}/source/grass-${version}.tar.gz" -checksum=8116202fb15352646442862230c7ca48ff8943b7bb83626160ce134980843abd -python_version=3 +distfiles="https://github.com/OSGeo/grass/archive/refs/tags/${version}.tar.gz" +checksum=8a38d297a41316ec0af1e4b4f8d00738f1fd98be768b8c6001b00e88817a2764 nocross="tries to execute target binaries" +# 98-shlib-provides hook doesn't detect shlibs versioned before .so +shlib_provides=" + libgrass_datetime.8.3.so + libgrass_dbmibase.8.3.so + libgrass_dbmiclient.8.3.so + libgrass_gis.8.3.so + libgrass_gmath.8.3.so + libgrass_gproj.8.3.so + libgrass_imagery.8.3.so + libgrass_raster.8.3.so + libgrass_vector.8.3.so" post_install() { - # This package is broken with wxPython (<=4.0.7) and the GUI - # is disabled pending further testing with newer wxPython - vsed -i "${DESTDIR}/usr/bin/grass" -e "s/\(default_gui =\).*/\1 \"text\"/" + vinstall grass.pc 644 usr/lib/pkgconfig +} + +grass-devel_package() { + depends="${sourcepkg}>=${version}_${revision}" + short_desc+=" - development files" + pkg_install() { + vmove "usr/lib/grass/include" + vmove usr/lib/pkgconfig + while read -r file; do + vmove "${file/$DESTDIR/}" + done < <(find "${DESTDIR}/usr/lib/grass/lib" -type l) + } }