diff options
Diffstat (limited to 'scripts/check-installed-headers.sh')
-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 |