Em Wed, 11 Jul 2018 10:22:51 -0300 Ezequiel Garcia <ezequiel@xxxxxxxxxxxxx> escreveu: > From: Peter Korsgaard <jacmet@xxxxxxxxxx> > > Ensure that the lfs variants are not transparently used instead of the !lfs > ones so both can be wrapped, independently of any custom CFLAGS/CPPFLAGS. > > Without this patch, the following assembler errors appear > during cross-compiling with Buildroot: > > /tmp/ccc3gdJg.s: Assembler messages: > /tmp/ccc3gdJg.s:67: Error: symbol `open64' is already defined > /tmp/ccc3gdJg.s:130: Error: symbol `mmap64' is already defined > > Signed-off-by: Peter Korsgaard <jacmet@xxxxxxxxxx> > Signed-off-by: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxx> > --- > lib/libv4l1/v4l1compat.c | 3 +++ > lib/libv4l2/v4l2convert.c | 3 +++ > 2 files changed, 6 insertions(+) > > diff --git a/lib/libv4l1/v4l1compat.c b/lib/libv4l1/v4l1compat.c > index cb79629ff88f..e5c9e56261e2 100644 > --- a/lib/libv4l1/v4l1compat.c > +++ b/lib/libv4l1/v4l1compat.c > @@ -19,6 +19,9 @@ > # Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA > */ > > +/* ensure we see *64 variants and they aren't transparently used */ > +#undef _LARGEFILE_SOURCE > +#undef _FILE_OFFSET_BITS Hmm... shouldn't this be autodetected? I didn't check anything, but I would be expecting that different distros (and BSD) may be doing different things here, specially if they use different gcc versions or even different libc implementations. > #define _LARGEFILE64_SOURCE 1 > > #include <config.h> > diff --git a/lib/libv4l2/v4l2convert.c b/lib/libv4l2/v4l2convert.c > index 7c9a04c086ed..13ca4cfb1b08 100644 > --- a/lib/libv4l2/v4l2convert.c > +++ b/lib/libv4l2/v4l2convert.c > @@ -23,6 +23,9 @@ > /* prevent GCC 4.7 inlining error */ > #undef _FORTIFY_SOURCE > > +/* ensure we see *64 variants and they aren't transparently used */ > +#undef _LARGEFILE_SOURCE > +#undef _FILE_OFFSET_BITS > #define _LARGEFILE64_SOURCE 1 > > #ifdef ANDROID Thanks, Mauro