#!/bin/bash # Slackware build script for wcd # Originally written by Ryan P.C. McQuen # Now maintained by B. Watson # Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details. # 20210910 bkw: # - updated for v6.0.4_beta2. there are no code changes in the beta, # only the documentation and translations have been updated, so # it's a safe upgrade that won't break anything. # - relicense as WTFPL with permission from original author. # 20191201 bkw: updated for v6.0.3. # 20180612 bkw: updated for v6.0.2. # 20171219 bkw: updated for v6.0.1. also, add /etc/profile.d scripts # so wcd actually *works*. cd $(dirname $0) ; CWD=$(pwd) PRGNAM=wcd VERSION=${VERSION:-6.0.4_beta2} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} PKGTYPE=${PKGTYPE:-tgz} if [ -z "$ARCH" ]; then case "$( uname -m )" in i?86) ARCH=i586 ;; arm*) ARCH=arm ;; *) ARCH=$( uname -m ) ;; esac fi 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} set -e TARVER=${VERSION/_/-} rm -rf $PKG mkdir -p $TMP $PKG $OUTPUT cd $TMP rm -rf $PRGNAM-$TARVER tar xvf $CWD/$PRGNAM-$TARVER.tar.gz cd $PRGNAM-$TARVER chown -R root:root . find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+ if [ "$ARCH" = "i586" ]; then SLKCFLAGS="-O2 -march=i586 -mtune=i686" LIBDIRSUFFIX="" elif [ "$ARCH" = "i686" ]; then SLKCFLAGS="-O2 -march=i686 -mtune=i686" LIBDIRSUFFIX="" elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC" LIBDIRSUFFIX="64" else SLKCFLAGS="-O2" LIBDIRSUFFIX="" fi cd src RPM_OPT_FLAGS="$SLKCFLAGS" \ make all make \ prefix=$PKG/usr \ docdir=$PKG/usr/doc/$PRGNAM-$VERSION \ mandir=$PKG/usr/man \ install # remove .exe so command is executable mv $PKG/usr/bin/wcd.exe $PKG/usr/bin/wcd # Put _all_ man pages under usr/man mv $PKG/usr/share/man/* $PKG/usr/man rmdir $PKG/usr/share/man 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 # profile.d scripts, installed executable (like mc does). mkdir -p $PKG/etc/profile.d/ install -m0755 -oroot -groot \ $CWD/$PRGNAM.sh $CWD/$PRGNAM.csh $PKG/etc/profile.d/ cp -a ../doc/INSTALL.txt $PKG/usr/doc/$PRGNAM-$VERSION 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