[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v13 1/8] meson.build: Fix docker-test-build@alpine when inclu
From: |
Daniel P . Berrangé |
Subject: |
Re: [PATCH v13 1/8] meson.build: Fix docker-test-build@alpine when including linux/errqueue.h |
Date: |
Mon, 16 May 2022 12:17:34 +0100 |
User-agent: |
Mutt/2.2.1 (2022-02-19) |
On Mon, May 16, 2022 at 12:13:16PM +0100, Dr. David Alan Gilbert wrote:
> * Leonardo Bras (leobras@redhat.com) wrote:
> > A build error happens in alpine CI when linux/errqueue.h is included
> > in io/channel-socket.c, due to redefining of 'struct __kernel_timespec':
>
> OK, looks to be same mechanism as other meson tests.
>
> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
As of about an hour or so ago, this patch should not be required.
https://gitlab.alpinelinux.org/alpine/aports/-/issues/13813
>
> > ===
> > ninja: job failed: [...]
> > In file included from /usr/include/linux/errqueue.h:6,
> > from ../io/channel-socket.c:29:
> > /usr/include/linux/time_types.h:7:8: error: redefinition of 'struct
> > __kernel_timespec'
> > 7 | struct __kernel_timespec {
> > | ^~~~~~~~~~~~~~~~~
> > In file included from /usr/include/liburing.h:19,
> > from /builds/user/qemu/include/block/aio.h:18,
> > from /builds/user/qemu/include/io/channel.h:26,
> > from /builds/user/qemu/include/io/channel-socket.h:24,
> > from ../io/channel-socket.c:24:
> > /usr/include/liburing/compat.h:9:8: note: originally defined here
> > 9 | struct __kernel_timespec {
> > | ^~~~~~~~~~~~~~~~~
> > ninja: subcommand failed
> > ===
> >
> > As above error message suggests, 'struct __kernel_timespec' was already
> > defined by liburing/compat.h.
> >
> > Fix alpine CI by adding test to disable liburing in configure step if a
> > redefinition happens between linux/errqueue.h and liburing/compat.h.
> >
> > Signed-off-by: Leonardo Bras <leobras@redhat.com>
> > ---
> > meson.build | 11 +++++++++++
> > 1 file changed, 11 insertions(+)
> >
> > diff --git a/meson.build b/meson.build
> > index 9b20dcd143..a996690c9b 100644
> > --- a/meson.build
> > +++ b/meson.build
> > @@ -515,12 +515,23 @@ if not get_option('linux_aio').auto() or have_block
> > required: get_option('linux_aio'),
> > kwargs: static_kwargs)
> > endif
> > +
> > +linux_io_uring_test = '''
> > + #include <liburing.h>
> > + #include <linux/errqueue.h>
> > +
> > + int main(void) { return 0; }'''
> > +
> > linux_io_uring = not_found
> > if not get_option('linux_io_uring').auto() or have_block
> > linux_io_uring = dependency('liburing', version: '>=0.3',
> > required: get_option('linux_io_uring'),
> > method: 'pkg-config', kwargs: static_kwargs)
> > + if not cc.links(linux_io_uring_test)
> > + linux_io_uring = not_found
> > + endif
> > endif
> > +
> > libnfs = not_found
> > if not get_option('libnfs').auto() or have_block
> > libnfs = dependency('libnfs', version: '>=1.9.3',
> > --
> > 2.36.1
> >
> >
> --
> Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
>
With regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
[PATCH v13 2/8] QIOChannel: Add flags on io_writev and introduce io_flush callback, Leonardo Bras, 2022/05/13
[PATCH v13 3/8] QIOChannelSocket: Implement io_writev zero copy flag & io_flush for CONFIG_LINUX, Leonardo Bras, 2022/05/13
[PATCH v13 4/8] migration: Add zero-copy-send parameter for QMP/HMP for Linux, Leonardo Bras, 2022/05/13
[PATCH v13 5/8] migration: Add migrate_use_tls() helper, Leonardo Bras, 2022/05/13
[PATCH v13 7/8] multifd: Send header packet without flags if zero-copy-send is enabled, Leonardo Bras, 2022/05/13
[PATCH v13 8/8] multifd: Implement zero copy write in multifd migration (multifd-zero-copy), Leonardo Bras, 2022/05/13