From b76270bf9e6dd375e495fec92140a79a79415d27 Mon Sep 17 00:00:00 2001 From: Patrick J Volkerding Date: Wed, 19 May 2010 08:58:23 +0000 Subject: Slackware 13.1 Wed May 19 08:58:23 UTC 2010 Slackware 13.1 x86_64 stable is released! Lots of thanks are due -- see the RELEASE_NOTES and the rest of the ChangeLog for credits. The ISOs are on their way to replication, a 6 CD-ROM 32-bit set and a dual-sided 32-bit/64-bit x86/x86_64 DVD. We are taking pre-orders now at store.slackware.com, and offering a discount if you sign up for a subscription. Consider picking up a copy to help support the project. Thanks again to the Slackware community for testing, contributing, and generally holding us to a high level of quality. :-) Enjoy! --- source/n/autofs/autofs-3.1.7.diff | 11 --- source/n/autofs/autofs-3.1.7.tar.bz2.sign | 8 -- ...fs-5.0.5-fix-libxml2-workaround-configure.patch | 61 +++++++++++++ source/n/autofs/autofs.SlackBuild | 100 ++++++++++++++++----- source/n/autofs/autofs.gcc.fix.diff | 12 --- source/n/autofs/autofs.x86_64.diff | 11 --- source/n/autofs/doinst.sh | 26 ++++++ 7 files changed, 165 insertions(+), 64 deletions(-) delete mode 100644 source/n/autofs/autofs-3.1.7.diff delete mode 100644 source/n/autofs/autofs-3.1.7.tar.bz2.sign create mode 100644 source/n/autofs/autofs-5.0.5-fix-libxml2-workaround-configure.patch delete mode 100644 source/n/autofs/autofs.gcc.fix.diff delete mode 100644 source/n/autofs/autofs.x86_64.diff create mode 100644 source/n/autofs/doinst.sh (limited to 'source/n/autofs') diff --git a/source/n/autofs/autofs-3.1.7.diff b/source/n/autofs/autofs-3.1.7.diff deleted file mode 100644 index 7849eae9..00000000 --- a/source/n/autofs/autofs-3.1.7.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- ./modules/lookup_program.c.orig Sat Mar 24 14:16:45 2001 -+++ ./modules/lookup_program.c Sat Mar 24 14:18:18 2001 -@@ -16,7 +16,7 @@ - - #include - #include --#include -+#include - #include - #include - #include diff --git a/source/n/autofs/autofs-3.1.7.tar.bz2.sign b/source/n/autofs/autofs-3.1.7.tar.bz2.sign deleted file mode 100644 index 8f80176b..00000000 --- a/source/n/autofs/autofs-3.1.7.tar.bz2.sign +++ /dev/null @@ -1,8 +0,0 @@ ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1.0.4 (GNU/Linux) -Comment: See http://www.kernel.org/signature.html for info - -iD8DBQA6A7VZyGugalF9Dw4RAkieAJ96c+Si+lGnoSf0OJCanmwE7dilBwCgieKQ -SshwUTt1sSA9Iu3meWUm2yk= -=1kDE ------END PGP SIGNATURE----- diff --git a/source/n/autofs/autofs-5.0.5-fix-libxml2-workaround-configure.patch b/source/n/autofs/autofs-5.0.5-fix-libxml2-workaround-configure.patch new file mode 100644 index 00000000..197ac6bd --- /dev/null +++ b/source/n/autofs/autofs-5.0.5-fix-libxml2-workaround-configure.patch @@ -0,0 +1,61 @@ +autofs-5.0.5 - fix libxml2 workaround configure + +From: Ian Kent + +The configure logic related to work around the libxml2 library +reload issues is not quite right. The xml code is needed if +ldap is used so it is sufficient to require inclusion of the +workaround code if autofs is being built with LDAP support. +--- + +diff --git a/daemon/Makefile b/daemon/Makefile +index 371ec72..9e9d635 100644 +--- a/daemon/Makefile ++++ b/daemon/Makefile +@@ -23,10 +23,8 @@ LDFLAGS += -rdynamic + LIBS = -ldl + + ifeq ($(LDAP), 1) +- ifeq ($(SASL), 1) + CFLAGS += $(XML_FLAGS) + LIBS += $(XML_LIBS) +- endif + endif + + all: automount +diff --git a/daemon/automount.c b/daemon/automount.c +index 979ecd6..7c44d4b 100644 +--- a/daemon/automount.c ++++ b/daemon/automount.c +@@ -38,10 +38,12 @@ + #include + + #include "automount.h" +-#ifdef LIBXML2_WORKAROUND ++#if defined(LIBXML2_WORKAROUND) || defined(TIRPC_WORKAROUND) + #include ++#ifdef WITH_LDAP + #include + #endif ++#endif + + const char *program; /* Initialized with argv[0] */ + const char *version = VERSION_STRING; /* Program version */ +@@ -2110,7 +2112,7 @@ int main(int argc, char *argv[]) + exit(1); + } + +-#ifdef LIBXML2_WORKAROUND ++#if defined(WITH_LDAP) && defined(LIBXML2_WORKAROUND) + void *dh_xml2 = dlopen("libxml2.so", RTLD_NOW); + if (!dh_xml2) + dh_xml2 = dlopen("libxml2.so.2", RTLD_NOW); +@@ -2158,7 +2160,7 @@ int main(int argc, char *argv[]) + if (dh_tirpc) + dlclose(dh_tirpc); + #endif +-#ifdef LIBXML2_WORKAROUND ++#if defined(WITH_LDAP) && defined( LIBXML2_WORKAROUND) + if (dh_xml2) { + xmlCleanupParser(); + dlclose(dh_xml2); diff --git a/source/n/autofs/autofs.SlackBuild b/source/n/autofs/autofs.SlackBuild index 8886f3f1..7fb29cae 100755 --- a/source/n/autofs/autofs.SlackBuild +++ b/source/n/autofs/autofs.SlackBuild @@ -1,6 +1,7 @@ + #!/bin/sh -# Copyright 2008, 2009 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -21,34 +22,49 @@ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -VERSION=3.1.7 -ARCH=${ARCH:-x86_64} -NUMJOBS=${NUMJOBS:-" -j7 "} +PKGNAM=autofs +VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} BUILD=${BUILD:-1} -if [ "$ARCH" = "x86_64" ]; then +NUMJOBS=${NUMJOBS:-" -j7 "} + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) export ARCH=i486 ;; + arm*) export ARCH=arm ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) export ARCH=$( uname -m ) ;; + esac +fi + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" LIBDIRSUFFIX="64" else + SLKCFLAGS="-O2" LIBDIRSUFFIX="" fi CWD=$(pwd) TMP=${TMP:-/tmp} -PKG=$TMP/package-autofs +PKG=$TMP/package-$PKGNAM rm -rf $PKG -mkdir -p $TMP $PKG/usr/{sbin,man/man{5,8}} +mkdir -p $TMP $PKG cd $TMP -tar xvf $CWD/autofs-$VERSION.tar.bz2 || exit 1 -cd autofs-$VERSION || exit 1 -zcat $CWD/autofs-$VERSION.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1 -# Allow x86_64 arch: -zcat $CWD/autofs.x86_64.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1 -# Compensate for modern compiler requirements: -zcat $CWD/autofs.gcc.fix.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1 -sed -i -e "s/OPEN_MAX/NR_OPEN/" $(grep -lr OPEN_MAX *) +rm -rf $PKGNAM-$VERSION +tar xf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1 +cd $PKGNAM-$VERSION || exit 1 +zcat $CWD/autofs-5.0.5-fix-libxml2-workaround-configure.patch.gz | patch -p1 || exit 1 chown -R root:root . find . \ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ @@ -56,22 +72,54 @@ find . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \; +# SASL requires krb5: + +CFLAGS="$SLKCFLAGS" \ +CPPFLAGS="$SLKCFLAGS" \ ./configure \ --prefix=/usr \ + --mandir=/usr/man \ --libdir=/usr/lib${LIBDIRSUFFIX} \ + --with-openldap \ + --without-sasl \ --build=$ARCH-slackware-linux -make || exit 1 +make $NUMJOBS || make || exit 1 +make install DESTDIR=$PKG || exit 1 -make install INSTALLROOT=$PKG || exit 1 +mv $PKG/etc/init.d $PKG/etc/rc.d +mv $PKG/etc/rc.d/autofs $PKG/etc/rc.d/rc.autofs.new +chmod 644 $PKG/etc/rc.d/rc.autofs.new -strip $PKG/usr/sbin/* -gzip -9 $PKG/usr/man/man*/* +# Prep the config files: +( cd $PKG/etc + for file in auto.master auto.misc autofs_ldap_auth.conf default/autofs ; do + mv $file ${file}.new + done +) + +find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null + +# Compress and if needed symlink the man pages: +if [ -d $PKG/usr/man ]; then + ( cd $PKG/usr/man + for manpagedir in $(find . -type d -name "man*") ; do + ( cd $manpagedir + for eachpage in $( find . -type l -maxdepth 1) ; do + ln -s $( readlink $eachpage ).gz $eachpage.gz + rm $eachpage + done + gzip -9 *.? + ) + done + ) +fi mkdir -p $PKG/usr/doc/autofs-$VERSION cp -a \ - COPYING COPYRIGHT NEWS README README.options TODO \ - multiserver_mount.patch samples \ + COPYING* COPYRIGHT CREDITS INSTALL README* \ + samples \ $PKG/usr/doc/autofs-$VERSION ( cd $PKG/usr/doc/autofs-$VERSION find . \( -name Makefile -o -name *.in \) -exec rm -f {} \; @@ -79,10 +127,18 @@ cp -a \ find . -type f -exec chmod 644 {} \; ) +# If there's a CHANGELOG, installing at least part of the recent history +# is useful, but don't let it get totally out of control: +if [ -r CHANGELOG ]; then + DOCSDIR=$(echo $PKG/usr/doc/*-$VERSION) + cat CHANGELOG | head -n 1000 > $DOCSDIR/CHANGELOG + touch -r CHANGELOG $DOCSDIR/CHANGELOG +fi + mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc +zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh -# Build the package: cd $PKG /sbin/makepkg -l y -c n $TMP/autofs-$VERSION-$ARCH-$BUILD.txz diff --git a/source/n/autofs/autofs.gcc.fix.diff b/source/n/autofs/autofs.gcc.fix.diff deleted file mode 100644 index 8b30019f..00000000 --- a/source/n/autofs/autofs.gcc.fix.diff +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur autofs-3.1.7/modules/lookup_file.c autofs-3.1.7-gcc/modules/lookup_file.c ---- autofs-3.1.7/modules/lookup_file.c 2000-11-04 07:05:17.000000000 +0000 -+++ autofs-3.1.7-gcc/modules/lookup_file.c 2006-08-16 18:21:21.000000000 +0100 -@@ -197,7 +197,7 @@ - } - break; - } -- next_char: /* End of loop, since we can't continue; -+ next_char:; /* End of loop, since we can't continue; - inside a switch */ - } - diff --git a/source/n/autofs/autofs.x86_64.diff b/source/n/autofs/autofs.x86_64.diff deleted file mode 100644 index 8c4bf677..00000000 --- a/source/n/autofs/autofs.x86_64.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- autofs-3.1.7/include/linux/auto_fs.h 2000-11-04 07:05:18.000000000 +0000 -+++ auto_fs.h 2006-10-19 13:46:21.000000000 +0000 -@@ -45,7 +45,7 @@ - * If so, 32-bit user-space code should be backwards compatible. - */ - --#if defined(__sparc__) || defined(__mips__) -+#if defined(__sparc__) || defined(__mips__) || defined(__s390__) || defined(__x86_64__) - typedef unsigned int autofs_wqt_t; - #else - typedef unsigned long autofs_wqt_t; diff --git a/source/n/autofs/doinst.sh b/source/n/autofs/doinst.sh new file mode 100644 index 00000000..0b0d8030 --- /dev/null +++ b/source/n/autofs/doinst.sh @@ -0,0 +1,26 @@ +config() { + NEW="$1" + OLD="`dirname $NEW`/`basename $NEW .new`" + # If there's no config file by that name, mv it over: + if [ ! -r $OLD ]; then + mv $NEW $OLD + elif [ "`cat $OLD | md5sum`" = "`cat $NEW | md5sum`" ]; then # toss the redundant copy + rm $NEW + fi + # Otherwise, we leave the .new copy for the admin to consider... +} + +# Keep same perms on rc.autofs.new: +if [ -e etc/rc.d/rc.autofs ]; then + cp -a etc/rc.d/rc.autofs etc/rc.d/rc.autofs.new.incoming + cat etc/rc.d/rc.autofs.new > etc/rc.d/rc.autofs.new.incoming + mv etc/rc.d/rc.autofs.new.incoming etc/rc.d/rc.autofs.new +fi + +config etc/auto.master.new +config etc/auto.misc.new +config etc/autofs_ldap_auth.conf.new +config etc/default/autofs.new + +config etc/rc.d/rc.autofs.new + -- cgit v1.2.3