summaryrefslogtreecommitdiff
path: root/sys-libs/glibc/glibc-2.36-r3.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'sys-libs/glibc/glibc-2.36-r3.ebuild')
-rw-r--r--sys-libs/glibc/glibc-2.36-r3.ebuild42
1 files changed, 26 insertions, 16 deletions
diff --git a/sys-libs/glibc/glibc-2.36-r3.ebuild b/sys-libs/glibc/glibc-2.36-r3.ebuild
index 1c3abc020acc..012d6984dd74 100644
--- a/sys-libs/glibc/glibc-2.36-r3.ebuild
+++ b/sys-libs/glibc/glibc-2.36-r3.ebuild
@@ -182,6 +182,15 @@ XFAIL_TEST_LIST=(
# Small helper functions
#
+dump_build_environment() {
+ einfo ==== glibc build environment ========================================================
+ local v
+ for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX CPP LD {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM AR AS STRIP RANLIB OBJCOPY STRINGS OBJDUMP READELF; do
+ einfo " $(printf '%15s' ${v}:) ${!v}"
+ done
+ einfo =====================================================================================
+}
+
is_crosscompile() {
[[ ${CHOST} != ${CTARGET} ]]
}
@@ -522,15 +531,20 @@ setup_env() {
fi
# Reset CC and CXX to the value at start of emerge
- export CC=${__ORIG_CC:-${CC:-$(tc-getCC ${CTARGET})}}
- export CXX=${__ORIG_CXX:-${CXX:-$(tc-getCXX ${CTARGET})}}
+ export CC=${glibc__ORIG_CC:-${CC:-$(tc-getCC ${CTARGET})}}
+ export CXX=${glibc__ORIG_CXX:-${CXX:-$(tc-getCXX ${CTARGET})}}
- # and make sure __ORIC_CC and __ORIG_CXX is defined now.
- export __ORIG_CC=${CC}
- export __ORIG_CXX=${CXX}
+ # and make sure glibc__ORIG_CC and glibc__ORIG_CXX is defined now.
+ export glibc__ORIG_CC=${CC}
+ export glibc__ORIG_CXX=${CXX}
if tc-is-clang && ! use custom-cflags && ! is_crosscompile ; then
+ export glibc__force_gcc=yes
+ # once this is toggled on, it needs to stay on, since with CPP manipulated
+ # tc-is-clang does not work correctly anymore...
+ fi
+ if [[ ${glibc__force_gcc} == "yes" ]] ; then
# If we are running in an otherwise clang/llvm environment, we need to
# recover the proper gcc and binutils settings here, at least until glibc
# is finally building with clang. So let's override everything that is
@@ -547,6 +561,7 @@ setup_env() {
einfo "Overriding clang configuration, since it won't work here"
export CC="${current_gcc_path}/gcc"
+ export CPP="${current_gcc_path}/cpp"
export CXX="${current_gcc_path}/g++"
export LD="${current_binutils_path}/ld.bfd"
export AR="${current_binutils_path}/ar"
@@ -584,10 +599,10 @@ setup_env() {
# around the original clean value to avoid appending multiple ABIs on
# top of each other. (Why does the comment talk about CFLAGS if the code
# acts on CC?)
- export __GLIBC_CC=${CC}
- export __GLIBC_CXX=${CXX}
+ export glibc__GLIBC_CC=${CC}
+ export glibc__GLIBC_CXX=${CXX}
- export __abi_CFLAGS="$(get_abi_CFLAGS)"
+ export glibc__abi_CFLAGS="$(get_abi_CFLAGS)"
# CFLAGS can contain ABI-specific flags like -mfpu=neon, see bug #657760
# To build .S (assembly) files with the same ABI-specific flags
@@ -596,10 +611,10 @@ setup_env() {
# Note: Passing CFLAGS via CPPFLAGS overrides glibc's arch-specific CFLAGS
# and breaks multiarch support. See 659030#c3 for an example.
# The glibc configure script doesn't properly use LDFLAGS all the time.
- export CC="${__GLIBC_CC} ${__abi_CFLAGS} ${CFLAGS} ${LDFLAGS}"
+ export CC="${glibc__GLIBC_CC} ${glibc__abi_CFLAGS} ${CFLAGS} ${LDFLAGS}"
# Some of the tests are written in C++, so we need to force our multlib abis in, bug 623548
- export CXX="${__GLIBC_CXX} ${__abi_CFLAGS} ${CFLAGS}"
+ export CXX="${glibc__GLIBC_CXX} ${glibc__abi_CFLAGS} ${CFLAGS}"
if is_crosscompile; then
# Assume worst-case bootstrap: glibc is buil first time
@@ -913,13 +928,8 @@ src_prepare() {
}
glibc_do_configure() {
+ dump_build_environment
- local v
- for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX LD {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM AR AS STRIP RANLIB OBJCOPY STRINGS OBJDUMP READELF; do
- einfo " $(printf '%15s' ${v}:) ${!v}"
- done
-
- echo
local myconf=()
# Use '=strong' instead of '=all' to protect only functions