[OE-core] [PATCH 08/19] bison: Fix for gets being removed from eglibc 2.16

Khem Raj raj.khem at gmail.com
Sat Jul 28 18:45:41 UTC 2012


On Sat, Jul 28, 2012 at 3:40 AM, Jack Mitchell <ml at communistcode.co.uk> wrote:
> On 08/07/2012 17:10, Khem Raj wrote:
>>
>> Signed-off-by: Khem Raj <raj.khem at gmail.com>
>> ---
>>   .../recipes-devtools/bison/bison/remove-gets.patch |   20
>> ++++++++++++++++++++
>>   meta/recipes-devtools/bison/bison_2.5.bb           |    6 ++++--
>>   2 files changed, 24 insertions(+), 2 deletions(-)
>>   create mode 100644 meta/recipes-devtools/bison/bison/remove-gets.patch
>>
>> diff --git a/meta/recipes-devtools/bison/bison/remove-gets.patch
>> b/meta/recipes-devtools/bison/bison/remove-gets.patch
>> new file mode 100644
>> index 0000000..2dfa00f
>> --- /dev/null
>> +++ b/meta/recipes-devtools/bison/bison/remove-gets.patch
>> @@ -0,0 +1,20 @@
>> +gets has been removed from eglibc 2.16
>> +
>> +Signed-off-by: Khem Raj <raj.khem at gmail.com>
>> +
>> +Upstream-Status: Pending
>> +Index: bison-2.5/lib/stdio.in.h
>> +===================================================================
>> +--- bison-2.5.orig/lib/stdio.in.h      2012-07-04 09:09:48.336532195
>> -0700
>> ++++ bison-2.5/lib/stdio.in.h   2012-07-04 09:10:22.868533884 -0700
>> +@@ -180,8 +180,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@
>> diff --git a/meta/recipes-devtools/bison/bison_2.5.bb
>> b/meta/recipes-devtools/bison/bison_2.5.bb
>> index fc3bb6d..687f06a 100644
>> --- a/meta/recipes-devtools/bison/bison_2.5.bb
>> +++ b/meta/recipes-devtools/bison/bison_2.5.bb
>> @@ -9,14 +9,16 @@ LIC_FILES_CHKSUM =
>> "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
>>   SECTION = "devel"
>>   DEPENDS = "bison-native flex-native"
>>   -PR = "r1"
>> +PR = "r2"
>>     BASE_SRC_URI = "${GNU_MIRROR}/bison/bison-${PV}.tar.gz \
>>            file://m4.patch \
>>           "
>>     SRC_URI = "${BASE_SRC_URI} \
>> -        file://fix_cross_manpage_building.patch "
>> +           file://fix_cross_manpage_building.patch \
>> +           file://remove-gets.patch \
>> +          "
>>     SRC_URI[md5sum] = "687e1dcd29452789d34eaeea4c25abe4"
>>   SRC_URI[sha256sum] =
>> "722def46e4a19a5b7a579ef30db1965f86c37c1a20a5f0113743a2e4399f7c99"
>
>
> Hi Khem,
>
> This patch doesn't fix the Bison gets issue for me, I had to create a patch
> that removed the line altogether to get it to compile successfully. Even
> though gets isn't present on my system it still matches the #if defined gets
> and tries to #undef gets which results in an error.
>
> However, I don't think removing the line altogether is the correct fix for
> the global userbase...
>

send me the preprocessed output.

> Regards,
> Jack.
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core




More information about the Openembedded-core mailing list