diff options
author | Eric Hameleers <alien@slackware.com> | 2013-03-12 18:14:09 +0000 |
---|---|---|
committer | Eric Hameleers <alien@slackware.com> | 2013-03-12 18:14:09 +0000 |
commit | 969ef92b42e3f6e2da308a223ca88cb73199bb77 (patch) | |
tree | 7f1690f1be8b4afc00f926aebda36eb814fa05d4 | |
parent | 770597f4ab55556eb5c20fa1a04aa6c7b85cb2b3 (diff) | |
download | multilib-969ef92b42e3f6e2da308a223ca88cb73199bb77.tar.gz multilib-969ef92b42e3f6e2da308a223ca88cb73199bb77.tar.xz |
Update to glibc-2.17
-rwxr-xr-x | 14.1/glibc/glibc-multilib.SlackBuild | 73 | ||||
-rwxr-xr-x | current/glibc/glibc-multilib.SlackBuild | 73 |
2 files changed, 68 insertions, 78 deletions
diff --git a/14.1/glibc/glibc-multilib.SlackBuild b/14.1/glibc/glibc-multilib.SlackBuild index 442f740..db93fa2 100755 --- a/14.1/glibc/glibc-multilib.SlackBuild +++ b/14.1/glibc/glibc-multilib.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2006, 2008, 2009, 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2006, 2008, 2009, 2010, 2011, 2012, 2013 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -28,14 +28,17 @@ # by Eric Hameleers <alien@slackware.com> -VERSION=${VERSION:-2.15} +VERSION=${VERSION:-2.17} CHECKOUT=${CHECKOUT:-""} -BUILD=${BUILD:-7alien} +BUILD=${BUILD:-1alien} ## Included in glibc now: ## glibc-libidn version #LIBIDNVER=2.10.1 +# I was considering disabling NSCD, but MoZes talked me out of it. :) +#DISABLE_NSCD=" --disable-nscd " + # $ARCH may be preset, otherwise i486 compatibility with i686 binary # structuring is the Slackware default, since this is what gcc-3.2+ # requires for binary compatibility with previous releases. @@ -159,13 +162,6 @@ fix_doinst() { # This is a patch function to put all glibc patches in the build script # up near the top. apply_patches() { - # Reexport the RPC interfaces that were removed in glibc-2.14. - # Sure, it's crufy code, but stuff needs it, so rather than pull the - # rug out from under you, we'll just humbly recommend that you consider - # transitioning away from it... :-) - zcat $CWD/glibc-2.14-reexport-rpc-interface.patch.gz | patch -p1 --verbose || exit 1 - # Add back the NIS and RPC headers: - zcat $CWD/glibc-2.14-reinstall-nis-rpc-headers.patch.gz | patch -p1 --verbose || exit 1 # 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 @@ -197,37 +193,11 @@ apply_patches() { # Avoid the Intel optimized asm routines for now because they break # the flash player. We'll phase this in when it's safer to do so. zcat $CWD/glibc.disable.broken.optimized.memcpy.diff.gz | patch -p1 --verbose || exit 1 - # Upstream fixes to avert Firefox crashes: (still applies to 2.15... probably better not to drop it) - zcat $CWD/glibc-2.14.1-fixes-1.patch.gz | patch -p1 --verbose || exit 1 - # Upstream patch to fix relocation sorting related crashes: - zcat $CWD/glibc.git-6ee65ed6ddbf04402fad0bec6aa9c73b9d982ae4.diff.gz | patch -p1 --verbose || exit 1 - # Upstream patch to fix crashes when nscd is not running: - zcat $CWD/glibc-2.15.nscd-race-fix.diff.gz | patch -p1 --verbose || exit 1 - # Revert a patch that went into 2.15 that causes NPTL related crashes: - zcat $CWD/glibc-2.15-revert-c5a0802a.diff.gz | patch -p1 --verbose || exit 1 - # Patch integer overflows in strtod*() functions: - zcat $CWD/glibc.strtod.CVE-2012-3480.diff.gz | patch -p1 --verbose || exit 1 if [ $BOOTSTRP -eq 1 ] ; then # Multilib - Disable check for forced unwind (Patch from eglibc) since we # do not have a multilib glibc yet to link to; zcat $CWD/glibc.pthread-disable-forced-unwind-check.diff.gz | patch -p1 --verbose || exit 1 fi - # Update the timezone information. - ( cd timezone - tar xzf $CWD/tzdata?????.tar.gz - chown root:root * - mv yearistype.sh yearistype - chmod 644 * - chmod 755 yearistype - mkdir tzcode - cd tzcode - tar xzf $CWD/tzcode?????.tar.gz - # A partial build is needed here to update TZVERSION in version.h: - make -i - chown -R root:root . - chmod 644 * - cp -a *.c *.h .. - ) } # This is going to be the initial $DESTDIR: @@ -306,10 +276,12 @@ build_glibc() { ../configure \ --prefix=/usr \ --libdir=/usr/lib${LIBDIRSUFFIX} \ - --enable-kernel=2.6.32 \ + --enable-kernel=3.2.29 \ --with-headers=/usr/include \ --enable-add-ons=libidn,nptl \ + --enable-obsolete-rpc \ --enable-profile \ + $DISABLE_NSCD \ --infodir=/usr/info \ --mandir=/usr/man \ --with-tls \ @@ -367,6 +339,25 @@ strip -g $PKG/lib${LIBDIRSUFFIX}/l*.so* strip -g $PKG/usr/lib${LIBDIRSUFFIX}/l*.so* strip -g $PKG/usr/lib${LIBDIRSUFFIX}/lib*.a +# Build and install the zoneinfo database: +cd $TMP +rm -rf tzcodedata-build +mkdir tzcodedata-build +cd tzcodedata-build +tar xzf $CWD/tzdata?????.tar.gz +tar xzf $CWD/tzcode?????.tar.gz +sed -i "s,/usr/local,$(pwd),g" Makefile +sed -i "s,/etc/zoneinfo,/zoneinfo,g" Makefile +make +make install +mkdir -p $PKG/usr/share/zoneinfo/{posix,right} +cp -a zoneinfo/* $PKG/usr/share/zoneinfo +cp -a zoneinfo-posix/* $PKG/usr/share/zoneinfo/posix +cp -a zoneinfo-leaps/* $PKG/usr/share/zoneinfo/right +# Remove $PKG/usr/share/zoneinfo/localtime -- the install script will +# create it as a link to /etc/localtime. +rm -f $PKG/usr/share/zoneinfo/localtime + # Back to the sources dir to add some files/docs: cd $TMP/glibc-$CVSVER @@ -376,6 +367,10 @@ mkdir -p $PKG/etc cat nscd/nscd.conf > $PKG/etc/nscd.conf.new # Install some scripts to help select a timezone: +( cd $CWD/timezone-scripts + # Try to rebuild this: + sh output-updated-timeconfig.sh $PKG/usr/share/zoneinfo > timeconfig 2> /dev/null +) mkdir -p $PKG/var/log/setup cp -a $CWD/timezone-scripts/setup.timeconfig $PKG/var/log/setup chown root:root $PKG/var/log/setup/setup.timeconfig @@ -436,9 +431,9 @@ rm $PKG/etc/ld.so.cache # OK, time to make some packages # ################################## -# glibc-zoneinfo. We will start with an easy one to avoid breaking a sweat ;-) +# glibc-zoneinfo. We will start with an easy one to avoid breaking a sweat. cd $CWD -ZONE_VERSIONS="$(echo tzcode* | cut -f1 -d . | cut -b7-11)_$(echo tzdata* | cut -f1 -d . | cut -b7-11)" +ZONE_VERSIONS="$(echo tzdata* | cut -f1 -d . | cut -b7-11)" echo $ZONE_VERSIONS cd $PZONE # Install some scripts to help select a timezone: diff --git a/current/glibc/glibc-multilib.SlackBuild b/current/glibc/glibc-multilib.SlackBuild index 442f740..db93fa2 100755 --- a/current/glibc/glibc-multilib.SlackBuild +++ b/current/glibc/glibc-multilib.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2006, 2008, 2009, 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2006, 2008, 2009, 2010, 2011, 2012, 2013 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -28,14 +28,17 @@ # by Eric Hameleers <alien@slackware.com> -VERSION=${VERSION:-2.15} +VERSION=${VERSION:-2.17} CHECKOUT=${CHECKOUT:-""} -BUILD=${BUILD:-7alien} +BUILD=${BUILD:-1alien} ## Included in glibc now: ## glibc-libidn version #LIBIDNVER=2.10.1 +# I was considering disabling NSCD, but MoZes talked me out of it. :) +#DISABLE_NSCD=" --disable-nscd " + # $ARCH may be preset, otherwise i486 compatibility with i686 binary # structuring is the Slackware default, since this is what gcc-3.2+ # requires for binary compatibility with previous releases. @@ -159,13 +162,6 @@ fix_doinst() { # This is a patch function to put all glibc patches in the build script # up near the top. apply_patches() { - # Reexport the RPC interfaces that were removed in glibc-2.14. - # Sure, it's crufy code, but stuff needs it, so rather than pull the - # rug out from under you, we'll just humbly recommend that you consider - # transitioning away from it... :-) - zcat $CWD/glibc-2.14-reexport-rpc-interface.patch.gz | patch -p1 --verbose || exit 1 - # Add back the NIS and RPC headers: - zcat $CWD/glibc-2.14-reinstall-nis-rpc-headers.patch.gz | patch -p1 --verbose || exit 1 # 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 @@ -197,37 +193,11 @@ apply_patches() { # Avoid the Intel optimized asm routines for now because they break # the flash player. We'll phase this in when it's safer to do so. zcat $CWD/glibc.disable.broken.optimized.memcpy.diff.gz | patch -p1 --verbose || exit 1 - # Upstream fixes to avert Firefox crashes: (still applies to 2.15... probably better not to drop it) - zcat $CWD/glibc-2.14.1-fixes-1.patch.gz | patch -p1 --verbose || exit 1 - # Upstream patch to fix relocation sorting related crashes: - zcat $CWD/glibc.git-6ee65ed6ddbf04402fad0bec6aa9c73b9d982ae4.diff.gz | patch -p1 --verbose || exit 1 - # Upstream patch to fix crashes when nscd is not running: - zcat $CWD/glibc-2.15.nscd-race-fix.diff.gz | patch -p1 --verbose || exit 1 - # Revert a patch that went into 2.15 that causes NPTL related crashes: - zcat $CWD/glibc-2.15-revert-c5a0802a.diff.gz | patch -p1 --verbose || exit 1 - # Patch integer overflows in strtod*() functions: - zcat $CWD/glibc.strtod.CVE-2012-3480.diff.gz | patch -p1 --verbose || exit 1 if [ $BOOTSTRP -eq 1 ] ; then # Multilib - Disable check for forced unwind (Patch from eglibc) since we # do not have a multilib glibc yet to link to; zcat $CWD/glibc.pthread-disable-forced-unwind-check.diff.gz | patch -p1 --verbose || exit 1 fi - # Update the timezone information. - ( cd timezone - tar xzf $CWD/tzdata?????.tar.gz - chown root:root * - mv yearistype.sh yearistype - chmod 644 * - chmod 755 yearistype - mkdir tzcode - cd tzcode - tar xzf $CWD/tzcode?????.tar.gz - # A partial build is needed here to update TZVERSION in version.h: - make -i - chown -R root:root . - chmod 644 * - cp -a *.c *.h .. - ) } # This is going to be the initial $DESTDIR: @@ -306,10 +276,12 @@ build_glibc() { ../configure \ --prefix=/usr \ --libdir=/usr/lib${LIBDIRSUFFIX} \ - --enable-kernel=2.6.32 \ + --enable-kernel=3.2.29 \ --with-headers=/usr/include \ --enable-add-ons=libidn,nptl \ + --enable-obsolete-rpc \ --enable-profile \ + $DISABLE_NSCD \ --infodir=/usr/info \ --mandir=/usr/man \ --with-tls \ @@ -367,6 +339,25 @@ strip -g $PKG/lib${LIBDIRSUFFIX}/l*.so* strip -g $PKG/usr/lib${LIBDIRSUFFIX}/l*.so* strip -g $PKG/usr/lib${LIBDIRSUFFIX}/lib*.a +# Build and install the zoneinfo database: +cd $TMP +rm -rf tzcodedata-build +mkdir tzcodedata-build +cd tzcodedata-build +tar xzf $CWD/tzdata?????.tar.gz +tar xzf $CWD/tzcode?????.tar.gz +sed -i "s,/usr/local,$(pwd),g" Makefile +sed -i "s,/etc/zoneinfo,/zoneinfo,g" Makefile +make +make install +mkdir -p $PKG/usr/share/zoneinfo/{posix,right} +cp -a zoneinfo/* $PKG/usr/share/zoneinfo +cp -a zoneinfo-posix/* $PKG/usr/share/zoneinfo/posix +cp -a zoneinfo-leaps/* $PKG/usr/share/zoneinfo/right +# Remove $PKG/usr/share/zoneinfo/localtime -- the install script will +# create it as a link to /etc/localtime. +rm -f $PKG/usr/share/zoneinfo/localtime + # Back to the sources dir to add some files/docs: cd $TMP/glibc-$CVSVER @@ -376,6 +367,10 @@ mkdir -p $PKG/etc cat nscd/nscd.conf > $PKG/etc/nscd.conf.new # Install some scripts to help select a timezone: +( cd $CWD/timezone-scripts + # Try to rebuild this: + sh output-updated-timeconfig.sh $PKG/usr/share/zoneinfo > timeconfig 2> /dev/null +) mkdir -p $PKG/var/log/setup cp -a $CWD/timezone-scripts/setup.timeconfig $PKG/var/log/setup chown root:root $PKG/var/log/setup/setup.timeconfig @@ -436,9 +431,9 @@ rm $PKG/etc/ld.so.cache # OK, time to make some packages # ################################## -# glibc-zoneinfo. We will start with an easy one to avoid breaking a sweat ;-) +# glibc-zoneinfo. We will start with an easy one to avoid breaking a sweat. cd $CWD -ZONE_VERSIONS="$(echo tzcode* | cut -f1 -d . | cut -b7-11)_$(echo tzdata* | cut -f1 -d . | cut -b7-11)" +ZONE_VERSIONS="$(echo tzdata* | cut -f1 -d . | cut -b7-11)" echo $ZONE_VERSIONS cd $PZONE # Install some scripts to help select a timezone: |