Message ID | 20220310005048.37403-1-joe.slater@windriver.com |
---|---|
State | New |
Headers | show |
Series | [1/1] libvert: modify dependencies on lxc_protocol.h | expand |
Oops, wrong list. Joe > -----Original Message----- > From: Slater, Joseph <joe.slater@windriver.com> > Sent: Wednesday, March 9, 2022 4:51 PM > To: openembedded-core@lists.openembedded.org > Cc: Slater, Joseph <joe.slater@windriver.com>; MacLeod, Randy > <Randy.MacLeod@windriver.com> > Subject: [oe-core][PATCH 1/1] libvert: modify dependencies on lxc_protocol.h > > src/remote/meson.build does not create a dependency on the generated > lxc_protocol.h for remote_daemon.c. Restructure how this file is generated to > allow the dependency. > > Signed-off-by: Joe Slater <joe.slater@windriver.com> > --- > .../libvirt/libvirt/lxc_protocol.patch | 104 ++++++++++++++++++ > recipes-extended/libvirt/libvirt_7.2.0.bb | 1 + > 2 files changed, 105 insertions(+) > create mode 100644 recipes-extended/libvirt/libvirt/lxc_protocol.patch > > diff --git a/recipes-extended/libvirt/libvirt/lxc_protocol.patch b/recipes- > extended/libvirt/libvirt/lxc_protocol.patch > new file mode 100644 > index 00000000..595c3fe4 > --- /dev/null > +++ b/recipes-extended/libvirt/libvirt/lxc_protocol.patch > @@ -0,0 +1,104 @@ > +From 38af66c1a9c4cdeb256eeaf563c6807757c370ce Mon Sep 17 00:00:00 > 2001 > +From: Joe Slater <joe.slater@windriver.com> > +Date: Wed, 9 Mar 2022 23:17:33 +0000 > +Subject: [PATCH] working commit > + > +remote_daemon.c and others need the generated header lxc_protocol.h, > +but do not have it as a dependency in meson.build. This means that > +builds will randomly (ok, very occasionally) fail. Restructure how the > +header is built so that remote_daemon can have it as a dependency. > + > +Upstream-Status: Pending > + > +Signed-off-by: Joe Slater <joe.slater@windriver.com> > + > +--- > + src/remote/meson.build | 48 ++++++++++++++++++++++++------------------ > + 1 file changed, 28 insertions(+), 20 deletions(-) > + > +diff --git a/src/remote/meson.build b/src/remote/meson.build index > +0a18826..31a30ee 100644 > +--- a/src/remote/meson.build > ++++ b/src/remote/meson.build > +@@ -1,27 +1,11 @@ > +-remote_driver_sources = [ > +- 'remote_driver.c', > +- 'remote_sockets.c', > +-] > +- > +-remote_driver_generated = [] > ++remote_xxx_generated = [] > + > + foreach name : [ 'remote', 'qemu', 'lxc' ] > +- client_bodies_h = '@0@_client_bodies.h'.format(name) > + protocol_c = '@0@_protocol.c'.format(name) > + protocol_h = '@0@_protocol.h'.format(name) > + protocol_x = '@0@_protocol.x'.format(name) > + > +- remote_driver_generated += custom_target( > +- client_bodies_h, > +- input: protocol_x, > +- output: client_bodies_h, > +- command: [ > +- gendispatch_prog, '--mode=client', name, name.to_upper(), '@INPUT@', > +- ], > +- capture: true, > +- ) > +- > +- remote_driver_generated += custom_target( > ++ remote_xxx_generated += custom_target( > + protocol_h, > + input: protocol_x, > + output: protocol_h, > +@@ -30,7 +14,7 @@ foreach name : [ 'remote', 'qemu', 'lxc' ] > + ], > + ) > + > +- remote_driver_generated += custom_target( > ++ remote_xxx_generated += custom_target( > + protocol_c, > + input: protocol_x, > + output: protocol_c, > +@@ -42,6 +26,30 @@ foreach name : [ 'remote', 'qemu', 'lxc' ] > + rpc_probe_files += files(protocol_x) endforeach > + > ++ > ++remote_driver_sources = [ > ++ 'remote_driver.c', > ++ 'remote_sockets.c', > ++] > ++ > ++remote_driver_generated =remote_xxx_generated > ++ > ++foreach name : [ 'remote', 'qemu', 'lxc' ] > ++ client_bodies_h = '@0@_client_bodies.h'.format(name) > ++ protocol_x = '@0@_protocol.x'.format(name) > ++ > ++ remote_driver_generated += custom_target( > ++ client_bodies_h, > ++ input: protocol_x, > ++ output: client_bodies_h, > ++ command: [ > ++ gendispatch_prog, '--mode=client', name, name.to_upper(), '@INPUT@', > ++ ], > ++ capture: true, > ++ ) > ++ > ++endforeach > ++ > + remote_daemon_sources = files( > + 'remote_daemon.c', > + 'remote_daemon_config.c', > +@@ -49,7 +57,7 @@ remote_daemon_sources = files( > + 'remote_daemon_stream.c', > + ) > + > +-remote_daemon_generated = [] > ++remote_daemon_generated = remote_xxx_generated > + > + virt_ssh_helper_sources = files( > + 'remote_sockets.c', > +-- > +2.32.0 > + > diff --git a/recipes-extended/libvirt/libvirt_7.2.0.bb b/recipes- > extended/libvirt/libvirt_7.2.0.bb > index 5ad7d59e..04c66eb5 100644 > --- a/recipes-extended/libvirt/libvirt_7.2.0.bb > +++ b/recipes-extended/libvirt/libvirt_7.2.0.bb > @@ -31,6 +31,7 @@ SRC_URI = "http://libvirt.org/sources/libvirt- > ${PV}.tar.xz;name=libvirt \ > file://0002-meson-Fix-compatibility-with-Meson-0.58.patch \ > file://0001-security-fix-SELinux-label-generation-logic.patch \ > file://0001-storage_driver-Unlock-object-on-ACL-fail-in-storageP.patch \ > + file://lxc_protocol.patch \ > " > > SRC_URI[libvirt.md5sum] = "92044b629216e44adce63224970a54a3" > -- > 2.35.1
diff --git a/recipes-extended/libvirt/libvirt/lxc_protocol.patch b/recipes-extended/libvirt/libvirt/lxc_protocol.patch new file mode 100644 index 00000000..595c3fe4 --- /dev/null +++ b/recipes-extended/libvirt/libvirt/lxc_protocol.patch @@ -0,0 +1,104 @@ +From 38af66c1a9c4cdeb256eeaf563c6807757c370ce Mon Sep 17 00:00:00 2001 +From: Joe Slater <joe.slater@windriver.com> +Date: Wed, 9 Mar 2022 23:17:33 +0000 +Subject: [PATCH] working commit + +remote_daemon.c and others need the generated header lxc_protocol.h, +but do not have it as a dependency in meson.build. This means that +builds will randomly (ok, very occasionally) fail. Restructure how the +header is built so that remote_daemon can have it as a dependency. + +Upstream-Status: Pending + +Signed-off-by: Joe Slater <joe.slater@windriver.com> + +--- + src/remote/meson.build | 48 ++++++++++++++++++++++++------------------ + 1 file changed, 28 insertions(+), 20 deletions(-) + +diff --git a/src/remote/meson.build b/src/remote/meson.build +index 0a18826..31a30ee 100644 +--- a/src/remote/meson.build ++++ b/src/remote/meson.build +@@ -1,27 +1,11 @@ +-remote_driver_sources = [ +- 'remote_driver.c', +- 'remote_sockets.c', +-] +- +-remote_driver_generated = [] ++remote_xxx_generated = [] + + foreach name : [ 'remote', 'qemu', 'lxc' ] +- client_bodies_h = '@0@_client_bodies.h'.format(name) + protocol_c = '@0@_protocol.c'.format(name) + protocol_h = '@0@_protocol.h'.format(name) + protocol_x = '@0@_protocol.x'.format(name) + +- remote_driver_generated += custom_target( +- client_bodies_h, +- input: protocol_x, +- output: client_bodies_h, +- command: [ +- gendispatch_prog, '--mode=client', name, name.to_upper(), '@INPUT@', +- ], +- capture: true, +- ) +- +- remote_driver_generated += custom_target( ++ remote_xxx_generated += custom_target( + protocol_h, + input: protocol_x, + output: protocol_h, +@@ -30,7 +14,7 @@ foreach name : [ 'remote', 'qemu', 'lxc' ] + ], + ) + +- remote_driver_generated += custom_target( ++ remote_xxx_generated += custom_target( + protocol_c, + input: protocol_x, + output: protocol_c, +@@ -42,6 +26,30 @@ foreach name : [ 'remote', 'qemu', 'lxc' ] + rpc_probe_files += files(protocol_x) + endforeach + ++ ++remote_driver_sources = [ ++ 'remote_driver.c', ++ 'remote_sockets.c', ++] ++ ++remote_driver_generated =remote_xxx_generated ++ ++foreach name : [ 'remote', 'qemu', 'lxc' ] ++ client_bodies_h = '@0@_client_bodies.h'.format(name) ++ protocol_x = '@0@_protocol.x'.format(name) ++ ++ remote_driver_generated += custom_target( ++ client_bodies_h, ++ input: protocol_x, ++ output: client_bodies_h, ++ command: [ ++ gendispatch_prog, '--mode=client', name, name.to_upper(), '@INPUT@', ++ ], ++ capture: true, ++ ) ++ ++endforeach ++ + remote_daemon_sources = files( + 'remote_daemon.c', + 'remote_daemon_config.c', +@@ -49,7 +57,7 @@ remote_daemon_sources = files( + 'remote_daemon_stream.c', + ) + +-remote_daemon_generated = [] ++remote_daemon_generated = remote_xxx_generated + + virt_ssh_helper_sources = files( + 'remote_sockets.c', +-- +2.32.0 + diff --git a/recipes-extended/libvirt/libvirt_7.2.0.bb b/recipes-extended/libvirt/libvirt_7.2.0.bb index 5ad7d59e..04c66eb5 100644 --- a/recipes-extended/libvirt/libvirt_7.2.0.bb +++ b/recipes-extended/libvirt/libvirt_7.2.0.bb @@ -31,6 +31,7 @@ SRC_URI = "http://libvirt.org/sources/libvirt-${PV}.tar.xz;name=libvirt \ file://0002-meson-Fix-compatibility-with-Meson-0.58.patch \ file://0001-security-fix-SELinux-label-generation-logic.patch \ file://0001-storage_driver-Unlock-object-on-ACL-fail-in-storageP.patch \ + file://lxc_protocol.patch \ " SRC_URI[libvirt.md5sum] = "92044b629216e44adce63224970a54a3"
src/remote/meson.build does not create a dependency on the generated lxc_protocol.h for remote_daemon.c. Restructure how this file is generated to allow the dependency. Signed-off-by: Joe Slater <joe.slater@windriver.com> --- .../libvirt/libvirt/lxc_protocol.patch | 104 ++++++++++++++++++ recipes-extended/libvirt/libvirt_7.2.0.bb | 1 + 2 files changed, 105 insertions(+) create mode 100644 recipes-extended/libvirt/libvirt/lxc_protocol.patch