diff options
Diffstat (limited to 'sys-libs/glibc')
-rw-r--r-- | sys-libs/glibc/Manifest | 1 | ||||
-rw-r--r-- | sys-libs/glibc/glibc-2.25-r8.ebuild | 153 |
2 files changed, 154 insertions, 0 deletions
diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest index 3e385054e0f4..b9688f2cb5bd 100644 --- a/sys-libs/glibc/Manifest +++ b/sys-libs/glibc/Manifest @@ -54,6 +54,7 @@ EBUILD glibc-2.24-r4.ebuild 5047 SHA256 c200272f9c19ce196e788572aa0ff5e0e0a24b37 EBUILD glibc-2.25-r4.ebuild 4924 SHA256 c0da394b59de8b630923bcf8c6dc1380cf0a78188d6249cd8c9ee4845cd091fd SHA512 b161ebb907156041d3b94d9e0d46de6587be6dc76ebe9e078d5341c4ce5e98644d44b75fc64bb3f2f113564ddd0f9f78409c18a8e64d6e5c73b942da0e065133 WHIRLPOOL 662eecd40af24e60074e023ad01b3a0fb5dcfe5abe2e670f745243700c7630dda1ec438b84617b23b58f82a1743a9976535b8c039494df2d0e35a9a2e81551b5 EBUILD glibc-2.25-r5.ebuild 4966 SHA256 ed5fdeab50bec85ee4c5127b598cacf66d1f2b7429250203d63e33056d56288b SHA512 9b8eaa8a37ed54c7cf48a40bc9c15da3918d787e0374ffa7d63350d6ccbd2077435871f7021e3c0e975134299c9c1a3b40f990cd9535d35d9f488a0853213a72 WHIRLPOOL a2f1379c652f3acf13ae17775b86bd9775b4a1a9f21af223f23823522714d108ce8351cb2869ef9e9f782bbc256f39162f377f01e6b8aa8182432cf4ea8f0033 EBUILD glibc-2.25-r7.ebuild 4967 SHA256 3793570b4b1bd9bfc3475ba7edca14683b7c5ec9653141f2d1a67751d85f8f65 SHA512 242db7036410f38e18d9dccf75599602d190acdd6b36c344227383d62853526c398c44f88612628de857b7a8ee6f1194d123a1f4e13c23684ca46482f540f91e WHIRLPOOL 952248ef8b7b31c45e6136141cccbf6544f11f01d006ba9d9ba44528c8bdb8a4cf2dab9a0ce707c74987d71bd5b792e618309750457f72242932870a2d99900b +EBUILD glibc-2.25-r8.ebuild 5049 SHA256 c49a6b79c8d8c89545934438cd46b83efc616ea40e3c093133519217d6e8162a SHA512 cf003be920496d2d4645aa0266fc3dd7555dd7d621f9ca068faabd18cd108c6c919f6218f1e3b6fe9fbd78bfdf390015796ff25d791e92da618d3efbc9819cfc WHIRLPOOL 36e610a8a49fb4136653090cfc7139bf25617f3c2c1d3a8ea41b963cd6df1178184e2f662287d1f569b3cfe72f4c2c4ad6d5f88149c2bede193d6a860769acaa EBUILD glibc-2.26-r1.ebuild 23722 SHA256 899859c6118f79e8a74ea4bf962ad05b9c6f7556aaa5fecc725529e4a5139470 SHA512 3ca6176057d707eb408217d19801cffc180f1c1f29b7031ce1b60b600fab92843354a4b41b3a05e195a526c81b3aa1c8b9fe936773365d69c6b3195eb6a4bdd8 WHIRLPOOL dc1d21e11cddbdb3e62ddfce6258fd69e2b79f159a9a98f769a6e38fff723cc074136923a7f2cc426f188fb25d780a0f8a48c752208c830f5b05371a3d7b97b6 EBUILD glibc-2.26-r2.ebuild 23725 SHA256 f67f77719efc019599fcefa6f54e1c5dd6f8ed90a0afb42307994d7d42b5ced8 SHA512 e9ef1fb2811ac3df63ea69f6f72d34c049917e8760ddb6526d10cd372d11958bfcff7de6d170553970de9a1a59f8eaace01743fa456a5bfa7156461059d30329 WHIRLPOOL 091ad1a6e474082e960a4a0b32a8fd461826a5e7a71b932f0c309c3e0eed7e97e664fdd109f945848a9fe77c6f5abc059555e0f4c258d3a9656201ccbc8c5aef EBUILD glibc-9999.ebuild 23470 SHA256 de9ebe62576c2aec9b4100f721abe27e59654a44dbc28e760eb162da153c9264 SHA512 b8d8a5570e0979e6e64fc918ee8a6d62ce85aa66bcaf63c71f1b3ece630e937a0f0ae474858d3f18971c83eb0ca2f97743f73ef5f248d8745ab78b478bc342cd WHIRLPOOL 07f2d457468cd1d0f6062d696a9479963bf533dd2615a2d1e387a2c0e5bf390e5261ca5a308a2ce3acf34b4f9277969570b2d77f48fb15597c5b685050242345 diff --git a/sys-libs/glibc/glibc-2.25-r8.ebuild b/sys-libs/glibc/glibc-2.25-r8.ebuild new file mode 100644 index 000000000000..5b91bc5255a0 --- /dev/null +++ b/sys-libs/glibc/glibc-2.25-r8.ebuild @@ -0,0 +1,153 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="5" + +inherit toolchain-glibc + +DESCRIPTION="GNU libc6 (also called glibc2) C library" +HOMEPAGE="https://www.gnu.org/software/libc/libc.html" + +LICENSE="LGPL-2.1+ BSD HPND ISC inner-net rc PCRE" +#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" +RESTRICT="strip" # strip ourself #46186 +EMULTILIB_PKG="true" + +# Configuration variables +RELEASE_VER="" +case ${PV} in +9999*) + EGIT_REPO_URIS="git://sourceware.org/git/glibc.git" + EGIT_SOURCEDIRS="${S}" + inherit git-2 + ;; +*) + RELEASE_VER=${PV} + ;; +esac +GCC_BOOTSTRAP_VER="4.7.3-r1" +# patches live at https://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo/src/patchsets/glibc/ +PATCH_VER="11" # Gentoo patchset +: ${NPTL_KERN_VER:="2.6.32"} # min kernel version nptl requires + +GLIBC_PATCH_EXCLUDE+=" 0005_all_sys-types.h-drop-sys-sysmacros.h-include.patch" + +IUSE="audit caps debug gd hardened multilib nscd +rpc selinux systemtap profile suid vanilla crosscompile_opts_headers-only" + +# 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-* ]] ; then + export CTARGET=${CATEGORY#cross-} + fi +fi + +is_crosscompile() { + [[ ${CHOST} != ${CTARGET} ]] +} + +# Why SLOT 2.2 you ask yourself while sippin your tea ? +# Everyone knows 2.2 > 0, duh. +SLOT="2.2" + +# General: We need a new-enough binutils/gcc to match upstream baseline. +# arch: we need to make sure our binutils/gcc supports TLS. +COMMON_DEPEND=" + nscd? ( selinux? ( + audit? ( sys-process/audit ) + caps? ( sys-libs/libcap ) + ) ) + suid? ( caps? ( sys-libs/libcap ) ) + selinux? ( sys-libs/libselinux ) + systemtap? ( dev-util/systemtap ) +" +DEPEND="${COMMON_DEPEND} + >=app-misc/pax-utils-0.1.10 + !<sys-apps/sandbox-1.6 + !<sys-apps/portage-2.1.2" +RDEPEND="${COMMON_DEPEND} + !sys-kernel/ps3-sources + sys-apps/gentoo-functions + !sys-libs/nss-db" + +if [[ ${CATEGORY} == cross-* ]] ; then + DEPEND+=" !crosscompile_opts_headers-only? ( + >=${CATEGORY}/binutils-2.24 + >=${CATEGORY}/gcc-4.7 + )" + [[ ${CATEGORY} == *-linux* ]] && DEPEND+=" ${CATEGORY}/linux-headers" +else + DEPEND+=" + >=sys-devel/binutils-2.24 + >=sys-devel/gcc-4.7 + virtual/os-headers" + RDEPEND+=" vanilla? ( !sys-libs/timezone-data )" + PDEPEND+=" !vanilla? ( sys-libs/timezone-data )" +fi + +upstream_uris() { + echo mirror://gnu/glibc/$1 ftp://sourceware.org/pub/glibc/{releases,snapshots}/$1 mirror://gentoo/$1 +} +gentoo_uris() { + local devspace="HTTP~vapier/dist/URI HTTP~dilfridge/distfiles/URI HTTP~tamiko/distfiles/URI HTTP~slyfox/distfiles/URI" + devspace=${devspace//HTTP/https://dev.gentoo.org/} + echo mirror://gentoo/$1 ${devspace//URI/$1} +} +SRC_URI=$( + [[ -z ${EGIT_REPO_URIS} ]] && upstream_uris ${P}.tar.xz + [[ -n ${PATCH_VER} ]] && gentoo_uris ${P}-patches-${PATCH_VER}.tar.bz2 +) +SRC_URI+=" ${GCC_BOOTSTRAP_VER:+multilib? ( $(gentoo_uris gcc-${GCC_BOOTSTRAP_VER}-multilib-bootstrap.tar.bz2) )}" + +src_unpack() { + [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib && unpack gcc-${GCC_BOOTSTRAP_VER}-multilib-bootstrap.tar.bz2 + + toolchain-glibc_src_unpack +} + +src_prepare() { + toolchain-glibc_src_prepare + + cd "${S}" + + epatch "${FILESDIR}"/2.19/${PN}-2.19-ia64-gcc-4.8-reloc-hack.patch #503838 + + if use hardened ; then + # We don't enable these for non-hardened as the output is very terse -- + # it only states that a crash happened. The default upstream behavior + # includes backtraces and symbols. + einfo "Installing Hardened Gentoo SSP and FORTIFY_SOURCE handler" + cp "${FILESDIR}"/2.20/glibc-2.20-gentoo-stack_chk_fail.c debug/stack_chk_fail.c || die + cp "${FILESDIR}"/2.25/glibc-2.25-gentoo-chk_fail.c debug/chk_fail.c || die + + if use debug ; then + # Allow SIGABRT to dump core on non-hardened systems, or when debug is requested. + sed -i \ + -e '/^CFLAGS-backtrace.c/ iCPPFLAGS-stack_chk_fail.c = -DSSP_SMASH_DUMPS_CORE' \ + -e '/^CFLAGS-backtrace.c/ iCPPFLAGS-chk_fail.c = -DSSP_SMASH_DUMPS_CORE' \ + debug/Makefile || die + fi + fi + + case $(gcc-fullversion) in + 4.8.[0-3]|4.9.0) + eerror "You need to switch to a newer compiler; gcc-4.8.[0-3] and gcc-4.9.0 miscompile" + eerror "glibc. See https://bugs.gentoo.org/547420 for details." + die "need to switch compilers #547420" + ;; + esac +} |