diff options
author | Adam Conrad <adconrad@0c3.net> | 2014-02-21 00:24:03 -0700 |
---|---|---|
committer | Adam Conrad <adconrad@0c3.net> | 2014-02-21 00:24:03 -0700 |
commit | 105fa3815690f5e370421701daf89cfa49afd5b3 (patch) | |
tree | 5aaffde227d307ff56ef4e66d331456928a4bcdd | |
parent | b8cd1c4ea5788d10bdb586f22a75f38f284ccdf0 (diff) | |
download | glibc-105fa3815690f5e370421701daf89cfa49afd5b3.zip glibc-105fa3815690f5e370421701daf89cfa49afd5b3.tar.gz glibc-105fa3815690f5e370421701daf89cfa49afd5b3.tar.bz2 |
Allow sys/auxv.h to be used from the testsuite on powerpc and sparc.
elf/tst-auxv.c includes misc/sys/auxv.h, which ends up not actually
being included due to the guard overlap, and getauxval becomes an
implicit declaration and implicit pointer conversion which means, at
best, the test isn't actually testing what it thinks it is and, at
worst, it'll crash and burn on platforms where implict pointer
conversion is a Very Bad Thing.
* sysdeps/powerpc/bits/hwcap.h: Allow _SYSDEPS_SYSDEP_H guard as a
synonym for _SYS_AUXV_H to allow direct inclusion.
* sysdeps/sparc/bits/hwcap.h: Likewise.
* sysdeps/powerpc/sysdep.h: Define _SYSDEPS_SYSDEP_H instead of
_SYS_AUXV_H so we can include sysdep.h and sys/auxv.h together.
* sysdeps/sparc/sysdep.h: Likewise.
-rw-r--r-- | ChangeLog | 9 | ||||
-rw-r--r-- | sysdeps/powerpc/bits/hwcap.h | 2 | ||||
-rw-r--r-- | sysdeps/powerpc/sysdep.h | 2 | ||||
-rw-r--r-- | sysdeps/sparc/bits/hwcap.h | 2 | ||||
-rw-r--r-- | sysdeps/sparc/sysdep.h | 2 |
5 files changed, 13 insertions, 4 deletions
@@ -1,3 +1,12 @@ +2014-02-21 Adam Conrad <adconrad@0c3.net> + + * sysdeps/powerpc/bits/hwcap.h: Allow _SYSDEPS_SYSDEP_H guard as a + synonym for _SYS_AUXV_H to allow direct inclusion. + * sysdeps/sparc/bits/hwcap.h: Likewise. + * sysdeps/powerpc/sysdep.h: Define _SYSDEPS_SYSDEP_H instead of + _SYS_AUXV_H so we can include sysdep.h and sys/auxv.h together. + * sysdeps/sparc/sysdep.h: Likewise. + 2014-02-21 Siddhesh Poyarekar <siddhesh@redhat.com> * benchtests/bench-strrchr.c (do_test): Fix minor formatting. diff --git a/sysdeps/powerpc/bits/hwcap.h b/sysdeps/powerpc/bits/hwcap.h index 1af8c82..7daec91 100644 --- a/sysdeps/powerpc/bits/hwcap.h +++ b/sysdeps/powerpc/bits/hwcap.h @@ -16,7 +16,7 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ -#ifndef _SYS_AUXV_H +#if !defined(_SYS_AUXV_H) && !defined(_SYSDEPS_SYSDEP_H) # error "Never include <bits/hwcap.h> directly; use <sys/auxv.h> instead." #endif diff --git a/sysdeps/powerpc/sysdep.h b/sysdeps/powerpc/sysdep.h index 541b657..e6627c0 100644 --- a/sysdeps/powerpc/sysdep.h +++ b/sysdeps/powerpc/sysdep.h @@ -19,7 +19,7 @@ * Powerpc Feature masks for the Aux Vector Hardware Capabilities (AT_HWCAP). * This entry is copied to _dl_hwcap or rtld_global._dl_hwcap during startup. */ -#define _SYS_AUXV_H 1 +#define _SYSDEPS_SYSDEP_H 1 #include <bits/hwcap.h> #define PPC_FEATURE_970 (PPC_FEATURE_POWER4 + PPC_FEATURE_HAS_ALTIVEC) diff --git a/sysdeps/sparc/bits/hwcap.h b/sysdeps/sparc/bits/hwcap.h index cf7c3db..74e1d7f 100644 --- a/sysdeps/sparc/bits/hwcap.h +++ b/sysdeps/sparc/bits/hwcap.h @@ -16,7 +16,7 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ -#ifndef _SYS_AUXV_H +#if !defined(_SYS_AUXV_H) && !defined(_SYSDEPS_SYSDEP_H) # error "Never include <bits/hwcap.h> directly; use <sys/auxv.h> instead." #endif diff --git a/sysdeps/sparc/sysdep.h b/sysdeps/sparc/sysdep.h index 1404cc1..a566bd8 100644 --- a/sysdeps/sparc/sysdep.h +++ b/sysdeps/sparc/sysdep.h @@ -15,7 +15,7 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ -#define _SYS_AUXV_H 1 +#define _SYSDEPS_SYSDEP_H 1 #include <bits/hwcap.h> #ifdef __ASSEMBLER__ |