[libvirt PATCH 281/351] meson: tests: build commandhelper binary
Pavel Hrdina
phrdina at redhat.com
Tue Jul 28 15:39:23 UTC 2020
On Tue, Jul 28, 2020 at 01:28:20PM +0200, Pavel Hrdina wrote:
> On Tue, Jul 28, 2020 at 12:49:03PM +0200, Peter Krempa wrote:
> > On Thu, Jul 16, 2020 at 11:58:37 +0200, Pavel Hrdina wrote:
> > > Signed-off-by: Pavel Hrdina <phrdina at redhat.com>
> > > ---
> > > tests/Makefile.am | 14 +-------------
> > > tests/meson.build | 17 +++++++++++++++++
> > > 2 files changed, 18 insertions(+), 13 deletions(-)
> >
> > [...]
> >
> > > diff --git a/tests/meson.build b/tests/meson.build
> > > index 5cbd3cd2077..fa116a0e249 100644
> > > --- a/tests/meson.build
> > > +++ b/tests/meson.build
> > > @@ -170,3 +170,20 @@ test_file_wrapper_lib = static_library(
> > > [ 'virfilewrapper.c' ],
> > > dependencies: [ tests_dep ],
> > > )
> > > +
> > > +
> > > +# build helpers used by tests
> > > +
> > > +# Must not link to any libvirt modules - libc only otherwise external
> > > +# libraries might unexpectedly leak file descriptors into commandhelper
> > > +# invalidating the test logic assumptions.
> >
> > This didn't work out:
> >
> > $ ldd commandtest
> > linux-vdso.so.1 (0x00007ffd24939000)
> > libvirt.so.0 => /home/pipo/build/libvirt/gcc/tests/./../src/libvirt.so.0 (0x00007feeabbf3000)
> > libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x00007feeabaa8000)
> > libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007feeaba8d000)
> > libc.so.6 => /lib64/libc.so.6 (0x00007feeab8c3000)
> > libutil.so.1 => /lib64/libutil.so.1 (0x00007feeab8be000)
> > libgobject-2.0.so.0 => /lib64/libgobject-2.0.so.0 (0x00007feeab865000)
> > libgio-2.0.so.0 => /lib64/libgio-2.0.so.0 (0x00007feeab67f000)
> > libxml2.so.2 => /lib64/libxml2.so.2 (0x00007feeab50f000)
> > libacl.so.1 => /lib64/libacl.so.1 (0x00007feeab504000)
> > libaudit.so.1 => /lib64/libaudit.so.1 (0x00007feeab4d8000)
> > libcap-ng.so.0 => /lib64/libcap-ng.so.0 (0x00007feeab4d0000)
> > libdbus-1.so.3 => /lib64/libdbus-1.so.3 (0x00007feeab479000)
> > libgnutls.so.30 => /lib64/libgnutls.so.30 (0x00007feeab28b000)
> > libnl-3.so.200 => /lib64/libnl-3.so.200 (0x00007feeab267000)
> > libnuma.so.1 => /lib64/libnuma.so.1 (0x00007feeab259000)
> > libselinux.so.1 => /lib64/libselinux.so.1 (0x00007feeab22c000)
> > libyajl.so.2 => /lib64/libyajl.so.2 (0x00007feeab220000)
> > libssh2.so.1 => /lib64/libssh2.so.1 (0x00007feeab1de000)
> > libssh.so.4 => /lib64/libssh.so.4 (0x00007feeab16a000)
> > libsasl2.so.3 => /lib64/libsasl2.so.3 (0x00007feeab14a000)
> > libtirpc.so.3 => /lib64/libtirpc.so.3 (0x00007feeab119000)
> > libcurl.so.4 => /lib64/libcurl.so.4 (0x00007feeab085000)
> > libwsman.so.1 => /lib64/libwsman.so.1 (0x00007feeab04b000)
> > libwsman_client.so.4 => /lib64/libwsman_client.so.4 (0x00007feeab03d000)
> > libwsman_curl_client_transport.so.1 => /lib64/libwsman_curl_client_transport.so.1 (0x00007feeab032000)
> > libdl.so.2 => /lib64/libdl.so.2 (0x00007feeab02b000)
> > libpthread.so.0 => /lib64/libpthread.so.0 (0x00007feeab009000)
> > /lib64/ld-linux-x86-64.so.2 (0x00007feeac0b2000)
> > libpcre.so.1 => /lib64/libpcre.so.1 (0x00007feeaaf90000)
> > libffi.so.6 => /lib64/libffi.so.6 (0x00007feeaaf85000)
> > libgmodule-2.0.so.0 => /lib64/libgmodule-2.0.so.0 (0x00007feeaaf7d000)
> > libz.so.1 => /lib64/libz.so.1 (0x00007feeaaf63000)
> > libmount.so.1 => /lib64/libmount.so.1 (0x00007feeaaf03000)
> > libresolv.so.2 => /lib64/libresolv.so.2 (0x00007feeaaee9000)
> > liblzma.so.5 => /lib64/liblzma.so.5 (0x00007feeaaebf000)
> > libm.so.6 => /lib64/libm.so.6 (0x00007feeaad79000)
> > libattr.so.1 => /lib64/libattr.so.1 (0x00007feeaad6f000)
> > libsystemd.so.0 => /lib64/libsystemd.so.0 (0x00007feeaacb8000)
> > libp11-kit.so.0 => /lib64/libp11-kit.so.0 (0x00007feeaab88000)
> > libidn2.so.0 => /lib64/libidn2.so.0 (0x00007feeaab66000)
> > libunistring.so.2 => /lib64/libunistring.so.2 (0x00007feeaa9e1000)
> > libtasn1.so.6 => /lib64/libtasn1.so.6 (0x00007feeaa9cb000)
> > libnettle.so.7 => /lib64/libnettle.so.7 (0x00007feeaa98c000)
> > libhogweed.so.5 => /lib64/libhogweed.so.5 (0x00007feeaa95a000)
> > libgmp.so.10 => /lib64/libgmp.so.10 (0x00007feeaa8c3000)
> > libpcre2-8.so.0 => /lib64/libpcre2-8.so.0 (0x00007feeaa82a000)
> > libssl.so.1.1 => /lib64/libssl.so.1.1 (0x00007feeaa793000)
> > libcrypto.so.1.1 => /lib64/libcrypto.so.1.1 (0x00007feeaa4a6000)
> > libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00007feeaa44d000)
> > libcrypt.so.2 => /lib64/libcrypt.so.2 (0x00007feeaa412000)
> > libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00007feeaa327000)
> > libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x00007feeaa30e000)
> > libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007feeaa307000)
> > libnghttp2.so.14 => /lib64/libnghttp2.so.14 (0x00007feeaa2db000)
> > libpsl.so.5 => /lib64/libpsl.so.5 (0x00007feeaa2c6000)
> > libldap-2.4.so.2 => /lib64/libldap-2.4.so.2 (0x00007feeaa274000)
> > liblber-2.4.so.2 => /lib64/liblber-2.4.so.2 (0x00007feeaa263000)
> > libbrotlidec.so.1 => /lib64/libbrotlidec.so.1 (0x00007feeaa254000)
> > libblkid.so.1 => /lib64/libblkid.so.1 (0x00007feeaa201000)
> > librt.so.1 => /lib64/librt.so.1 (0x00007feeaa1f4000)
> > liblz4.so.1 => /lib64/liblz4.so.1 (0x00007feeaa1d3000)
> > libgcrypt.so.20 => /lib64/libgcrypt.so.20 (0x00007feeaa0b2000)
> > libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00007feeaa0a0000)
> > libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007feeaa099000)
> > libbrotlicommon.so.1 => /lib64/libbrotlicommon.so.1 (0x00007feeaa074000)
> > libgpg-error.so.0 => /lib64/libgpg-error.so.0 (0x00007feeaa050000)
> >
> >
> > Pre-meson:
> >
> > $ ldd commandhelper
> > linux-vdso.so.1 (0x00007ffc6719f000)
> > libutil.so.1 => /lib64/libutil.so.1 (0x00007fae36bbd000)
> > libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fae36b9b000)
> > libdl.so.2 => /lib64/libdl.so.2 (0x00007fae36b94000)
> > libc.so.6 => /lib64/libc.so.6 (0x00007fae369ca000)
> > /lib64/ld-linux-x86-64.so.2 (0x00007fae36be4000)
>
> Nice catch, I'll fix that. It's because of using src_dep in
> dependencies which contains libvirt_lib. I guess during on of the
> rebases I added that into src_dep.
So I looked into this and you made a small mistake, for the meson you
used ldd commandtest but for autotools you used ldd commandhelper.
Whith meson output of ldd commandhelper is:
linux-vdso.so.1 (0x00007ffbfb7cd000)
libc.so.6 => /lib64/libc.so.6 (0x00007ffbfb5d0000)
/lib64/ld-linux-x86-64.so.2 (0x00007ffbfb7cf000)
Pavel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20200728/62613284/attachment-0001.sig>
More information about the libvir-list
mailing list