shishi-1.0.1 fails to build with glibc-2.16.0 with: [...] In file included from md4.h:23:0, from md4.c:25: ./stdio.h:1030:1: error: 'gets' undeclared here (not in a function)
gets is required by C89, deprecated in C99 and was removed in C11. The attached patch works for me and is similar to what gnulib does [1] -- Eray Aslan <e...@gentoo.org> [1] http://lists.gnu.org/archive/html/bug-gnulib/2012-03/msg00186.html
>From 50eb0a03e7109e3a772bcb9fb6ff5af2649fd3e1 Mon Sep 17 00:00:00 2001 From: Eray Aslan <eray.as...@caf.com.tr> Date: Tue, 9 Oct 2012 08:27:57 +0000 Subject: [PATCH] Fix build failure with glibc-2.16.0. gets is removed in C11 Signed-off-by: Eray Aslan <eray.as...@caf.com.tr> --- gl/stdio.in.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gl/stdio.in.h b/gl/stdio.in.h index 06d9780..fa04a10 100644 --- a/gl/stdio.in.h +++ b/gl/stdio.in.h @@ -713,10 +713,13 @@ _GL_CXXALIAS_SYS (gets, char *, (char *s)); # endif _GL_CXXALIASWARN (gets); /* It is very rare that the developer ever has full control of stdin, - so any use of gets warrants an unconditional warning. Assume it is - always declared, since it is required by C89. */ + so any use of gets warrants an unconditional warning; besides C11 + removed it. */ +#ifdef gets +#undef gets _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); #endif +#endif #if @GNULIB_OBSTACK_PRINTF@ || @GNULIB_OBSTACK_PRINTF_POSIX@ -- 1.7.12
_______________________________________________ Help-shishi mailing list Help-shishi@gnu.org https://lists.gnu.org/mailman/listinfo/help-shishi