|
99 | 99 | [ -d "$src" ] || git clone --quiet --depth 1 \ |
100 | 100 | --branch "$MCPP_SOURCE_REF" \ |
101 | 101 | https://github.com/mcpp-community/mcpp.git "$src" |
| 102 | + # ⚠️ THE CLONE'S OWN WORKSPACE PIN MUST NOT DECIDE WHICH mcpp |
| 103 | + # BUILDS IT. `.xlings.json` at mcpp's root pins the mcpp that |
| 104 | + # compiles mcpp, and that pin does not move when mcpp is released — |
| 105 | + # so a build inside the checkout obeys it and tries to install a |
| 106 | + # version the index may no longer carry: |
| 107 | + # |
| 108 | + # [error] xlings: version '2026.8.17.1' not found for 'mcpp' |
| 109 | + # available: 2026.8.25.1 |
| 110 | + # |
| 111 | + # What is wanted here is the source compiled by the mcpp installed |
| 112 | + # above, which is exactly what removing the file leaves. |
| 113 | + rm -f "$src/.xlings.json" |
102 | 114 | ( cd "$src" && mcpp build --release ) |
103 | 115 | built=$(find "$src/target" -type f -name mcpp -perm -u+x | head -1) |
104 | 116 | [ -n "$built" ] || { echo "::error::mcpp did not build from $MCPP_SOURCE_REF"; exit 1; } |
@@ -305,6 +317,18 @@ jobs: |
305 | 317 | [ -d "$src" ] || git clone --quiet --depth 1 \ |
306 | 318 | --branch "$MCPP_SOURCE_REF" \ |
307 | 319 | https://github.com/mcpp-community/mcpp.git "$src" |
| 320 | + # ⚠️ THE CLONE'S OWN WORKSPACE PIN MUST NOT DECIDE WHICH mcpp |
| 321 | + # BUILDS IT. `.xlings.json` at mcpp's root pins the mcpp that |
| 322 | + # compiles mcpp, and that pin does not move when mcpp is released — |
| 323 | + # so a build inside the checkout obeys it and tries to install a |
| 324 | + # version the index may no longer carry: |
| 325 | + # |
| 326 | + # [error] xlings: version '2026.8.17.1' not found for 'mcpp' |
| 327 | + # available: 2026.8.25.1 |
| 328 | + # |
| 329 | + # What is wanted here is the source compiled by the mcpp installed |
| 330 | + # above, which is exactly what removing the file leaves. |
| 331 | + rm -f "$src/.xlings.json" |
308 | 332 | ( cd "$src" && mcpp build --release ) |
309 | 333 | built=$(find "$src/target" -type f -name mcpp -perm -u+x | head -1) |
310 | 334 | [ -n "$built" ] || { echo "::error::mcpp did not build from $MCPP_SOURCE_REF"; exit 1; } |
|
0 commit comments