summaryrefslogtreecommitdiff
path: root/scripts/build/libc/glibc.sh
diff options
context:
space:
mode:
authorAlexey Neyman <stilor@att.net>2018-05-12 20:00:41 (GMT)
committerAlexey Neyman <stilor@att.net>2018-05-12 20:03:29 (GMT)
commit387c8d8e2c89d94d41c76479ee9571c60e824ac3 (patch)
tree55446e0fad0d390157ab44d8ec5e8007c7f439bc /scripts/build/libc/glibc.sh
parent7d3d4d9e7484b8e48336f7ba4b934661b1562fb8 (diff)
First batch of fixes
- Incompatible function type for ifunc alias - Multiple statements macro expansion in strftime - if_nametoindex size checking Signed-off-by: Alexey Neyman <stilor@att.net>
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