Files
another-boids-in-rust/makefile_web
Robert Garrett 39925b0c4e Rename WASM & JS output to match HTML
The index.html file calls for a "boids.js", so I need the Makefile to
produce one. I could change it, but that's off-topic for now so I won't.
2025-10-28 12:42:39 -05:00

33 lines
1.0 KiB
Plaintext

.PHONY: clean full-clean web tarball
web: out/boids.js out/boids.wasm out/index.html
tarball: boids_web_root.tar
boids_web_root.tar: out/boids.js out/boids.wasm out/index.html
tar -caf $@ $<
target/wasm32-unknown-unknown/wasm-release/another-boids-in-rust.wasm:
cargo build --profile wasm-release --target wasm32-unknown-unknown
out:
mkdir $@
# Both the JS and WASM files are generated by the wasm-bindgen call, so both
# get to be on the target half of this recipe.
out/boids.js out/boids.wasm: out target/wasm32-unknown-unknown/wasm-release/another-boids-in-rust.wasm
wasm-bindgen --no-typescript --target web --out-dir ./out/ --out-name boids.wasm target/wasm32-unknown-unknown/wasm-release/another-boids-in-rust.wasm
out/index.html: www/index.html
cp -a $< $@
# Clean the web build, but not the Cargo cache. Cargo handles it's own caching
# and I don't want to obliterate it all the time.
clean:
rm -rf out/ boids_web_root.tar
# Delete everything, including the Cargo build cache. In case someone needs
# this, I guess.
full-clean: clean
cargo clean