diff options
author | Mike Frysinger <vapier@gentoo.org> | 2011-06-01 18:47:35 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2011-06-01 18:47:35 +0000 |
commit | 73a779646fed2fbdfc408c47592e76ef56ea10a3 (patch) | |
tree | 3532d65e510fb53b8ebbe9746fbb73c9c037e529 /sys-libs | |
parent | Marking krdc-4.6.2 ppc for bug 354033 (diff) | |
download | historical-73a779646fed2fbdfc408c47592e76ef56ea10a3.tar.gz historical-73a779646fed2fbdfc408c47592e76ef56ea10a3.tar.bz2 historical-73a779646fed2fbdfc408c47592e76ef56ea10a3.zip |
Version bump.
Package-Manager: portage-2.2.0_alpha37/cvs/Linux x86_64
Diffstat (limited to 'sys-libs')
-rw-r--r-- | sys-libs/glibc/ChangeLog | 7 | ||||
-rw-r--r-- | sys-libs/glibc/Manifest | 15 | ||||
-rw-r--r-- | sys-libs/glibc/glibc-2.14.ebuild | 253 |
3 files changed, 267 insertions, 8 deletions
diff --git a/sys-libs/glibc/ChangeLog b/sys-libs/glibc/ChangeLog index e21b231d076d..37d125dab520 100644 --- a/sys-libs/glibc/ChangeLog +++ b/sys-libs/glibc/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for sys-libs/glibc # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/ChangeLog,v 1.772 2011/05/24 13:13:37 xarthisius Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/ChangeLog,v 1.773 2011/06/01 18:47:35 vapier Exp $ + +*glibc-2.14 (01 Jun 2011) + + 01 Jun 2011; Mike Frysinger <vapier@gentoo.org> +glibc-2.14.ebuild: + Version bump. 24 May 2011; Kacper Kowalik <xarthisius@gentoo.org> glibc-2.12.2.ebuild: ppc/ppc64 stable wrt #356913 diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest index 04536f3fa453..6b7af0a8530e 100644 --- a/sys-libs/glibc/Manifest +++ b/sys-libs/glibc/Manifest @@ -1,5 +1,5 @@ -----BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 +Hash: SHA256 AUX 2.10/glibc-2.10-gentoo-chk_fail.c 9407 RMD160 230701dfacfe2481eb49e5384fe4ebb508bd3af2 SHA1 0e9330d57de714dd1ecd7040d3eabf4723cdee7c SHA256 7745c0f5d37b37959b43b41e39762fc35b877161bc5740d9d3e9a83021acbc0e AUX 2.10/glibc-2.10-hardened-configure-picdefault.patch 865 RMD160 744bdbfb73f1dbced4cb33cb5aa92f3b41d3b4fb SHA1 21e0f83598f5342032a794315f0e3dac07f647da SHA256 b50b29f85d88011555bbcbe6046e6600be9344f2d78412b14aebdea515420774 @@ -35,6 +35,8 @@ DIST glibc-2.12.2-patches-3.tar.bz2 103476 RMD160 f5fac1f94c63790f7a6849a366c2f8 DIST glibc-2.12.2.tar.bz2 15667759 RMD160 1855ebbbca52dc036de159cca720f6153e173e21 SHA1 3ef6d36eee2dc7c4351f215f689e6a04c161a35e SHA256 22f8eb3c49b9eb5e88fc249daf8670899adef24eb1f74708fb150a6502fa1216 DIST glibc-2.13-patches-6.tar.bz2 103372 RMD160 bedadc250a515f57dc7fa23a4743ad3b8ecae9a8 SHA1 a9eccf14fcac6441fc206de4ca23e7b6beb6b3f0 SHA256 86335122c8523bf588b00508f656d5343e44f13001ec4fca088c127417e18846 DIST glibc-2.13.tar.bz2 15725729 RMD160 cf34e4a06a2602deed709e2ee10cf7446a824989 SHA1 14d83dced873a21a3da6a0bfa0926f40d82ef980 SHA256 0173c92a0545e6d99a46a4fbed2da00ba26556f5c6198e2f9f1631ed5318dbb2 +DIST glibc-2.14-patches-1.tar.bz2 84155 RMD160 af4ceecbb6bbcc15e685d52140ddbdeba318c4ec SHA1 dfc714f33612b96ae47706962e544fc48325418c SHA256 7f9f7df48b73f6659dfba716d5c39e0e62bea442ffcd0681c9796529ac83fa9e +DIST glibc-2.14.tar.bz2 15630590 RMD160 f2ba450342f353c7b0a9001ad375ff0adf3f86fc SHA1 2236a3530f83637c4338d81d9ac0f5b4c5e69820 SHA256 8404b54651d42133d9a2ab17d30d698e53c5f250b2ad8e5f3d9a208ea7c75d6c DIST glibc-2.9-20081201.tar.bz2 16430489 RMD160 1e1feb4ee9c0892a0544c05adb6dd249544621cf SHA1 5756ca3b543a370c4ec9ffc8038b72bf0aa61c71 SHA256 6f8e515775e20ed48610860d10315adda418a3649b3465f36ee5cd467364a8f6 DIST glibc-2.9-patches-7.tar.bz2 106373 RMD160 06fcd1e07521942e3edb822719e398a5a45a0bf7 SHA1 a3c63e638b99a5b4422cc0ee54c0f75e62b59662 SHA256 165d7d9babd332b115ea7e72f879ffab6ee897b761aa052f1b409a028a731b53 DIST glibc-2.9-ports-20081201.tar.bz2 487663 RMD160 80eb0035ed2e021e79755d4151ccd6d73cd78d8d SHA1 90a6ecbce37aabe6093c4dd0c8817cbf86321627 SHA256 19bb6e89855171d7ae01aef92054dfe4524521fbc13c67bfaa3ee81944210744 @@ -48,15 +50,14 @@ EBUILD glibc-2.11.3.ebuild 8344 RMD160 d16edbdf20cc3757ecdd415c439efde6c8d32f4a EBUILD glibc-2.12.1-r3.ebuild 8716 RMD160 4974eaa02a6712aa918dbc4f7d266bac5d8c99dd SHA1 6ab92a29268d7aa2923c60458a24eec3b1ffb55b SHA256 16dc1a2d765c02873c3864d7e3fbc96ead1e9ce0af6813d8ede293d3cd81d9e5 EBUILD glibc-2.12.2.ebuild 8721 RMD160 171b8ccedc626525fa8144b5abea75f8f5ef2600 SHA1 a193080ec767c21e2fdc4dce04d7584c2faf7a8f SHA256 5ca4db4d4d67acaefb24db3cbb39d705912a6546620d0239602b9b462a22a737 EBUILD glibc-2.13-r2.ebuild 8618 RMD160 f97a8e83bf6cd2d2e7a0e3495784846d3eea511b SHA1 7e8efe0fb0574d813f8672f0306b4f270df22d40 SHA256 22b04f258efc03abd1e5dc0aa2e80e2bb0fe310201d9dbf7855275db71e6fc0e +EBUILD glibc-2.14.ebuild 8589 RMD160 8abb8b9875598f4f0f6be805faa6ea53e34630d9 SHA1 3b7be87691cde66071942ee331ab016d7b093145 SHA256 17b1635294a771c32a255b81a026b98d0ac04e4f9295223d92781940296fcd3c EBUILD glibc-2.9_p20081201-r3.ebuild 7776 RMD160 d39bb361d39b3c0cea8a2fff12a78aa5ade97ef0 SHA1 176d5ea4e8dc116f2de3b589551a8ad6b56c98f7 SHA256 3dfd5c6bf0983d723cebc491f1940e446210e48b485c6b9a8fa9a4b929e3c29e -MISC ChangeLog 138432 RMD160 2a958217cca96a3cc35dd5bf23d1dbbb5745b5bc SHA1 17ced80668f561e92e30d44605e7fd1eee54aa3d SHA256 6b67c32f97cbf60a41e0638d3f3239f46fcefd96bff42736df728ae067376dcc +MISC ChangeLog 138542 RMD160 d267df0dd65510a02582b5a232d35457f2370e72 SHA1 220d3fde5dc74a4f87dba02603a1c7a48e8ee654 SHA256 ad2d02728fa8b9de8721b4746b0eca8bd6c159b605755381fbe6eb254e5a3696 MISC metadata.xml 539 RMD160 cf4d236b54a77b3cea382d53e4e61721bd14169b SHA1 b54ad589378da193ddc89676f8468c6d1b79521f SHA256 d7cb6dd119c81b5bf12c360af3705ca31a56ffa8bec999b44faa63c183719c31 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.17 (GNU/Linux) -iJwEAQECAAYFAk3brwsACgkQIiMqcbOVdxRdVQQAgO7/+9Mpud94ry65/PUNC/yo -bLZ8LOLx8w2gNYgBuH5Cj8oVY2GfC/IuenengsczVADFqAgqUj+SPDp8Z7AaqajY -d0EP45HMDnilp1dOHc3QFm8PQrIj13CrBfgOrGFVmH1R7PM4Vbn2QDJitDe0fWau -KDEaOvi1301IXNBptfY= -=7Gdx +iF4EAREIAAYFAk3miU4ACgkQaC/OocHi7JarIAD+NGsy5FpWfTpmRYCmQcNELkCv +BVxLruN+GeRaMoVHAMcA/2Et+IqcNJuldHf49nojB9qEmXi5iFY3iWLJViS5/INW +=GvfC -----END PGP SIGNATURE----- diff --git a/sys-libs/glibc/glibc-2.14.ebuild b/sys-libs/glibc/glibc-2.14.ebuild new file mode 100644 index 000000000000..adbf886cb89b --- /dev/null +++ b/sys-libs/glibc/glibc-2.14.ebuild @@ -0,0 +1,253 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.14.ebuild,v 1.1 2011/06/01 18:47:35 vapier Exp $ + +inherit eutils versionator libtool toolchain-funcs flag-o-matic gnuconfig multilib + +DESCRIPTION="GNU libc6 (also called glibc2) C library" +HOMEPAGE="http://www.gnu.org/software/libc/libc.html" + +LICENSE="LGPL-2" +#KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" +RESTRICT="strip" # strip ourself #46186 +EMULTILIB_PKG="true" + +# Configuration variables +if [[ ${PV} == *_p* ]] ; then +RELEASE_VER=${PV%_p*} +BRANCH_UPDATE="" +SNAP_VER=${PV#*_p} +else +RELEASE_VER=${PV} +BRANCH_UPDATE="" +SNAP_VER="" +fi +MANPAGE_VER="" # pregenerated manpages +INFOPAGE_VER="" # pregenerated infopages +LIBIDN_VER="" # it's integrated into the main tarball now +PATCH_VER="1" # Gentoo patchset +PORTS_VER="" # version of glibc ports addon +LT_VER="" # version of linuxthreads addon +NPTL_KERN_VER=${NPTL_KERN_VER:-"2.6.9"} # min kernel version nptl requires +#LT_KERN_VER=${LT_KERN_VER:-"2.4.1"} # min kernel version linuxthreads requires + +IUSE="debug gd glibc-omitfp hardened multilib nls selinux profile vanilla crosscompile_opts_headers-only ${LT_VER:+glibc-compat20 nptl nptlonly}" +S=${WORKDIR}/glibc-${RELEASE_VER}${SNAP_VER:+-${SNAP_VER}} + +# Here's how the cross-compile logic breaks down ... +# CTARGET - machine that will target the binaries +# CHOST - machine that will host the binaries +# CBUILD - machine that will build the binaries +# If CTARGET != CHOST, it means you want a libc for cross-compiling. +# If CHOST != CBUILD, it means you want to cross-compile the libc. +# CBUILD = CHOST = CTARGET - native build/install +# CBUILD != (CHOST = CTARGET) - cross-compile a native build +# (CBUILD = CHOST) != CTARGET - libc for cross-compiler +# CBUILD != CHOST != CTARGET - cross-compile a libc for a cross-compiler +# For install paths: +# CHOST = CTARGET - install into / +# CHOST != CTARGET - install into /usr/CTARGET/ + +export CBUILD=${CBUILD:-${CHOST}} +export CTARGET=${CTARGET:-${CHOST}} +if [[ ${CTARGET} == ${CHOST} ]] ; then + if [[ ${CATEGORY/cross-} != ${CATEGORY} ]] ; then + export CTARGET=${CATEGORY/cross-} + fi +fi + +[[ ${CTARGET} == hppa* ]] && NPTL_KERN_VER=${NPTL_KERN_VER/2.6.9/2.6.20} + +is_crosscompile() { + [[ ${CHOST} != ${CTARGET} ]] +} +alt_libdir() { + if is_crosscompile ; then + echo /usr/${CTARGET}/$(get_libdir) + else + echo /$(get_libdir) + fi +} + +if is_crosscompile ; then + SLOT="${CTARGET}-2.2" +else + # Why SLOT 2.2 you ask yourself while sippin your tea ? + # Everyone knows 2.2 > 0, duh. + SLOT="2.2" +fi + +# General: We need a new-enough binutils for as-needed +# arch: we need to make sure our binutils/gcc supports TLS +DEPEND=">=sys-devel/gcc-3.4.4 + arm? ( >=sys-devel/binutils-2.16.90 >=sys-devel/gcc-4.1.0 ) + x86? ( >=sys-devel/gcc-4.3 ) + amd64? ( >=sys-devel/binutils-2.19 >=sys-devel/gcc-4.3 ) + ppc? ( >=sys-devel/gcc-4.1.0 ) + ppc64? ( >=sys-devel/gcc-4.1.0 ) + >=sys-devel/binutils-2.15.94 + ${LT_VER:+nptl? (} >=sys-kernel/linux-headers-${NPTL_KERN_VER} ${LT_VER:+)} + >=sys-devel/gcc-config-1.3.12 + >=app-misc/pax-utils-0.1.10 + virtual/os-headers + nls? ( sys-devel/gettext ) + >=sys-apps/sandbox-1.2.18.1-r2 + !<sys-apps/portage-2.1.2 + selinux? ( sys-libs/libselinux )" +RDEPEND="!sys-kernel/ps3-sources + nls? ( sys-devel/gettext ) + selinux? ( sys-libs/libselinux )" + +if [[ ${CATEGORY/cross-} != ${CATEGORY} ]] ; then + DEPEND="${DEPEND} !crosscompile_opts_headers-only? ( ${CATEGORY}/gcc )" + [[ ${CATEGORY} == *-linux* ]] && DEPEND="${DEPEND} ${CATEGORY}/linux-headers" +else + DEPEND="${DEPEND} !vanilla? ( >=sys-libs/timezone-data-2007c )" + RDEPEND="${RDEPEND} + vanilla? ( !sys-libs/timezone-data ) + !vanilla? ( sys-libs/timezone-data )" +fi + +SRC_URI=$( + upstream_uris() { + echo mirror://gnu/glibc/$1 ftp://sources.redhat.com/pub/glibc/{releases,snapshots}/$1 mirror://gentoo/$1 + } + gentoo_uris() { + local devspace="HTTP~vapier/dist/URI HTTP~azarah/glibc/URI" + devspace=${devspace//HTTP/http://dev.gentoo.org/} + echo mirror://gentoo/$1 ${devspace//URI/$1} + } + + TARNAME=${PN} + if [[ -n ${SNAP_VER} ]] ; then + TARNAME="${PN}-${RELEASE_VER}" + [[ -n ${PORTS_VER} ]] && PORTS_VER=${SNAP_VER} + upstream_uris ${TARNAME}-${SNAP_VER}.tar.bz2 + else + upstream_uris ${TARNAME}-${RELEASE_VER}.tar.bz2 + fi + [[ -n ${LIBIDN_VER} ]] && upstream_uris glibc-libidn-${LIBIDN_VER}.tar.bz2 + [[ -n ${PORTS_VER} ]] && upstream_uris ${TARNAME}-ports-${PORTS_VER}.tar.bz2 + [[ -n ${LT_VER} ]] && upstream_uris ${TARNAME}-linuxthreads-${LT_VER}.tar.bz2 + [[ -n ${BRANCH_UPDATE} ]] && gentoo_uris glibc-${RELEASE_VER}-branch-update-${BRANCH_UPDATE}.patch.bz2 + [[ -n ${PATCH_VER} ]] && gentoo_uris glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.bz2 + [[ -n ${MANPAGE_VER} ]] && gentoo_uris glibc-manpages-${MANPAGE_VER}.tar.bz2 + [[ -n ${INFOPAGE_VER} ]] && gentoo_uris glibc-infopages-${INFOPAGE_VER}.tar.bz2 +) + +# eblit-include [--skip] <function> [version] +eblit-include() { + local skipable=false + [[ $1 == "--skip" ]] && skipable=true && shift + [[ $1 == pkg_* ]] && skipable=true + + local e v func=$1 ver=$2 + [[ -z ${func} ]] && die "Usage: eblit-include <function> [version]" + for v in ${ver:+-}${ver} -${PVR} -${PV} "" ; do + e="${FILESDIR}/eblits/${func}${v}.eblit" + if [[ -e ${e} ]] ; then + source "${e}" + return 0 + fi + done + ${skipable} && return 0 + die "Could not locate requested eblit '${func}' in ${FILESDIR}/eblits/" +} + +# eblit-run-maybe <function> +# run the specified function if it is defined +eblit-run-maybe() { + [[ $(type -t "$@") == "function" ]] && "$@" +} + +# eblit-run <function> [version] +# aka: src_unpack() { eblit-run src_unpack ; } +eblit-run() { + eblit-include --skip common "${*:2}" + eblit-include "$@" + eblit-run-maybe eblit-$1-pre + eblit-${PN}-$1 + eblit-run-maybe eblit-$1-post +} + +src_unpack() { eblit-run src_unpack ; } +src_compile() { eblit-run src_compile ; } +src_test() { eblit-run src_test ; } +src_install() { eblit-run src_install ; } + +# FILESDIR might not be available during binpkg install +for x in setup {pre,post}inst ; do + e="${FILESDIR}/eblits/pkg_${x}.eblit" + if [[ -e ${e} ]] ; then + . "${e}" + eval "pkg_${x}() { eblit-run pkg_${x} ; }" + fi +done + +pkg_setup() { + eblit-run pkg_setup + + # Static binary sanity check #332927 + if [[ ${ROOT} == "/" ]] && \ + has_version "<${CATEGORY}/${P}" && \ + built_with_use sys-apps/coreutils static + then + eerror "Please rebuild coreutils with USE=-static, then install" + eerror "glibc, then you may rebuild coreutils with USE=static." + die "Avoiding system meltdown #332927" + fi +} + +eblit-src_unpack-post() { + if use hardened ; then + cd "${S}" + einfo "Patching to get working PIE binaries on PIE (hardened) platforms" + gcc-specs-pie && epatch "${FILESDIR}"/2.12/glibc-2.12-hardened-pie.patch + epatch "${FILESDIR}"/2.10/glibc-2.10-hardened-configure-picdefault.patch + epatch "${FILESDIR}"/2.10/glibc-2.10-hardened-inittls-nosysenter.patch + + einfo "Installing Hardened Gentoo SSP and FORTIFY_SOURCE handler" + cp -f "${FILESDIR}"/2.6/glibc-2.6-gentoo-stack_chk_fail.c \ + debug/stack_chk_fail.c || die + cp -f "${FILESDIR}"/2.10/glibc-2.10-gentoo-chk_fail.c \ + debug/chk_fail.c || die + + if use debug ; then + # When using Hardened Gentoo stack handler, have smashes dump core for + # analysis - debug only, as core could be an information leak + # (paranoia). + sed -i \ + -e '/^CFLAGS-backtrace.c/ iCFLAGS-stack_chk_fail.c = -DSSP_SMASH_DUMPS_CORE' \ + debug/Makefile \ + || die "Failed to modify debug/Makefile for debug stack handler" + sed -i \ + -e '/^CFLAGS-backtrace.c/ iCFLAGS-chk_fail.c = -DSSP_SMASH_DUMPS_CORE' \ + debug/Makefile \ + || die "Failed to modify debug/Makefile for debug fortify handler" + fi + + # Build nscd with ssp-all + sed -i \ + -e 's:-fstack-protector$:-fstack-protector-all:' \ + nscd/Makefile \ + || die "Failed to ensure nscd builds with ssp-all" + fi +} + +maint_pkg_create() { + local base="/usr/local/src/gnu/glibc/glibc-${PV:0:1}_${PV:2:1}" + cd ${base} + local stamp=$(date +%Y%m%d) + local d + for d in libc ports ; do + #(cd ${d} && cvs up) + case ${d} in + libc) tarball="${P}";; + ports) tarball="${PN}-ports-${PV}";; + esac + rm -f ${tarball}* + ln -sf ${d} ${tarball} + tar hcf - ${tarball} --exclude-vcs | lzma > "${T}"/${tarball}.tar.lzma + du -b "${T}"/${tarball}.tar.lzma + done +} |