-
Notifications
You must be signed in to change notification settings - Fork 98
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
kani-driver: Get json messages from cargo
invocations
#1598
Comments
I looked into this a bit yesterday, and unfortunately, it seems that there are no plans to stabilize the An alternative heavy-weight approach is to use the For reasons 2 and 3, it might be sufficient to use the |
One thing to be careful about is the compilation of proc_macros and build scripts. One of the reasons we have the hacky There are a few workarounds described here: rust-lang/cargo#7178 that we could use too. |
cargo build
cargo
invocations
I believe we came to the conclusion we didn't want to build ourselves. Instead, we want to parse the json output from |
I think our main concern was to depend on |
We have changed |
Instead of simply running
cargo build
orcargo test --no-run
with environment variables set so thatcargo
invokeskani-compiler
appropriately, we should use something likecargo build --build-plan -Z unstable-options
to get the build plan, then execute it ourselves. Alternatively, investigate how much of cargo is available as a library. Perhaps we can get cargo to compute a plan, modify it, and then ask cargo to execute that plan via library, rather than by calling out to external executables.There's a couple of reasons to want this:
rustc
to runkani-compiler
directly, instead of trying to bodge things into working with environment variables.symtab
together into one binary, and this could create collisions. cargo kani --tests fails on crates with integration tests #1448(Further benefits should be added to this issue.)
The text was updated successfully, but these errors were encountered: