qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PULL 0/1] Libslirp update


From: Marc-André Lureau
Subject: Re: [PULL 0/1] Libslirp update
Date: Tue, 3 Aug 2021 15:52:16 +0400

Hi

On Tue, Aug 3, 2021 at 1:50 PM Peter Maydell <peter.maydell@linaro.org> wrote:
On Tue, 3 Aug 2021 at 10:08, Peter Maydell <peter.maydell@linaro.org> wrote:
> Are you testing by starting with a before-the-libslirp-merge
> change QEMU, doing a build, then updating to the libslirp
> changes, and then doing a 'make' without reconfigure or
> 'make clean' ? I suspect this is perhaps to do with it being
> an incremental build.

More specifically:

$ git checkout master
$ mkdir build/slirptest
$ (cd build/slirptest && ../../configure --target-list=arm-softmmu
--enable-debug --disable-docs --disable-tools)
$ make -C build/slirptest -j8
$ git checkout remotes/elmarco/libslirp
$ make -C build/slirptest
$ mkdir build/slirp2
$ (cd build/slirptest && ../../configure --target-list=arm-softmmu
--enable-debug --disable-docs --disable-tools)
$ make -C build/slirp2

The build/slirptest directory has built a .so, and the
build/slirp2 directory has built a static .a.

(Both builds succeed because they're not hitting the clang
static analyzer thing, but they shouldn't be building different
types of library.)

Running '../../meson/meson.py configure' in slirp2 gives
(ignoring the non libslirp parts of the output):

Subproject libslirp:

  Core options                  Current Value
Possible Values
Description
  ------------                  -------------
---------------
-----------
  libslirp:default_library      static
[shared, static, both]                                        Default
library type
  libslirp:werror               true                           [true,
false]                                                 Treat warnings
as errors

  Project options               Current Value
Possible Values
Description
  ---------------               -------------
---------------
-----------
  libslirp:version_suffix
                                                      Suffix to append
to SLIRP_VERSION_STRING

In slirptest I get only:

Subproject libslirp:

  Project options               Current Value
Possible Values
Description
  ---------------               -------------
---------------
-----------
  libslirp:version_suffix
                                                      Suffix to append
to SLIRP_VERSION_STRING


So somehow meson has failed to apply the default_library and werror options in
the incremental build case.


Thanks for the detailed steps. It turns out that incremental build with subprojects is broken with meson < 0.57.2 (https://github.com/mesonbuild/meson/pull/8424).

Either we acknowledge that, or we fix the qemu meson.build for now with the missing -lresolv for osx/bsd.

I am going to work on a patch for the second option, but leave the decision open.





--
Marc-André Lureau

reply via email to

[Prev in Thread] Current Thread [Next in Thread]