#!/bin/sh CWD=`pwd` TMP=/tmp PKG=$TMP/package-bind VERSION=9.4.2-P2 ARCH=alpha BUILD=1 TARGET=$ARCH-alphaslack-linux rm -rf $PKG mkdir -p $PKG ( cd $TMP rm -rf bind-$VERSION tar xzf $CWD/bind-$VERSION.tar.gz cd bind-$VERSION chown -R root.root . find . -perm 775 -exec chmod 755 {} \; find . -perm 664 -exec chmod 644 {} \; # We want to use /var/run/named/, not just /var/run/. # This allows changing the ownership of that directory if we want to run # named as a non-root user. zcat $CWD/bind.var.run.named.diff.gz | patch -p1 --verbose || exit 1 # Remove use of SO_BSDCOMPAT which has been obsolete since the 2.2.x kernel series, # and generates warnings under 2.6.x kernels: zcat $CWD/bind.so_bsdcompat.diff.gz | patch -p1 --verbose || exit 1 # The man pages should reflect /var/run/named: zcat $CWD/bind.man.diff.gz | patch -p1 --verbose || exit 1 ./configure \ --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ --mandir=/usr/man \ --infodir=/usr/info \ --with-libtool \ --enable-shared \ --enable-threads \ --with-openssl=/usr \ --build=$TARGET || exit make -j2 || exit 1 make DESTDIR=$PKG install cat contrib/named-bootconf/named-bootconf.sh > $PKG/usr/sbin/named-bootconf.sh ( cd $PKG/usr/sbin ; rm -rf lwresd ) ( cd $PKG/usr/sbin ; ln -sf named lwresd ) ( cd $PKG/usr/lib ; chmod 755 *.so.* ) ( cd $PKG/usr/bin ; chown -R root:bin . ) ( cd $PKG/usr/sbin ; chown -R root:bin . ) mkdir -p $PKG/usr/doc/bind-$VERSION cp -a CHANGES COPYRIGHT FAQ README $PKG/usr/doc/bind-$VERSION ( cd $PKG/usr/doc/bind-$VERSION ; find . -type f | xargs chmod 644 ) ( cd $PKG find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null ) # Install init script: mkdir -p $PKG/etc/rc.d cp -a $CWD/rc.bind $PKG/etc/rc.d/rc.bind.new chmod 644 $PKG/etc/rc.d/rc.bind.new # Add /var/run/named directory: mkdir -p $PKG/var/run/named $PKG/var/named/caching-example # Fix library perms: chmod 755 $PKG/usr/lib/* ( cd $PKG/usr/man/man8 ; rm -rf named-compilezone.8 ) gzip -9f $PKG/usr/man/man?/* # Add sample config files for a simple caching nameserver: cat $CWD/caching-example/named.conf > $PKG/etc/named.conf.new cat $CWD/caching-example/localhost.zone > $PKG/var/named/caching-example/localhost.zone cat $CWD/caching-example/named.root > $PKG/var/named/caching-example/named.root cat $CWD/caching-example/named.local > $PKG/var/named/caching-example/named.local mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh cd $PKG makepkg -l y -c n $TMP/bind-$(echo $VERSION | tr - _)-$ARCH-$BUILD.tgz ) 2>&1 | tee $TMP/bind.build.log