summaryrefslogtreecommitdiffstats
path: root/testing/source/glibc/glibc.SlackBuild
diff options
context:
space:
mode:
author Patrick J Volkerding <volkerdi@slackware.com>2020-02-12 05:05:50 +0000
committer Eric Hameleers <alien@slackware.com>2020-02-12 17:59:48 +0100
commit6a63f41b3b49b8f8f86b40166b782d907ccb2538 (patch)
tree7d2c77a55463f5586ec453e13602ff2889030f84 /testing/source/glibc/glibc.SlackBuild
parente1ab44f93f91f5c967ac1b7143c7a8ac287d1a52 (diff)
downloadcurrent-20200212050550.tar.gz
current-20200212050550.tar.xz
Wed Feb 12 05:05:50 UTC 202020200212050550
Hey folks! PAM has finally landed in /testing. Some here wanted it to go right into the main tree immediately, and in a more normal development cycle I'd have been inclined to agree (it is -current, after all). But it's probably better for it to appear in /testing first, to make sure we didn't miss any bugs and also to serve as a warning shot that we'll be shaking up the tree pretty good over the next few weeks. I'd like to see this merged into the main tree in a day or two, so any testing is greatly appreciated. Switching to the PAM packages (or reverting from them) is as easy as installing all of them with upgradepkg --install-new, and if reverting then remove the three leftover _pam packages. After reverting, a bit of residue will remain in /etc/pam.d/ and /etc/security/ which can either be manually deleted or simply ignored. While there are many more features available in PAM compared with plain shadow, out of the box about the only noticable change is the use of cracklib and libpwquality to check the quality of a user-supplied password. Hopefully having PAM and krb5 will get us on track to having proper Active Directory integration as well as using code paths that are likely better audited these days. The attack surface *might* be bigger, but it's also a lot better scrutinized. Thanks to Robby Workman and Vincent Batts who did most of the initial heavy lifting on the core PAM packages as a side project for many years. Thanks also to Phantom X whose PAM related SlackBuilds were a valuable reference. And thanks as well to ivandi - I learned a lot from the SlackMATE build scripts and was even occasionally thankful for the amusing ways you would kick my ass on LQ. ;-) You're more than welcome to let us know where we've messed up this time. The binutils and glibc packages in /testing were removed and are off the table for now. I'm not seeing much upside to heading down that rabbit hole at the moment. Next we need to be looking at Xfce 4.14 and Plasma 5.18 LTS and some other things that have been held back since KDE4 couldn't use them. Cheers! :-) a/kernel-generic-5.4.19-x86_64-1.txz: Upgraded. a/kernel-huge-5.4.19-x86_64-1.txz: Upgraded. a/kernel-modules-5.4.19-x86_64-1.txz: Upgraded. a/lvm2-2.03.08-x86_64-1.txz: Upgraded. a/shadow-4.8.1-x86_64-2.txz: Rebuilt. Automatically backup /etc/login.defs and install the new version if incompatible PAM options are detected. d/kernel-headers-5.4.19-x86-1.txz: Upgraded. k/kernel-source-5.4.19-noarch-1.txz: Upgraded. VALIDATE_FS_PARSER y -> n xap/mozilla-thunderbird-68.5.0-x86_64-1.txz: Upgraded. This release contains security fixes and improvements. For more information, see: https://www.mozilla.org/en-US/thunderbird/68.5.0/releasenotes/ https://www.mozilla.org/en-US/security/advisories/mfsa2020-07/ https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-6793 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-6794 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-6795 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-6797 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-6798 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-6792 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-6800 (* Security fix *) isolinux/initrd.img: Rebuilt. kernels/*: Upgraded. testing/packages/PAM/ConsoleKit2-1.2.1-x86_64-1_pam.txz: Added. testing/packages/PAM/at-3.2.1-x86_64-1_pam.txz: Added. testing/packages/PAM/cifs-utils-6.10-x86_64-2_pam.txz: Added. testing/packages/PAM/cracklib-2.9.7-x86_64-1_pam.txz: Added. testing/packages/PAM/cups-2.3.1-x86_64-1_pam.txz: Added. testing/packages/PAM/cyrus-sasl-2.1.27-x86_64-2_pam.txz: Added. testing/packages/PAM/dovecot-2.3.9.2-x86_64-1_pam.txz: Added. testing/packages/PAM/gnome-keyring-3.34.0-x86_64-1_pam.txz: Added. testing/packages/PAM/hplip-3.19.12-x86_64-2_pam.txz: Added. testing/packages/PAM/kde-workspace-4.11.22-x86_64-6_pam.txz: Added. testing/packages/PAM/libcap-2.31-x86_64-1_pam.txz: Added. testing/packages/PAM/libcgroup-0.41-x86_64-5_pam.txz: Added. testing/packages/PAM/libpwquality-1.4.2-x86_64-1_pam.txz: Added. testing/packages/PAM/mariadb-10.4.12-x86_64-1_pam.txz: Added. testing/packages/PAM/netatalk-3.1.12-x86_64-2_pam.txz: Added. testing/packages/PAM/netkit-rsh-0.17-x86_64-2_pam.txz: Added. testing/packages/PAM/openssh-8.1p1-x86_64-1_pam.txz: Added. testing/packages/PAM/openvpn-2.4.8-x86_64-1_pam.txz: Added. testing/packages/PAM/pam-1.3.1-x86_64-1_pam.txz: Added. testing/packages/PAM/polkit-0.116-x86_64-1_pam.txz: Added. testing/packages/PAM/popa3d-1.0.3-x86_64-3_pam.txz: Added. testing/packages/PAM/ppp-2.4.7-x86_64-3_pam.txz: Added. testing/packages/PAM/proftpd-1.3.6b-x86_64-1_pam.txz: Added. testing/packages/PAM/samba-4.11.6-x86_64-1_pam.txz: Added. testing/packages/PAM/screen-4.8.0-x86_64-1_pam.txz: Added. testing/packages/PAM/shadow-4.8.1-x86_64-2_pam.txz: Added. testing/packages/PAM/sudo-1.8.31-x86_64-1_pam.txz: Added. testing/packages/PAM/system-config-printer-1.5.12-x86_64-2_pam.txz: Added. testing/packages/PAM/util-linux-2.35.1-x86_64-1_pam.txz: Added. testing/packages/PAM/vsftpd-3.0.3-x86_64-5_pam.txz: Added. testing/packages/PAM/xdm-1.1.11-x86_64-9_pam.txz: Added. testing/packages/PAM/xlockmore-5.62-x86_64-1_pam.txz: Added. testing/packages/PAM/xscreensaver-5.43-x86_64-1_pam.txz: Added. testing/packages/binutils-2.34-x86_64-1.txz: Removed. testing/packages/glibc-2.31-x86_64-1.txz: Removed. testing/packages/glibc-i18n-2.31-x86_64-1.txz: Removed. testing/packages/glibc-profile-2.31-x86_64-1.txz: Removed. testing/packages/glibc-solibs-2.31-x86_64-1.txz: Removed. usb-and-pxe-installers/usbboot.img: Rebuilt.
Diffstat (limited to 'testing/source/glibc/glibc.SlackBuild')
-rwxr-xr-xtesting/source/glibc/glibc.SlackBuild467
1 files changed, 0 insertions, 467 deletions
diff --git a/testing/source/glibc/glibc.SlackBuild b/testing/source/glibc/glibc.SlackBuild
deleted file mode 100755
index fbe08804c..000000000
--- a/testing/source/glibc/glibc.SlackBuild
+++ /dev/null
@@ -1,467 +0,0 @@
-#!/bin/bash
-
-# Copyright 2006, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Patrick J. Volkerding, Sebeka, MN, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-cd $(dirname $0) ; CWD=$(pwd)
-
-PKGNAM=glibc
-VERSION=${VERSION:-$(echo glibc-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-CHECKOUT=${CHECKOUT:-""}
-BUILD=${BUILD:-1}
-
-# I was considering disabling NSCD, but MoZes talked me out of it. :)
-#DISABLE_NSCD=" --disable-nscd "
-
-# $ARCH may be preset, otherwise i586 compatibility with i686 binary
-# structuring is the Slackware default.
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
- arm*) export ARCH=arm ;;
- # Unless $ARCH is already set, use uname -m for all other archs:
- *) export ARCH=$( uname -m ) ;;
- esac
-fi
-
-# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
-# the name of the created package would be, and then exit. This information
-# could be useful to other scripts.
-if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
- echo "glibc-$VERSION-$ARCH-$BUILD.txz"
- echo "glibc-i18n-$VERSION-$ARCH-$BUILD.txz"
- echo "glibc-profile-$VERSION-$ARCH-$BUILD.txz"
- echo "glibc-solibs-$VERSION-$ARCH-$BUILD.txz"
- exit 0
-fi
-
-NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
-
-# Work around -Werror failure with gcc-8.2.0.
-# NOTE: Until the next glibc release takes care of this issue, this will
-# likely need to be updated with every new gcc release's version. Yes, we
-# could pass --disable-werror by default, but I'd rather not just shove a
-# stick in it like that.
-if [ "$(gcc -dumpversion)" = "8.2.0" ]; then
- if [ "$VERSION" = "2.27" ]; then
- WERROR="--disable-werror"
- fi
-fi
-
-# I'll break this out as an option for fun :-)
-case $ARCH in
- i386)
- OPTIMIZ="-O3 -march=i386 -mcpu=i686"
- LIBDIRSUFFIX=""
- ;;
- i486)
- OPTIMIZ="-O3 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
- ;;
- i586)
- OPTIMIZ="-O3 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
- ;;
- i686)
- OPTIMIZ="-O3 -march=i686"
- LIBDIRSUFFIX=""
- ;;
- athlon)
- OPTIMIZ="-O3 -march=athlon"
- LIBDIRSUFFIX=""
- ;;
- s390)
- OPTIMIZ="-O3"
- LIBDIRSUFFIX=""
- ;;
- x86_64)
- OPTIMIZ="-O3 -fPIC"
- LIBDIRSUFFIX="64"
- ;;
- *)
- OPTIMIZ="-O3"
- LIBDIRSUFFIX=""
- ;;
-esac
-
-case $ARCH in
- x86_64)
- TARGET=${TARGET:-x86_64}
- ;;
- i586)
- # This should be i586 for all 32-bit x86 arch:
- TARGET=${TARGET:-i586}
- ;;
-esac
-
-# Hand off the $ARCH variable to $SLACKWARE_ARCH to avoid confusing glibc:
-SLACKWARE_ARCH=$ARCH
-unset ARCH
-
-CVSVER=${VERSION}${CHECKOUT}
-
-# NOTE!!! glibc needs to be built against the sanitized kernel headers,
-# which will be installed under /usr/include by the kernel-headers package.
-# Be sure the correct version of the headers package is installed BEFORE
-# building glibc!
-
-TMP=${TMP:-/tmp}
-mkdir -p $TMP
-
-# This function fixes a doinst.sh file for x86_64.
-# With thanks to Fred Emmott.
-fix_doinst() {
- if [ "x$LIBDIRSUFFIX" = "x" ]; then
- return;
- fi;
- # Fix "( cd usr/lib ;" occurrences
- sed -i "s#lib ;#lib${LIBDIRSUFFIX} ;#" install/doinst.sh
- # Fix "lib/" occurrences
- sed -i "s#lib/#lib${LIBDIRSUFFIX}/#g" install/doinst.sh
- # Fix "( cd lib" occurrences
- sed -i "s#( cd lib\$#( cd lib${LIBDIRSUFFIX}#" install/doinst.sh
-
- if [ "$SLACKWARE_ARCH" = "x86_64" ]; then
- sed -i 's#ld-linux.so.2#ld-linux-x86-64.so.2#' install/doinst.sh
- fi
-}
-
-# This is a patch function to put all glibc patches in the build script
-# up near the top.
-apply_patches() {
- # Use old-style locale directories rather than a single (and strangely
- # formatted) /usr/lib/locale/locale-archive file:
- zcat $CWD/glibc.locale.no-archive.diff.gz | patch -p1 --verbose || exit 1
- # Support ru_RU.CP1251 locale:
- zcat $CWD/glibc.ru_RU.CP1251.diff.gz | patch -p1 --verbose || exit 1
- # Add a C.UTF-8 locale:
- zcat $CWD/glibc-c-utf8-locale.patch.gz | patch -p1 --verbose || exit 1
- # Don't use AM/PM format for date(1). That's just plain crazy.
- zcat $CWD/glibc-2.29.en_US.no.am.pm.date.format.diff.gz | patch -p1 --verbose || exit 1
- # Other regression fixes from git:
- for git_patch in $CWD/patches/*.patch.gz ; do
- zcat $git_patch | patch -p1 --verbose || exit 1
- done
-}
-
-# This is going to be the initial $DESTDIR:
-export PKG=$TMP/package-glibc-incoming-tree
-PGLIBC=$TMP/package-glibc
-PSOLIBS=$TMP/package-glibc-solibs
-PI18N=$TMP/package-glibc-i18n
-PPROFILE=$TMP/package-glibc-profile
-PDEBUG=$TMP/package-glibc-debug
-
-# Empty these locations first:
-for dir in $PKG $PGLIBC $PSOLIBS $PZONE $PI18N $PPROFILE $PDEBUG ; do
- if [ -d $dir ]; then
- rm -rf $dir
- fi
- mkdir -p $dir
-done
-if [ -d $TMP/glibc-$VERSION ]; then
- rm -rf $TMP/glibc-$VERSION
-fi
-
-# Create an incoming directory structure for glibc to be built into:
-mkdir -p $PKG/lib${LIBDIRSUFFIX}
-mkdir -p $PKG/sbin
-mkdir -p $PKG/usr/bin
-mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}
-mkdir -p $PKG/usr/sbin
-mkdir -p $PKG/usr/include
-mkdir -p $PKG/usr/doc
-mkdir -p $PKG/usr/man
-mkdir -p $PKG/usr/share
-mkdir -p $PKG/var/db/nscd
-mkdir -p $PKG/var/run/nscd
-
-# Begin extract/compile:
-cd $TMP
-rm -rf glibc-$CVSVER
-tar xvf $CWD/glibc-$CVSVER.tar.xz \
- || tar xvf $CWD/glibc-$CVSVER.tar.lz \
- || tar xvf $CWD/glibc-$CVSVER.tar.bz2 \
- || tar xvf $CWD/glibc-$CVSVER.tar.gz
-cd glibc-$CVSVER
-
-# Apply patches; exit if any fail.
-apply_patches
-if [ ! $? = 0 ]; then
- exit 1
-fi
-
-# Clean up leftover CVS directories:
-find . -type d -name CVS -exec rm -r {} \+ 2> /dev/null
-
-chown -R root:root .
-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 {} \+
-
-# Make build directory:
-mkdir build-glibc-$VERSION
-cd build-glibc-$VERSION || exit 1
-
-echo "BUILDING DAS NPTL GLIBC"
-CFLAGS="-g $OPTIMIZ" \
-../configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --enable-kernel=2.6.32 \
- --with-headers=/usr/include \
- --enable-add-ons \
- --enable-obsolete-nsl \
- --enable-obsolete-rpc \
- --enable-profile \
- $DISABLE_NSCD \
- $WERROR \
- --infodir=/usr/info \
- --mandir=/usr/man \
- --with-tls \
- --with-__thread \
- --without-cvs \
- $TARGET-slackware-linux
-
-make $NUMJOBS || exit 1
-make $NUMJOBS install install_root=$PKG || exit 1
-# Don't use this, as it makes the i18n package WAY bigger:
-#make localedata/install-locale-files DESTDIR=$PKG || exit 1
-# This is ugly run in parallel, and seems to hang at the end. But it actually
-# completes much faster. :)
-make $NUMJOBS localedata/install-locales install_root=$PKG DESTDIR=$PKG || exit 1
-
-# We've always had an sln symlink in /bin, so let's make sure it
-# remains there so as not to break any scripts that might need it:
-mkdir -p $PKG/bin
-( cd $PKG/bin ; ln -sf /sbin/sln sln )
-
-# This bit was mostly copped from Fedora Rawhide's .spec file. I'm not
-# entirely sure how important it is, since I'm not aware of anything
-# we ship trying to link libpthread as static. What it does is make sure
-# that anything linking libpthread static includes all of the functions
-# so that the resulting binary doesn't rely on parts of the library that
-# were not linked in. Optimizing actually working over binary size, so
-# to speak.
-( cd $PKG/usr/lib${LIBDIRSUFFIX}
- gcc -r -nostdlib -o libpthread.o -Wl,--whole-archive ./libpthread.a
- rm libpthread.a
- ar rcs libpthread.a libpthread.o
- rm libpthread.o
-)
-
-# The prevailing standard seems to be putting unstripped libraries in
-# /usr/lib/debug/ and stripping the debugging symbols from all the other
-# libraries.
-mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/debug
-cp -a $PKG/lib${LIBDIRSUFFIX}/l*.so* $PKG/usr/lib${LIBDIRSUFFIX}/debug
-cp -a $PKG/usr/lib${LIBDIRSUFFIX}/*.a $PKG/usr/lib${LIBDIRSUFFIX}/debug
-# Don't need debug+profile:
-( cd $PKG/usr/lib${LIBDIRSUFFIX}/debug ; rm -f *_p.* )
-# NOTE: Is there really a reason for the glibc-debug package?
-# If you're debugging glibc, you can also compile it, right?
-
-## COMMENTED OUT: There's no reason for profile libs to include -g information.
-## Put back unstripped profiling libraries:
-#mv $PKG/usr/lib${LIBDIRSUFFIX}/debug/*_p.a $PKG/usr/lib${LIBDIRSUFFIX}
-# It might be best to put the unstripped and profiling libraries in glibc-debug and glibc-profile.
-
-# I don't think "strip -g" causes the pthread problems. It's --strip-unneeded that does.
-strip -g $PKG/lib${LIBDIRSUFFIX}/l*.so*
-strip -g $PKG/usr/lib${LIBDIRSUFFIX}/l*.so*
-strip -g $PKG/usr/lib${LIBDIRSUFFIX}/lib*.a
-
-# Remove the rquota.x and rquota.h include files, as they are provided by
-# the quota package:
-rm -f $PKG/usr/include/rpcsvc/rquota.{h,x}
-
-# Back to the sources dir to add some files/docs:
-cd $TMP/glibc-$CVSVER
-
-# We'll automatically install the config file for the Name Server Cache Daemon.
-# Perhaps this should also have some commented-out startup code in rc.inet2...
-mkdir -p $PKG/etc
-cat nscd/nscd.conf > $PKG/etc/nscd.conf.new
-
-# Install docs:
-( mkdir -p $PKG/usr/doc/glibc-$VERSION
- cp -a \
- BUGS CONFORMANCE COPYING* FAQ INSTALL LICENSES NAMESPACE \
- NEWS NOTES PROJECTS README* \
- $PKG/usr/doc/glibc-$VERSION
-)
-
-# Trim the NEWS file to omit ancient history:
-if [ -r NEWS ]; then
- DOCSDIR=$(echo $PKG/usr/doc/glibc-$VERSION)
- cat NEWS | head -n 1000 > $DOCSDIR/NEWS
- touch -r NEWS $DOCSDIR/NEWS
-fi
-
-# OK, there are some very old Linux standards that say that any binaries in a /bin or
-# /sbin directory (and the directories themselves) should be group bin rather than
-# group root, unless a specific group is really needed for some reason.
-#
-# I can't find any mention of this in more recent standards docs, and always thought
-# that it was pretty cosmetic anyway (hey, if there's a reason -- fill me in!), so
-# it's possible that this ownership change won't be followed in the near future
-# (it's a PITA, and causes many bug reports when the perms change is occasionally
-# forgotten).
-#
-# But, it's hard to get me to break old habits, so we'll continue the tradition here:
-#
-# No, no we won't. You know how we love to break traditions.
-
-# Strip most binaries:
-( cd $PKG
- find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-debug 2> /dev/null
- find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip -g 2> /dev/null
-)
-
-# Fix info dir:
-rm $PKG/usr/info/dir
-gzip -9 $PKG/usr/info/*
-
-# This is junk
-rm $PKG/etc/ld.so.cache
-( cd $PKG
- find . -name "*.orig" -exec rm {} \+
-)
-
-##################################
-# OK, time to make some packages #
-##################################
-
-# glibc-profile:
-cd $PPROFILE
-mkdir -p usr/lib${LIBDIRSUFFIX}
-# Might as well just grab these with 'mv' to simplify things later:
-mv $PKG/usr/lib${LIBDIRSUFFIX}/lib*_p.a usr/lib${LIBDIRSUFFIX}
-# Profile libs should be stripped. Use the debug libs to debug...
-( cd usr/lib${LIBDIRSUFFIX} ; strip -g *.a )
-mkdir install
-cp -a $CWD/slack-desc.glibc-profile install/slack-desc
-makepkg -l y -c n $TMP/glibc-profile-$VERSION-$SLACKWARE_ARCH-$BUILD.txz
-
-# THIS IS NO LONGER PACKAGED (or is it? might be better to let it be made, and then ship it or not...)
-# glibc-debug:
-cd $PDEBUG
-mkdir -p usr/lib${LIBDIRSUFFIX}
-# Might as well just grab these with 'mv' to simplify things later:
-mv $PKG/usr/lib${LIBDIRSUFFIX}/debug usr/lib${LIBDIRSUFFIX}
-mkdir install
-cp -a $CWD/slack-desc.glibc-debug install/slack-desc
-## Don't package this:
-#makepkg -l y -c n $TMP/glibc-debug-$VERSION-$SLACKWARE_ARCH-$BUILD.txz
-## INSTEAD, NUKE THESE LIBS
-#rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/debug
-
-# glibc-i18n:
-cd $PI18N
-mkdir -p usr/lib${LIBDIRSUFFIX}/locale
-mv $PKG/usr/lib${LIBDIRSUFFIX}/locale/* usr/lib${LIBDIRSUFFIX}/locale
-mkdir -p usr/share/{i18n,locale}
-mv $PKG/usr/share/i18n/* usr/share/i18n
-mv $PKG/usr/share/locale/* usr/share/locale
-# Leave copies of the C, POSIX, and en_US locales in the main glibc package:
-cp -a usr/lib${LIBDIRSUFFIX}/locale/{C,en_US}* $PKG/usr/lib${LIBDIRSUFFIX}/locale
-mkdir -p $PKG/usr/share/i18n/locales
-cp -a usr/share/i18n/locales/{C,POSIX,en_US} $PKG/usr/share/i18n/locales
-mkdir install
-cp -a $CWD/slack-desc.glibc-i18n install/slack-desc
-makepkg -l y -c n $TMP/glibc-i18n-$VERSION-$SLACKWARE_ARCH-$BUILD.txz
-
-# glibc-solibs:
-cd $PSOLIBS
-mkdir -p etc/profile.d
-cp -a $CWD/profile.d/* etc/profile.d
-chown -R root:root etc
-chmod 755 etc/profile.d/*
-mkdir -p lib${LIBDIRSUFFIX}
-cp -a $PKG/lib${LIBDIRSUFFIX}/* lib${LIBDIRSUFFIX}
-( cd lib${LIBDIRSUFFIX}
- mkdir incoming
- mv *so* incoming
- mv incoming/libSegFault.so .
-)
-mkdir -p usr
-cp -a $PKG/usr/bin usr
-mv usr/bin/ldd .
-rm usr/bin/*
-mv ldd usr/bin
-mkdir -p usr/lib${LIBDIRSUFFIX}
-# The gconv directory has a lot of stuff, but including it here will save some problems.
-# Seems standard elsewhere.
-cp -a $PKG/usr/lib${LIBDIRSUFFIX}/gconv usr/lib${LIBDIRSUFFIX}
-mkdir -p usr/libexec
-cp -a $PKG/usr/libexec/pt_chown usr/libexec
-# Same usr.bin deal:
-cp -a $PKG/sbin .
-mv sbin/ldconfig .
-rm sbin/*
-mv ldconfig sbin
-mkdir install
-cp -a $CWD/slack-desc.glibc-solibs install/slack-desc
-cp -a $CWD/doinst.sh-glibc-solibs install/doinst.sh
-# Fix specific versioning for the symlink creation script. This part of the
-# script would only be used in the case where there is no ldconfig on the
-# running system that's used to install the package. That should never be the
-# case, but we'll leave the code in place anyway just in case.
-sed -i "s/@@VERSION@@/$VERSION/g" install/doinst.sh
-# Call the function to fix doinst.sh where $LIBDIRSUFFIX is needed:
-fix_doinst
-# Only scrub the links in /lib{,64} that will be created by ldconfig:
-find lib${LIBDIRSUFFIX} -type l -exec rm {} \+
-# Build the package:
-makepkg -l y -c n $TMP/glibc-solibs-$VERSION-$SLACKWARE_ARCH-$BUILD.txz
-
-# And finally, the complete "all-in-one" glibc package is created
-# from whatever was leftover:
-cd $PGLIBC
-mv $PKG/* .
-mkdir -p etc/profile.d
-cp -a $CWD/profile.d/* etc/profile.d
-chown -R root:root etc
-chmod 755 etc/profile.d/*
-# Only scrub the links in /lib{,64} that will be created by ldconfig:
-find lib${LIBDIRSUFFIX} -type l -exec rm {} \+
-mkdir install
-cp -a $CWD/slack-desc.glibc install/slack-desc
-cp -a $CWD/doinst.sh-glibc install/doinst.sh
-# Fix specific versioning for the symlink creation script. This part of the
-# script would only be used in the case where there is no ldconfig on the
-# running system that's used to install the package. That should never be the
-# case, but we'll leave the code in place anyway just in case.
-sed -i "s/@@VERSION@@/$VERSION/g" install/doinst.sh
-# Call the function to fix doinst.sh where $LIBDIRSUFFIX is needed:
-fix_doinst
-( cd lib${LIBDIRSUFFIX}
- mkdir incoming
- mv *so* incoming
- mv incoming/libSegFault.so .
-)
-# Build the package:
-/sbin/makepkg -l y -c n $TMP/glibc-$VERSION-$SLACKWARE_ARCH-$BUILD.txz
-
-# Done!
-echo
-echo "glibc packages built in $TMP!"