On 11/14/18 5:23 AM, Raphael Kubo da Costa wrote: > From: Khem Raj <raj.k...@gmail.com> > > exposed by glibc 2.28 for details see > https://lists.gnu.org/r/bug-gnulib/2018-03/msg00000.html > > (From OE-Core rev: acca7f964bf9c21f3777085563a7928b8246f17f) > > Signed-off-by: Khem Raj <raj.k...@gmail.com> > Signed-off-by: Richard Purdie <richard.pur...@linuxfoundation.org> > Signed-off-by: Raphael Kubo da Costa <raphael.kubo.da.co...@intel.com>
in in stable/rocko-nmut. Odd thing it, this is not in patchwork but the sumo version is. Thanks, Armin > --- > meta/recipes-devtools/m4/m4-1.4.18.inc | 1 + > .../m4-1.4.18-glibc-change-work-around.patch | 129 ++++++++++++++++++ > 2 files changed, 130 insertions(+) > create mode 100644 > meta/recipes-devtools/m4/m4/m4-1.4.18-glibc-change-work-around.patch > > diff --git a/meta/recipes-devtools/m4/m4-1.4.18.inc > b/meta/recipes-devtools/m4/m4-1.4.18.inc > index d7c8648577..1bce097c60 100644 > --- a/meta/recipes-devtools/m4/m4-1.4.18.inc > +++ b/meta/recipes-devtools/m4/m4-1.4.18.inc > @@ -9,6 +9,7 @@ LIC_FILES_CHKSUM = > "file://COPYING;md5=d32239bcb673463ab874e80d47fae504\ > > SRC_URI += "file://ac_config_links.patch \ > file://remove-gets.patch \ > + file://m4-1.4.18-glibc-change-work-around.patch \ > " > > SRC_URI_append_class-target = "\ > diff --git > a/meta/recipes-devtools/m4/m4/m4-1.4.18-glibc-change-work-around.patch > b/meta/recipes-devtools/m4/m4/m4-1.4.18-glibc-change-work-around.patch > new file mode 100644 > index 0000000000..72e7ae2080 > --- /dev/null > +++ b/meta/recipes-devtools/m4/m4/m4-1.4.18-glibc-change-work-around.patch > @@ -0,0 +1,129 @@ > +update for glibc libio.h removal in 2.28+ > + > +see > +https://src.fedoraproject.org/rpms/m4/c/814d592134fad36df757f9a61422d164ea2c6c9b?branch=master > + > +Upstream-Status: Pending > +Signed-off-by: Khem Raj <raj.k...@gmail.com> > +Index: m4-1.4.18/lib/fflush.c > +=================================================================== > +--- m4-1.4.18.orig/lib/fflush.c > ++++ m4-1.4.18/lib/fflush.c > +@@ -33,7 +33,7 @@ > + #undef fflush > + > + > +-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, > Haiku, Linux libc5 */ > ++#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, > Linux libc5 */ > + > + /* Clear the stream's ungetc buffer, preserving the value of ftello (fp). > */ > + static void > +@@ -72,7 +72,7 @@ clear_ungetc_buffer (FILE *fp) > + > + #endif > + > +-#if ! (defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, > Haiku, Linux libc5 */) > ++#if ! (defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, > Haiku, Linux libc5 */) > + > + # if (defined __sferror || defined __DragonFly__ || defined __ANDROID__) && > defined __SNPT > + /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Android */ > +@@ -148,7 +148,7 @@ rpl_fflush (FILE *stream) > + if (stream == NULL || ! freading (stream)) > + return fflush (stream); > + > +-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, > Haiku, Linux libc5 */ > ++#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, > Linux libc5 */ > + > + clear_ungetc_buffer_preserving_position (stream); > + > +Index: m4-1.4.18/lib/fpending.c > +=================================================================== > +--- m4-1.4.18.orig/lib/fpending.c > ++++ m4-1.4.18/lib/fpending.c > +@@ -32,7 +32,7 @@ __fpending (FILE *fp) > + /* Most systems provide FILE as a struct and the necessary bitmask in > + <stdio.h>, because they need it for implementing getc() and putc() as > + fast macros. */ > +-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, > Haiku, Linux libc5 */ > ++#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, > Linux libc5 */ > + return fp->_IO_write_ptr - fp->_IO_write_base; > + #elif defined __sferror || defined __DragonFly__ || defined __ANDROID__ > + /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Android */ > +Index: m4-1.4.18/lib/fpurge.c > +=================================================================== > +--- m4-1.4.18.orig/lib/fpurge.c > ++++ m4-1.4.18/lib/fpurge.c > +@@ -62,7 +62,7 @@ fpurge (FILE *fp) > + /* Most systems provide FILE as a struct and the necessary bitmask in > + <stdio.h>, because they need it for implementing getc() and putc() as > + fast macros. */ > +-# if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, > Haiku, Linux libc5 */ > ++# if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, > Linux libc5 */ > + fp->_IO_read_end = fp->_IO_read_ptr; > + fp->_IO_write_ptr = fp->_IO_write_base; > + /* Avoid memory leak when there is an active ungetc buffer. */ > +Index: m4-1.4.18/lib/freadahead.c > +=================================================================== > +--- m4-1.4.18.orig/lib/freadahead.c > ++++ m4-1.4.18/lib/freadahead.c > +@@ -25,7 +25,7 @@ > + size_t > + freadahead (FILE *fp) > + { > +-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, > Haiku, Linux libc5 */ > ++#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, > Linux libc5 */ > + if (fp->_IO_write_ptr > fp->_IO_write_base) > + return 0; > + return (fp->_IO_read_end - fp->_IO_read_ptr) > +Index: m4-1.4.18/lib/freading.c > +=================================================================== > +--- m4-1.4.18.orig/lib/freading.c > ++++ m4-1.4.18/lib/freading.c > +@@ -31,7 +31,7 @@ freading (FILE *fp) > + /* Most systems provide FILE as a struct and the necessary bitmask in > + <stdio.h>, because they need it for implementing getc() and putc() as > + fast macros. */ > +-# if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, > Haiku, Linux libc5 */ > ++# if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, > Linux libc5 */ > + return ((fp->_flags & _IO_NO_WRITES) != 0 > + || ((fp->_flags & (_IO_NO_READS | _IO_CURRENTLY_PUTTING)) == 0 > + && fp->_IO_read_base != NULL)); > +Index: m4-1.4.18/lib/fseeko.c > +=================================================================== > +--- m4-1.4.18.orig/lib/fseeko.c > ++++ m4-1.4.18/lib/fseeko.c > +@@ -47,7 +47,7 @@ fseeko (FILE *fp, off_t offset, int when > + #endif > + > + /* These tests are based on fpurge.c. */ > +-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, > Haiku, Linux libc5 */ > ++#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, > Linux libc5 */ > + if (fp->_IO_read_end == fp->_IO_read_ptr > + && fp->_IO_write_ptr == fp->_IO_write_base > + && fp->_IO_save_base == NULL) > +@@ -123,7 +123,7 @@ fseeko (FILE *fp, off_t offset, int when > + return -1; > + } > + > +-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, > Haiku, Linux libc5 */ > ++#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, > Linux libc5 */ > + fp->_flags &= ~_IO_EOF_SEEN; > + fp->_offset = pos; > + #elif defined __sferror || defined __DragonFly__ || defined __ANDROID__ > +Index: m4-1.4.18/lib/stdio-impl.h > +=================================================================== > +--- m4-1.4.18.orig/lib/stdio-impl.h > ++++ m4-1.4.18/lib/stdio-impl.h > +@@ -18,6 +18,12 @@ > + the same implementation of stdio extension API, except that some fields > + have different naming conventions, or their access requires some casts. > */ > + > ++/* Glibc 2.28 made _IO_IN_BACKUP private. For now, work around this > ++ problem by defining it ourselves. FIXME: Do not rely on glibc > ++ internals. */ > ++#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN > ++# define _IO_IN_BACKUP 0x100 > ++#endif > + > + /* BSD stdio derived implementations. */ > + -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core