This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
PATCH: Add x86-64 support to i386 sys/elf.h and sys/vm86.h
- From: "H.J. Lu" <hongjiu dot lu at intel dot com>
- To: GNU C Library <libc-alpha at sourceware dot org>
- Date: Thu, 31 May 2012 06:18:45 -0700
- Subject: PATCH: Add x86-64 support to i386 sys/elf.h and sys/vm86.h
- Reply-to: "H.J. Lu" <hjl dot tools at gmail dot com>
Hi,
This patch adds x86-64 support to i386 sys/elf.h and sys/vm86.h so
that "gcc -m32" behaves the same on both i386 and x86-64. OK to
install?
H.J.
---
* sysdeps/unix/sysv/linux/i386/sys/elf.h: Error whe compiling
for x86-64.
* sysdeps/unix/sysv/linux/i386/sys/vm86.h: Likewise.
diff --git a/sysdeps/unix/sysv/linux/i386/sys/elf.h b/sysdeps/unix/sysv/linux/x86/sys/elf.h
index 9d64e97..1f4524c 100644
--- a/sysdeps/unix/sysv/linux/i386/sys/elf.h
+++ b/sysdeps/unix/sysv/linux/i386/sys/elf.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1998-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -18,8 +18,12 @@
#ifndef _SYS_ELF_H
#define _SYS_ELF_H 1
-#warning "This header is obsolete; use <sys/procfs.h> instead."
+#ifdef __x86_64__
+# error This header is unsupported on x86-64.
+#else
+# warning "This header is obsolete; use <sys/procfs.h> instead."
-#include <sys/procfs.h>
+# include <sys/procfs.h>
+#endif
#endif /* _SYS_ELF_H */
diff --git a/sysdeps/unix/sysv/linux/i386/sys/vm86.h b/sysdeps/unix/sysv/linux/x86/sys/vm86.h
index cd2ac07..c41b55d 100644
--- a/sysdeps/unix/sysv/linux/i386/sys/vm86.h
+++ b/sysdeps/unix/sysv/linux/i386/sys/vm86.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1999, 2003 Free Software Foundation, Inc.
+/* Copyright (C) 1996-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -20,8 +20,11 @@
#define _SYS_VM86_H 1
#include <features.h>
+#ifdef __x86_64__
+# error This header is unsupported on x86-64.
+#else
/* Get constants and data types from kernel header file. */
-#include <asm/vm86.h>
+# include <asm/vm86.h>
__BEGIN_DECLS
@@ -30,5 +33,6 @@ extern int vm86 (unsigned long int __subfunction,
struct vm86plus_struct *__info) __THROW;
__END_DECLS
+# endif
#endif /* _SYS_VM86_H */