[LEDE-DEV] [PATCH] fix uClibc-ng scanf check
Alexey Brodkin
Alexey.Brodkin at synopsys.com
Fri Jun 3 08:36:34 PDT 2016
Hi Waldemar,
On Fri, 2016-06-03 at 17:16 +0200, Waldemar Brodkorb wrote:
> Hi Alexey,
> Alexey Brodkin wrote,
>
> >
> > Hi Waldemar,
> >
> > On Fri, 2016-06-03 at 04:23 +0200, Waldemar Brodkorb wrote:
> > >
> > > uClibc-ng tries to be compatible with GNU libc and defines
> > > __GLIBC__ and pretend to be version 2.2.
> > > We once changed it to 2.10, but then some hard to fix problems
> > > in different software packages (gcc) occured.
> > > It would be better if we disable the special GNU libc checks
> > > for uClibc-ng here. uClibc-ng implements the required scanf
> > > functionality.
> > >
> > > Signed-off-by: Waldemar Brodkorb <wbx at uclibc-ng.org>
> > > ---
> > > configure.ac | 2 +-
> > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/configure.ac b/configure.ac
> > > index f36b18c..4661c0d 100644
> > > --- a/configure.ac
> > > +++ b/configure.ac
> > > @@ -581,7 +581,7 @@ AC_CACHE_VAL([scanf_cv_alloc_modifier],
> > > #include <stdio.h>
> > > #include <unistd.h>
> > >
> > > - #ifdef __GLIBC__
> > > + #if defined(__GLIBC__) && !defined(__UCLIBC__)
> > >
> > > #if !(__GLIBC_PREREQ(2, 7))
> > > #error %m is not available
> > Even though this is a very minor and clean change I don't like this
> > approach. We're again implicitly assume something.
> >
> > IMHO much better approach would be to include a compile test for
> > small source that uses scanf() with "%as"/"%ms".
> >
> > That way we may remove all dependencies on either GLIBC/UCLIBC/MUSL etc.
> Just for completeness, I saw your other mail already.
> Musl has no problem with this code, because it is util-linux
> fallback code for old GNU libc. Unfortunately it matches the
> pretended version from uClibc-ng. So I think it is the right
> solution, if the fallback code will not be removed.
Thanks for explanation.
-Alexey
More information about the Lede-dev
mailing list