summaryrefslogtreecommitdiffstats
path: root/gis/qgis/qgis.SlackBuild
diff options
context:
space:
mode:
Diffstat (limited to 'gis/qgis/qgis.SlackBuild')
-rw-r--r--gis/qgis/qgis.SlackBuild109
1 files changed, 56 insertions, 53 deletions
diff --git a/gis/qgis/qgis.SlackBuild b/gis/qgis/qgis.SlackBuild
index 3d24b91656..249dad3bc6 100644
--- a/gis/qgis/qgis.SlackBuild
+++ b/gis/qgis/qgis.SlackBuild
@@ -1,9 +1,10 @@
-#!/bin/sh
+#!/bin/bash
-# Slackware build script for Quantum GIS
+# Slackware build script for QGIS
# Copyright 2011 David Spencer, Baildon, West Yorkshire, U.K.
-# Copyright 2013 Benjamin Trigona-Harany
+# Copyright 2013-2021 Benjamin Trigona-Harany
+# Copyright 2023-2024 Giancarlo Dessi, Cagliari, IT
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,10 +24,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=qgis
-VERSION=${VERSION:-2.18.18}
+VERSION=${VERSION:-3.36.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +40,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -70,84 +78,79 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-WITHGRASS=""
-if pkg-config --exists grass; then
- WITHGRASS="-DGRASS_PREFIX=$(pkg-config --variable=prefix grass)"
+if pkg-config --exists OpenCL; then
+ OCL="-DUSE_OPENCL=OFF " ; [ "${OPENCL:-yes}" = "yes" ] && OCL="-DUSE_OPENCL=ON "
+else
+ OCL="-DUSE_OPENCL=OFF "
fi
-WITHSERVER="-DWITH_SERVER=FALSE"
-CGIBINDIR="${CGIBINDIR:-/var/www/cgi-bin/qgis}"
-if [ "${SERVER:-no}" = "yes" ]; then
- WITHSERVER="-DWITH_SERVER=TRUE -DQGIS_CGIBIN_SUBDIR=$CGIBINDIR"
+if pkg-config --exists pdal; then
+ WITHPDAL="-DWITH_PDAL=OFF "; [ "${PDAL:-yes}" = "yes" ] && WITHPDAL="-DWITH_PDAL=ON "
+else
+ WITHPDAL="-DWITH_PDAL=OFF "
fi
-WITHNINJA=""
-if [ "${NINJA:-no}" = "yes" ]; then
- WITHNINJA="-GNinja"
+if pkg-config --exists draco; then
+ WITHDRACO="-DWITH_DRACO=OFF "; [ "${DRACO:-yes}" = "yes" ] && WITHDRACO="-DWITH_DRACO=ON "
+else
+ WITHDRACO="-DWITH_DRACO=OFF "
fi
-# fix double qjson target
-patch -p1 < $CWD/qjson.cmake.diff
+if pkg-config --exists grass; then
+ WITHGRASS="-DGRASS_PREFIX=$(pkg-config --variable=prefix grass) "
+else
+ WITHGRASS=""
+fi
-mkdir build
+sed -i '43 i IF (NOT PROJ_INCLUDE_DIR)\nFIND_PATH(PROJ_INCLUDE_DIR proj.h\n"$ENV{INCLUDE}"\n"$ENV{LIB_DIR}/include"\n)\nENDIF (NOT PROJ_INCLUDE_DIR)\n' cmake/FindProj.cmake
+
+mkdir -p build
cd build
cmake .. \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS -pthread" \
-DCMAKE_BUILD_TYPE="Release" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DQGIS_LIB_SUBDIR=lib${LIBDIRSUFFIX} \
-DQGIS_LIBEXEC_SUBDIR=lib${LIBDIRSUFFIX}/qgis \
-DQGIS_PLUGIN_SUBDIR=lib${LIBDIRSUFFIX}/qgis \
- -DWITH_INTERNAL_QWTPOLAR=FALSE \
- -DQWTPOLAR_INCLUDE_DIR=/usr/include/qwt \
+ -DWITH_QWTPOLAR=TRUE \
+ -DWITH_CUSTOM_WIDGETS=FALSE \
+ -DBINDINGS_GLOBAL_INSTALL=TRUE \
+ -DQWT_INCLUDE_DIR=/usr/include/qwt \
+ -DQSCINTILLA_INCLUDE_DIR=/usr/include/qt5 \
-DENABLE_TESTS=FALSE \
- $WITHSERVER \
- $WITHGRASS \
- $WITHNINJA
-
- if [ -z "$WITHNINJA" ]; then
- make install -j2 DESTDIR=$PKG
- else
- DESTDIR=$PKG ninja install
- fi
+ -DWITH_3D=TRUE \
+ -Wno-dev \
+ $OCL \
+ $WITHPDAL \
+ $WITHDRACO \
+ $WITHGRASS
+
+ make
+ make install DESTDIR=$PKG
cd -
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-install -D -m 0644 debian/qgis.desktop \
- $PKG/usr/share/applications/qgis.desktop
-install -D -m 0644 debian/qgis.xml \
- $PKG/usr/share/mime/packages/qgis.xml
-sed -i "s_image/jpeg;__" $PKG/usr/share/applications/qgis.desktop
-
-mkdir -p $PKG/usr/share/pixmaps
-ln -s /usr/share/qgis/images/icons/qgis-icon.png $PKG/usr/share/pixmaps/qgis.png
-ln -s /usr/share/qgis/images/icons/qgis-mime-icon.png $PKG/usr/share/pixmaps/qgis-mime.png
+mkdir -p $PKG/usr/share/mime/packages
+cp debian/qgis.xml $PKG/usr/share/mime/packages
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKG/usr/doc
+mv $PKG/usr/share/$PRGNAM/doc $PKG/usr/doc/$PRGNAM-$VERSION
+rm -f $PKG/usr/doc/$PRGNAM-$VERSION/INSTALL.md
cp -a \
- doc/AUTHORS BUGS doc/CONTRIBUTORS COPYING ChangeLog \
- doc/DONORS Exception_to_GPL_for_Qt.txt INSTALL NEWS \
- PROVENANCE README.md doc/SPONSORS doc/TRANSLATORS \
+ COPYING ChangeLog Exception_to_GPL_for_Qt.txt NEWS.md \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-cat $CWD/README.server > $PKG/usr/doc/$PRGNAM-$VERSION/README.server
-
-# Move a couple of optional server files to a more appropriate place -- they
-# need to be properly customised (and the server works without them).
-if [ -d $PKG/$CGIBINDIR ]; then
- mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/examples
- mv $PKG/$CGIBINDIR/wms_metadata.xml $PKG/$CGIBINDIR/admin.sld \
- $PKG/usr/doc/$PRGNAM-$VERSION/examples
-fi
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE