summaryrefslogtreecommitdiff
path: root/scripts/build/libc/glibc.sh
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/build/libc/glibc.sh')
-rw-r--r--scripts/build/libc/glibc.sh7
1 files changed, 7 insertions, 0 deletions
diff --git a/scripts/build/libc/glibc.sh b/scripts/build/libc/glibc.sh
index 3b4b626..4b1c688 100644
--- a/scripts/build/libc/glibc.sh
+++ b/scripts/build/libc/glibc.sh
@@ -200,6 +200,13 @@ do_libc_backend_once() {
glibc_cflags+=" ${CT_GLIBC_EXTRA_CFLAGS}"
glibc_cflags+=" ${multi_flags}"
+ # Before 2.25, glibc didn't use GCC's ifunc attribute, instead creating
+ # the resolvers through some clever assembly. This had the resolver function
+ # aliased with an incompatible type, and GCC8 now complains about it.
+ if [ "${CT_GLIBC_HAS_NEW_IFUNC}" != "y" ]; then
+ glibc_cflags+=" -Wno-error=attribute-alias"
+ fi
+
# Analyze the resulting options for any extra configure switches to throw in.
for opt in ${glibc_cflags}; do
case ${opt} in