diff options
author | Mike Frysinger <vapier@gentoo.org> | 2015-07-29 22:55:43 -0400 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2015-07-29 23:09:16 -0400 |
commit | 979900af9824932ed1d704323739958f46e08d81 (patch) | |
tree | d8d00c233136363456977b4db69624414d2c02b7 /sysdeps/unix | |
parent | a822b0187a0b822554c45a815335f5955f5d4b82 (diff) | |
download | glibc-979900af9824932ed1d704323739958f46e08d81.tar.gz glibc-979900af9824932ed1d704323739958f46e08d81.tar.xz glibc-979900af9824932ed1d704323739958f46e08d81.zip |
hppa: fix sysdep.h header setup
The semi-recent SYSCALL_CANCEL inclusion broke hppa due to the sysdep.h headers not including the unix/sysdep.h headers. Rework the includes so we match the other ports: * hppa/sysdep.h: - Do not include sys/syscall.h as the unix sysdep.h headers do it. - Do not include config.h as libc-symbols.h does it, and it has no #ifdef multiple-include protection, and it breaks when some files do things like #undef __OPTIMIZE__. * sysdeps/unix/sysv/linux/hppa/sysdep-cancel.h: - Drop the generic/sysdep.h as the unix sysdep.h headers include it. * sysdeps/unix/sysv/linux/hppa/sysdep.h: - Change to the unix & core hppa sysdep header stacks. - Undef a few defines that the core headers already set up for us.
Diffstat (limited to 'sysdeps/unix')
-rw-r--r-- | sysdeps/unix/sysv/linux/hppa/sysdep-cancel.h | 1 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/hppa/sysdep.h | 11 |
2 files changed, 9 insertions, 3 deletions
diff --git a/sysdeps/unix/sysv/linux/hppa/sysdep-cancel.h b/sysdeps/unix/sysv/linux/hppa/sysdep-cancel.h index 5580e94ffc..277b721b0a 100644 --- a/sysdeps/unix/sysv/linux/hppa/sysdep-cancel.h +++ b/sysdeps/unix/sysv/linux/hppa/sysdep-cancel.h @@ -16,7 +16,6 @@ <http://www.gnu.org/licenses/>. */ #include <sysdep.h> -#include <sysdeps/generic/sysdep.h> #include <tls.h> #ifndef __ASSEMBLER__ # include <nptl/pthreadP.h> diff --git a/sysdeps/unix/sysv/linux/hppa/sysdep.h b/sysdeps/unix/sysv/linux/hppa/sysdep.h index 17c8738ada..d20a04b8bb 100644 --- a/sysdeps/unix/sysv/linux/hppa/sysdep.h +++ b/sysdeps/unix/sysv/linux/hppa/sysdep.h @@ -18,8 +18,11 @@ License along with the GNU C Library. If not, see <http://www.gnu.org/licenses/>. */ -#include <asm/unistd.h> -#include <sysdeps/generic/sysdep.h> +#ifndef _LINUX_HPPA_SYSDEP_H +#define _LINUX_HPPA_SYSDEP_H 1 + +#include <sysdeps/unix/sysdep.h> +#include <sysdeps/hppa/sysdep.h> /* Defines RTLD_PRIVATE_ERRNO. */ #include <dl-sysdep.h> @@ -118,6 +121,7 @@ There is currently a bug in gdb which prevents us from specifying incomplete stabs information. Fake some entries here which specify the current source file. */ +#undef ENTRY #define ENTRY(name) \ .text ASM_LINE_SEP \ .align ALIGNARG(4) ASM_LINE_SEP \ @@ -174,6 +178,7 @@ bv,n 0(2) */ +#undef PSEUDO #define PSEUDO(name, syscall_name, args) \ ENTRY (name) ASM_LINE_SEP \ /* If necc. load args from stack */ ASM_LINE_SEP \ @@ -483,3 +488,5 @@ L(pre_end): ASM_LINE_SEP \ /* Pointer mangling is not yet supported for HPPA. */ #define PTR_MANGLE(var) (void) (var) #define PTR_DEMANGLE(var) (void) (var) + +#endif /* _LINUX_HPPA_SYSDEP_H */ |