On Fri, Aug 27, 2021 at 01:53:20PM -0400, Jagannathan Raman wrote: > diff --git a/meson.build b/meson.build > index bf63784..2b2d5c2 100644 > --- a/meson.build > +++ b/meson.build > @@ -1898,6 +1898,34 @@ if get_option('cfi') and slirp_opt == 'system' > + ' Please configure with --enable-slirp=git') > endif > > +vfiouser = not_found > +if have_system and multiprocess_allowed > + have_internal = fs.exists(meson.current_source_dir() / 'subprojects/libvfio-user/Makefile') > + > + if not have_internal > + error('libvfio-user source not found - please pull git submodule') > + endif > + > + json_c = dependency('json-c', required: false) > + if not json_c.found() Indentation is off. > + json_c = dependency('libjson-c') > + endif > + > + cmake = import('cmake') > + > + vfiouser_subproj = cmake.subproject('libvfio-user') > + > + vfiouser_sl = vfiouser_subproj.dependency('vfio-user-static') > + > + # Although cmake links the json-c library with vfio-user-static > + # target, that info is not available to meson via cmake.subproject. > + # As such, we have to separately declare the json-c dependency here. > + # This appears to be a current limitation of using cmake inside meson. > + # libvfio-user is planning a switch to meson in the future, which > + # would address this item automatically. > + vfiouser = declare_dependency(dependencies: [vfiouser_sl, json_c]) > +endif > + > fdt = not_found > fdt_opt = get_option('fdt') > if have_system > diff --git a/.gitmodules b/.gitmodules > index 08b1b48..cfeea7c 100644 > --- a/.gitmodules > +++ b/.gitmodules > @@ -64,3 +64,6 @@ > [submodule "roms/vbootrom"] > path = roms/vbootrom > url = https://gitlab.com/qemu-project/vbootrom.git > +[submodule "subprojects/libvfio-user"] > + path = subprojects/libvfio-user > + url = https://github.com/nutanix/libvfio-user.git Once this is merged I'll set up a gitlab.com/qemu-project/libvfio-user.git mirror. This ensures that no matter what happens with upstream libvfio-user.git, the source code that QEMU builds against will remain archived/available. > diff --git a/MAINTAINERS b/MAINTAINERS > index 4039d3c..0c5a18e 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -3361,6 +3361,13 @@ F: semihosting/ > F: include/semihosting/ > F: tests/tcg/multiarch/arm-compat-semi/ > > +libvfio-user Library > +M: Thanos Makatos > +M: John Levon > +T: https://github.com/nutanix/libvfio-user.git > +S: Maintained > +F: subprojects/libvfio-user/* A MAINTAINERS entry isn't necessary for git submodules. This could become outdated. People should look at the upstream project instead for information on maintainership and how to contribute.