libmicrovmi
libmicrovmi copied to clipboard
Build system: opportunistic drivers
PR https://github.com/Wenzel/libmicrovmi/pull/151 attempts to have default drivers enabled.
The issue raised by this system is that it requires to have
- Xen headers
- libkvmi headers
- VirtualBox FDP headers
all installed and detected to compile, unless you explicitely disable a driver.
An improvment would be to do like libvmi's cmake build system, and have opportunistic features, where we try to build the crates on which the driver depend upon, and on failure we simply disable the feature and continue.
I don't know how to implement this with cargo, build.rs.
Next step would be to ask on Rust language forums.