#!/bin/bash # etc.SlackBuild # by Stuart Winter for the Slackware porting Project. # Heavily based on the original Slackware build script. # 30-May-2004 # Record toolchain & other info for the build log: slackbuildinfo # Paths to skeleton port's source & real Slackware source tree: export CWD=$SLACKSOURCE/$PKGSERIES/$PKGNAM export PORTCWD=$PWD # Temporary build locations: export TMPBUILD=$TMP/build-$PKGNAM export PKG=$TMP/package-$PKGNAM mkpkgdirs # Delete and re-create temporary directories # Start fakeroot server: start_fakeroot # Explode the package framework: cd $PKG explodepkg $CWD/_etc.tar.gz mkdir -p $PKG/usr/etc # there is a printcap symlink in here cp -a $CWD/termcap-BSD.gz etc/termcap-BSD.gz gzip -d --force etc/termcap-BSD.gz chown root:root etc/termcap-BSD chmod 644 etc/termcap-BSD zcat $CWD/nsswitch.conf.gz > $PKG/etc/nsswitch.conf.new # Fix for ARCH: sed -i -e "s#/i586-slackware-linux#/${ARCH}-slackware-linux-gnueabi#" etc/ld.so.conf.new # Fix paths if lib64 is needed: if [ "$ARCH" = "x86_64" ]; then sed -i -e "s#/lib#/lib64#" etc/ld.so.conf.new fi # First, if we're running on a Marvell unit, we need to let # root login on ttyS0: ( cd install mv -fv doinst.sh doinst.sh.2 install -vpm644 $PORTCWD/arm/doinst.sh.rootloginttyS0 doinst.sh [ -f doinst.sh.2 ] && sed 's?^#!.*??' doinst.sh.2 >> doinst.sh rm -f doinst.sh.2 ) # Apply some of the generic Slackware packaging policies: slackgzpages -i # compress man & info pages and delete usr/info/dir slackdesc # install slack-desc and doinst.sh slackmp # run makepkg -l y -c n # Perform any final checks on the package: cd $PKG slackhlinks # search for any hard links