summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2016-11-07 23:32:17 +0000
committerJoseph Myers <joseph@codesourcery.com>2016-11-07 23:32:17 +0000
commit06b9e94f797b910da782b4608545e416ec5af1df (patch)
tree753897c89fce3aba5846215259b1066974432617 /scripts
parent327792ce5709dd9f6cc8d15732c4af65705eff76 (diff)
downloadglibc-06b9e94f797b910da782b4608545e416ec5af1df.tar.gz
Make check-installed-headers.sh ignore sys/sysctl.h for x32.
check-installed-headers tests were failing for x32 because of the x86 bits/sysctl.h containing a #error for x32. This patch makes the tests ignore sys/sysctl.h for x32, similar to the other special-casing of particular headers. Tested for x86_64 (full testing for -m64, compile-only for x32). * scripts/check-installed-headers.sh: Ignore sys/sysctl.h for x32.
Diffstat (limited to 'scripts')
-rw-r--r--scripts/check-installed-headers.sh23
1 files changed, 23 insertions, 0 deletions
diff --git a/scripts/check-installed-headers.sh b/scripts/check-installed-headers.sh
index 87d6142fa6..a245fe6be2 100644
--- a/scripts/check-installed-headers.sh
+++ b/scripts/check-installed-headers.sh
@@ -66,6 +66,7 @@ trap "rm -f '$cih_test_c'" 0
failed=0
is_x86_64=unknown
+is_x32=unknown
for header in "$@"; do
# Skip various headers for which this test gets a false failure.
case "$header" in
@@ -83,6 +84,28 @@ for header in "$@"; do
(sys/elf.h)
continue;;
+ # sys/sysctl.h is unsupported for x32.
+ (sys/sysctl.h)
+ case "$is_x32" in
+ (yes) continue;;
+ (no) ;;
+ (unknown)
+ cat >"$cih_test_c" <<EOF
+#if defined __x86_64__ && defined __ILP32__
+# error "is x32"
+#endif
+EOF
+ if $cc_cmd -fsyntax-only "$cih_test_c" > /dev/null 2>&1
+ then
+ is_x32=no
+ else
+ is_x32=yes
+ continue
+ fi
+ ;;
+ esac
+ ;;
+
# sys/vm86.h is "unsupported on x86-64" and errors out on that target.
(sys/vm86.h)
case "$is_x86_64" in