[git commit] ldso: Fix Build warnings with common-generic ABI build

Bernhard Reutner-Fischer rep.dot.nop at gmail.com
Thu Mar 14 21:27:19 UTC 2013


commit: http://git.uclibc.org/uClibc/commit/?id=d81edb99688eb77535a541c0e6edf9546cfce24e
branch: http://git.uclibc.org/uClibc/commit/?id=refs/heads/master

  CC ldso/ldso/ldso.oS
In file included from ./ldso/include/ldso.h:47,
                 from ldso/ldso/ldso.c:33:
./ldso/include/dl-syscall.h:35:1: warning: "S_ISUID" redefined
In file included from ./include/bits/kernel_stat.h:10,
                 from ./ldso/include/dl-syscall.h:31,
                 from ./ldso/include/ldso.h:47,
                 from ldso/ldso/ldso.c:33:
./include/sys/stat.h:163:1: warning: this is the location of the
previous definition
In file included from ./ldso/include/ldso.h:47,
                 from ldso/ldso/ldso.c:33:
./ldso/include/dl-syscall.h:36:1: warning: "S_ISGID" redefined
In file included from ./include/bits/kernel_stat.h:10,
                 from ./ldso/include/dl-syscall.h:31,
                 from ./ldso/include/ldso.h:47,
                 from ldso/ldso/ldso.c:33:
./include/sys/stat.h:164:1: warning: this is the location of the
previous definition

-----------------------------------------------------------------

Cleanly seperated the legacy ABI vs. new ABI scenario.

Signed-off-by: Vineet Gupta <vgupta at synopsys.com>
Cc: Markos Chandras <markos.chandras at imgtec.com>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop at gmail.com>
---
 ldso/include/dl-syscall.h |   11 ++++++++++-
 1 files changed, 10 insertions(+), 1 deletions(-)

diff --git a/ldso/include/dl-syscall.h b/ldso/include/dl-syscall.h
index b1f69ab..675b93a 100644
--- a/ldso/include/dl-syscall.h
+++ b/ldso/include/dl-syscall.h
@@ -20,10 +20,12 @@ extern int _dl_errno;
 /*  For MAP_ANONYMOUS -- differs between platforms */
 #define _SYS_MMAN_H 1
 #include <bits/mman.h>
+
+#ifdef __ARCH_HAS_DEPRECATED_SYSCALLS__
 /* Pull in whatever this particular arch's kernel thinks the kernel version of
  * struct stat should look like.  It turns out that each arch has a different
  * opinion on the subject, and different kernel revs use different names... */
-#if !defined __NR_stat || (defined(__sparc_v9__) && (__WORDSIZE == 64))
+#if defined(__sparc_v9__) && (__WORDSIZE == 64)
 #define kernel_stat64 stat
 #else
 #define kernel_stat stat
@@ -35,6 +37,13 @@ extern int _dl_errno;
 #define	S_ISUID		04000	/* Set user ID on execution.  */
 #define	S_ISGID		02000	/* Set group ID on execution.  */
 
+#else
+/* 1. common-generic ABI doesn't need kernel_stat translation
+ * 3. S_IS?ID already provided by stat.h
+ */
+#include <sys/stat.h>
+#endif
+
 
 /* Here are the definitions for some syscalls that are used
    by the dynamic linker.  The idea is that we want to be able


More information about the uClibc-cvs mailing list