diff options
author | Eric Hameleers <alien@slackware.com> | 2022-08-03 15:14:07 +0000 |
---|---|---|
committer | Eric Hameleers <alien@slackware.com> | 2022-08-03 15:14:07 +0000 |
commit | d717e545d88c12e0e81b9e36133378614169f1dd (patch) | |
tree | 8b7b4a28cfee57bcdd763aabd6682d38ecf880a5 | |
parent | e50bbfe2d0d94a9b4d033721930db5786f82704a (diff) | |
download | multilib-d717e545d88c12e0e81b9e36133378614169f1dd.tar.gz multilib-d717e545d88c12e0e81b9e36133378614169f1dd.tar.xz |
glibc-multilib: update to 2.36
-rwxr-xr-x | source/current/glibc/glibc-multilib.SlackBuild | 69 |
1 files changed, 59 insertions, 10 deletions
diff --git a/source/current/glibc/glibc-multilib.SlackBuild b/source/current/glibc/glibc-multilib.SlackBuild index be1d760..2494f43 100755 --- a/source/current/glibc/glibc-multilib.SlackBuild +++ b/source/current/glibc/glibc-multilib.SlackBuild @@ -28,9 +28,9 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=glibc -VERSION=${VERSION:-2.33} +VERSION=${VERSION:-2.36} CHECKOUT=${CHECKOUT:-""} -BUILD=${BUILD:-5alien} +BUILD=${BUILD:-1alien} # I was considering disabling NSCD, but MoZes talked me out of it. :) #DISABLE_NSCD=" --disable-nscd " @@ -165,8 +165,6 @@ apply_patches() { 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.32.en_US.no.am.pm.date.format.diff.gz | patch -p1 --verbose || exit 1 # Other regression fixes from git: @@ -242,9 +240,9 @@ 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 \ + -exec chmod 755 {} \+ -o \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ - -exec chmod 644 {} \; + -exec chmod 644 {} \+ build_glibc() { CFLAGS="-g $OPTIMIZ -I/usr/include" \ @@ -264,10 +262,10 @@ build_glibc() { $TARGET-slackware-linux make $NUMJOBS || exit 1 - make install install_root=$PKG || 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 - make localedata/install-locales install_root=$PKG DESTDIR=$PKG || exit 1 + make $NUMJOBS localedata/install-locales install_root=$PKG DESTDIR=$PKG || exit 1 } # Build the 32-bit binaries first, @@ -476,12 +474,36 @@ cp -a $PKG/lib${LIBDIRSUFFIX}/* lib${LIBDIRSUFFIX} ( cd lib${LIBDIRSUFFIX} mkdir incoming mv *so* incoming - mv incoming/libSegFault.so . + mv incoming/libmemusage.so . + # Beginning with glibc-2.34, shared objects are using their ABI sonames + # directly, which is frankly, a terrible idea. It might help other package + # managers, but doesn't do us any favors where we already had a system for + # dealing with upgrades (and downgrades!). We'll change these libraries to + # use the versioned naming system of glibc-2.33 and earlier so that we don't + # have to handle these files differently and so that it's easy to see what + # version of glibc is in use at a glance. + cd incoming + for library in *.so.* ; do + mv $library $(echo $library | cut -f 1 -d .)-${VERSION}.so + done + # This one is a special case. We don't want an $ARCH embedded in the + # filename. It prevents using the same install scripts on all $ARCH + # and does no good since we'll never have multiple $ARCH libraries + # installed in the same directory anyway. So give it the previous name + # format: + mv ld-linux*-${VERSION}.so ld-${VERSION}.so ) if [ "x$LIBDIRSUFFIX" = "x64" ]; then # Same exercise for lib: mkdir -p lib cp -a $PKG/lib/* lib + ( cd lib + # For the reason why, see above block for the 64bit part: + for library in *.so.* ; do + mv $library $(echo $library | cut -f 1 -d .)-${VERSION}.so + done + mv ld-linux*-${VERSION}.so ld-${VERSION}.so + ) fi mkdir -p usr cp -a $PKG/usr/bin usr @@ -551,8 +573,35 @@ fix_doinst ( cd lib${LIBDIRSUFFIX} mkdir incoming mv *so* incoming - mv incoming/libSegFault.so . + mv incoming/libmemusage.so . + # Beginning with glibc-2.34, shared objects are using their ABI sonames + # directly, which is frankly, a terrible idea. It might help other package + # managers, but doesn't do us any favors where we already had a system for + # dealing with upgrades (and downgrades!). We'll change these libraries to + # use the versioned naming system of glibc-2.33 and earlier so that we don't + # have to handle these files differently and so that it's easy to see what + # version of glibc is in use at a glance. + cd incoming + for library in *.so.* ; do + mv $library $(echo $library | cut -f 1 -d .)-${VERSION}.so + done + # This one is a special case. We don't want an $ARCH embedded in the + # filename. It prevents using the same install scripts on all $ARCH + # and does no good since we'll never have multiple $ARCH libraries + # installed in the same directory anyway. So give it the previous name + # format: + mv ld-linux*-${VERSION}.so ld-${VERSION}.so ) +if [ "x$LIBDIRSUFFIX" = "x64" ]; then + # Same exercise for lib: + ( cd lib + # For the reason why, see above block for the 64bit part: + for library in *.so.* ; do + mv $library $(echo $library | cut -f 1 -d .)-${VERSION}.so + done + mv ld-linux*-${VERSION}.so ld-${VERSION}.so + ) +fi # Build the package: /sbin/makepkg -l y -c n $TMP/glibc-${VERSION}_multilib-$SLACKWARE_ARCH-$BUILD.txz |