Il 18/06/2013 14:42, Anthony Liguori ha scritto: >> > Next, and this is the most complex part. The build system for >> > modules, and configuring it. I heard there were plans to use >> > something like kbuild system for that, has anything been done >> > in this context? > GSoC just kicked off yesterday. Paolo can perhaps shed some light on > what the plans are.
The plans is just to add kconfig, not kbuild, similar to seabios/busybox/etc. It would provide configurability by target and board, and in addition make it obvious which bits of default-configs/ (such as PCI, USB, HPET, etc.) are actually configurable. I outlined a possible implementation at the end of http://wiki.qemu.org/Features/Modules, though something nicer may be possible (possibly taking inspiration from Kconfig). >> > With current config/build system, the following changes are >> > needed: >> > >> > o split individual libs from libs_softmmu into their own >> > variables. Ack. This could be doable already and independent from everything else. >> > o allow obj-m (and similar) in addition to obj-y, with build >> > flags and rules to produce an .so. > We also need a way to define the module targets. My Makefile-fu is > not all that great but I suspect we can do something like: > > libqemu-%.ko: $(eval $(obj-%-m)) > > I don't think that works but that's the rough idea. We would then > need to define each module target by hand but that's probably > reasonable in the short term until we have kconfig. You can limit that to multiple-source modules, which is the common case. Single-source modules are easily handled. Paolo