On Tue, 2017-03-28 at 18:57 +0000, Serhii Popovych wrote: > While glibc states that 2.6.32 kernels still supported > for x86 / x86_64 builds are failing due to out of date > LIBC_LINUX_VERSION macro checks for such architectures. > > This macro statically defined to 3.2.0 with commit 5b4ecd3 > (Require Linux 3.2 except on x86 / x86_64, 3.2 headers everywhere.) > and additionally checked before --enable-kernel. > > Since both --enable-kernel and LIBC_LINUX_VERSION checks > are the same and there is no users of last one we can > safely get rid of it enabling glibc builds with 2.6.32 > kernel headers. > > Also add --enable-kernel to glibc-initial build so that we > build it correctly with old headers. > > Cc: XE-Linux <xe-linux-exter...@cisco.com> > Signed-off-by: Serhii Popovych <spopo...@cisco.com> > --- > meta/recipes-core/glibc/glibc-initial.inc | 1 + > .../glibc/0028-Kill-LIBC_LINUX_VERSION-macro.patch | 113 > +++++++++++++++++++++ > meta/recipes-core/glibc/glibc_2.25.bb | 1 + > 3 files changed, 115 insertions(+) > create mode 100644 meta/recipes-core/glibc/glibc/0028-Kill- > LIBC_LINUX_VERSION-macro.patch > > diff --git a/meta/recipes-core/glibc/glibc-initial.inc > b/meta/recipes-core/glibc/glibc-initial.inc > index f94603c..60b25dd 100644 > --- a/meta/recipes-core/glibc/glibc-initial.inc > +++ b/meta/recipes-core/glibc/glibc-initial.inc > @@ -12,6 +12,7 @@ do_configure () { > find ${S} -name "configure" | xargs touch > cfgscript=`python3 -c "import os; > print(os.path.relpath('${S}', '.'))"`/configure > $cfgscript --host=${TARGET_SYS} --build=${BUILD_SYS} \ > + --enable-kernel=${OLDEST_KERNEL} \ > --prefix=/usr \ > --without-cvs --disable-sanity-checks \ > --with-headers=${STAGING_DIR_TARGET}${includedir} \ > diff --git a/meta/recipes-core/glibc/glibc/0028-Kill- > LIBC_LINUX_VERSION-macro.patch b/meta/recipes-core/glibc/glibc/0028- > Kill-LIBC_LINUX_VERSION-macro.patch > new file mode 100644 > index 0000000..f5eaf1c > --- /dev/null > +++ b/meta/recipes-core/glibc/glibc/0028-Kill-LIBC_LINUX_VERSION- > macro.patch > @@ -0,0 +1,113 @@ > +From 88f83e4b5a8929dac9095ed264700fcb62d5e4dd Mon Sep 17 00:00:00 > 2001 > +From: Serhii Popovych <spopo...@cisco.com> > +Date: Fri, 17 Mar 2017 15:48:34 +0000 > +Subject: Kill LIBC_LINUX_VERSION macro > + > +After commit 5b4ecd3 (Require Linux 3.2 except on x86 / x86_64, > +3.2 headers everywhere.) minimal kernel version raised from > +2.6.32 to 3.2.0 for all architectures except x86 and x86_64 > +unless newer already used for architecture. > + > +However LIBC_LINUX_VERSION macro still is in effect and fails > +configure even with --enable-kernel=2.6.32. > + > +While it is present in configure.ac it does not affect anything > +except LINUX_VERSION_CODE check which already performed by > +--enable-kernel. > + > +Upstream-Status: Pending > +Signed-off-by: Serhii Popovych <spopo...@cisco.com> > +--- > + sysdeps/unix/sysv/linux/configure | 39 ----------------------- > ------------- > + sysdeps/unix/sysv/linux/configure.ac | 21 ------------------- > + 2 files changed, 60 deletions(-) > + > +diff --git a/sysdeps/unix/sysv/linux/configure > b/sysdeps/unix/sysv/linux/configure
This is presumably a generated file. We should only patch configure.ac as otherwise the potential timestamp differences between these can cause problems (we've been burnt before). The configure version will get updated when we reautoconf. Cheers, Richard -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core