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.
 
 
 
 
 
 

54 lines
3.1 KiB

# sources.config - suite_tcl90 source-pull declarations for the FOSSIL DEV FLOW
# (live checkouts driven by suite.tcl). This is the tweak surface for retargeting
# that flow at different repositories/branches/tags.
#
# G-102: the no-tclsh bootstrap flow ('zig build stage|bootstrap') has its own
# equivalent surface, build.zig.zon - content-hashed PER-CHECKIN pins rather than
# live refs. The dependency names there match the source names here, and both
# flows materialize into the same recipe-coupled stage dirs. When retargeting,
# tweak whichever flow you drive (or both, to keep them aligned): refs here may
# float (branches); zon pins are exact by design.
#
# Read by suite.tcl as plain line records - the file is parsed, never executed.
# Format (whitespace separated, one record per line, # comments and blanks ignored):
#
# source <name> <kind> <url> <ref> <dir>
#
# name identifier the driver refers to (do not change existing names)
# kind fossil | git
# ref branch, tag, or checkin/commit to open (fossil open/update <ref>;
# git checkout <ref> after clone). The 'tcl' ref can be overridden per-run
# with 'suite.tcl build -tclbranch <ref>'.
# dir checkout directory under the suite's _build stage. RECIPE-COUPLED: the
# zig recipe references these by relative path (e.g build905.zig
# tcl_source_folder "../tcl905", build_tk wired to "../tk9") - keep dir
# names unless you also adjust the recipe.
#
# Copy-and-tweak workflow: copy the whole suite_tcl90 tree to
# src/buildsuites/<yourname>/, edit this file, run 'tclsh suite.tcl build'.
# The build stage is derived from the suite folder name (_build/<yourname>), so
# copies stay isolated from each other.
#
# Depth limit (be honest with yourself): same-major-version url/ref tweaks (a
# mirror, a fork, a release tag) are config-only. Version-class changes ripple
# into the recipe: dir names above, version-derived filenames (tm names like
# tcltest-X.Y.Z, dll names, manifest version fields) live in build905.zig and the
# suite.tcl install steps.
#
# Fetch mechanics (suite.tcl): fossil clones come from the hermetic store
# (PUNK_FOSSIL_STORE, default ~/.punkshell/fossils; seeded read-only from
# ~/.fossils when present, else network-cloned from <url>). git sources are
# cloned directly from <url> and pinned to <ref>. critcl is fetched lazily -
# only when the tcllibc accelerators need building.
source tcl fossil https://core.tcl-lang.org/tcl core-9-0-branch tcl905
source tclthread fossil https://core.tcl-lang.org/thread trunk tclthread
source tclvfs fossil https://core.tcl-lang.org/tclvfs trunk tclvfs
# G-098: Tk + companion script libraries. tklib is pure-tcl (installed by its own
# installer where that matters); tcllib's accelerators (tcllibc) are built via critcl.
source tk fossil https://core.tcl-lang.org/tk core-9-0-branch tk9
source tklib fossil https://core.tcl-lang.org/tklib trunk tklib
source tcllib fossil https://core.tcl-lang.org/tcllib trunk tcllib
source critcl git https://github.com/andreas-kupries/critcl 3.3.1 critcl