This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[PATCH] Use -mx32 for _{POSIX_V7|_POSIX_V6|XBS5}_ILP32_OFFBIG
- From: "H.J. Lu" <hongjiu dot lu at intel dot com>
- To: GNU C Library <libc-alpha at sourceware dot org>
- Date: Sun, 3 Jun 2012 07:08:41 -0700
- Subject: [PATCH] Use -mx32 for _{POSIX_V7|_POSIX_V6|XBS5}_ILP32_OFFBIG
- Reply-to: "H.J. Lu" <hjl dot tools at gmail dot com>
Hi,
This patch uses -mx32 for _{POSIX_V7|_POSIX_V6|XBS5}_ILP32_OFFBIG.
Tested on Linux/x32, Linux/ia32 and Linux/x86-64. OK to install?
Thanks.
H.J.
---
ChangeLog | 12 +++++++++++
sysdeps/unix/sysv/linux/x86/bits/environments.h | 25 +++++++++++++---------
2 files changed, 27 insertions(+), 10 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index adf6c88..44a5fd3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2012-06-03 H.J. Lu <hongjiu.lu@intel.com>
+
+ * sysdeps/unix/sysv/linux/x86/bits/environments.h
+ (_POSIX_V7_ILP32_OFFBIG): Defined as 1 only if __x86_64__ is
+ defined.
+ (_POSIX_V6_ILP32_OFFBIG): Likewise.
+ (_XBS5_ILP32_OFFBIG): Likewise.
+ (_POSIX_V7_ILP32_OFF32): Defined as 1 only if __x86_64__ isn't
+ defined.
+ (_POSIX_V6_ILP32_OFF32): Likewise.
+ (_XBS5_ILP32_OFF32): Likewise.
+
2012-06-02 Andreas Schwab <schwab@linux-m68k.org>
[BZ #14042]
diff --git a/sysdeps/unix/sysv/linux/x86/bits/environments.h b/sysdeps/unix/sysv/linux/x86/bits/environments.h
index 793a04f..3d05828 100644
--- a/sysdeps/unix/sysv/linux/x86/bits/environments.h
+++ b/sysdeps/unix/sysv/linux/x86/bits/environments.h
@@ -64,14 +64,19 @@
#else /* __WORDSIZE == 32 */
-/* By default we have 32-bit wide `int', `long int', pointers and `off_t'
- and all platforms support LFS. */
-# define _POSIX_V7_ILP32_OFF32 1
-# define _POSIX_V7_ILP32_OFFBIG 1
-# define _POSIX_V6_ILP32_OFF32 1
-# define _POSIX_V6_ILP32_OFFBIG 1
-# define _XBS5_ILP32_OFF32 1
-# define _XBS5_ILP32_OFFBIG 1
+/* We have 32-bit wide `int', `long int' and pointers. */
+
+# ifdef __x86_64__
+/* -mx32 has 64-bit wide `off_t'. */
+# define _POSIX_V7_ILP32_OFFBIG 1
+# define _POSIX_V6_ILP32_OFFBIG 1
+# define _XBS5_ILP32_OFFBIG 1
+# else
+/* -m32 has 32-bit wide `off_t'. */
+# define _POSIX_V7_ILP32_OFF32 1
+# define _POSIX_V6_ILP32_OFF32 1
+# define _XBS5_ILP32_OFF32 1
+# endif
/* We optionally provide an environment with the above size but an 64-bit
side `off_t'. Therefore we don't define _POSIX_V7_ILP32_OFFBIG. */
@@ -89,8 +94,8 @@
#endif /* __WORDSIZE == 32 */
#define __ILP32_OFF32_CFLAGS "-m32"
-#define __ILP32_OFFBIG_CFLAGS "-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
+#define __ILP32_OFFBIG_CFLAGS "-mx32"
#define __ILP32_OFF32_LDFLAGS "-m32"
-#define __ILP32_OFFBIG_LDFLAGS "-m32"
+#define __ILP32_OFFBIG_LDFLAGS "-mx32"
#define __LP64_OFF64_CFLAGS "-m64"
#define __LP64_OFF64_LDFLAGS "-m64"
--
1.7.6.5