This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[PATCH/committed] hppa: fix sysdep.h header setup
- From: Mike Frysinger <vapier at gentoo dot org>
- To: libc-alpha at sourceware dot org
- Date: Wed, 29 Jul 2015 23:12:27 -0400
- Subject: [PATCH/committed] hppa: fix sysdep.h header setup
- Authentication-results: sourceware.org; auth=none
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.
---
sysdeps/hppa/sysdep.h | 2 --
sysdeps/unix/sysv/linux/hppa/sysdep-cancel.h | 1 -
sysdeps/unix/sysv/linux/hppa/sysdep.h | 11 +++++++++--
3 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/sysdeps/hppa/sysdep.h b/sysdeps/hppa/sysdep.h
index 03fb2a4..366b830 100644
--- a/sysdeps/hppa/sysdep.h
+++ b/sysdeps/hppa/sysdep.h
@@ -18,8 +18,6 @@
<http://www.gnu.org/licenses/>. */
#include <sysdeps/generic/sysdep.h>
-#include <sys/syscall.h>
-#include "config.h"
#undef ASM_LINE_SEP
#define ASM_LINE_SEP !
diff --git a/sysdeps/unix/sysv/linux/hppa/sysdep-cancel.h b/sysdeps/unix/sysv/linux/hppa/sysdep-cancel.h
index 5580e94..277b721 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 17c8738..d20a04b 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 */
--
2.4.4