diff options
author | Joseph Myers <joseph@codesourcery.com> | 2016-11-07 23:32:17 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2016-11-07 23:32:17 +0000 |
commit | 06b9e94f797b910da782b4608545e416ec5af1df (patch) | |
tree | 753897c89fce3aba5846215259b1066974432617 /scripts | |
parent | 327792ce5709dd9f6cc8d15732c4af65705eff76 (diff) | |
download | glibc-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.sh | 23 |
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 |