diff options
Diffstat (limited to 'network/heimdal/heimdal.SlackBuild')
-rw-r--r-- | network/heimdal/heimdal.SlackBuild | 123 |
1 files changed, 54 insertions, 69 deletions
diff --git a/network/heimdal/heimdal.SlackBuild b/network/heimdal/heimdal.SlackBuild index 416140552d..df146ea945 100644 --- a/network/heimdal/heimdal.SlackBuild +++ b/network/heimdal/heimdal.SlackBuild @@ -1,16 +1,19 @@ #!/bin/sh # Slackware build script for KTH Heimdal Kerberos - # Written by Menno E. Duursma <druiloor@zonnet.nl> -# All rights reserved. # Modified by the SlackBuilds.org project +# This program is free software. It comes without any warranty. +# Granted WTFPL, Version 2, as published by Sam Hocevar. See +# http://sam.zoy.org/wtfpl/COPYING for more details. + PRGNAM=heimdal -VERSION=0.7.2 +VERSION=1.2.1 ARCH=${ARCH:-i486} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} + CWD=$(pwd) TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM @@ -20,112 +23,101 @@ if [ "$ARCH" = "i486" ]; then SLKCFLAGS="-O2 -march=i486 -mtune=i686" elif [ "$ARCH" = "i686" ]; then SLKCFLAGS="-O2 -march=i686 -mtune=i686" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" fi +set -e # Exit immediately if a command exits with a non-zero status. + rm -rf $PKG mkdir -p $TMP $PKG $OUTPUT -cd $TMP || exit 1 +cd $TMP rm -rf $PRGNAM-$VERSION -tar xzvf $CWD/$PRGNAM-$VERSION.tar.gz || exit 1 -cd $PRGNAM-$VERSION || exit 1 - +tar xvf $CWD/$PRGNAM-$VERSION.tar.gz +cd $PRGNAM-$VERSION chown -R root:root . -chmod -R a-s,u+w,go+r-w . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 \ + -o -perm 400 \) -exec chmod 644 {} \; + # Note about OpenLDAP: # The openldap-client package is part of Slackware since the 11.0 release. # If you want to store your KDC database in LDAP, you will need to configure # Heimdal with support for OpenLDAP: -# Replace the line "--without-openldap" in the "configure" command a few lines -# further down with: "--with-openldap=/usr" - +# Replace this: "--without-openldap" with this: "--with-openldap=/usr" +# in the configure lines below CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ ./configure \ --prefix=/usr/heimdal \ + --infodir=/usr/info \ + --mandir=/usr/man \ --enable-shared=yes \ --enable-kcm \ - --without-krb4 \ --without-hesiod \ --without-ipv6 \ --without-openldap \ --with-x \ - || exit 1 - -make || exit 1 -make install DESTDIR=$PKG || exit 1 - -( cd $PKG - find . -type f | \ - xargs file | \ - grep "executable" | \ - grep ELF | \ - cut -f 1 -d : | \ - xargs strip --strip-unneeded \ - 2> /dev/null - - find . -type f | \ - xargs file | \ - grep "shared object" | \ - grep ELF | \ - cut -f 1 -d : | \ - xargs strip --strip-unneeded \ - 2> /dev/null + --build=$ARCH-slackware-linux \ + --host=$ARCH-slackware-linux + +make +make install DESTDIR=$PKG + +( cd $PKG || exit 1 + find . -type f \ + | xargs file \ + | grep -e "executable" -e "shared object" \ + | grep ELF \ + | cut -f 1 -d : \ + | xargs strip --strip-unneeded 2> /dev/null ) -# Compress manual pages, delete 'cat' pages that do not belong here -( cd $PKG/usr/heimdal/man - rm -rf cat? - for i in $(find . -type l) ; do ln -s $( readlink $i ).gz $i.gz ; rm -f $i ; done - find . -type f -name "*.?" -exec gzip -9f {} \; +( cd $PKG/usr/man || exit 1 + rm -rf cat* + find . -type f -exec gzip -9 {} \; + for i in $(find . -type l) ; do + ln -s $(readlink $i).gz $i.gz ; rm $i + done ) -# Compress info pages -( cd $PKG/usr/heimdal/info - find . -type f \! -name dir -exec gzip -9 {} \; +( cd $PKG/usr/info || exit 1 + rm -f dir + find . -type f -exec gzip -9 {} \; # Link the main compressed info page to a name as if it was clear # as otherwise the GNU info utility somehow fails to render it... ln -s heimdal.info.gz heimdal ) -# Documentation : mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION -cp -a NEWS README TODO* config.log krb5.conf \ - $PKG/usr/doc/$PRGNAM-$VERSION -mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/ChangeLog - cp -a ChangeLog* $PKG/usr/doc/$PRGNAM-$VERSION/ChangeLog -mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/etc -cp -a etc/services.append \ - $PKG/usr/doc/$PRGNAM-$VERSION/etc -mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/doc -cp -a doc/{init-creds,layman.asc,mdate-sh} \ - $PKG/usr/doc/$PRGNAM-$VERSION/doc -mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/doc/standardisation -cp -a doc/standardisation/* \ - $PKG/usr/doc/$PRGNAM-$VERSION/doc/standardisation - -# Include this script as doc aswell +cp -a [A-Z][A-Z]* ChangeLog* etc/services.append $PKG/usr/doc/$PRGNAM-$VERSION +cp -a doc/{init-creds,layman.asc,mdate-sh} $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild +cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README.SBo +find $PKG/usr/doc -type f -exec chmod -x {} \; # Add sample krb5.conf file (may not be needed) mkdir -p $PKG/etc -cp krb5.conf $PKG/etc/krb5.conf-sample.new +cat krb5.conf > $PKG/etc/krb5.conf-sample.new # Create directory for the KDC to use mkdir -p $PKG/var/heimdal -# Add sample kdc.conf file -cat $CWD/kdc.conf >$PKG/var/heimdal/kdc.conf-sample.new +# Add sample kdc.conf file (may not be needed) +cat $CWD/kdc.conf > $PKG/var/heimdal/kdc.conf-sample.new # Include a KDC rc-file for the admin to consider mkdir -p $PKG/etc/rc.d cat $CWD/rc.heimdal > $PKG/etc/rc.d/rc.heimdal.new -chmod +x $PKG/etc/rc.d/rc.heimdal.new -# Add heimdal to INFOPATH , MANPATH and PATH +# Add heimdal to INFOPATH, MANPATH, and PATH mkdir -p $PKG/etc/profile.d cat $CWD/heimdal.sh > $PKG/etc/profile.d/heimdal.sh.new cat $CWD/heimdal.csh > $PKG/etc/profile.d/heimdal.csh.new +chmod 0755 $PKG/etc/profile.d/* mkdir $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc @@ -133,10 +125,3 @@ cat $CWD/doinst.sh > $PKG/install/doinst.sh cd $PKG /sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz - -# Clean up the extra stuff: -if [ "$1" = "--cleanup" ]; then - rm -rf $TMP/$PRGNAM-$VERSION - rm -rf $PKG -fi - |