Wenzel / libmicrovmi

A cross-platform unified Virtual Machine Introspection API library
https://wenzel.github.io/libmicrovmi/
GNU General Public License v3.0
165 stars 15 forks source link

Build system: opportunistic drivers #159

Open Wenzel opened 3 years ago

Wenzel commented 3 years ago

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

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.