This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch, hjl/mx32, created. glibc-2.15-1152-gb33c8d6
- From: hjl at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 5 Jun 2012 00:55:08 -0000
- Subject: GNU C Library master sources branch, hjl/mx32, created. glibc-2.15-1152-gb33c8d6
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, hjl/mx32 has been created
at b33c8d6f472ee3c239b75d450f297e98ee87a92b (commit)
- Log -----------------------------------------------------------------
http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=b33c8d6f472ee3c239b75d450f297e98ee87a92b
commit b33c8d6f472ee3c239b75d450f297e98ee87a92b
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sun Jun 3 07:02:45 2012 -0700
Correct _{POSIX_V7|_POSIX_V6|XBS5}_ILP32_OFFBIG for x32
diff --git a/ChangeLog.pr14200 b/ChangeLog.pr14200
new file mode 100644
index 0000000..8ce41ba
--- /dev/null
+++ b/ChangeLog.pr14200
@@ -0,0 +1,10 @@
+2012-06-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ [BZ #14200]
+ * sysdeps/unix/sysv/linux/x86/bits/environments.h
+ (_POSIX_V7_ILP32_OFF32): Defined as 1 only if __x86_64__ isn't
+ defined.
+ (_POSIX_V6_ILP32_OFF32): Likewise.
+ (_XBS5_ILP32_OFF32): Likewise.
+ (__ILP32_OFFBIG_CFLAGS): Defined as "-mx32" for x32.
+ (__ILP32_OFFBIG_LDFLAGS): Likewise.
diff --git a/sysdeps/unix/sysv/linux/x86/bits/environments.h b/sysdeps/unix/sysv/linux/x86/bits/environments.h
index 793a04f..8ebc837 100644
--- a/sysdeps/unix/sysv/linux/x86/bits/environments.h
+++ b/sysdeps/unix/sysv/linux/x86/bits/environments.h
@@ -64,15 +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
+/* We have 32-bit wide `int', `long int' and pointers and all platforms
+ support LFS. -mx32 has 64-bit wide `off_t'. */
# define _POSIX_V7_ILP32_OFFBIG 1
-# define _POSIX_V6_ILP32_OFF32 1
-# define _POSIX_V6_ILP32_OFFBIG 1
-# define _XBS5_ILP32_OFF32 1
+# define _POSIX_V6_ILP32_OFFBIG 1
# define _XBS5_ILP32_OFFBIG 1
+# ifndef __x86_64__
+/* -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 +93,13 @@
#endif /* __WORDSIZE == 32 */
#define __ILP32_OFF32_CFLAGS "-m32"
-#define __ILP32_OFFBIG_CFLAGS "-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
#define __ILP32_OFF32_LDFLAGS "-m32"
-#define __ILP32_OFFBIG_LDFLAGS "-m32"
+#if defined __x86_64__ && defined __ILP32__
+# define __ILP32_OFFBIG_CFLAGS "-mx32"
+# define __ILP32_OFFBIG_LDFLAGS "-mx32"
+#else
+# define __ILP32_OFFBIG_CFLAGS "-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
+# define __ILP32_OFFBIG_LDFLAGS "-m32"
+#endif
#define __LP64_OFF64_CFLAGS "-m64"
#define __LP64_OFF64_LDFLAGS "-m64"
-----------------------------------------------------------------------
hooks/post-receive
--
GNU C Library master sources