On 28/07/2012 19:45, Khem Raj wrote: > On Sat, Jul 28, 2012 at 3:40 AM, Jack Mitchell wrote: >> On 08/07/2012 17:10, Khem Raj wrote: >>> >>> Signed-off-by: Khem Raj >>> --- >>> .../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 >>> + >>> +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. I'm not sure quite what you mean by pre-processed output but here is my do_compile log which is where it fails. Attached(1) Regards, Jack > > >> Regards, >> Jack. >> >> _______________________________________________ >> Openembedded-core mailing list >> Openembedded-core@lists.openembedded.org >> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core