|
78 | 78 | else |
79 | 79 | xlings install "mcpp@$MCPP_VERSION" -y -g |
80 | 80 | fi |
| 81 | + # ⚠️⚠️ TRANSITION: GIVE THE BOOTSTRAP THE glibc ITS BINDING NAMES. |
| 82 | + # |
| 83 | + # `xim:glibc`'s `latest` moved from `2.44` to `2.44.2`. A payload |
| 84 | + # directory is named after the version a request RESOLVED to, while a |
| 85 | + # RuntimeBinding carries the version that was DECLARED — and the xlings |
| 86 | + # a released mcpp vendors into its own sandbox still declares `2.44`. |
| 87 | + # So a clean machine installs `2.44.2`, the toolchain fixup asks for |
| 88 | + # `2.44`, and the build stops before anything is compiled: |
| 89 | + # |
| 90 | + # error: selected RuntimeBinding glibc@2.44 requires payload |
| 91 | + # '…/xpkgs/xim-x-glibc/2.44', but it is not installed |
| 92 | + # |
| 93 | + # ⚠️ On every NEW machine and on none that already existed, which is why |
| 94 | + # it is invisible from a developer's own. Measured on `main` as readily |
| 95 | + # as on any branch — the index records the same failure verbatim in |
| 96 | + # `pkgs/g/glibc.lua` and states the rule it broke: "The index is DATA |
| 97 | + # and the client is a PROGRAM: the consumer ships first." |
| 98 | + # |
| 99 | + # ⭐ REMOVE THIS once a released mcpp resolves it. `mcpp 2026.8.27.1` |
| 100 | + # accepts an installed payload whose version REFINES the requested one |
| 101 | + # (`payload_dir_for_version`), so a bootstrap from it needs nothing |
| 102 | + # here. Until then the missing payload is simply installed. |
| 103 | + if [ -x "$HOME/.mcpp/registry/bin/xlings" ]; then |
| 104 | + XLINGS_HOME="$HOME/.mcpp/registry" XLINGS_NON_INTERACTIVE=1 \ |
| 105 | + "$HOME/.mcpp/registry/bin/xlings" install glibc@2.44 -y -g \ |
| 106 | + >/dev/null 2>&1 || true |
| 107 | + echo "glibc payloads present: $(ls "$HOME/.mcpp/registry/data/xpkgs/xim-x-glibc" 2>/dev/null | tr '\n' ' ')" |
| 108 | + fi |
81 | 109 | mcpp --version |
82 | 110 | mcpp self config --mirror GLOBAL |
83 | 111 | # ⭐⭐ CROSS-VALIDATION: BUILD THE mcpp UNDER REVIEW AND USE THAT ONE. |
|
0 commit comments