public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] tools lib: Reinstate strlcpy() header guard with __UCLIBC__
@ 2016-08-17 20:00 Vineet Gupta
  2016-08-18 14:07 ` Arnaldo Carvalho de Melo
  0 siblings, 1 reply; 15+ messages in thread
From: Vineet Gupta @ 2016-08-17 20:00 UTC (permalink / raw)
  To: Arnaldo Carvalho de Melo
  Cc: linux-kernel, linux-snps-arc, osh Poimboeuf, Vineet Gupta,
	Adrian Hunter, Alexey Brodkin, David Ahern, Jiri Olsa,
	Namhyung Kim, Wang Nan, Petri Gynther, Peter Zijlstra

perf tools build in recent kernels spews splat when cross compiling with uClibc

|   CC       util/alias.o
| In file included from tools/perf/util/../ui/../util/cache.h:8:0,
|                 from tools/perf/util/../ui/helpline.h:7,
|                 from tools/perf/util/debug.h:8,
|                 from arch/../util/cpumap.h:9,
|                 from arch/../util/env.h:5,
|                 from arch/common.h:4,
|                 from arch/common.c:3:
| tools/include/linux/string.h:12:15: warning: redundant redeclaration of ‘strlcpy’ [-Wredundant-decls]
|  extern size_t strlcpy(char *dest, const char *src, size_t size);
               ^
This is after commit 61a6445e463a31 ("tools lib: Guard the strlcpy() header with
__GLIBC__"). While the commit was right in theory, issue is uClibc also
defines __GLIBC__ for application headers.

Instead of reverting the commit, manually revert with some addeed commentary to
same effect.

Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Wang Nan <wangnan0@huawei.com>
Cc: Petri Gynther <pgynther@google.com>
Cc: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
---
 tools/include/linux/string.h | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/tools/include/linux/string.h b/tools/include/linux/string.h
index b96879477311..5a9e30334ffa 100644
--- a/tools/include/linux/string.h
+++ b/tools/include/linux/string.h
@@ -8,7 +8,12 @@ void *memdup(const void *src, size_t len);
 
 int strtobool(const char *s, bool *res);
 
-#ifdef __GLIBC__
+/*
+ * Ideally instead of blacklisting libs which define this already (uclibc,
+ * musl..), we could whitelist libs which reuire it (glibc). However uClibc
+ * also defines __GLIBC__ for user application headers
+ */
+#ifndef __UCLIBC__
 extern size_t strlcpy(char *dest, const char *src, size_t size);
 #endif
 
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2016-08-22 18:09 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-17 20:00 [PATCH] tools lib: Reinstate strlcpy() header guard with __UCLIBC__ Vineet Gupta
2016-08-18 14:07 ` Arnaldo Carvalho de Melo
2016-08-18 16:03   ` Vineet Gupta
2016-08-18 16:17     ` Arnaldo Carvalho de Melo
2016-08-19 14:22     ` Arnaldo Carvalho de Melo
2016-08-19 18:01       ` Vineet Gupta
2016-08-19 19:23         ` Arnaldo Carvalho de Melo
2016-08-19 20:09           ` Vineet Gupta
2016-08-19 21:10           ` Arnaldo Carvalho de Melo
2016-08-19 21:27             ` Vineet Gupta
2016-08-19 21:42               ` Arnaldo Carvalho de Melo
2016-08-19 23:02                 ` Arnaldo Carvalho de Melo
2016-08-22 18:01                   ` Alexey Brodkin
2016-08-22 18:08                     ` Arnaldo Carvalho de Melo
2016-08-18 16:28   ` [PATCH v2] " Vineet Gupta

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox