eglibc 2.16 has removed gets so we need to check for it being there before using it. From glibc stdio.h The function has been officially removed in ISO C11. This opportunity is used to also remove it from the GNU feature list. It is now only available when explicitly using an old ISO C, Unix, or POSIX standard. Signed-off-by: Khem Raj Upstream-Status: Pending Index: gettext-0.18.1.1/gettext-runtime/gnulib-lib/stdio.in.h =================================================================== --- gettext-0.18.1.1.orig/gettext-runtime/gnulib-lib/stdio.in.h 2010-05-17 12:56:12.000000000 -0700 +++ gettext-0.18.1.1/gettext-runtime/gnulib-lib/stdio.in.h 2012-07-02 22:42:21.292223316 -0700 @@ -140,8 +140,10 @@ /* 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. */ +#if defined gets #undef gets _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); +#endif #if @GNULIB_FOPEN@ # if @REPLACE_FOPEN@ Index: gettext-0.18.1.1/gettext-tools/gnulib-lib/stdio.in.h =================================================================== --- gettext-0.18.1.1.orig/gettext-tools/gnulib-lib/stdio.in.h 2010-05-24 02:42:46.000000000 -0700 +++ gettext-0.18.1.1/gettext-tools/gnulib-lib/stdio.in.h 2012-07-02 23:02:33.476281979 -0700 @@ -140,8 +140,10 @@ /* 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. */ +#if defined gets #undef gets _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); +#endif #if @GNULIB_FOPEN@ # if @REPLACE_FOPEN@ Index: gettext-0.18.1.1/gettext-tools/libgettextpo/stdio.in.h =================================================================== --- gettext-0.18.1.1.orig/gettext-tools/libgettextpo/stdio.in.h 2010-05-17 12:58:03.000000000 -0700 +++ gettext-0.18.1.1/gettext-tools/libgettextpo/stdio.in.h 2012-07-02 23:01:57.440280253 -0700 @@ -140,8 +140,10 @@ /* 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. */ +#if defined gets #undef gets _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); +#endif #if @GNULIB_FOPEN@ # if @REPLACE_FOPEN@