From 7fc15cd5adab5406b9ccf3941e173f68766bc297 Mon Sep 17 00:00:00 2001 From: Julian Noble Date: Thu, 30 Jul 2026 22:54:55 +1000 Subject: [PATCH] G-140 achieved: linux lib-tier emission - cross-built tcllibc for punk9linux (punkshell 0.32.2) suite_tcl90: critcl_zig.config gains the linux-x86_64-zig cross target (zig cc -target x86_64-linux-gnu.2.17 - the dynamic-glibc floor decision, recorded in the goal file and fed to G-105). build905.zig gains the tcllibc-linux step (critcl driver on the windows suite shell, stubs linkage, no linux host; uuid.tcl excluded matching upstream's own native-linux package shape) gated by the new tools/elf_gate.tcl (G-133-equivalent ELF64/LSB/ET_DYN/x86_64 structural check - the load-smoke stand-in for cross lanes). library-artifacts emits lib/linux-x86_64/tcllibc-tcl9-r.zip in the same run: target = linux-x86_64, build_host_platform = win32-x86_64, full provenance set, deliberately no [tests] section. build_id seeds now include the tier path so same-named artifacts in different target tiers get distinct identity digests (both suites' tool copies kept byte-identical). Step lists (build905.zig -Dsteps default, suite.tcl) and README document the lane and invocation. Consumption: libpackages.toml declares tcllibc-tcl9-linux (target linux-x86_64); vendorlib_vfs.toml install.tcllibc_tcl9_linux switches punk9linux.vfs/lib_tcl9 - replace retires the hand-dropped tcllibc, supersedes removes the stray tcllibc2.0 - so the last provenance-less accelerator hand-drops in any kit payload are gone. punkshell902 baked (G-133 payload arch scan: 6/6 match target linux-x86_64) and WSL-verified: materialized-tier accel smoke plus baked-kit smokes (default paths + a pinned variant proving the kit's own lib_tcl9 artifact tree loads with the accelerator engaged). Finding recorded: the tclkit-902 runtime bundles its own lib/tcllibc2.0 which wins default precedence - the origin of the retired stray folder name. Determinism: back-to-back re-emission byte-identical for all three artifacts; the zig Run session-env cache finding extended (FOSSIL_HOME and invocation mode churn the key; the linux ELF .so observed bit-stable across critcl re-runs, unlike the windows PE). Goal flipped achieved with evidence in the detail file; G-105 notes carry the libc decision as prior art. Docs: buildsuites AGENTS.md child index, ARCHITECTURE.md buildsuites paragraph, CHANGELOG + punkproject 0.32.2. Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com --- ARCHITECTURE.md | 2 +- CHANGELOG.md | 16 + GOALS-archive.md | 4 + GOALS.md | 3 - goals/G-105-buildsuite-cross-target.md | 22 +- goals/G-140-linux-lib-tier-emission.md | 171 +++- punkproject.toml | 2 +- src/buildsuites/AGENTS.md | 6 +- .../suite_tcl86/tools/library_artifacts.tcl | 8 +- src/buildsuites/suite_tcl90/README.md | 36 +- src/buildsuites/suite_tcl90/build905.zig | 80 +- src/buildsuites/suite_tcl90/critcl_zig.config | 53 +- src/buildsuites/suite_tcl90/suite.tcl | 22 +- .../suite_tcl90/tools/elf_gate.tcl | 93 +++ .../suite_tcl90/tools/library_artifacts.tcl | 8 +- src/runtime/libpackages.toml | 7 + src/runtime/vendorlib_vfs.toml | 20 +- .../lib_tcl9/tcllibc/critcl-rt.tcl | 767 +++++++++--------- .../lib_tcl9/tcllibc/license.terms | 2 +- .../lib_tcl9/tcllibc/linux-x86_64/tcllibc.so | Bin 397136 -> 394784 bytes .../lib_tcl9/tcllibc/pkgIndex.tcl | 4 +- .../lib_tcl9/tcllibc/punkbin-artifact.toml | 53 ++ .../lib_tcl9/tcllibc/teapot.txt | 42 +- .../lib_tcl9/tcllibc2.0/critcl-rt.tcl | 381 --------- .../lib_tcl9/tcllibc2.0/license.terms | 1 - .../tcllibc2.0/linux-x86_64/tcllibc.so | Bin 397136 -> 0 bytes .../lib_tcl9/tcllibc2.0/pkgIndex.tcl | 2 - .../lib_tcl9/tcllibc2.0/teapot.txt | 21 - 28 files changed, 966 insertions(+), 860 deletions(-) create mode 100644 src/buildsuites/suite_tcl90/tools/elf_gate.tcl create mode 100644 src/vfs/punk9linux.vfs/lib_tcl9/tcllibc/punkbin-artifact.toml delete mode 100644 src/vfs/punk9linux.vfs/lib_tcl9/tcllibc2.0/critcl-rt.tcl delete mode 100644 src/vfs/punk9linux.vfs/lib_tcl9/tcllibc2.0/license.terms delete mode 100644 src/vfs/punk9linux.vfs/lib_tcl9/tcllibc2.0/linux-x86_64/tcllibc.so delete mode 100644 src/vfs/punk9linux.vfs/lib_tcl9/tcllibc2.0/pkgIndex.tcl delete mode 100644 src/vfs/punk9linux.vfs/lib_tcl9/tcllibc2.0/teapot.txt diff --git a/ARCHITECTURE.md b/ARCHITECTURE.md index e666b79c..2a72681a 100644 --- a/ARCHITECTURE.md +++ b/ARCHITECTURE.md @@ -94,7 +94,7 @@ Two layers with a deliberate dependency direction (the class never depends on th - **Boot-precondition gate (G-125).** A bake refuses a kit whose merged `.vfs` supplies no tcl library rather than deploying an artifact that cannot initialise: the kit lands in `FAILED KITS` and nothing is written, so the previously deployed `bin/` survives. Structural and non-executing (so cross-target kits are covered), reading the merged tree rather than the extraction outcome. The predicate is `punkboot::utils::vfs_boot_library_report`, called through the same guarded require as the provenance check so a stale bootsupport snapshot degrades it to a notice; `make.tcl check` reports ACTIVE/UNAVAILABLE. Sources: `src/AGENTS.md`, `src/modules/punkboot/utils-999999.0a1.0.tm`. - **Payload/target consistency checks (G-133 + G-134), all advisory.** At the same post-merge seam, a bake classifies each binary library in the merged tree by header (`punkboot::utils::binary_arch_classify` - PE/ELF/Mach-O, honest unknowns) against the kit's target platform; wrong-arch libraries outside platform-discriminated subdirs (canonical `-` names, vendor spellings like `win-x64`) earn recapped `BUILD-WARNING`s. After assembly, a kit declaring smoke-require packages (`mapvfs.config` 5th entry element) has each one plain-`package require`d inside the freshly built artifact via its tclsh subcommand - the only check that sees resolution-order defects (wrong-arch version shadowing); cross-target kits skip with a stated reason. The assembled image is also probed for its zip offset convention (G-134, `punkboot::utils::kit_offsetstyle_report` over `punk::zip::archive_info`): a FILE-relative attached payload warns (the pipeline emits archive-relative; the G-128 stamper refuses file-relative by default), no-zip/plain results stay silent. Same guarded-require degradation; `make.tcl check` reports all three. None guarantees statics, pure-tcl packages with binary deps, or version preference beyond the declared smoke set. Sources: `src/AGENTS.md`, `src/runtime/AGENTS.md`, `src/modules/punkboot/utils-999999.0a1.0.tm`. - **Kit icon step (G-057 + G-128).** Every kit a bake builds gets a `.resources.toml` sidecar (deployed beside `bin/`) recording the build-time icon choice - default `src/runtime/punkshell.ico`, overridable by a root `punkshell.ico` in the kit's own custom `.vfs` folder (pre-merge) - with sha256 identity and provenance lifted from the icon's G-135 assetorigin record. win32-target kits get the icon embedded as PE `RT_ICON`/`RT_GROUP_ICON` behind a single seam (`::punkboot::kit_icon_process`): the vendored punkres portable stamper (`src/tools/punkres`, built to `bin/punkres(.exe)` by the make.tcl tool step) is selected when present and works from any build host; otherwise the twapi arm (tcl-sfe mechanism) serves windows hosts with nothing built. Both arms share one semantic (delete all icon/group entries, write ids 1..N; the group is NAMED from the icon file's uppercased rootname - `PUNKSHELL` - with language adopted from the replaced group) and stamp a per-kit copy of the payload-free raw runtime prefix BEFORE payload attach; punkres can also stamp a FINISHED kit post-hoc, preserving an appended zip payload (archive-relative moved verbatim; file-relative refused by default, shifted with a consent flag). Non-PE targets skip as not applicable; a host where neither mechanism serves skips with a combined notice naming the punkres build remedy; the sidecar is written in every case. Sources: `src/AGENTS.md`, `bin/AGENTS.md`, `src/vfs/AGENTS.md`, `src/tools/AGENTS.md`. -- **Buildsuites and the kit family.** `src/buildsuites/suite_tcl90/` builds Tcl/Tk/tcllib from source with a pinned zig toolchain and produces the runtime kit family (plain / punk / bi) plus artifact metadata (G-096-G-117 era: see archived goals G-096, G-098, G-102, G-103, G-107); artifacts publish to the punkbin repo that `bin/punk-runtime.cmd` fetches from. Both suites also emit the punkbin LIBRARY tier (G-138, achieved): verified tcllib/tcllibc installs as generation-tagged immutable zips (`lib/allplatforms` + `lib/`, embedded schema-v2 class=library records, punkzip-deterministic) - the `library-artifacts` step in each recipe. Consumption (G-139, achieved): `make.tcl libfetch` materializes declared artifacts into the untracked `bin/packages/` tier with server-trust consent, and the PACKAGES_tcl libs phase + vfslibs packages-root declarations feed the deployed `lib_tcl` trees and kit vfs payloads - the vendored tcllib trees are retired, and embedded records ride into baked kits. `src/buildsuites/suite_tcl86/` is the 8.6 sibling (G-099 + G-100, both achieved): a Tcl 8.6 windows runtime (static + dynamic shells, `tcl86t.dll`, on-disk lib tree - no zipfs, so no self-contained kit) with thread 2.8 + tclvfs + Tk 8.6 + tklib + tcllib(+tcllibc critcl accelerators) companions, gated against the 8.6 core/thread/tclvfs testsuites with tcllib/tklib on a record tier and an opt-in `test-tk`; punkshell's own runtests is censused on that runtime at parity with a same-day native-8.6 baseline. Suite child shells scrub `TCL__TM_PATH` as well as TCLLIBPATH/TCL_LIBRARY/TK_LIBRARY - without it a census measures the machine's module trees. The 8.6 kit container strategy remains in-flux - see "In-flux areas". +- **Buildsuites and the kit family.** `src/buildsuites/suite_tcl90/` builds Tcl/Tk/tcllib from source with a pinned zig toolchain and produces the runtime kit family (plain / punk / bi) plus artifact metadata (G-096-G-117 era: see archived goals G-096, G-098, G-102, G-103, G-107); artifacts publish to the punkbin repo that `bin/punk-runtime.cmd` fetches from. Both suites also emit the punkbin LIBRARY tier (G-138, achieved): verified tcllib/tcllibc installs as generation-tagged immutable zips (`lib/allplatforms` + `lib/`, embedded schema-v2 class=library records, punkzip-deterministic) - the `library-artifacts` step in each recipe. The tier's `` axis includes cross-built lanes: suite_tcl90's `tcllibc-linux` step (G-140, achieved) cross-builds the critcl accelerators for linux-x86_64 via critcl driving `zig cc -target` (stubs linkage - no linux host involved), structurally ELF-gated on the build host and consumed by the punk9linux kit payload. Consumption (G-139, achieved): `make.tcl libfetch` materializes declared artifacts into the untracked `bin/packages/` tier with server-trust consent, and the PACKAGES_tcl libs phase + vfslibs packages-root declarations feed the deployed `lib_tcl` trees and kit vfs payloads - the vendored tcllib trees are retired, and embedded records ride into baked kits. `src/buildsuites/suite_tcl86/` is the 8.6 sibling (G-099 + G-100, both achieved): a Tcl 8.6 windows runtime (static + dynamic shells, `tcl86t.dll`, on-disk lib tree - no zipfs, so no self-contained kit) with thread 2.8 + tclvfs + Tk 8.6 + tklib + tcllib(+tcllibc critcl accelerators) companions, gated against the 8.6 core/thread/tclvfs testsuites with tcllib/tklib on a record tier and an opt-in `test-tk`; punkshell's own runtests is censused on that runtime at parity with a same-day native-8.6 baseline. Suite child shells scrub `TCL__TM_PATH` as well as TCLLIBPATH/TCL_LIBRARY/TK_LIBRARY - without it a census measures the machine's module trees. The 8.6 kit container strategy remains in-flux - see "In-flux areas". - **Project generation.** `dev project.new` composes thin layouts from `src/project_layouts/` (overlay chain with `.anti` deletion markers and `name@base` derivation - G-087, achieved) and injects bootsupport modules from the generating shell at generation time. - **Workflow overview.** `tclsh src/make.tcl workflow` prints the embedded ASCII data-flow overview of the build/release pipeline, with its own update contract in `src/AGENTS.md`. This section deliberately summarises rather than copies it. diff --git a/CHANGELOG.md b/CHANGELOG.md index aa8f3ab3..29fe0e71 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,22 @@ The latest `## [X.Y.Z]` header must match the `version` field in `punkproject.to Entries are newest-first; one bullet per notable change. See the root `AGENTS.md` "Project Versioning" section for the bump policy. +## [0.32.2] - 2026-07-30 + +- Linux lib-tier emission (G-140, achieved): suite_tcl90 gains a `tcllibc-linux` + step cross-building the tcllib critcl accelerators for linux-x86_64 (critcl + driving `zig cc -target x86_64-linux-gnu.2.17` - dynamic-glibc floor, stubs + linkage, no linux build host), structurally ELF-gated on the build host + (`tools/elf_gate.tcl`) and emitted as `lib/linux-x86_64/tcllibc-tcl9-r.zip` + by the `library-artifacts` step. The punkshell902 (punk9linux) kit payload now + ships this artifact-fed tcllibc with its embedded punkbin record - the + hand-dropped tcllibc + stray tcllibc2.0 folders are retired + (`libpackages.toml` + `vendorlib_vfs.toml` declarations; accelerator engage + verified under WSL for both the materialized tier and the baked kit). +- library_artifacts build_id seeds now include the tier path so same-named + artifacts in different target tiers (win32/linux tcllibc) get distinct + identity digests. + ## [0.32.1] - 2026-07-30 - `make.tcl libfetch` gains env-only isolation seams: `PUNK_LIBFETCH_CONFIG` diff --git a/GOALS-archive.md b/GOALS-archive.md index ed41de98..a2aad9f3 100644 --- a/GOALS-archive.md +++ b/GOALS-archive.md @@ -246,3 +246,7 @@ Acceptance: an emission step produces punkbin-layout library artifacts from veri ### G-139 [achieved 2026-07-30] Consume punkbin library artifacts: fetch/materialize tier replacing vendored tcllib/tcllibc → detail: goals/archive/G-139-punkbin-library-consumption.md Scope: src/make.tcl (consent-gated library fetch entrypoint; libs step consuming the packages tier; vfslibs as touched); bin/packages// (new untracked materialization tier mirroring bin/runtime//); src/runtime/vendorlib_vfs.toml (tcllib/tcllibc kit-vfs declarations with supersedes removal of the legacy versions); src/vendorlib_tcl8/win32-x86_64/tcllib1.21 + src/vendorlib_tcl9/win32-x86_64/tcllib2.0 (retirement targets); src/vfs/*.vfs lib_tcl trees (kit payload switchover incl. the punk86-family tcllib 2.0 upgrade); lib_tcl8/ + lib_tcl9/ (deployed-tree materialization targets); user-config consent (server-trust pattern shared with G-123/G-006) Acceptance: a make.tcl entrypoint fetches declared library artifacts from the punkbin lib tier into bin/packages// with sha1 verification and beside-toml metadata (consent keyed to server trust per the G-123 posture - fetches from the canonical origin prompt nothing new); the libs step materializes lib_tcl/allplatforms and lib_tcl/ from that tier with punkcheck-tracked provenance; tcllib and tcllibc enter src/runtime/vendorlib_vfs.toml (or its G-115/G-024 successor) declarations so the declared kit vfs trees receive them, with supersedes removing tcllib1.21 (including its nested tcllibc 0.4 and md5c) from the 8.6-family kits; the punk86-family upgrade to tcllib 2.0 + a current tcllibc is validated by kit-hosted runtests against a same-day baseline with every difference dispositioned; the vendored src/vendorlib_tcl8/win32-x86_64/tcllib1.21 and src/vendorlib_tcl9/win32-x86_64/tcllib2.0 trees are removed from the tracked tree once a bake fed from the artifact path reproduces working kits; a bake on a checkout without those trees (fetch consented or bin/packages pre-populated) ships kits whose tcllib/tcllibc provenance is verifiable from the embedded records; the derived-project decision is recorded in this file (fetch via the same entrypoint as the default - the copy-and-tweak in-project suite build per G-104's self-description contract remains the documented alternative). + +### G-140 [achieved 2026-07-30] Linux lib-tier emission: cross-built tcllibc (zig cc -target) for the punk9linux payload → detail: goals/archive/G-140-linux-lib-tier-emission.md +Scope: src/buildsuites/suite_tcl90/ (critcl_zig.config linux target section; build905.zig cross-target library-artifacts lane; tools as touched); src/runtime/libpackages.toml + src/runtime/vendorlib_vfs.toml (linux-x86_64 artifact + kit-vfs declarations); src/vfs/punk9linux.vfs/lib_tcl9 (hand-dropped tcllibc + stray tcllibc2.0 - retirement targets); punkbin artifact repo (external, c:/repo/jn/punkbin - new lib/linux-x86_64 target folder); bin/packages/linux-x86_64/ (tier target as materialized); WSL verification (testsupport/wslprobe.tcl patterns + a punkbin linux-x86_64 Tcl 9 runtime as the smoke interpreter) +Acceptance: a documented suite_tcl90 invocation produces lib/linux-x86_64/tcllibc-tcl9-r.zip from a critcl build driving zig cc via an explicit linux target section in critcl_zig.config (the win32-x86_64-zig pin pattern; no linux host in the build path), with the embedded record carrying target = linux-x86_64, build_host_platform = the actual build host, and the G-138 provenance set (checkout uuids, critcl version, zig version, optimize mode, driving-shell patchlevel); the contained shared library classifies as ELF x86-64 by a host-side structural check (the G-133 classifier or equivalent, recorded here); re-emission over an unchanged build is byte-identical; the libc/triple decision (dynamic glibc with a pinned version floor vs musl-dynamic - the .so must dlopen into existing glibc-dynamic linux tclsh builds without mixing libcs) is made and recorded here with rationale, explicitly feeding the G-105 decision item rather than re-deciding it later; a WSL (or native linux) smoke on the MATERIALIZED artifact tree under a linux-x86_64 Tcl 9 runtime (e.g. the punkbin tclkit-902 artifact) proves package require md5 engages the critcl accelerator from the tree (evidence recorded here); consumption lands via libpackages.toml (target linux-x86_64) and a vendorlib_vfs.toml entry switching punk9linux.vfs/lib_tcl9 with supersedes/replace retiring the hand-dropped tcllibc and tcllibc2.0; a punkshell902 bake ships the artifact-fed tree with its embedded record present in the kit payload, and a WSL run of the baked kit loading md5 with the accelerator engaged is recorded; publication to the real punkbin repo remains a deliberate user step (build_sha1sums.tcl already handles arbitrary lib/ folders); the tcl8-generation question is dispositioned (no linux tcl8 kit exists - recorded as out of the committed set, with the mechanism staying package-generic and generation-generic by construction). diff --git a/GOALS.md b/GOALS.md index a4b8d785..fa43e619 100644 --- a/GOALS.md +++ b/GOALS.md @@ -407,6 +407,3 @@ Detail: goals/G-136-generated-project-icon-seeding.md Scope: src/tools/punkres/ (VS_VERSIONINFO construction, set-version + field-level read-back - upstream at c:/repo/jn/zig/punkres); src/make.tcl (version stamping at the G-057/G-128 kit-icon seam, punkres arm); bin/*.resources.toml sidecar format + bin/AGENTS.md (version fields and status vocabulary); punkproject.toml (field source - configurable overrides); src/tests/ (characterization) Detail: goals/G-137-kit-version-resources.md -### G-140 [proposed] Linux lib-tier emission: cross-built tcllibc (zig cc -target) for the punk9linux payload -Scope: src/buildsuites/suite_tcl90/ (critcl_zig.config linux target section; build905.zig cross-target library-artifacts lane; tools as touched); src/runtime/libpackages.toml + src/runtime/vendorlib_vfs.toml (linux-x86_64 artifact + kit-vfs declarations); src/vfs/punk9linux.vfs/lib_tcl9 (hand-dropped tcllibc + stray tcllibc2.0 - retirement targets); punkbin artifact repo (external, c:/repo/jn/punkbin - new lib/linux-x86_64 target folder); bin/packages/linux-x86_64/ (tier target as materialized); WSL verification (testsupport/wslprobe.tcl patterns + a punkbin linux-x86_64 Tcl 9 runtime as the smoke interpreter) -Detail: goals/G-140-linux-lib-tier-emission.md diff --git a/goals/G-105-buildsuite-cross-target.md b/goals/G-105-buildsuite-cross-target.md index 922fcebc..0846fbb8 100644 --- a/goals/G-105-buildsuite-cross-target.md +++ b/goals/G-105-buildsuite-cross-target.md @@ -138,10 +138,18 @@ goals/archive/G-100-suite-tcl86-tk-tcllib.md), G-102 (achieved 2026-07-21 - driv - G-110 relationship: its extraction-cache decision determines whether the per-platform temp-copy cleanup characterized in these notes stays a wart or gets replaced - the linux leg of this goal's verification feeds its evidence. -- G-140 relationship (drafted 2026-07-30): a deliberately narrower zig - -target lane landing first - cross-built linux-x86_64 tcllibc via the - library-artifacts machinery (stubs linkage, no cross-built runtime - needed). Its recorded libc/triple decision (dynamic glibc floor vs - musl-dynamic for a dlopen-able .so) is direct input to this goal's - dynamic-libc and triple<->canon items - take it as prior art at - activation rather than re-deciding. +- G-140 relationship (achieved 2026-07-30 - see + goals/archive/G-140-linux-lib-tier-emission.md): a + deliberately narrower zig -target lane that landed first - cross-built + linux-x86_64 tcllibc via the library-artifacts machinery (stubs + linkage, no cross-built runtime needed). Its libc/triple decision is + DECIDED and recorded there: dynamic glibc, zig triple + x86_64-linux-gnu.2.17 (musl rejected - a musl .so inside the + glibc-dynamic consumer runtimes mixes libcs; 2.17 = conservative + CentOS7-era floor, in zig 0.16.0's bundled stub list, verified under + WSL glibc 2.39). Direct prior art for this goal's dynamic-libc and + triple<->canon items - take it at activation rather than re-deciding. + Also relevant: the critcl config 'platform' identifier must stay + platform::generic-shaped (linux-x86_64) for critcl's MapPlatform + loader, with the glibc floor riding only the triple - see the G-140 + detail file's mechanism notes. diff --git a/goals/G-140-linux-lib-tier-emission.md b/goals/G-140-linux-lib-tier-emission.md index 132360fc..3b6d0412 100644 --- a/goals/G-140-linux-lib-tier-emission.md +++ b/goals/G-140-linux-lib-tier-emission.md @@ -1,6 +1,6 @@ # G-140 Linux lib-tier emission: cross-built tcllibc (zig cc -target) for the punk9linux payload -Status: proposed +Status: achieved 2026-07-30 Scope: src/buildsuites/suite_tcl90/ (critcl_zig.config linux target section; build905.zig cross-target library-artifacts lane; tools as touched); src/runtime/libpackages.toml + src/runtime/vendorlib_vfs.toml (linux-x86_64 artifact + kit-vfs declarations); src/vfs/punk9linux.vfs/lib_tcl9 (hand-dropped tcllibc + stray tcllibc2.0 - retirement targets); punkbin artifact repo (external, c:/repo/jn/punkbin - new lib/linux-x86_64 target folder); bin/packages/linux-x86_64/ (tier target as materialized); WSL verification (testsupport/wslprobe.tcl patterns + a punkbin linux-x86_64 Tcl 9 runtime as the smoke interpreter) Goal: the punkbin lib tier serves a linux-x86_64 tcllibc built by the existing windows suite - critcl driving zig cc with an explicit linux target (stubs @@ -122,6 +122,43 @@ linux runtime punkbin already hosts. reviewed at landing - a library cross-build does not flip the runtime buildsuite axis ('planned' per G-105); whether the lib tier axis needs a value update is settled in the work. +- Related: G-127 - cross-target bake output goal; its acceptance names + punk9linux.vfs migration to declarations and the linux punkshell902 kit's + intended move to bin/kits/linux-x86_64/. This goal's punkshell902 bake + rides today's output layout; G-127 owns relocating it. +- Related: G-115 - vendorlib_vfs.toml successor surface (declarative .vfs + composition); the consumption declarations here ride whichever surface is + current, per the G-139 precedent. +- Activation survey 2026-07-30: goals_xref score G-140 re-run at activation + (user-directed, same day as drafting): two real overlaps beyond the + drafting survey recorded above (G-127, G-115 - both vendorlib_vfs.toml / + punk9linux.vfs surfaces); remaining unlinked pairs (G-023/G-016/G-022/ + G-006/G-005) share only ubiquitous anchors, no contract relationship. +- LIBC/TRIPLE DECISION (2026-07-30, the acceptance's recorded decision - + feeds G-105's dynamic-libc analysis): dynamic glibc via zig triple + x86_64-linux-gnu.2.17. Rationale: the concrete consumers (punkbin + tclkit-902-Linux64-intel-dyn - verified ELF x86-64 with interpreter + /lib64/ld-linux-x86-64.so.2, i.e. glibc-dynamic - and any suite-family + linux runtime G-105 later produces) are glibc processes, so a musl .so + would mix two libcs in one process (rejected); static-musl is not an + option for a dlopen'd extension anyway. 2.17 is the conservative + CentOS7-era floor: comfortably below every candidate consumer distro + (WSL Ubuntu 22.04/24.04 = glibc 2.35/2.39, AlmaLinux 9 = 2.34) and + present in the pinned zig 0.16.0's bundled glibc-stub list (verified via + 'zig targets'). The floor rides ONLY the zig triple; the in-package + platform folder stays glibc-agnostic (next note). +- critcl cross-target mechanism (2026-07-30 finding): the config section's + 'platform' value becomes critcl's targetplatform/actualtarget, which + names BOTH the in-package shared-lib folder and teapot's 'Meta platform' + on cross builds (TeapotPlatform upgrades to platform::identify - the + glibc-versioned form - only when building natively). The generated + loader resolves the folder via ::critcl::runtime::MapPlatform = + platform::generic, so the folder must be 'linux-x86_64', NOT a + glibc-versioned name. The retired hand-drop confirms the shape: folder + linux-x86_64 with teapot 'Meta platform linux-glibc2.22-x86_64' (a + native linux critcl 3.3 build, 2025-08-20 vintage). Our cross build + records teapot 'Meta platform linux-x86_64' - truthful (any glibc >= + floor), with the exact floor in the artifact record + this file. - Overlap survey 2026-07-30 (drafting): goals_xref paths src/buildsuites/suite_tcl90, src/vfs/punk9linux.vfs, src/runtime/libpackages.toml, src/runtime/vendorlib_vfs.toml, @@ -130,3 +167,135 @@ linux runtime punkbin already hosts. G-108/G-110/G-131 (suite-tree co-location only, no contract relationship), G-004/G-065/G-025 (posture, carried or not applicable); no live goal owns the punk9linux tcllibc hand-drops. + +## Progress + +- 2026-07-30 activated (user-directed); emission side LANDED and verified: + - critcl_zig.config linux-x86_64-zig section (zig cc -target + x86_64-linux-gnu.2.17, sharedlibext .so, platform identifier + linux-x86_64 - mechanism + libc decision notes above). + - build905.zig `tcllibc-linux` step (in the default step lists, + suite.tcl + -Dsteps parity): the native critcl invocation with + -target linux-x86_64-zig, own cache/libdir outputs, installed to + out/lib-linux-x86_64/tcllibc; gated by tools/elf_gate.tcl (new, + self-contained: the G-133 classifier's ELF checks - magic, EI_CLASS + 64, EI_DATA LSB, e_machine x86_64 - plus e_type ET_DYN; an empty tree + fails). Gate PASS: linux-x86_64/tcllibc.so ELF64 LSB ET_DYN x86_64. + - uuid finding: tcllib uuid.tcl's accelerator is WINDOWS-ONLY C (rpcrt4 + UuidCreate behind a tcl_platform(platform)=="windows" guard evaluated + in the critcl DRIVER) - first cross attempt failed on windows.h. The + lane EXCLUDES uuid/uuid.tcl, reproducing upstream's own native-linux + package shape (the guard is false there; uuid rides its pure-tcl path + which uses the md5 accelerator). Installed shape verified identical + to the hand-drop's (folder set + linux-x86_64/tcllibc.so + teapot + 'Meta platform linux-x86_64'). + - library-artifacts emission extended with the third 5-tuple: emitted + lib/linux-x86_64/tcllibc-tcl9-r1.zip (8 members, ~139KB) beside the + native artifacts, per-tier sha1sums incl. the new linux-x86_64 tier. + Record verified: target=linux-x86_64, build_host_platform= + win32-x86_64, tcllib+critcl checkout uuids, critcl 3.3.1 (from the + cross build's own teapot.txt), zig 0.16.0, ReleaseFast, + driving_tcl_patchlevel 9.0.5; NO [tests] section (the G-107 evidence + (achieved - goals/archive/G-107-buildsuite-library-tests.md) attaches + to the win32 accelerators the tests exercised - the linux functional + evidence is the WSL smoke below). + - build_id seed fix (both suites' library_artifacts.tcl copies, kept + byte-identical): the seed now includes the tier path + (lib//) - same-named artifacts in different target + tiers (the win32/linux tcllibc pair) previously would have shared an + identity digest. Published r1 records keep their build_ids + (immutable); local re-emissions at r1 now differ from published r1 + bytes in that field - immaterial: revisions never re-publish. + - Determinism VERIFIED: two direct back-to-back `zig build + library-artifacts` runs over the unchanged build produced + byte-identical zips for ALL THREE artifacts (linux e5e7bb0c... + twice). Session-env finding EXTENDED: the zig Run cache keys the + inherited env - beyond PATH (the recorded G-138 trap), suite.tcl + itself sets FOSSIL_HOME, so a suite.tcl-driven emission and a direct + `zig build` emission are DIFFERENT cache sessions; the first + invocation in a new env re-runs critcl/installers and drifts the + native (non-bit-reproducible) dll bytes and install mtimes. The + linux ELF .so was observed BIT-STABLE across such re-runs (sha + 96843110... constant) - windows PE non-reproducibility does not + carry over; the zip-level drift across env changes comes from + re-install mtimes. Publish discipline unchanged. + - Documented invocation (also in the suite README "Linux cross lane" + section): `tclsh suite.tcl build` (defaults) or explicit -steps + including tcllibc-linux + library-artifacts. +- 2026-07-30 consumption phase 1 + WSL MATERIALIZED-TREE SMOKE (the + acceptance's functional evidence): + - libpackages.toml gained [artifact.tcllibc-tcl9-linux] (name + tcllibc-tcl9-r1.zip, target linux-x86_64). libfetch is + target-generic; materialized via the PUNK_LIBFETCH_CONFIG seam + (linux-only declarations) from a file:// mirror of the suite staging + with -trust-server -> bin/packages/linux-x86_64/tcl9/tcllibc + (fetched + sha1-verified + materialized; the published-r1-matching + allplatforms/win32 tier copies deliberately untouched). + - WSL smoke PASS (default distro Ubuntu 24.04, glibc 2.39; runtime + bin/runtime/linux-x86_64/tclkit-902-Linux64-intel-dyn = Tcl 9.0.2): + staged the materialized tcllibc + tcllib2.0 trees to WSL-native + /tmp (wslprobe staging pattern - one-way copy-in, never operating + on the checkout), auto_path with the staged lib prepended; + `package require md5` -> md5 2.0.9 from the staged tcllib2.0, + tcllibc 2.0 loaded from + .../lib/tcllibc/linux-x86_64/tcllibc.so (MapPlatform resolved the + linux-x86_64 folder), accel(critcl)=1, md5 -hex correct + (5EB63BBB...); self-gating assertions on all resolution paths + passed (SMOKE-OK). Note: wholesale auto_path REPLACEMENT breaks the + kit's own auto_load/tm chain (::tcl::tm::UnknownHandler resolves via + auto_index) - prepend + path assertions is the working pattern. +- 2026-07-30 consumption phase 2: kit switchover + BAKE + BAKED-KIT WSL + SMOKES: + - vendorlib_vfs.toml [install.tcllibc_tcl9_linux]: source_root=packages, + source linux-x86_64/tcl9/tcllibc, target punk9linux.vfs/lib_tcl9, + replace=true + supersedes tcllibc2.0. vfslibs run: superseded + 'tcllibc2.0' REMOVED, hand-dropped 'tcllibc' clean-slate REPLACED by + the artifact-fed tree (embedded record present; .so byte-identical to + the tier copy, sha 96843110...). The last provenance-less accelerator + hand-drops in any kit payload are retired. + - Selective bake punkshell902 (tclkit-902-Linux64-intel-dyn + + punk9linux.vfs, metakit container): shipped bin/punkshell902. The + bake's own G-133 payload binary-arch scan for target linux-x86_64: OK + - 6 binary libraries scanned, 6 match target, 3 exempt under platform + subdirs, 0 unclassifiable (our tcllibc.so among the scanned). G-122 + cross-target handling engaged (icon N/A for non-PE, process sweep and + smoke-require skipped as cross-target). + - WSL baked-kit smoke A (default paths): './punkshell902 script ...' + under the default WSL distro - md5 2.0.9 + tcllibc 2.0, + accel(critcl)=1, correct digest; embedded record read from the kit + payload's lib_tcl9/tcllibc/punkbin-artifact.toml and field-checked + (name/target/build_id/build_host_platform). FINDING: the loaded .so + was the RUNTIME's own bundled copy at lib/tcllibc2.0/ - the + tclkit-902 runtime carries tcllibc inside its attached vfs under the + stray-versioned folder name, which explains where the retired + punk9linux tcllibc2.0 hand-drop name CAME from, and that copy wins + default package-path precedence over the kit tree's lib_tcl9. + - WSL baked-kit smoke B (pinned): fresh kit process, package forget + + auto_path pinned to the kit's OWN lib_tcl9 - the artifact-fed + /lib_tcl9/tcllibc/linux-x86_64/tcllibc.so LOADED (info loaded + path assertion), accel(critcl)=1, md5 correct, md5 resolved from the + kit tree (SMOKE-OK-PINNED). So the shipped artifact tree is proven + functional from inside the baked kit, while the runtime's bundled + copy shadows it on default paths - relevant when pairing the _basic + runtime variant (no bundled batteries), where the kit tree is the + only provider. +- 2026-07-30 dispositions + reviews (acceptance items): + - tcl8 generation: OUT of the committed set - no linux tcl8 kit exists + (no mapvfs entry pairs a linux runtime with a tcl8 vfs). The + mechanism stays package-generic and generation-generic by + construction: suite_tcl86 shares the byte-identical + library_artifacts.tcl (including the tier-in-build_id-seed change), + and a future linux tcl8 lane would be the same config-section + + critcl-step + 5-tuple pattern. + - punk::platform axes review: NO value changes needed. linux-x86_64 + already carries tiers {runtime lib} (the lib axis covers + lib_tclX/ trees - now artifact-fed); buildsuite stays + 'planned' - that axis describes RUNTIME production (G-105), which a + library cross-build deliberately does not flip. + - Publication: remains the deliberate user step. The emitted artifacts + sit in suite staging out/library/punkbin/lib/linux-x86_64/ (zip + + sidecar + per-tier sha1sums; revision r1 unbumped - nothing new + published this goal). punkbin's build_sha1sums.tcl already handles + arbitrary lib/ folders (G-138). After publication, the + already-declared libpackages.toml entry serves plain canonical + 'make.tcl libfetch' with no further edits. diff --git a/punkproject.toml b/punkproject.toml index 0075f4ca..41fd5be3 100644 --- a/punkproject.toml +++ b/punkproject.toml @@ -1,4 +1,4 @@ [project] name = "punkshell" -version = "0.32.1" +version = "0.32.2" license = "BSD-2-Clause" diff --git a/src/buildsuites/AGENTS.md b/src/buildsuites/AGENTS.md index 5e0e1c1d..bc24cebd 100644 --- a/src/buildsuites/AGENTS.md +++ b/src/buildsuites/AGENTS.md @@ -39,8 +39,10 @@ this project's `src/` tree. ## Child DOX Index - `suite_tcl90/` - Tcl 9.0 suite (its README.md carries lineage/detail, - including the G-138 `library-artifacts` punkbin lib-tier emission; no - child AGENTS.md yet) + including the G-138 `library-artifacts` punkbin lib-tier emission and the + G-140 `tcllibc-linux` cross 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, diff --git a/src/buildsuites/suite_tcl86/tools/library_artifacts.tcl b/src/buildsuites/suite_tcl86/tools/library_artifacts.tcl index 4929fc2d..b2844697 100644 --- a/src/buildsuites/suite_tcl86/tools/library_artifacts.tcl +++ b/src/buildsuites/suite_tcl86/tools/library_artifacts.tcl @@ -314,8 +314,12 @@ foreach {folder tier license testlibs pkgpath} $opt(-packages) { #deterministic build_id (uuid-shaped sha1 digest of stable identity inputs - #same input family as the runtime records: name, toolchain/optimize, driving - #patchlevel, per-member source checkout uuids) - set idseed "punkbin-artifact|$artifact|zig $opt(-zig)|$opt(-optimize)|tcl$opt(-tclpatch)|$provpairs" + #patchlevel, per-member source checkout uuids). The tier rides the seed as + #the artifact's repo path: same-NAMED artifacts exist in different target + #tiers (win32/linux tcllibc pairs, G-140) and must not share an identity + #digest. (Seed change 2026-07-30: pre-G-140 emissions seeded on the bare + #name - published r1 records keep their build_ids; revisions are immutable.) + set idseed "punkbin-artifact|lib/$tier/$artifact|zig $opt(-zig)|$opt(-optimize)|tcl$opt(-tclpatch)|$provpairs" set ihex [sha1::sha1 -hex $idseed] set build_id "[string range $ihex 0 7]-[string range $ihex 8 11]-[string range $ihex 12 15]-[string range $ihex 16 19]-[string range $ihex 20 31]" diff --git a/src/buildsuites/suite_tcl90/README.md b/src/buildsuites/suite_tcl90/README.md index cd7fc26e..da9f7ef4 100644 --- a/src/buildsuites/suite_tcl90/README.md +++ b/src/buildsuites/suite_tcl90/README.md @@ -29,7 +29,8 @@ run from THIS directory with the pinned zig. Sources come from `build.zig.zon` - content-hashed per-checkin tarball pins ('refresh' = bump a pin; `zig fetch --save= ` edits the manifest). Steps for the nested staged build: `-Dsteps=...` (repeat the flag), default install install-libraries make-zipfs smoke -tklib tcllib tcllibc kit-family kit-family-artifacts library-artifacts. The test gate: +tklib tcllib tcllibc tcllibc-linux kit-family kit-family-artifacts +library-artifacts. The test gate: `zig build bootstrap -Dsteps=test-gate` (or invoke the staged build file directly, as suite.tcl does). zig extracts fetched packages into `zig-pkg/` beside the manifest and `.zig-cache/` for the outer @@ -176,6 +177,8 @@ package folders - - `lib/allplatforms/tcllib2.0-tcl9-r1.zip` - platform-neutral (pure-tcl) - `lib/win32-x86_64/tcllibc-tcl9-r1.zip` - per-platform binary (critcl accelerators) +- `lib/linux-x86_64/tcllibc-tcl9-r1.zip` - the G-140 CROSS-built accelerators + for the punk9linux kit payload (below) plus per-artifact `.toml` sidecars and per-tier punkbin-format `sha1sums.txt`. Names carry the GENERATION tag (`-tcl9-`; suite_tcl86 emits @@ -183,6 +186,37 @@ plus per-artifact `.toml` sidecars and per-tier punkbin-format tcllibc), so the tag keeps the artifacts distinct server-side. Revision via `-Dlibrev=N` (suite.tcl `-zigargs {-Dlibrev=N}`; default 1). +### Linux cross lane (G-140) + +The `tcllibc-linux` step (default) cross-builds the same critcl accelerators +for linux-x86_64 on the windows build host: critcl runs under the suite-built +windows shell with `-target linux-x86_64-zig` (critcl_zig.config; `zig cc +-target x86_64-linux-gnu.2.17` - dynamic glibc with a conservative +CentOS7-era version floor, rationale in +`goals/G-140-linux-lib-tier-emission.md`). Stubs linkage means no linux build +host and no cross-built Tcl runtime is involved. The install lands at +`out/lib-linux-x86_64/tcllibc` (never on a native package path) with the +shared lib under the `linux-x86_64/` in-package platform folder +(platform::generic vocabulary - what critcl's generated loader resolves on +any linux host). + +The build host cannot dlopen a linux `.so`, so the step gates on a structural +check instead of a load smoke: `tools/elf_gate.tcl` (the G-133 classifier's +ELF checks + ET_DYN) requires every member to classify as ELF64 LSB ET_DYN +x86-64. Functional verification (accelerator engaged under a linux Tcl 9 +runtime in WSL) is out-of-band evidence recorded in the goal file. The +`library-artifacts` step emits this install as +`lib/linux-x86_64/tcllibc-tcl9-r.zip` in the same run as the native +artifacts - same embedded-record shape with `target = "linux-x86_64"` and +`build_host_platform = "win32-x86_64"`, and NO `[tests]` section (the G-107 +suite evidence attaches to the win32 accelerators the tests exercised). +Documented emission invocation: + + tclsh suite.tcl build -steps {install install-libraries make-zipfs smoke tcllib tcllibc tcllibc-linux kit-family library-artifacts} + +(or any invocation whose steps include the defaults; `tcllibc-linux` alone +builds and gates the cross install without emitting). + Each zip embeds a schema-v2 `punkbin-artifact.toml` at the package root (beside pkgIndex.tcl - inert to package loading; `[artifact] class = "library"`, `[provenance] class = "suite-built"` with tcllib/critcl checkout uuids, critcl diff --git a/src/buildsuites/suite_tcl90/build905.zig b/src/buildsuites/suite_tcl90/build905.zig index 78667210..f4d27938 100644 --- a/src/buildsuites/suite_tcl90/build905.zig +++ b/src/buildsuites/suite_tcl90/build905.zig @@ -2332,6 +2332,65 @@ pub fn build(b: *std.Build) !void { tcllibc_smoke.step.dependOn(b.getInstallStep()); tcllibc_step.dependOn(&tcllibc_smoke.step); + //-- tcllibc-linux (G-140): the same critcl accelerators CROSS-built for + //linux-x86_64 through the config's linux-x86_64-zig section (zig cc + //-target x86_64-linux-gnu.2.17 - the dynamic-glibc floor decision + //recorded in goals/G-140-linux-lib-tier-emission.md). Stubs linkage: + //critcl bundles its own Tcl headers and links no Tcl runtime, so no + //linux build host or cross-built tclsh is involved - the critcl DRIVER + //runs under the suite-built windows shell exactly as the native step. + //Installs beside the native prefix lib as lib-linux-x86_64/ (never on a + //native package path). The build host cannot dlopen a linux .so, so a + //structural ELF gate (tools/elf_gate.tcl - the G-133 classifier checks + //+ ET_DYN) stands in for the load smoke; functional verification is the + //out-of-band WSL accelerator smoke recorded in the goal file. + const tcllibc_linux_step = b.step("tcllibc-linux", "cross-build+install tcllibc for linux-x86_64 (critcl accelerators, zig cc -target; +structural ELF gate)"); + const critcl_linux_run = b.addRunArtifact(tclsh_exe); + common.scrubTclEnv(critcl_linux_run); + critcl_linux_run.setEnvironmentVariable("TCL_LIBRARY", tcl_library_src); + //cached (non-side-effect) Runs spawn with stdout IGNORED - on windows the + //child then has no stdout handle and tcl errors on any puts ('can not find + //channel named "stdout"', critcl's logging). Capturing gives it a real pipe. + _ = critcl_linux_run.captureStdOut(.{}); + critcl_linux_run.setCwd(b.path("../tcllib")); + critcl_linux_run.addFileArg(b.path("../critcl/main.tcl")); + critcl_linux_run.addArg("-config"); + critcl_linux_run.addFileArg(b.path("critcl_zig.config")); + critcl_linux_run.addArgs(&.{ "-target", "linux-x86_64-zig" }); + critcl_linux_run.addArg("-cache"); + _ = critcl_linux_run.addOutputDirectoryArg("critcl-cache-linux"); + critcl_linux_run.addArg("-force"); + critcl_linux_run.addArg("-libdir"); + const critcl_linux_libout = critcl_linux_run.addOutputDirectoryArg("critcl-lib-linux"); + critcl_linux_run.addArgs(&.{ "-pkg", "tcllibc" }); + for (common.tcllibCritclFiles(b, "../tcllib")) |cf| { + //uuid's accelerator is WINDOWS-ONLY C (rpcrt4 UuidCreate behind a + //tcl_platform(platform)=="windows" guard evaluated in the critcl + //DRIVER - which is the windows suite shell here, so it would emit + //windows.h includes into the linux compile). A native linux critcl + //build emits NO uuid C code (the guard is false there), so + //excluding the file reproduces upstream's own linux package shape: + //uuid rides its pure-tcl path, which uses the md5 accelerator this + //package does carry. + if (std.mem.eql(u8, cf, "uuid/uuid.tcl")) continue; + critcl_linux_run.addFileArg(b.path(b.pathJoin(&.{ "../tcllib/modules", cf }))); + } + critcl_linux_run.setEnvironmentVariable("PATH", b.fmt("{s}{c}{s}", .{ zigdir, std.fs.path.delimiter, inherited_path })); + const tcllibc_linux_install = b.addInstallDirectory(.{ + .source_dir = critcl_linux_libout, + .install_dir = .prefix, + .install_subdir = "lib-linux-x86_64", + }); + const tcllibc_linux_gate = b.addRunArtifact(tclsh_exe); + common.scrubTclEnv(tcllibc_linux_gate); + tcllibc_linux_gate.setEnvironmentVariable("TCL_LIBRARY", tcl_library_src); + tcllibc_linux_gate.has_side_effects = true; + tcllibc_linux_gate.addFileArg(b.path("tools/elf_gate.tcl")); + tcllibc_linux_gate.addArgs(&.{ "-expect", "x86_64", "-root" }); + tcllibc_linux_gate.addArg(common.replaceAll(b, b.pathJoin(&.{ b.install_path, "lib-linux-x86_64", "tcllibc" }), "\\", "/")); + tcllibc_linux_gate.step.dependOn(&tcllibc_linux_install.step); + tcllibc_linux_step.dependOn(&tcllibc_linux_gate.step); + const testreports_dir = common.replaceAll(b, b.pathJoin(&.{ b.install_path, "testreports" }), "\\", "/"); // ================== G-103 runtime kit family ================== @@ -2609,7 +2668,7 @@ pub fn build(b: *std.Build) !void { //FAMILY KIT (kit-family-artifacts' proof-doubling rationale: the kit's //attached tcllib/tcllibc hash the very zips being published). //Publication to the real punkbin repo stays a deliberate user step. - const library_artifacts_step = b.step("library-artifacts", "emit punkbin lib-tier artifacts (-tcl9-r.zip + toml + sha1sums) from the verified tcllib/tcllibc installs -> /library/punkbin/lib"); + const library_artifacts_step = b.step("library-artifacts", "emit punkbin lib-tier artifacts (-tcl9-r.zip + toml + sha1sums) from the verified tcllib/tcllibc installs incl. the linux-x86_64 cross build -> /library/punkbin/lib"); const librev = b.option(u32, "librev", "assembly revision N for the -r library artifact names (library-artifacts; default 1 - nothing published yet)") orelse 1; //punkzip: staged upstream checkout (sources.config 'punkzip' record / //build.zig.zon pin), compiled for the build host - a build tool, not a @@ -2638,6 +2697,7 @@ pub fn build(b: *std.Build) !void { const libart_outdir = common.replaceAll(b, b.pathJoin(&.{ b.install_path, "library", "punkbin" }), "\\", "/"); const tcllib_installed = common.replaceAll(b, b.pathJoin(&.{ b.install_path, "lib", b.fmt("tcllib{s}", .{tcllib_ver}) }), "\\", "/"); const tcllibc_installed = common.replaceAll(b, b.pathJoin(&.{ b.install_path, "lib", "tcllibc" }), "\\", "/"); + const tcllibc_linux_installed = common.replaceAll(b, b.pathJoin(&.{ b.install_path, "lib-linux-x86_64", "tcllibc" }), "\\", "/"); const lib_emit = b.addSystemCommand(&.{family_installed[0]}); common.scrubTclEnv(lib_emit); lib_emit.has_side_effects = true; @@ -2652,13 +2712,19 @@ pub fn build(b: *std.Build) !void { lib_emit.addArgs(&.{ "-testreports", testreports_dir }); //5-tuples: folder tier license testlibs {path} - tcllibc's [tests] //evidence is the tcllib suite run (it IS tcllib's accelerators; the - //accel smoke at build proved the bundled md5 accelerator loads) - lib_emit.addArgs(&.{ "-packages", b.fmt("tcllib{s} allplatforms BSD tcllib {{{s}}} tcllibc win32-x86_64 BSD tcllib {{{s}}}", .{ tcllib_ver, tcllib_installed, tcllibc_installed }) }); - //verified inputs only: the pure-tcl + accelerator smokes, and the - //plain family kit's own self-containment check (the emission runs - //under that kit) + //accel smoke at build proved the bundled md5 accelerator loads). + //The linux-x86_64 tcllibc (G-140) carries NO testlibs: the G-107 + //suite evidence attaches to the WIN32 accelerators the tests + //actually exercised - the cross .so's functional evidence is the + //WSL accelerator smoke recorded in the goal file, its build-time + //verification the structural ELF gate below. + lib_emit.addArgs(&.{ "-packages", b.fmt("tcllib{s} allplatforms BSD tcllib {{{s}}} tcllibc win32-x86_64 BSD tcllib {{{s}}} tcllibc linux-x86_64 BSD {{}} {{{s}}}", .{ tcllib_ver, tcllib_installed, tcllibc_installed, tcllibc_linux_installed }) }); + //verified inputs only: the pure-tcl + accelerator smokes, the linux + //cross build's structural ELF gate, and the plain family kit's own + //self-containment check (the emission runs under that kit) lib_emit.step.dependOn(&tcllib_smoke.step); lib_emit.step.dependOn(&tcllibc_smoke.step); + lib_emit.step.dependOn(&tcllibc_linux_gate.step); lib_emit.step.dependOn(family_checks[0]); library_artifacts_step.dependOn(&lib_emit.step); } @@ -2884,7 +2950,7 @@ fn bootstrapMode(b: *std.Build) !void { //suite.tcl performs after its fossil staging. Per-zig-version cache dir (object //caches must never be shared across zig versions - user-confirmed hazard), same //name suite.tcl derives so both flows share the staged cache. - const steps_opt = b.option([]const []const u8, "steps", "steps for the staged build (repeat the flag; default: install install-libraries make-zipfs smoke tklib tcllib tcllibc kit-family kit-family-artifacts library-artifacts - the full pipeline short of test-gate)") orelse @as([]const []const u8, &.{ "install", "install-libraries", "make-zipfs", "smoke", "tklib", "tcllib", "tcllibc", "kit-family", "kit-family-artifacts", "library-artifacts" }); + const steps_opt = b.option([]const []const u8, "steps", "steps for the staged build (repeat the flag; default: install install-libraries make-zipfs smoke tklib tcllib tcllibc tcllibc-linux kit-family kit-family-artifacts library-artifacts - the full pipeline short of test-gate)") orelse @as([]const []const u8, &.{ "install", "install-libraries", "make-zipfs", "smoke", "tklib", "tcllib", "tcllibc", "tcllibc-linux", "kit-family", "kit-family-artifacts", "library-artifacts" }); var cachever: []const u8 = builtin.zig_version_string; cachever = common.replaceAll(b, cachever, "+", "_"); cachever = common.replaceAll(b, cachever, "/", "_"); diff --git a/src/buildsuites/suite_tcl90/critcl_zig.config b/src/buildsuites/suite_tcl90/critcl_zig.config index e38ce851..507f5d78 100644 --- a/src/buildsuites/suite_tcl90/critcl_zig.config +++ b/src/buildsuites/suite_tcl90/critcl_zig.config @@ -1,14 +1,30 @@ # suite_tcl90 critcl configuration: zig cc as the C toolchain (G-098, G-102). # 'zig' is resolved from PATH - the suite recipe prepends the pinned bin/tools zig -# dir for the critcl invocation. Target is the native windows-gnu triple (matches -# the suite's tcl runtime ABI). +# dir for the critcl invocation. # -# The settings live under an EXPLICIT target, win32-x86_64-zig, and the recipe -# invokes critcl with '-target win32-x86_64-zig': critcl otherwise chooses its -# build target by PROBING the environment for compilers, which made the selection -# depend on what happened to be on PATH (a visible gcc landed on the config -# defaults; a scrubbed environment fell back to critcl's builtin msvc 'cl' -# target and never used these settings - G-102 finding). +# Settings live under EXPLICIT targets and the recipe invokes critcl with +# '-target
': critcl otherwise chooses its build target by PROBING the +# environment for compilers, which made the selection depend on what happened to +# be on PATH (a visible gcc landed on the config defaults; a scrubbed +# environment fell back to critcl's builtin msvc 'cl' target and never used +# these settings - G-102 finding). +# +# win32-x86_64-zig: the native windows-gnu triple (matches the suite's tcl +# runtime ABI). +# +# linux-x86_64-zig (G-140): CROSS target for the punk9linux kit payload - +# stubs-linked extensions only (critcl bundles its own Tcl headers and links no +# Tcl runtime, so no linux build host or cross-built tclsh is involved). The +# triple pins a dynamic-glibc floor, x86_64-linux-gnu.2.17: the consuming linux +# runtimes (punkbin tclkit-902 family) are glibc-dynamic, so a musl .so would +# mix libcs inside one process; 2.17 is the conservative CentOS7-era floor, +# supported by the pinned zig's bundled glibc stubs and far below any current +# consumer distro. The section's 'platform' identifier is linux-x86_64 +# (platform::generic vocabulary): critcl places the shared lib under +# // and its generated loader resolves that folder via +# ::critcl::runtime::MapPlatform (= platform::generic) on the target host - +# glibc detail stays out of the folder name, recorded instead in the punkbin +# artifact record and goals/G-140-linux-lib-tier-emission.md. platform win32-x86_64 @@ -32,3 +48,24 @@ win32-x86_64-zig embed_manifest win32-x86_64-zig ldoutput win32-x86_64-zig link_preload win32-x86_64-zig sharedlibext .dll + +linux-x86_64-zig platform linux-x86_64 +linux-x86_64-zig compile zig cc -target x86_64-linux-gnu.2.17 -c -fPIC +linux-x86_64-zig version zig version +linux-x86_64-zig link zig cc -target x86_64-linux-gnu.2.17 -shared +linux-x86_64-zig include -I +linux-x86_64-zig libinclude -L +linux-x86_64-zig object .o +linux-x86_64-zig output -o [list $outfile] +linux-x86_64-zig optimize -O2 +linux-x86_64-zig noassert -DNDEBUG +linux-x86_64-zig tclstubs -DUSE_TCL_STUBS +linux-x86_64-zig tkstubs -DUSE_TK_STUBS +linux-x86_64-zig debug_symbols -g +linux-x86_64-zig strip -Wl,-s +linux-x86_64-zig link_debug +linux-x86_64-zig link_release +linux-x86_64-zig embed_manifest +linux-x86_64-zig ldoutput +linux-x86_64-zig link_preload +linux-x86_64-zig sharedlibext .so diff --git a/src/buildsuites/suite_tcl90/suite.tcl b/src/buildsuites/suite_tcl90/suite.tcl index 7d450e1e..81f4f0b9 100644 --- a/src/buildsuites/suite_tcl90/suite.tcl +++ b/src/buildsuites/suite_tcl90/suite.tcl @@ -22,15 +22,17 @@ # -seedfossils read-only seed collection for missing clones (default ~/.fossils; "" disables) # -all <0|1> with 'clean': reserved (the clone store lives outside the stage) # -steps zig build steps. 'build' default: {install install-libraries -# make-zipfs smoke tklib tcllib tcllibc kit-family -# kit-family-artifacts library-artifacts} - the full pipeline -# short of the test steps: the G-103 runtime kit family -# (verified self-contained plain/punk/punk-bi shells -> -# out/family plus punkbin-layout -r artifacts + toml -# metadata; artifact revision via -zigargs {-Dfamilyrev=N}) -# then the G-138 punkbin lib-tier library artifacts -# (tcllib/tcllibc zips -> out/library/punkbin/lib; revision -# via -zigargs {-Dlibrev=N}). +# make-zipfs smoke tklib tcllib tcllibc tcllibc-linux +# kit-family kit-family-artifacts library-artifacts} - the +# full pipeline short of the test steps: the G-103 runtime +# kit family (verified self-contained plain/punk/punk-bi +# shells -> out/family plus punkbin-layout -r artifacts +# + toml metadata; artifact revision via -zigargs +# {-Dfamilyrev=N}) then the G-138 punkbin lib-tier library +# artifacts (tcllib/tcllibc zips incl. the G-140 +# linux-x86_64 cross-built tcllibc -> +# out/library/punkbin/lib; revision via -zigargs +# {-Dlibrev=N}). # 'test' default: {test-gate} (the # core suite gate); other test steps (G-107 library runs): # test-libraries (thread+tclvfs gated, tcllib+tklib recorded), @@ -140,7 +142,7 @@ array set opt { -optimize ReleaseFast -tclbranch {} -refresh 0 - -steps {install install-libraries make-zipfs smoke tklib tcllib tcllibc kit-family kit-family-artifacts library-artifacts} + -steps {install install-libraries make-zipfs smoke tklib tcllib tcllibc tcllibc-linux kit-family kit-family-artifacts library-artifacts} -testargs {} -zigargs {} -repofolder {} diff --git a/src/buildsuites/suite_tcl90/tools/elf_gate.tcl b/src/buildsuites/suite_tcl90/tools/elf_gate.tcl new file mode 100644 index 00000000..d48848e6 --- /dev/null +++ b/src/buildsuites/suite_tcl90/tools/elf_gate.tcl @@ -0,0 +1,93 @@ +#elf_gate.tcl (G-140): structural gate for cross-built ELF shared libraries on a +#build host that cannot dlopen them (a linux .so on windows) - the load-smoke +#stand-in for cross lanes; functional verification happens out-of-band on a +#matching host (WSL/native-linux accelerator smokes, recorded in the goal file). +# +#The checks mirror the G-133 classifier's ELF branch (punkboot::utils +#binary_arch_classify: ELF magic, EI_CLASS, EI_DATA, e_machine honouring +#endianness) plus e_type == ET_DYN - a dlopen'd extension must be a shared +#object. Self-contained plain Tcl (suite tools run under the suite-built shell, +#no punkshell modules). +# +#args: -root scanned recursively for *.so / *.so.N members; at least +# one member is required (an empty tree means the cross +# build produced nothing - a failure, not a pass) +# -expect required architecture: x86_64 | arm64 | i386 +#exit 0: every member classifies as ELF64 LSB ET_DYN ; exit 1 otherwise + +proc fail {msg} {puts stderr "elf_gate FAIL: $msg"; flush stderr; exit 1} +proc note {msg} {puts stdout "elf_gate: $msg"; flush stdout} + +array set opt {-root {} -expect x86_64} +foreach {k v} $argv { + if {![info exists opt($k)]} {fail "unknown option '$k'"} + set opt($k) $v +} +if {$opt(-root) eq ""} {fail "missing required option -root"} +set root [file normalize $opt(-root)] +if {![file isdirectory $root]} {fail "-root directory not found: $root"} + +#e_machine values per the G-133 classifier map (subset; extend as cross lanes appear) +array set machine_of {x86_64 62 arm64 183 i386 3} +if {![info exists machine_of($opt(-expect))]} { + fail "-expect '$opt(-expect)' not one of: [lsort [array names machine_of]]" +} +set want $machine_of($opt(-expect)) + +proc so_files {dir} { + set res {} + foreach f [lsort [glob -nocomplain -directory $dir -types f *]] { + set tail [file tail $f] + if {[string match *.so $tail] || [regexp {\.so\.[0-9]} $tail]} { + lappend res $f + } + } + foreach d [lsort [glob -nocomplain -directory $dir -types d *]] { + lappend res {*}[so_files $d] + } + return $res +} + +set sofiles [so_files $root] +if {![llength $sofiles]} {fail "no .so members found under $root"} + +set failures {} +foreach so $sofiles { + set rel [string range $so [string length $root]+1 end] + set fd [open $so r] + chan configure $fd -translation binary + set head [read $fd 20] + close $fd + if {[string length $head] < 20} { + lappend failures "$rel: too short for an ELF header ([string length $head] bytes)" + continue + } + binary scan $head a4cucu magic eclass edata + if {$magic ne "\x7fELF"} { + lappend failures "$rel: not ELF (magic [binary encode hex [string range $head 0 3]])" + continue + } + if {$eclass != 2} { + lappend failures "$rel: EI_CLASS $eclass (want 2 = ELF64)" + continue + } + if {$edata != 1} { + lappend failures "$rel: EI_DATA $edata (want 1 = little-endian)" + continue + } + binary scan $head @16susu etype emachine + if {$etype != 3} { + lappend failures "$rel: e_type $etype (want 3 = ET_DYN shared object)" + continue + } + if {$emachine != $want} { + lappend failures "$rel: e_machine $emachine (want $want = $opt(-expect))" + continue + } + note "OK $rel (ELF64 LSB ET_DYN $opt(-expect), [file size $so] bytes)" +} +if {[llength $failures]} { + fail "[llength $failures] of [llength $sofiles] members failed:\n [join $failures "\n "]" +} +puts "elf_gate OK: [llength $sofiles] ELF64 $opt(-expect) shared object(s) under $root" +exit 0 diff --git a/src/buildsuites/suite_tcl90/tools/library_artifacts.tcl b/src/buildsuites/suite_tcl90/tools/library_artifacts.tcl index 4929fc2d..b2844697 100644 --- a/src/buildsuites/suite_tcl90/tools/library_artifacts.tcl +++ b/src/buildsuites/suite_tcl90/tools/library_artifacts.tcl @@ -314,8 +314,12 @@ foreach {folder tier license testlibs pkgpath} $opt(-packages) { #deterministic build_id (uuid-shaped sha1 digest of stable identity inputs - #same input family as the runtime records: name, toolchain/optimize, driving - #patchlevel, per-member source checkout uuids) - set idseed "punkbin-artifact|$artifact|zig $opt(-zig)|$opt(-optimize)|tcl$opt(-tclpatch)|$provpairs" + #patchlevel, per-member source checkout uuids). The tier rides the seed as + #the artifact's repo path: same-NAMED artifacts exist in different target + #tiers (win32/linux tcllibc pairs, G-140) and must not share an identity + #digest. (Seed change 2026-07-30: pre-G-140 emissions seeded on the bare + #name - published r1 records keep their build_ids; revisions are immutable.) + set idseed "punkbin-artifact|lib/$tier/$artifact|zig $opt(-zig)|$opt(-optimize)|tcl$opt(-tclpatch)|$provpairs" set ihex [sha1::sha1 -hex $idseed] set build_id "[string range $ihex 0 7]-[string range $ihex 8 11]-[string range $ihex 12 15]-[string range $ihex 16 19]-[string range $ihex 20 31]" diff --git a/src/runtime/libpackages.toml b/src/runtime/libpackages.toml index c5625742..fad5883e 100644 --- a/src/runtime/libpackages.toml +++ b/src/runtime/libpackages.toml @@ -45,6 +45,13 @@ target = "allplatforms" name = "tcllibc-tcl9-r1.zip" target = "win32-x86_64" +# G-140: the linux-x86_64 cross-built accelerators (suite_tcl90 tcllibc-linux +# lane) consumed by punk9linux.vfs. Same immutable name in its own target +# folder; the generation+revision grammar keys the entry name instead. +[artifact.tcllibc-tcl9-linux] +name = "tcllibc-tcl9-r1.zip" +target = "linux-x86_64" + [artifact.tcllib-tcl8] name = "tcllib2.0-tcl8-r1.zip" target = "allplatforms" diff --git a/src/runtime/vendorlib_vfs.toml b/src/runtime/vendorlib_vfs.toml index b24aa27d..f5b3ec29 100644 --- a/src/runtime/vendorlib_vfs.toml +++ b/src/runtime/vendorlib_vfs.toml @@ -51,11 +51,12 @@ supersedes = ["udp1.0.12", "tcludp1.0.12"] # blanket. replace=true because the old tcl9 hand-drops nested md5c + tcllibc # INSIDE tcllib2.0 (same folder name as the new install - supersedes cannot # touch it). The tcl8 kits upgrade tcllib1.21 (+nested tcllibc 0.4 + md5c) -> -# tcllib 2.0 via supersedes. tcllibc is the win32-x86_64 build: punk9linux -# (linux target) deliberately gets only the platform-neutral tcllib2.0 - its -# linux-built tcllibc/tcllibc2.0 sibling folders are left as-is (a linux -# lib-tier emission is future work). punk86bawt carried a bare tcllibc only - -# it gets the tcllibc refresh and no tcllib entry. +# tcllib 2.0 via supersedes. tcllibc_tcl9 is the win32-x86_64 build for the +# windows kits; punk9linux (linux target) gets the platform-neutral tcllib2.0 +# plus its OWN tcllibc from the linux-x86_64 tier (G-140: the suite_tcl90 +# tcllibc-linux cross build - replace retires the provenance-less hand-dropped +# tcllibc, supersedes the stray-named tcllibc2.0). punk86bawt carried a bare +# tcllibc only - it gets the tcllibc refresh and no tcllib entry. [install.tcllib_tcl9] source_root = "packages" @@ -89,6 +90,15 @@ targets = [ ] supersedes = ["tcllibc2.0"] +[install.tcllibc_tcl9_linux] +source_root = "packages" +source = "linux-x86_64/tcl9/tcllibc" +replace = true +targets = [ + "punk9linux.vfs/lib_tcl9", +] +supersedes = ["tcllibc2.0"] + [install.tcllib_tcl8] source_root = "packages" source = "allplatforms/tcl8/tcllib2.0" diff --git a/src/vfs/punk9linux.vfs/lib_tcl9/tcllibc/critcl-rt.tcl b/src/vfs/punk9linux.vfs/lib_tcl9/tcllibc/critcl-rt.tcl index 01053a30..84c74113 100644 --- a/src/vfs/punk9linux.vfs/lib_tcl9/tcllibc/critcl-rt.tcl +++ b/src/vfs/punk9linux.vfs/lib_tcl9/tcllibc/critcl-rt.tcl @@ -1,381 +1,386 @@ -# -# Critcl - build C extensions on-the-fly -# -# Copyright (c) 2001-2007 Jean-Claude Wippler -# Copyright (c) 2002-2007 Steve Landers -# -# See http://wiki.tcl.tk/critcl -# -# This is the Critcl runtime that loads the appropriate -# shared library when a package is requested -# - -namespace eval ::critcl::runtime {} - -proc ::critcl::runtime::loadlib {dir package version libname initfun tsrc mapping args} { - # XXX At least parts of this can be done by the package generator, - # XXX like listing the Tcl files to source. The glob here allows - # XXX code-injection after-the-fact, by simply adding a .tcl in - # XXX the proper place. - set path [file join $dir [MapPlatform $mapping]] - set ext [info sharedlibextension] - set lib [file join $path $libname$ext] - set provide [list] - - # Now the runtime equivalent of a series of 'preFetch' commands. - if {[llength $args]} { - set preload [file join $path preload$ext] - foreach p $args { - set prelib [file join $path $p$ext] - if {[file readable $preload] && [file readable $prelib]} { - lappend provide [list load $preload];# XXX Move this out of the loop, do only once. - lappend provide [list ::critcl::runtime::preload $prelib] - } - } - } - - lappend provide [list load $lib $initfun] - foreach t $tsrc { - lappend loadcmd "::critcl::runtime::Fetch \$dir [list $t]" - } - lappend provide "package provide $package $version" - package ifneeded $package $version [join $provide "\n"] - return -} - -proc ::critcl::runtime::preFetch {path ext dll} { - set preload [file join $path preload$ext] - if {![file readable $preload]} return - - set prelib [file join $path $dll$ext] - if {![file readable $prelib]} return - - load $preload ; # Defines next command. - ::critcl::runtime::preload $prelib - return -} - -proc ::critcl::runtime::Fetch {dir t} { - # The 'Ignore' disables compile & run functionality. - - # Background: If the regular critcl package is already loaded, and - # this prebuilt package uses its defining .tcl file also as a - # 'tsources' then critcl might try to collect data and build it - # because of the calls to its API, despite the necessary binaries - # already being present, just not in the critcl cache. That is - # redundant in the best case, and fails in the worst case (no - # compiler), preventing the use o a perfectly fine package. The - # 'ignore' call now tells critcl that it should ignore any calls - # made to it by the sourced files, and thus avoids that trouble. - - # The other case, the regular critcl package getting loaded after - # this prebuilt package is irrelevant. At that point the tsources - # were already run, and used the dummy procedures defined in the - # critcl-rt.tcl, which ignore the calls by definition. - - set t [file join $dir tcl $t] - ::critcl::Ignore $t - uplevel #0 [list source $t] - return -} - -proc ::critcl::runtime::precopy {dll} { - # This command is only used on Windows when preloading out of a - # VFS that doesn't support direct loading (usually, a Starkit) - # - we preserve the dll name so that dependencies are satisfied - # - The critcl::runtime::preload command is defined in the supporting - # "preload" package, implemented in "critcl/lib/critcl/critcl_c/preload.c" - - global env - if {[info exists env(TEMP)]} { - set dir $env(TEMP) - } elseif {[info exists env(TMP)]} { - set dir $env(TMP) - } elseif {[file exists $env(HOME)]} { - set dir $env(HOME) - } else { - set dir . - } - set dir [file join $dir TCL[pid]] - set i 0 - while {[file exists $dir]} { - append dir [incr i] - } - set new [file join $dir [file tail $dll]] - file mkdir $dir - file copy $dll $new - return $new -} - -proc ::critcl::runtime::MapPlatform {{mapping {}}} { - # A sibling of critcl::platform that applies the platform mapping - - set platform [::platform::generic] - set version $::tcl_platform(osVersion) - if {[string match "macosx-*" $platform]} { - # "normalize" the osVersion to match OSX release numbers - set v [split $version .] - set v1 [lindex $v 0] - set v2 [lindex $v 1] - incr v1 -4 - set version 10.$v1.$v2 - } else { - # Strip trailing non-version info - regsub -- {-.*$} $version {} version - } - foreach {config map} $mapping { - if {![string match $config $platform]} continue - set minver [lindex $map 1] - if {[package vcompare $version $minver] < 0} continue - set platform [lindex $map 0] - break - } - return $platform -} - -# Dummy implementation of the critcl package, if not present -if {![llength [info commands ::critcl::Ignore]]} { - namespace eval ::critcl {} - proc ::critcl::Ignore {args} { - namespace eval ::critcl::v {} - set ::critcl::v::ignore([file normalize [lindex $args 0]]) . - } -} -if {![llength [info commands ::critcl::api]]} { - namespace eval ::critcl {} - proc ::critcl::api {args} {} -} -if {![llength [info commands ::critcl::at]]} { - namespace eval ::critcl {} - proc ::critcl::at {args} {} -} -if {![llength [info commands ::critcl::cache]]} { - namespace eval ::critcl {} - proc ::critcl::cache {args} {} -} -if {![llength [info commands ::critcl::ccode]]} { - namespace eval ::critcl {} - proc ::critcl::ccode {args} {} -} -if {![llength [info commands ::critcl::ccommand]]} { - namespace eval ::critcl {} - proc ::critcl::ccommand {args} {} -} -if {![llength [info commands ::critcl::cdata]]} { - namespace eval ::critcl {} - proc ::critcl::cdata {args} {} -} -if {![llength [info commands ::critcl::cdefines]]} { - namespace eval ::critcl {} - proc ::critcl::cdefines {args} {} -} -if {![llength [info commands ::critcl::cflags]]} { - namespace eval ::critcl {} - proc ::critcl::cflags {args} {} -} -if {![llength [info commands ::critcl::cheaders]]} { - namespace eval ::critcl {} - proc ::critcl::cheaders {args} {} -} -if {![llength [info commands ::critcl::check]]} { - namespace eval ::critcl {} - proc ::critcl::check {args} {return 0} -} -if {![llength [info commands ::critcl::cinit]]} { - namespace eval ::critcl {} - proc ::critcl::cinit {args} {} -} -if {![llength [info commands ::critcl::clibraries]]} { - namespace eval ::critcl {} - proc ::critcl::clibraries {args} {} -} -if {![llength [info commands ::critcl::compiled]]} { - namespace eval ::critcl {} - proc ::critcl::compiled {args} {return 1} -} -if {![llength [info commands ::critcl::compiling]]} { - namespace eval ::critcl {} - proc ::critcl::compiling {args} {return 0} -} -if {![llength [info commands ::critcl::config]]} { - namespace eval ::critcl {} - proc ::critcl::config {args} {} -} -if {![llength [info commands ::critcl::cproc]]} { - namespace eval ::critcl {} - proc ::critcl::cproc {args} {} -} -if {![llength [info commands ::critcl::csources]]} { - namespace eval ::critcl {} - proc ::critcl::csources {args} {} -} -if {![llength [info commands ::critcl::debug]]} { - namespace eval ::critcl {} - proc ::critcl::debug {args} {} -} -if {![llength [info commands ::critcl::done]]} { - namespace eval ::critcl {} - proc ::critcl::done {args} {return 1} -} -if {![llength [info commands ::critcl::failed]]} { - namespace eval ::critcl {} - proc ::critcl::failed {args} {return 0} -} -if {![llength [info commands ::critcl::framework]]} { - namespace eval ::critcl {} - proc ::critcl::framework {args} {} -} -if {![llength [info commands ::critcl::include]]} { - namespace eval ::critcl {} - proc ::critcl::include {args} {} -} -if {![llength [info commands ::critcl::ldflags]]} { - namespace eval ::critcl {} - proc ::critcl::ldflags {args} {} -} -if {![llength [info commands ::critcl::license]]} { - namespace eval ::critcl {} - proc ::critcl::license {args} {} -} -if {![llength [info commands ::critcl::load]]} { - namespace eval ::critcl {} - proc ::critcl::load {args} {return 1} -} -if {![llength [info commands ::critcl::make]]} { - namespace eval ::critcl {} - proc ::critcl::make {args} {} -} -if {![llength [info commands ::critcl::meta]]} { - namespace eval ::critcl {} - proc ::critcl::meta {args} {} -} -if {![llength [info commands ::critcl::platform]]} { - namespace eval ::critcl {} - proc ::critcl::platform {args} {} -} -if {![llength [info commands ::critcl::preload]]} { - namespace eval ::critcl {} - proc ::critcl::preload {args} {} -} -if {![llength [info commands ::critcl::source]]} { - namespace eval ::critcl {} - proc ::critcl::source {args} {} -} -if {![llength [info commands ::critcl::tcl]]} { - namespace eval ::critcl {} - proc ::critcl::tcl {args} {} -} -if {![llength [info commands ::critcl::tk]]} { - namespace eval ::critcl {} - proc ::critcl::tk {args} {} -} -if {![llength [info commands ::critcl::tsources]]} { - namespace eval ::critcl {} - proc ::critcl::tsources {args} {} -} -if {![llength [info commands ::critcl::userconfig]]} { - namespace eval ::critcl {} - proc ::critcl::userconfig {args} {} -} - -# Define a clone of platform::generic, if needed -if {![llength [info commands ::platform::generic]]} { - namespace eval ::platform {} - proc ::platform::generic {} { - global tcl_platform - - set plat [string tolower [lindex $tcl_platform(os) 0]] - set cpu $tcl_platform(machine) - - switch -glob -- $cpu { - sun4* { - set cpu sparc - } - intel - - ia32* - - i*86* { - set cpu ix86 - } - x86_64 { - if {$tcl_platform(wordSize) == 4} { - # See Example <1> at the top of this file. - set cpu ix86 - } - } - ppc - - "Power*" { - set cpu powerpc - } - "arm*" { - set cpu arm - } - ia64 { - if {$tcl_platform(wordSize) == 4} { - append cpu _32 - } - } - } - - switch -glob -- $plat { - windows { - if {$tcl_platform(platform) == "unix"} { - set plat cygwin - } else { - set plat win32 - } - if {$cpu eq "amd64"} { - # Do not check wordSize, win32-x64 is an IL32P64 platform. - set cpu x86_64 - } - } - sunos { - set plat solaris - if {[string match "ix86" $cpu]} { - if {$tcl_platform(wordSize) == 8} { - set cpu x86_64 - } - } elseif {![string match "ia64*" $cpu]} { - # sparc - if {$tcl_platform(wordSize) == 8} { - append cpu 64 - } - } - } - darwin { - set plat macosx - # Correctly identify the cpu when running as a 64bit - # process on a machine with a 32bit kernel - if {$cpu eq "ix86"} { - if {$tcl_platform(wordSize) == 8} { - set cpu x86_64 - } - } - } - aix { - set cpu powerpc - if {$tcl_platform(wordSize) == 8} { - append cpu 64 - } - } - hp-ux { - set plat hpux - if {![string match "ia64*" $cpu]} { - set cpu parisc - if {$tcl_platform(wordSize) == 8} { - append cpu 64 - } - } - } - osf1 { - set plat tru64 - } - default { - set plat [lindex [split $plat _-] 0] - } - } - - return "${plat}-${cpu}" - } -} - - +# +# Critcl - build C extensions on-the-fly +# +# Copyright (c) 2001-2007 Jean-Claude Wippler +# Copyright (c) 2002-2007 Steve Landers +# +# See http://wiki.tcl.tk/critcl +# +# This is the Critcl runtime that loads the appropriate +# shared library when a package is requested +# + +namespace eval ::critcl::runtime {} + +proc ::critcl::runtime::loadlib {dir package version libname initfun tsrc mapping args} { + # XXX At least parts of this can be done by the package generator, + # XXX like listing the Tcl files to source. The glob here allows + # XXX code-injection after-the-fact, by simply adding a .tcl in + # XXX the proper place. + set path [file join $dir [MapPlatform $mapping]] + set ext [info sharedlibextension] + set lib [file join $path $libname$ext] + set provide [list] + + # Now the runtime equivalent of a series of 'preFetch' commands. + if {[llength $args]} { + set preload [file join $path preload$ext] + foreach p $args { + set prelib [file join $path $p$ext] + if {[file readable $preload] && [file readable $prelib]} { + lappend provide [list load $preload];# XXX Move this out of the loop, do only once. + lappend provide [list ::critcl::runtime::preload $prelib] + } + } + } + + lappend provide [list load $lib $initfun] + foreach t $tsrc { + lappend loadcmd "::critcl::runtime::Fetch \$dir [list $t]" + } + lappend provide "package provide $package $version" + package ifneeded $package $version [join $provide "\n"] + return +} + +proc ::critcl::runtime::preFetch {path ext dll} { + set preload [file join $path preload$ext] + if {![file readable $preload]} return + + set prelib [file join $path $dll$ext] + if {![file readable $prelib]} return + + load $preload ; # Defines next command. + ::critcl::runtime::preload $prelib + return +} + +proc ::critcl::runtime::Fetch {dir t} { + # The 'Ignore' disables compile & run functionality. + + # Background: If the regular critcl package is already loaded, and + # this prebuilt package uses its defining .tcl file also as a + # 'tsources' then critcl might try to collect data and build it + # because of the calls to its API, despite the necessary binaries + # already being present, just not in the critcl cache. That is + # redundant in the best case, and fails in the worst case (no + # compiler), preventing the use o a perfectly fine package. The + # 'ignore' call now tells critcl that it should ignore any calls + # made to it by the sourced files, and thus avoids that trouble. + + # The other case, the regular critcl package getting loaded after + # this prebuilt package is irrelevant. At that point the tsources + # were already run, and used the dummy procedures defined in the + # critcl-rt.tcl, which ignore the calls by definition. + + set t [file join $dir tcl $t] + ::critcl::Ignore $t + uplevel #0 [list source $t] + return +} + +proc ::critcl::runtime::precopy {dll} { + # This command is only used on Windows when preloading out of a + # VFS that doesn't support direct loading (usually, a Starkit) + # - we preserve the dll name so that dependencies are satisfied + # - The critcl::runtime::preload command is defined in the supporting + # "preload" package, implemented in "critcl/lib/critcl/critcl_c/preload.c" + + global env + if {[info exists env(TEMP)]} { + set dir $env(TEMP) + } elseif {[info exists env(TMP)]} { + set dir $env(TMP) + } elseif {[file exists $env(HOME)]} { + set dir $env(HOME) + } else { + set dir . + } + set dir [file join $dir TCL[pid]] + set i 0 + while {[file exists $dir]} { + append dir [incr i] + } + set new [file join $dir [file tail $dll]] + file mkdir $dir + file copy $dll $new + return $new +} + +proc ::critcl::runtime::MapPlatform {{mapping {}}} { + # A sibling of critcl::platform that applies the platform mapping + + set platform [::platform::generic] + set version $::tcl_platform(osVersion) + if {[string match "macosx-*" $platform]} { + # "normalize" the osVersion to match OSX release numbers + set v [split $version .] + set v1 [lindex $v 0] + set v2 [lindex $v 1] + incr v1 -4 + set version 10.$v1.$v2 + } else { + # Strip trailing non-version info + regsub -- {-.*$} $version {} version + } + foreach {config map} $mapping { + if {![string match $config $platform]} continue + set minver [lindex $map 1] + if {[package vcompare $version $minver] < 0} continue + set platform [lindex $map 0] + break + } + return $platform +} + +# Dummy implementation of the critcl package, if not present +if {![llength [info commands ::critcl::Ignore]]} { + namespace eval ::critcl {} + proc ::critcl::Ignore {args} { + namespace eval ::critcl::v {} + set ::critcl::v::ignore([file normalize [lindex $args 0]]) . + } +} +if {![llength [info commands ::critcl::api]]} { + namespace eval ::critcl {} + proc ::critcl::api {args} {} +} +if {![llength [info commands ::critcl::at]]} { + namespace eval ::critcl {} + proc ::critcl::at {args} {} +} +if {![llength [info commands ::critcl::cache]]} { + namespace eval ::critcl {} + proc ::critcl::cache {args} {} +} +if {![llength [info commands ::critcl::ccode]]} { + namespace eval ::critcl {} + proc ::critcl::ccode {args} {} +} +if {![llength [info commands ::critcl::ccommand]]} { + namespace eval ::critcl {} + proc ::critcl::ccommand {args} {} +} +if {![llength [info commands ::critcl::cdata]]} { + namespace eval ::critcl {} + proc ::critcl::cdata {args} {} +} +if {![llength [info commands ::critcl::cdefines]]} { + namespace eval ::critcl {} + proc ::critcl::cdefines {args} {} +} +if {![llength [info commands ::critcl::cflags]]} { + namespace eval ::critcl {} + proc ::critcl::cflags {args} {} +} +if {![llength [info commands ::critcl::cheaders]]} { + namespace eval ::critcl {} + proc ::critcl::cheaders {args} {} +} +if {![llength [info commands ::critcl::check]]} { + namespace eval ::critcl {} + proc ::critcl::check {args} {return 0} +} +if {![llength [info commands ::critcl::cinit]]} { + namespace eval ::critcl {} + proc ::critcl::cinit {args} {} +} +if {![llength [info commands ::critcl::clibraries]]} { + namespace eval ::critcl {} + proc ::critcl::clibraries {args} {} +} +if {![llength [info commands ::critcl::compiled]]} { + namespace eval ::critcl {} + proc ::critcl::compiled {args} {return 1} +} +if {![llength [info commands ::critcl::compiling]]} { + namespace eval ::critcl {} + proc ::critcl::compiling {args} {return 0} +} +if {![llength [info commands ::critcl::config]]} { + namespace eval ::critcl {} + proc ::critcl::config {args} {} +} +if {![llength [info commands ::critcl::cproc]]} { + namespace eval ::critcl {} + proc ::critcl::cproc {args} {} +} +if {![llength [info commands ::critcl::csources]]} { + namespace eval ::critcl {} + proc ::critcl::csources {args} {} +} +if {![llength [info commands ::critcl::debug]]} { + namespace eval ::critcl {} + proc ::critcl::debug {args} {} +} +if {![llength [info commands ::critcl::done]]} { + namespace eval ::critcl {} + proc ::critcl::done {args} {return 1} +} +if {![llength [info commands ::critcl::failed]]} { + namespace eval ::critcl {} + proc ::critcl::failed {args} {return 0} +} +if {![llength [info commands ::critcl::framework]]} { + namespace eval ::critcl {} + proc ::critcl::framework {args} {} +} +if {![llength [info commands ::critcl::include]]} { + namespace eval ::critcl {} + proc ::critcl::include {args} {} +} +if {![llength [info commands ::critcl::ldflags]]} { + namespace eval ::critcl {} + proc ::critcl::ldflags {args} {} +} +if {![llength [info commands ::critcl::license]]} { + namespace eval ::critcl {} + proc ::critcl::license {args} {} +} +if {![llength [info commands ::critcl::load]]} { + namespace eval ::critcl {} + proc ::critcl::load {args} {return 1} +} +if {![llength [info commands ::critcl::make]]} { + namespace eval ::critcl {} + proc ::critcl::make {args} {} +} +if {![llength [info commands ::critcl::meta]]} { + namespace eval ::critcl {} + proc ::critcl::meta {args} {} +} +if {![llength [info commands ::critcl::platform]]} { + namespace eval ::critcl {} + proc ::critcl::platform {args} {} +} +if {![llength [info commands ::critcl::preload]]} { + namespace eval ::critcl {} + proc ::critcl::preload {args} {} +} +if {![llength [info commands ::critcl::source]]} { + namespace eval ::critcl {} + proc ::critcl::source {args} {} +} +if {![llength [info commands ::critcl::tcl]]} { + namespace eval ::critcl {} + proc ::critcl::tcl {args} {} +} +if {![llength [info commands ::critcl::tk]]} { + namespace eval ::critcl {} + proc ::critcl::tk {args} {} +} +if {![llength [info commands ::critcl::tsources]]} { + namespace eval ::critcl {} + proc ::critcl::tsources {args} {} +} +if {![llength [info commands ::critcl::userconfig]]} { + namespace eval ::critcl {} + proc ::critcl::userconfig {args} {} +} + +# Define a clone of platform::generic, if needed +if {![llength [info commands ::platform::generic]]} { + namespace eval ::platform {} + proc ::platform::generic {} { + global tcl_platform + + set plat [string tolower [lindex $tcl_platform(os) 0]] + set cpu $tcl_platform(machine) + + switch -glob -- $cpu { + sun4* { + set cpu sparc + } + intel - + ia32* - + i*86* { + set cpu ix86 + } + x86_64 { + if {$tcl_platform(wordSize) == 4} { + # See Example <1> at the top of this file. + set cpu ix86 + } + } + ppc - + "Power*" { + set cpu powerpc + } + "arm*" { + set cpu arm + } + ia64 { + if {$tcl_platform(wordSize) == 4} { + append cpu _32 + } + } + } + + switch -glob -- $plat { + windows { + if {$tcl_platform(platform) eq "unix"} { + set plat cygwin + } else { + set plat win32 + } + if {$cpu eq "amd64"} { + # Do not check wordSize, win32-x64 is an IL32P64 platform. + set cpu x86_64 + } + } + sunos { + set plat solaris + if {[string match "ix86" $cpu]} { + if {$tcl_platform(wordSize) == 8} { + set cpu x86_64 + } + } elseif {![string match "ia64*" $cpu]} { + # sparc + if {$tcl_platform(wordSize) == 8} { + append cpu 64 + } + } + } + darwin { + set major [lindex [split $tcl_platform(osVersion) .] 0] + if {$major > 19} { + set plat macos + } else { + set plat macosx + } + # Correctly identify the cpu when running as a 64bit + # process on a machine with a 32bit kernel + if {$cpu eq "ix86"} { + if {$tcl_platform(wordSize) == 8} { + set cpu x86_64 + } + } + } + aix { + set cpu powerpc + if {$tcl_platform(wordSize) == 8} { + append cpu 64 + } + } + hp-ux { + set plat hpux + if {![string match "ia64*" $cpu]} { + set cpu parisc + if {$tcl_platform(wordSize) == 8} { + append cpu 64 + } + } + } + osf1 { + set plat tru64 + } + default { + set plat [lindex [split $plat _-] 0] + } + } + + return "${plat}-${cpu}" + } +} + + diff --git a/src/vfs/punk9linux.vfs/lib_tcl9/tcllibc/license.terms b/src/vfs/punk9linux.vfs/lib_tcl9/tcllibc/license.terms index 96651147..6975e4c9 100644 --- a/src/vfs/punk9linux.vfs/lib_tcl9/tcllibc/license.terms +++ b/src/vfs/punk9linux.vfs/lib_tcl9/tcllibc/license.terms @@ -1 +1 @@ -<> +<> diff --git a/src/vfs/punk9linux.vfs/lib_tcl9/tcllibc/linux-x86_64/tcllibc.so b/src/vfs/punk9linux.vfs/lib_tcl9/tcllibc/linux-x86_64/tcllibc.so index dee52eee54dfc32f9563403e6de1dd74922ba96e..b84c100f9965695adcd1411eb71a1d81bcdc4889 100644 GIT binary patch literal 394784 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 J9}*{X{{cb)h^qhq literal 397136 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 z�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%0Ax<(ejHJ@0)^M(Z8c%oz_8E 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