On Mon, Jun 14, 2021 at 05:01:59PM +0200, Gerd Hoffmann wrote: > Hi, > > > > softmmu_mods and block_mods are both lists already, so this sets a > > > nested list and I wonder if it confuses meson ? eg do you need > > > > > > input: softmmu_mods + block_mods > > > > No, that should be fine. Perhaps it's because the inputs are not part of > > the command? You can check what the build.ninja rule for modinfo.json looks > > like. > > > > Also: > > > > - it would be better to support both directories and file names, so that > > stale modules are not included in modinfo.json > > When turning qemu-modinfo into a pure build-utility (see below) there is > no reason to not explicitly list all module files on the command line. > > > - modinfo.json needs to be disabled on non-ELF platforms (x86, Windows). > > On windows modules are not supported.
Does anyone recall why modules aren't supported on Windows > Do we have any other non-ELF platforms? macOS uses dynlib IIUC ? > Problem with that approach is that it doesn't work for module > dependencies ... > > Comments on the idea? Suggestions for the module dependency problem? > Could maybe libbfd be used to find module (symbol) dependencies > automatically without writing a full dynamic linker? Is there any value in exploring use of libclang ? It gives us a real C parser that we can use to extract information from the C source. In libvirt we have experimental patches (not yet merged) using libclang to auto-generate XML parser helpers from struct annotations. It is quite nice compared to any other hacks for extracting information from C source files without using a proper parser. libclang can be accessed from Python3 via its bindings and IIUC should be usable on all our build platforms Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|