diff options
Diffstat (limited to 'development/icon/icon.SlackBuild')
-rw-r--r-- | development/icon/icon.SlackBuild | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/development/icon/icon.SlackBuild b/development/icon/icon.SlackBuild new file mode 100644 index 0000000000..5f2e30a495 --- /dev/null +++ b/development/icon/icon.SlackBuild @@ -0,0 +1,86 @@ +#!/bin/sh + +# Slackware build script for icon +# Written by Kyle Guinn <elyk03@gmail.com> + +PRGNAM=icon +VERSION=${VERSION:-9.5.0} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +if [ -z "$ARCH" ]; then + case "$(uname -m)" in + i?86) ARCH=i486 ;; + arm*) ARCH=arm ;; + *) ARCH=$(uname -m) ;; + esac +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM-$VERSION +OUTPUT=${OUTPUT:-/tmp} + +# Removed "-O2"; enabling optimization seems to cause +# "Run-time error 302", "memory violation" +# whenever running icon programs. +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-march=i486 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-fPIC" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="" + LIBDIRSUFFIX="" +fi + +set -e + +PKGVERSION=$(echo $VERSION | tr -d .) +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-v${PKGVERSION}src +tar xvf $CWD/$PRGNAM-v${PKGVERSION}src.tgz +cd $PRGNAM-v${PKGVERSION}src +chown -R root:root . +chmod -R u+w,go+r-w,a-st . + +# Let's put the package in /opt/icon instead of filling /usr/lib +# (and not a '/usr/lib/icon' subdirectory) with icon-related files. +# The makefile will attempt to create the /opt/icon directory, but +# doesn't use the -p option with mkdir, so we have to create only +# its parent directory first. +mkdir -p $PKG/opt +make X-Configure name=linux +make CFLAGS="$SLKCFLAGS" +make Install dest=$PKG/opt/icon + +# Create symlinks from /usr/bin to /opt/icon/bin. +mkdir -p $PKG/usr/bin +for i in icon icont iconx vib; do + ln -s ../../opt/icon/bin/$i $PKG/usr/bin/$i +done + +find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true + +# Move man pages and docs to their usual locations. +mkdir -p $PKG/usr/doc +mv $PKG/opt/icon/man $PKG/usr/man +mv $PKG/opt/icon/doc $PKG/usr/doc/$PRGNAM-$VERSION +mv $PKG/opt/icon/README $PKG/usr/doc/$PRGNAM-$VERSION + +find $PKG/usr/man -type f -exec gzip -9 {} \; + +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} |