You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2.6 KiB
2.6 KiB
src/buildsuites - Buildsuites (zig runtime factory)
Purpose
Suites that build Tcl runtimes and binary companions from external upstream
sources using the pinned zig toolchain (zig-only build policy). Arm's-length
from the project build/bake stages: inputs are upstream checkouts/pins, not
this project's src/ tree.
Ownership
- Suite trees (
suite_tcl90/, futuresuite_tcl86/etc) are agent-editable under user-directed goal work (the G-096/G-099 arcs). _build/is a VCS-ignored build area - never commit from it; each suite stages into_build/<suitename>.
Local Contracts
- The suite self-description contract (what makes a directory a suite, the
sources.configrecord grammar incl. description/product/doc/zigpin, the copy-and-tweak guarantee) is documented inREADME.mdhere - keep it and themake.tcl buildsuitesurface in step. sources.configis parsed, never executed - by both the suite driver andmake.tcl buildsuite list/info. Grammar changes must land in both parsers (suite.tcl strict, make.tcl tolerant) plusREADME.md.- Fossil clones live in the machine-level store (
PUNK_FOSSIL_STORE, default~/.punkshell/fossils) - outside_build-class deletable dirs. - Suite drivers must keep working when invoked directly (
tclsh suite.tcl ...) AND viamake.tcl buildsuite build <name>(which forwards args untouched).
Verification
tclsh src/make.tcl buildsuite listshows every suite with its description.tclsh src/make.tcl buildsuite info <name>renders the manifest-derived detail for the touched suite.- Suite pipelines verify per their own README/goal records (test gates vs tracked expected_test_failures baselines).
Child DOX Index
suite_tcl90/- Tcl 9.0 suite (its README.md carries lineage/detail, including the G-138library-artifactspunkbin lib-tier emission and the G-140tcllibc-linuxcross lane - critcl driving zig cc -target for the linux-x86_64 lib tier, ELF-gated on the windows host; no child AGENTS.md yet)suite_tcl86/- Tcl 8.6 suite (G-099 achieved 2026-07-26: tclsh86ts/tclsh86t- tcl86t.dll + lib tree, thread 2.8.13 + tclvfs 1.4.2, core/thread/tclvfs
gates; G-100 achieved 2026-07-26: Tk 8.6.17 + tklib 0.9 + tcllib 2.0/tcllibc,
and punkshell's own runtests censused on this runtime; G-138
library-artifactsemits the tcl8-generation punkbin lib tier). Its README.md carries the deliverables, source selections, both makefile.vc DERIVATION records and the hermetic-environment finding (TCL__TM_PATH must be scrubbed alongside TCLLIBPATH/TCL_LIBRARY or a census measures the machine); no child AGENTS.md yet
- tcl86t.dll + lib tree, thread 2.8.13 + tclvfs 1.4.2, core/thread/tclvfs
gates; G-100 achieved 2026-07-26: Tk 8.6.17 + tklib 0.9 + tcllib 2.0/tcllibc,
and punkshell's own runtests censused on this runtime; G-138