diff --git a/apps/solidcraft-cli/Cargo.toml b/apps/solidcraft-cli/Cargo.toml index d2d2c4f927..3628d387bb 100644 --- a/apps/solidcraft-cli/Cargo.toml +++ b/apps/solidcraft-cli/Cargo.toml @@ -20,10 +20,11 @@ name = "solvecraft-cli" path = "src/alias.rs" [features] -default = ["raytrace-cpu"] +default = ["raytrace-cpu", "smlib"] bundled-render-library = ["solidcraft-engine/bundled-render-library"] raytrace-cpu = ["solidcraft-engine/raytrace-cpu"] -# Link SMLib into the kernel, for the regression rig's smlib runs (tests/kernel-cases). +# Link SMLib into the kernel (solidcraft-engine/smlib; needs scripts/fetch-smlib.sh). SMLib is the +# only kernel, so without it the command line models nothing. smlib = ["solidcraft-engine/smlib"] [dependencies] diff --git a/apps/solidcraft-web/Cargo.toml b/apps/solidcraft-web/Cargo.toml index cb189f7dcc..26782cb0e4 100644 --- a/apps/solidcraft-web/Cargo.toml +++ b/apps/solidcraft-web/Cargo.toml @@ -14,10 +14,11 @@ name = "solidcraft-web" path = "src/main.rs" [features] -default = [] +default = ["smlib"] bundled-render-library = ["solidcraft-engine/bundled-render-library"] -# Link SMLib into the kernel (solidcraft-engine/smlib): needs scripts/fetch-smlib.sh and wasi-sdk in -# WASI_SDK_PATH (crates/smlib/build.rs). Off by default until CI has wasi-sdk. +# Link SMLib into the kernel (solidcraft-engine/smlib; needs scripts/fetch-smlib.sh +# wasm32-unknown-unknown, or the sources and wasi-sdk in WASI_SDK_PATH, crates/smlib/build.rs). SMLib +# is the only kernel, so without it the web app models nothing. smlib = ["solidcraft-engine/smlib"] [dependencies] diff --git a/tests/kernel-cases/README.md b/tests/kernel-cases/README.md index dc01853369..04b6cee873 100644 --- a/tests/kernel-cases/README.md +++ b/tests/kernel-cases/README.md @@ -10,8 +10,8 @@ cargo xtask kernel-cases --cli target/release/solidcraft-cli --out /tmp/run # cargo run -p solidcraft-cli --features smlib -- kernel-cases tests/kernel-cases/booleans/ # one case ``` -The CLI needs `--features smlib` (after `scripts/fetch-smlib.sh`); without it every operation -answers that SMLib is not built. The run's output folder (`--out`, default `target/kernel-cases`) +The CLI links SMLib by default (`scripts/fetch-smlib.sh` fetches the prebuilt library first); +built with `--no-default-features`, every operation answers that SMLib is not built. The run's output folder (`--out`, default `target/kernel-cases`) gets `results.json`, every case's full result, and `dumps/-/`: the inputs of each SMLib call a case failed in, for replay (the CLI's `--dumps=DIR`, which the rig always passes).