summaryrefslogtreecommitdiffstats
path: root/source/a/quota/quota.SlackBuild
diff options
context:
space:
mode:
author Patrick J Volkerding <volkerdi@slackware.com>2016-06-30 20:26:57 +0000
committer Eric Hameleers <alien@slackware.com>2018-05-31 23:31:18 +0200
commitd31c50870d0bee042ce660e445c9294a59a3a65b (patch)
tree6bfc0de3c95267b401b620c2c67859557dc60f97 /source/a/quota/quota.SlackBuild
parent76fc4757ac91ac7947a01fb7b53dddf9a78a01d1 (diff)
downloadcurrent-d31c50870d0bee042ce660e445c9294a59a3a65b.tar.gz
current-d31c50870d0bee042ce660e445c9294a59a3a65b.tar.xz
Slackware 14.2slackware-14.2
Thu Jun 30 20:26:57 UTC 2016 Slackware 14.2 x86_64 stable is released! The long development cycle (the Linux community has lately been living in "interesting times", as they say) is finally behind us, and we're proud to announce the release of Slackware 14.2. The new release brings many updates and modern tools, has switched from udev to eudev (no systemd), and adds well over a hundred new packages to the system. Thanks to the team, the upstream developers, the dedicated Slackware community, and everyone else who pitched in to help make this release a reality. The ISOs are off to be replicated, a 6 CD-ROM 32-bit set and a dual-sided 32-bit/64-bit x86/x86_64 DVD. Please consider supporting the Slackware project by picking up a copy from store.slackware.com. We're taking pre-orders now, and offer a discount if you sign up for a subscription. Have fun! :-)
Diffstat (limited to 'source/a/quota/quota.SlackBuild')
-rwxr-xr-xsource/a/quota/quota.SlackBuild185
1 files changed, 117 insertions, 68 deletions
diff --git a/source/a/quota/quota.SlackBuild b/source/a/quota/quota.SlackBuild
index 67717b11b..877350d64 100755
--- a/source/a/quota/quota.SlackBuild
+++ b/source/a/quota/quota.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2015 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,97 +21,146 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-VERSION=3.17
+PKGNAM=quota
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
# 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 ;;
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
- *) export ARCH=$( uname -m ) ;;
+ *) ARCH=$(uname -m) ;;
esac
+ export ARCH
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i386" ]; then
+ SLKCFLAGS="-O2 -march=i386 -mcpu=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
fi
CWD=$(pwd)
TMP=${TMP:-/tmp}
-PKG=$TMP/package-quota
+PKG=$TMP/package-$PKGNAM
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
-rm -rf quota-tools
-tar xvf $CWD/quota-$VERSION.tar.?z*
-cd quota-tools
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
+cd $PKGNAM-$VERSION
+
+zcat $CWD/quota.lwrap.needs.lnsl.diff.gz | patch -p1 --verbose || exit 1
+
+autoreconf -vif
+
chown -R root:root .
-find . -perm 2755 -exec chmod 755 {} \;
+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 {} \;
+
+# Configure:
+CFLAGS="$SLKCFLAGS" \
./configure \
- --prefix=/usr \
- $ARCH-slackware-linux
-make
-make mo
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --disable-static \
+ --build=$ARCH-slackware-linux
+
+# Build and install:
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Install config files as samples:
+( cd $PKG/etc
+ for file in quotagrpadmins quotatab warnquota.conf ; do
+ mv ${file} ${file}-sample
+ done
+)
+
+# Move these to /sbin in case /usr is not mounted when they are needed at boot:
mkdir -p $PKG/sbin
-cat convertquota > $PKG/sbin/convertquota
-cat quotacheck > $PKG/sbin/quotacheck
-cat quotaon > $PKG/sbin/quotaon
-( cd $PKG/sbin ; ln -sf quotaon quotaoff )
-chmod 755 $PKG/sbin/*
-mkdir -p $PKG/usr/sbin
-for file in edquota repquota warnquota quotastats setquota quot xqmstats rpc.rquotad ; do
- cat $file > $PKG/usr/sbin/$file
-done
-chmod 755 $PKG/usr/sbin/*
-mkdir -p $PKG/usr/bin
-cat quota > $PKG/usr/bin/quota
-chmod 755 $PKG/usr/bin/quota
-mkdir -p $PKG/usr/include/rpcsvc
-cat rquota.h > $PKG/usr/include/rpcsvc/rquota.h
-cat rquota.x > $PKG/usr/include/rpcsvc/rquota.x
-mkdir -p $PKG/etc
-cat warnquota.conf > $PKG/etc/warnquota.conf-sample
-cat quotatab > $PKG/etc/quotatab-sample
-cat quotagrpadmins > $PKG/etc/quotagrpadmins-sample
-mkdir -p $PKG/usr/man/man{1,2,3,8}
-for page in *.1 ; do
- cat $page | gzip -9c > $PKG/usr/man/man1/$page.gz
-done
-for page in *.2 ; do
- cat $page | gzip -9c > $PKG/usr/man/man2/$page.gz
-done
-for page in *.3 ; do
- cat $page | gzip -9c > $PKG/usr/man/man3/$page.gz
-done
-for page in *.8 ; do
- cat $page | gzip -9c > $PKG/usr/man/man8/$page.gz
-done
-mkdir -p $PKG/usr/share/locale/pl/LC_MESSAGES
-cat po/pl.mo > $PKG/usr/share/locale/pl/LC_MESSAGES/quota.mo
-mkdir -p $PKG/usr/doc/quota-$VERSION
-cp -a Changelog README* $PKG/usr/doc/quota-$VERSION
-( cd doc
- sgml2txt quotadoc.sgml
- sgml2html -s 0 quotadoc.sgml
- if [ ! -r quotadoc.html ]; then
- echo "WARNING: no quotadoc.html generated"
- sleep 100
- fi
- cp quotadoc*txt quotadoc*html $PKG/usr/doc/quota-$VERSION/ )
-find $PKG/usr/doc/quota-$VERSION -name CVS -type d | xargs rm -rf
+( cd $PKG/usr/sbin
+ for file in convertquota quotacheck quotaon quotaoff ; do
+ mv $file ../../sbin
+ ln -sf ../../sbin/$file .
+ done
+)
+
+# Strip binaries:
( 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
)
+
+# Compress and link manpages, if any:
+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 | grep -v '\.gz$') ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# Get rid of existing docs directory:
+rm -rf $PKG/usr/share/doc
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS COPYING* NEWS README* THANKS TODO \
+ doc/quotas.preformated \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# 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/${PKGNAM}-$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
-# Build the package:
cd $PKG
-makepkg -l y -c n $TMP/quota-$VERSION-$ARCH-$BUILD.txz
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
-# Clean up the extra stuff:
-if [ "$1" = "--cleanup" ]; then
- rm -rf $TMP/quota
- rm -rf $PKG
-fi