You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

118 lines
4.5 KiB

#!/bin/sh
# Generated by Alien's SlackBuild Toolkit: http://slackware.com/~alien/AST
# Copyright 2009, 2010, 2011, 2012, 2013, 2014, 2015 Eric Hameleers, Eindhoven, Netherlands
# Copyright 2015-2016 Thorn Inurcide
# All rights reserved.
#
# Permission to use, copy, modify, and distribute this software for
# any purpose with or without fee is hereby granted, provided that
# the above copyright notice and this permission notice appear in all
# copies.
#
# THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
# IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
# OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
# SUCH DAMAGE.
PRGNAM=abakus
VERSION=${VERSION:-$TDEVERSION}
BUILD=${BUILD:-1}
TAG=${TAG:-_tde}
SlackDesc()
{
echo "
# HOW TO EDIT THIS FILE:
# The 'handy ruler' below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
# on the right side marks the last column you can put a character in. You must
# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
$PRGNAM|-----handy-ruler------------------------------------------------------|
$PRGNAM: $PRGNAM is a calculator designed with computer usability in mind.
$PRGNAM: Instead of using your powerful computer to put a limited simulation
$PRGNAM: of a calculator on-screen, $PRGNAM instead allows you to use your
$PRGNAM: computer to its greater potential.
$PRGNAM:
$PRGNAM: Can be built and used with mpfr.
$PRGNAM: Customizable precision up to 75 digits.
$PRGNAM:
$PRGNAM: Copy/paste or type in and evaluate complex expressions. Exponentiation
$PRGNAM: is right-associative, for example: (2^3)^2*e^4/pi 2^3^2*e^4/pi
$PRGNAM: [The answers given by $PRGNAM: 1112.26437907 8898.11503252]
" > $PKG/install/slack-desc
}
source ../../get-source.sh
cd $TMP/tmp-$PRGNAM
echo "
Extracting the source from the ${PRGNAM} archive ..."
tar -xf ${SOURCE}
cd applications
cd ${PRGNAM}
## add check for mpfr installed to set HAVE_MPFR, otherwise even if it is installed, abakus won't be built with mpfr
sed -i 's|HAVE_INOTIFY )|HAVE_INOTIFY )\ncheck_include_file( mpfr.h HAVE_MPFR )|' ConfigureChecks.cmake
## the linker can't find 'gmp' although it can find 'mpfr' and fails with:
## [100%] Linking CXX executable abakus c++: error: gmp: No such file or directory
## As libgmp is linked through libmpfr, do we really need libgmp here?
sed -i 's|mpfr gmp|mpfr -lgmp|' src/CMakeLists.txt
# list only files > zero bytes
DOCS=$(for file in AUTHORS* ChangeLog* COPYING* FAQ* INSTALL* KNOWNBUGS* NEWS* README* TODO* *.lsm;do [[ -s $file ]] && ls -1 $file;done ) || true
chown -R root:root .
chmod -R u+w,go+r-w,a+rX-st .
mkdir -p build-${PRGNAM}
cd build-${PRGNAM}
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS $TQT_INCLUDE_PATH" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=${INSTALL_TDE} \
-DBUILD_DOC="ON" \
..
make $NUMJOBS || exit 1
make DESTDIR=$PKG install || exit 1
cd -
mkdir -p $PKG${INSTALL_TDE}/doc/$PRGNAM-$VERSION
cp -a $DOCS $PKG${INSTALL_TDE}/doc/$PRGNAM-$VERSION || true
cat $SRCDIR/$(basename $0) > $PKG${INSTALL_TDE}/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
chown -R root:root $PKG${INSTALL_TDE}/doc/$PRGNAM-$VERSION
find $PKG${INSTALL_TDE}/doc -type f -exec chmod 644 {} \;
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/install
SlackDesc
cd $PKG
makepkg --linkadd y --chown n $OUTPUT/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.${PKGTYPE:-txz}
cd $OUTPUT
md5sum ${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.${PKGTYPE:-txz} > ${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.${PKGTYPE:-txz}.md5
cd -
cat $PKG/install/slack-desc | grep "^${PRGNAM}" | grep -v handy > $OUTPUT/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.txt
# Restore the original umask:
umask ${_UMASK_}