Observed Wasm profile (2026-09-03): this README is supplementary. The support record is the only capability authority; it lists the repeatable moon run --target wasm --release results and exclusions. Options mentioned here but not promoted in that record are not compatibility guarantees.
cli/make provides a measured Make subset. The Wasm audit verified onetarget/dependency rule, an included variable,command-line variable precedence, dry run, recipe execution, and silent mode.
include, -include, sinclude, command-line variable assignment,ifeq/ifneq/ifdef/ifndef, pattern/static-pattern dependencies, andautomatic variables ($@, $<, $^, $+, $*, $@D, $@F, $<D, $<F)are supported in the measured slice. -j is accepted with bounded sequentialexecution, -k continues independent targets after recipe failures, and -Wmarks targets depending on the named file out of date. The full GNU built-indatabase, jobserver, secondary expansion, and complete parallel schedulingremain unverified.The observed Wasm -C path selects the Makefile, but recipe process lookup andworking directory remain controlled by the Wasm host; do not assume GNUmake -C recipe-directory parity.
Each external command in a recipe is launched through the policy-visibleMoonBit process API. Unsupported Make extensions fail explicitly; the completeMakefile is never forwarded to a host make executable. The remaininglanguage surface is listed in thesupport record.
Wasm recipes start from the explicit restricted environment and remain subjectto the host process policy. Native inheritance is outside this Wasm supportrecord.