@@ -190,6 +190,8 @@ jobs:
190190
191191 - name : M3 and P3 chain-loaded managed toolset
192192 continue-on-error : true
193+ env :
194+ SKIP_M3B : ${{ contains(github.event.head_commit.message, '[m3c]') && '1' || '' }}
193195 run : |
194196 set +e +o pipefail
195197 T="$RUNNER_TEMP/triplets"; mkdir -p "$T"
@@ -220,12 +222,16 @@ jobs:
220222 }
221223 setenv "$TOOLS"
222224 run zlib "M3 managed, CMake port" a
223- run icu "M3 managed, make port" a
225+ [ -n "$SKIP_M3B" ] || run icu "M3 managed, make port" a
224226 # The make-based port finds link.exe on PATH; vcpkg keeps the caller's PATH
225227 # only through VCPKG_KEEP_ENV_VARS.
226- ( export PATH="$TOOLS/bin/Hostx64/x64:$SDK/bin/$SDKVER/x64:/c/Windows/system32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowerShell/v1.0"
227- export VCPKG_KEEP_ENV_VARS=PATH
228- run icu "M3 managed, make port, toolset first on a kept PATH" k )
228+ d="$RUNNER_TEMP/m3-icu-k"; rm -rf "$d"; mkdir -p "$d"
229+ printf '{ "name": "m", "version": "0.1.0", "dependencies": ["icu"] }\n' > "$d/vcpkg.json"
230+ KP="$(cygpath -w "$TOOLS/bin/Hostx64/x64");$(cygpath -w "$SDK/bin/$SDKVER/x64");C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0"
231+ ( cd "$d" && MSYS2_ENV_CONV_EXCL='*' PATH="$KP" VCPKG_KEEP_ENV_VARS=PATH "$V" install --triplet x64-windows-chain --host-triplet x64-windows-chain --overlay-triplets="$(cygpath -w "$T")" ) > m3-icu-k.log 2>&1
232+ rc=$?
233+ echo "READING M3c: icu with the toolset first on a kept PATH, exit $rc; $(grep -iE 'Restored [0-9]+ package' m3-icu-k.log | head -1)"
234+ [ $rc = 0 ] || { grep -iE 'error' m3-icu-k.log | head -8; tail -8 m3-icu-k.log; }
229235 # P3: the same toolset at another path; a restore means the same ABI hash.
230236 cp -r "$TOOLS" "$RUNNER_TEMP/tc2"
231237 setenv "$RUNNER_TEMP/tc2"
0 commit comments