Skip to content

Commit e839bac

Browse files
committed
ci: pin 抬到 2026.8.5.4 —— windows 改用 lld 才真正修掉 LNK1170
2026.8.5.3 把 mcpp **自己**写的响应文件改成按行分隔,必要但不充分:clang 作为 driver 时会**再生成一个**响应文件转发给链接器,那个是单行的,我们改不到。所以 opencv-module 在 .5.3 上仍然 LNK1170(而且是编译完 795s / 1166s 之后)。 2026.8.5.4 让 windows 的 clang 链接改用 lld —— 它的响应文件解析没有单行上限, 消掉的是一整类而不是把数字调大。同时新增了命令长度预算表与计划期校验,超限会在 还没编译任何东西时报出边名与上限,而不是在构建末尾由别人的程序抛一个没有上下文 的错。 本轮全量将同时验证三件事:lld 修复、分片提速、耗时排名。
1 parent cf93e24 commit e839bac

1 file changed

Lines changed: 11 additions & 8 deletions

File tree

.github/workflows/validate.yml

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -20,16 +20,19 @@ on:
2020
default: global
2121

2222
env:
23-
# 2026.8.5.3 carries two things this workflow depends on:
23+
# 2026.8.5.4 carries two things this workflow depends on:
2424
# .5.1 `tools = [...]` — how a consumer asks for a dependency's
2525
# `kind = "bin"` target, which tests/examples/protobuf-protoc is built
2626
# on. Before it: "tools must be a string, inline dep table, or nested
2727
# table".
28-
# .5.3 link response files separate objects by NEWLINES. link.exe caps a
29-
# response-file LINE at 128 KiB, and opencv-module / opencv-module-dnn
30-
# went past it on windows — after 795s / 1166s of compiling:
28+
# .5.4 windows links with lld. link.exe caps a response-file LINE at
29+
# 128 KiB and opencv-module / opencv-module-dnn went past it —
3130
# fatal error LNK1170: line in command file contains 135135 or
3231
# more characters
32+
# after 795s / 1166s of compiling. .5.3 newline-separated OUR response
33+
# file, which was necessary but not sufficient: clang, acting as the
34+
# driver, writes a SECOND one for the linker that we do not control.
35+
# lld's response-file parser has no per-line limit at all.
3336
# Together with re-enabling the global package cache below, this is
3437
# what makes a green FULL run possible again: .5.3 removes the
3538
# windows link failure, the cache removes the 150-minute timeout.
@@ -113,7 +116,7 @@ env:
113116
# 0.0.94 fixed feature-gated `sources` under `mcpp test` (mcpp#218); 0.0.91
114117
# added standard = "c++fly" to the resolver grammar, so c++fly descriptors
115118
# get the lint WARN below, not a hard grammar-parse rejection.
116-
MCPP_VERSION: "2026.8.5.3"
119+
MCPP_VERSION: "2026.8.5.4"
117120

118121
jobs:
119122
lint:
@@ -389,21 +392,21 @@ jobs:
389392
ext: tar.gz
390393
mcpp: bin/mcpp
391394
xlings: registry/bin/xlings
392-
mcpp_version: "2026.8.5.3" # keep in sync with env.MCPP_VERSION
395+
mcpp_version: "2026.8.5.4" # keep in sync with env.MCPP_VERSION
393396
- platform: macos
394397
os: macos-15
395398
suffix: macosx-arm64
396399
ext: tar.gz
397400
mcpp: bin/mcpp
398401
xlings: registry/bin/xlings
399-
mcpp_version: "2026.8.5.3" # keep in sync with env.MCPP_VERSION
402+
mcpp_version: "2026.8.5.4" # keep in sync with env.MCPP_VERSION
400403
- platform: windows
401404
os: windows-latest
402405
suffix: windows-x86_64
403406
ext: zip
404407
mcpp: bin/mcpp.exe
405408
xlings: registry/bin/xlings.exe
406-
mcpp_version: "2026.8.5.3" # keep in sync with env.MCPP_VERSION
409+
mcpp_version: "2026.8.5.4" # keep in sync with env.MCPP_VERSION
407410
env:
408411
MCPP_EFFECTIVE: ${{ matrix.mcpp_version }}
409412
steps:

0 commit comments

Comments
 (0)