diff options
Diffstat (limited to 'gis/qgis/qgis.SlackBuild')
-rw-r--r-- | gis/qgis/qgis.SlackBuild | 109 |
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 |