diff options
-rw-r--r-- | misc/subsurface/README | 7 | ||||
-rw-r--r-- | misc/subsurface/subsurface.SlackBuild | 101 | ||||
-rw-r--r-- | misc/subsurface/subsurface.info | 12 |
3 files changed, 99 insertions, 21 deletions
diff --git a/misc/subsurface/README b/misc/subsurface/README index cb9d3618d0..9284110888 100644 --- a/misc/subsurface/README +++ b/misc/subsurface/README @@ -8,3 +8,10 @@ With Subsurface the user can track dive locations including GPS coordinates calculates a wide variety of statistics of the user's diving and calculates and tracks information like the user's SAC rate, partial pressures of O2, N2 and He, calculated deco information, and many more. + +Optional dependencies: libftdi or libftdi1 + +Note: To build Subsurface with libftdi support pass FTDI="yes" to the slackbuild. +libftdi will be used if both libftdi and libftdi1 are installed on the system. + + # FTDI="yes" ./subsurface.SlackBuild diff --git a/misc/subsurface/subsurface.SlackBuild b/misc/subsurface/subsurface.SlackBuild index d3c07d9312..d660b833df 100644 --- a/misc/subsurface/subsurface.SlackBuild +++ b/misc/subsurface/subsurface.SlackBuild @@ -2,7 +2,7 @@ # Slackware build script for subsurface -# Copyright 2014-2015 Larry Hajali <larryhaja[at]gmail[dot]com> +# Copyright 2014-2016 Larry Hajali <larryhaja[at]gmail[dot]com> # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -24,13 +24,13 @@ PRGNAM=subsurface SRCNAM=Subsurface -VERSION=${VERSION:-4.4.2} -BUILD=${BUILD:-2} +VERSION=${VERSION:-4.5.6} +BUILD=${BUILD:-1} TAG=${TAG:-_SBo} if [ -z "$ARCH" ]; then case "$( uname -m )" in - i?86) ARCH=i486 ;; + i?86) ARCH=i586 ;; arm*) ARCH=arm ;; *) ARCH=$( uname -m ) ;; esac @@ -41,8 +41,8 @@ TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp} -if [ "$ARCH" = "i486" ]; then - SLKCFLAGS="-O2 -march=i486 -mtune=i686" +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=i586 -mtune=i686" LIBDIRSUFFIX="" elif [ "$ARCH" = "i686" ]; then SLKCFLAGS="-O2 -march=i686 -mtune=i686" @@ -63,6 +63,8 @@ cd $TMP rm -rf $SRCNAM-$VERSION tar xvf $CWD/$SRCNAM-$VERSION.tgz cd $SRCNAM-$VERSION +tar xvf $CWD/libdivecomputer-$PRGNAM-branch-$VERSION.tgz +tar xvf $CWD/marble-$PRGNAM-branch-$VERSION.tgz chown -R root:root . find -L . \ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ @@ -70,23 +72,88 @@ 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 {} \; -# Fix man page directory. -sed -i '/MANDIR =/s|=.*|= /usr/man/man1|' $PRGNAM-install.pri -# Build with Qt4. -patch -p1 < packaging/ubuntu/0001-Make-build-with-Qt4.patch -# Build with newer libgit2. -patch -Np1 < $CWD/libgit2-0.23.x.patch - -qmake PREFX="/usr" QMAKE_CFLAGS+="$SLKCFLAGS" QMAKE_CXXFLAGS+="$SLKCFLAGS" \ - V=1 -config release -o Makefile $PRGNAM.pro +# Ugly hack to avoid header collision between grantlee and grantlee-qt5. +# https://mail.kde.org/pipermail/release-team/2015-August/008911.html +sed -i 's|#include <grantlee_templates.h>|#include "grantlee_templates_local.h"|' templatelayout.h +cat /usr/include/Grantlee5/grantlee_templates.h | \ + sed -e 's|grantlee/|Grantlee5/grantlee/|'\ + > grantlee_templates_local.h + +# We already have packages for libdivecomputer and marble on the system. +# Subsurface requires newer (custom) packages then what is currently available, +# so we're going to compile them into the Subsurface package. +# Similar to packaging/ubuntu/debian/rules. +cd libdivecomputer-$PRGNAM-branch-$VERSION +if [ ! -f configure ]; then + autoreconf -ivf +fi +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --enable-static=yes \ + --enable-shared=no \ + --enable-logging=no \ + --disable-silent-rules make -make install INSTALL_ROOT=$PKG +make install DESTDIR="$PWD/.." +cd - + +mkdir -p marble-$PRGNAM-branch-$VERSION/build +cd marble-$PRGNAM-branch-$VERSION/build + cmake -G "Unix Makefiles" \ + -DCMAKE_INSTALL_PREFIX:PATH="/usr" \ + -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ + -DQT5BUILD:BOOL=ON \ + -DQTONLY:BOOL=TRUE \ + -DBUILD_MARBLE_APPS:BOOL=OFF \ + -DBUILD_MARBLE_EXAMPLES:BOOL=OFF \ + -DBUILD_MARBLE_TESTS:BOOL=OFF \ + -DBUILD_MARBLE_TOOLS:BOOL=OFF \ + -DWITH_DESIGNER_PLUGIN:BOOL=OFF \ + -DBUILD_TESTING:BOOL=OFF \ + -DBUILD_WITH_DBUS:BOOL=OFF \ + -DLIB_SUFFIX:STRING="$LIBDIRSUFFIX" \ + -DCMAKE_BUILD_TYPE=Release .. + + make VERBOSE=1 + make -C src/lib/marble install DESTDIR=$PKG +cd - + +# Build subsurface with libftdi support. Default is no. +if [ "${FTDI:-no}" == "yes" ]; then + FTDISUPPORT="ON" +else + FTDISUPPORT="OFF" +fi + +mkdir build +cd build + cmake -G "Unix Makefiles" \ + -DCMAKE_INSTALL_PREFIX:PATH="/usr" \ + -DUSE_LIBGIT23_API:BOOL=ON \ + -DFTDISUPPORT:BOOL="$FTDISUPPORT" \ + -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS -std=c++11" \ + -DMARBLE_LIBRARIES="$PKG/usr/lib${LIBDIRSUFFIX}/libssrfmarblewidget.so" \ + -DMARBLE_INCLUDE_DIR="$PKG/usr/include" \ + -DLIBDIVECOMPUTER_INCLUDE_DIR="../usr/include" \ + -DLIBDIVECOMPUTER_LIBRARIES="../usr/lib${LIBDIRSUFFIX}/libdivecomputer.a" \ + -DCMAKE_BUILD_TYPE=Release .. + + make VERBOSE=1 + 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 {} \; +# Remove unneeded files/directories. +rm -rf $PKG/usr/include/marble +find $PKG -type d -empty -delete mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION cp -a gpl-2.0.txt INSTALL README SupportedDivecomputers.* TODO.CCR \ diff --git a/misc/subsurface/subsurface.info b/misc/subsurface/subsurface.info index 64da37213b..e438b109c4 100644 --- a/misc/subsurface/subsurface.info +++ b/misc/subsurface/subsurface.info @@ -1,10 +1,14 @@ PRGNAM="subsurface" -VERSION="4.4.2" +VERSION="4.5.6" HOMEPAGE="http://subsurface.hohndel.org/" -DOWNLOAD="http://subsurface.hohndel.org/downloads/Subsurface-4.4.2.tgz" -MD5SUM="9700199b0aedc1ad9f9ebe3cff0f8733" +DOWNLOAD="http://subsurface.hohndel.org/downloads/Subsurface-4.5.6.tgz \ + http://subsurface-divelog.org/downloads/libdivecomputer-subsurface-branch-4.5.6.tgz \ + http://subsurface-divelog.org/downloads/marble-subsurface-branch-4.5.6.tgz" +MD5SUM="2938e9ef0f50279f021f376c2ea5f0b6 \ + 1453be70136d525c588e6665c8e007af \ + 0eed12c9853581b5d9ef150c9f453a36" DOWNLOAD_x86_64="" MD5SUM_x86_64="" -REQUIRES="libdivecomputer libgit2" +REQUIRES="libgit2 grantlee-qt5 qt5-webkit" MAINTAINER="Larry Hajali" EMAIL="larryhaja[at]gmail[dot]com" |