Build Configuration
Want configuration is done using 3 kinds of files, all written in Spore:
- the
WANTfile at the root of every module (Module Files), - unit files ending in
.want(Unit Files), - multi files ending in
.wants(Multi Files).
When want build runs, it:
- Checks that the current directory has a
WANTfile which is a valid module config; if not, it exits with a "not a module" error. - Finds every file ending in
.wantand.wants, and evaluates each into one or more Targets. - Validates that the Targets together are a valid build plan.
- Runs the build according to the plan.
Each .want/.wants file is evaluated independently as a single-file Spore
body, and must export the fields described for its kind.
The build departs from the module's source files only through the paths a
target declares in its .input. Which paths are imported into the module in
the first place is controlled by the root .wantignore file, described in Module Files.