On Thu, Feb 29, 2024 at 6:02 PM Alex Bennée <alex.ben...@linaro.org> wrote: > > Paz Offer <pof...@nvidia.com> writes: > > > Hi, > > > > I want to add library 'libdl' to be linked with QEMU build for a particular > > target (e.g. - qemu-system-arm). > > Using meson I would typically do 'compiler.find_library(...)', and later > > add the returned dependency to the binary > > dependencies list. > > However, in QEMU I understand that these configurations are done in > > the './configure' file? > > No I'm pretty sure all the library finding is done in meson now:
Yes, indeed. The documentation lists the tasks of the configure script: - detect the host architecture - list the targets for which to build emulators; the list of targets also affects which firmware binaries and tests to build - find the compilers (native and cross) used to build executables, firmware and tests. The results are written as either Makefile fragments (``config-host.mak``) or a Meson machine file (``config-meson.cross``) - create a virtual environment in which all Python code runs during the build, and possibly install packages into it from PyPI - invoke Meson in the virtual environment, to perform the actual configuration step for the emulator build Anything related to 1) building executables and documentation 2) installing is done in meson. Generally, non-Meson parts of the bulid system are limited to stuff that has to be cross compiled. The exception is contrib/plugins/Makefile (which I mention because you might be interested in it as well), but that's just for documentation purposes, so that it can be lifted out of the QEMU tree and used to build custom plugins. Paolo