mirror of
https://github.com/tree-sitter/tree-sitter.git
synced 2026-09-10 07:26:23 -04:00
Previously, `tree-sitter build-wasm` had the ability to build WASM
by using docker to pull in an image with a complete emscripten toolchain.
This commit adds the ability to use podman to do the same thing.
Using podman requires two notable changes:
1. Using the fully-qualified image name. Docker defaults to prepending
`docker.io` to the image name, but podman does not.
2. Podman will mount the `/src/` volume as belonging to root unless
`--userns=keep-id` is passed. I think podman's different
volume-ownership is related to podman's daemonless execution and
`--uidmap` functionality, but I'm not 100% sure.
To test, I ran
```sh
script/fetch-fixtures
script/generate-fixtures
script/generate-fixtures-wasm # <- the important one!
```
which worked as well as the docker version.
|
||
|---|---|---|
| .. | ||
| util | ||
| benchmark | ||
| benchmark.cmd | ||
| build-fuzzers | ||
| build-wasm | ||
| build-wasm-stdlib | ||
| check-mallocs | ||
| fetch-emscripten | ||
| fetch-fixtures | ||
| fetch-fixtures.cmd | ||
| generate-bindings | ||
| generate-fixtures | ||
| generate-fixtures-wasm | ||
| generate-fixtures.cmd | ||
| generate-unicode-categories-json | ||
| generate-wasm-exports-list | ||
| heap-profile | ||
| reproduce | ||
| run-fuzzer | ||
| serve-docs | ||
| show-symbol-sizes | ||
| test | ||
| test-wasm | ||
| test.cmd | ||
| version | ||