public inbox for libc-alpha@sourceware.org
 help / color / mirror / Atom feed
* Make check-installed-headers.sh ignore sys/sysctl.h for x32
@ 2016-11-03 22:48 Joseph Myers
  2016-11-07 23:30 ` H.J. Lu
  0 siblings, 1 reply; 2+ messages in thread
From: Joseph Myers @ 2016-11-03 22:48 UTC (permalink / raw)
  To: libc-alpha

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).

2016-11-03  Joseph Myers  <joseph@codesourcery.com>

	* scripts/check-installed-headers.sh: Ignore sys/sysctl.h for x32.

diff --git a/scripts/check-installed-headers.sh b/scripts/check-installed-headers.sh
index 87d6142..a245fe6 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

-- 
Joseph S. Myers
joseph@codesourcery.com

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Make check-installed-headers.sh ignore sys/sysctl.h for x32
  2016-11-03 22:48 Make check-installed-headers.sh ignore sys/sysctl.h for x32 Joseph Myers
@ 2016-11-07 23:30 ` H.J. Lu
  0 siblings, 0 replies; 2+ messages in thread
From: H.J. Lu @ 2016-11-07 23:30 UTC (permalink / raw)
  To: Joseph Myers; +Cc: GNU C Library

On Thu, Nov 3, 2016 at 3:48 PM, Joseph Myers <joseph@codesourcery.com> wrote:
> 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).
>
> 2016-11-03  Joseph Myers  <joseph@codesourcery.com>
>
>         * scripts/check-installed-headers.sh: Ignore sys/sysctl.h for x32.
>
> diff --git a/scripts/check-installed-headers.sh b/scripts/check-installed-headers.sh
> index 87d6142..a245fe6 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
>

It looks good to me.

Thanks.

-- 
H.J.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-11-07 23:30 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-11-03 22:48 Make check-installed-headers.sh ignore sys/sysctl.h for x32 Joseph Myers
2016-11-07 23:30 ` H.J. Lu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).