summaryrefslogtreecommitdiff
path: root/gis/grass/grass.SlackBuild
diff options
context:
space:
mode:
Diffstat (limited to 'gis/grass/grass.SlackBuild')
-rw-r--r--gis/grass/grass.SlackBuild116
1 files changed, 72 insertions, 44 deletions
diff --git a/gis/grass/grass.SlackBuild b/gis/grass/grass.SlackBuild
index b8e47deac4..6755dbde89 100644
--- a/gis/grass/grass.SlackBuild
+++ b/gis/grass/grass.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=grass
-VERSION=${VERSION:-6.4.4}
+VERSION=${VERSION:-7.0.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -75,10 +75,22 @@ set -- $(echo $ENABLE | sed 's/,/ /g')
while [ "$1" != "" ]; do
case "$1"
in
- blas | \
- lapack | \
- ffmpeg | \
- sqlite )
+ sqlite | \
+ netcdf | \
+ opencl )
+ WITHLIST="$WITHLIST --with-$1"
+ shift
+ ;;
+ # blas and lapack are both needed, so provide a single option ...
+ # (Maybe atlas would be better, but the docs are unclear about how the
+ # dependencies are used.)
+ gmath )
+ WITHLIST="$WITHLIST --with-blas --with-lapack"
+ shift
+ ;;
+ # ... but for compatibility with previous versions of this SlackBuild,
+ # allow blas and lapack to be enabled individually.
+ blas | lapack )
WITHLIST="$WITHLIST --with-$1"
shift
;;
@@ -91,87 +103,103 @@ while [ "$1" != "" ]; do
WITHLIST="$WITHLIST --with-postgres"
shift
;;
+ unixODBC )
+ WITHLIST="$WITHLIST --with-odbc"
+ shift
+ ;;
+ # If anybody needs LAS support, please submit libLAS to SBo :-)
* )
shift
;;
esac
done
-if [ "$LIBDIRSUFFIX" = "64" ]; then
- BITNESS=" --enable-64bit"
-else
- BITNESS=""
-fi
-
# geos now always enabled: it's an indirect hard dep (via gdal), and makes grass nicer :-)
-# ffmpeg includes are only parsed if ffmpeg is enabled so it is safe to pass them to configure.
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS -fpermissive" \
LDFLAGS="-ldl -lncurses" \
./configure \
--prefix=/opt \
+ --exec-prefix=/wibble/usr \
+ --enable-largefile \
+ --with-cairo \
--with-cxx \
--with-fftw \
- --with-motif \
--with-freetype \
--with-freetype-includes=/usr/include/freetype2 \
- --with-readline \
+ --with-geos \
+ --with-nls \
+ --with-openmp \
--with-python \
+ --with-pthread \
--with-proj-share=/usr/share/proj \
- --with-cairo \
+ --with-readline \
--with-wxwidgets \
- --with-geos \
- --enable-largefile \
$WITHLIST \
- $BITNESS \
- --with-ffmpeg-includes="/usr/include/libavcodec /usr/include/libavdevice \
- /usr/include/libavfilter /usr/include/libavformat /usr/include/libavutil \
- /usr/include/libpostproc /usr/include/libswresample /usr/include/libswscale" \
--build=$ARCH-slackware-linux \
--host=$ARCH-slackware-linux
make
-make prefix=$PKG/opt BINDIR=$PKG/usr/bin \
- PREFIX=$PKG/usr install
+make prefix=$PKG/opt exec_prefix=$PKG/usr install
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-# Create unversioned symlink
-( cd $PKG/opt ; ln -s $PRGNAM-$VERSION $PRGNAM )
-
-# Wrapper script fixups
-sed -i -e "s;$PKG;;" -e "s;-$VERSION;;" $PKG/usr/bin/grass64
-( cd $PKG/usr/bin ; ln -s grass64 $PRGNAM )
-
-# Fix fonts path for fontcap
-sed -i -e "s;$PKG;;" $PKG/opt/$PRGNAM-$VERSION/etc/fontcap
-
-# Unversion and install the pkgconfig file
-sed -i -e "s/-${VERSION}//g" grass.pc
+# Install the pkgconfig file:
install -D -m0644 grass.pc $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig/grass.pc
-find $PKG/opt/$PRGNAM-$VERSION/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/opt/$PRGNAM-$VERSION/man -type l ) ; do \
+# Create unversioned symlinks:
+( cd $PKG/opt ; ln -s $PRGNAM-$VERSION $PRGNAM )
+( cd $PKG/usr/bin ; ln -s grass70 $PRGNAM )
+
+# Remove hardcoded version strings:
+sed -i -e "s/-${VERSION}//g" \
+ $PKG/usr/bin/grass70 \
+ $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig/grass.pc
+
+# Remove packaging directory pollution:
+sed -i -e "s;$PKG;;" \
+ $PKG/usr/bin/grass70 \
+ $PKG/opt/$PRGNAM-$VERSION/demolocation/.grassrc70 \
+ $PKG/opt/$PRGNAM-$VERSION/etc/fontcap \
+ $PKG/opt/$PRGNAM-$VERSION/include/Make/Grass.make \
+ $PKG/opt/$PRGNAM-$VERSION/include/Make/Platform.make
+
+# Documentation:
+PKGOPTMAN=$PKG/opt/$PRGNAM-$VERSION/docs/man
+find $PKGOPTMAN -type f -exec gzip -9 {} \;
+for i in $( find $PKGOPTMAN -type l ) ; do \
ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
mkdir -p $PKG/usr/man/man1
cp -a \
- $PKG/opt/$PRGNAM-$VERSION/man/man1/grass6.1.gz \
+ $PKGOPTMAN/man1/grass7.1.gz \
$PKG/usr/man/man1/grass.1.gz
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+mv \
+ $PKG/opt/$PRGNAM-$VERSION/{AUTHORS,CHANGES,COPYING,GPL.TXT,REQUIREMENTS.html} \
+ $PKG/opt/$PRGNAM-$VERSION/*.csv \
+ $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- AUTHORS CHANGES COPYING ChangeLog* GPL.TXT INSTALL README REQUIREMENTS.html \
- SUBMITTING SUBMITTING_SCRIPTS SUBMITTING_TCLTK TODO \
+ ChangeLog* INSTALL README SUBMITTING* TODO \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-install -D -m 0644 $CWD/$PRGNAM.desktop \
+# Desktop:
+mkdir -p $PKG/usr/share/applications
+cp -a \
+ $CWD/$PRGNAM.desktop \
$PKG/usr/share/applications/$PRGNAM.desktop
-install -D -m 0644 gui/icons/$PRGNAM-48x48.png \
- $PKG/usr/share/pixmaps/$PRGNAM.png
+mkdir -p $PKG/usr/share/pixmaps
+cp -a \
+ gui/icons/$PRGNAM-64x64.png \
+ $PKG/usr/share/pixmaps/${PRGNAM}.png
+
+# Cleanup:
+rm -rf $PKG/opt/$PRGNAM-$VERSION/demolocation/PERMANENT/.tmp
+rm $PKG/opt/$PRGNAM-$VERSION/config.status
+rm -rf $PKG/opt/$PRGNAM-$VERSION/share/
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc