Commit bb77905
committed
azure-pipelines: parallelise the Windows mingw-w64-git build
The 'Build mingw-w64-git package' step calls `please.sh
build-mingw-w64-git ... HEAD`, which delegates to `makepkg-mingw`
and ultimately to Git's top-level Makefile. With no `MAKEFLAGS` in
the task's environment, makepkg-mingw runs `make` without an
explicit `-j`, which leaves the bulk of the per-file work
(generating the perl scripts, building the doc tree, running the
contrib targets, compiling each .c separately) running serially on
a single core.
Like the SDK sparse checkout (parallelised via `checkout.workers=56`
in the previous commit), most of the wall-clock time here is spent
shuffling small files in and out of the SDK's pacman cache and the
generated build tree, not in the compiler itself; the work is
predominantly I/O-bound, so the right factor is well above the agent
core count rather than `$(nproc)`.
Hoist the previously ESRP-conditional `env:` block on the Windows
'Build mingw-w64-git package' step out of the `${{ if }}`
expression so MAKEFLAGS can sit unconditionally next to the
ESRP-only entries (which now nest inside the same `env:` via a
compile-time `${{ if }}: ESRP_TOOL: ... ESRP_AUTH: ...
SYSTEM_ACCESSTOKEN: ...` insert), and add `MAKEFLAGS: -j15`. A
short comment captures the I/O-bound rationale so a future
maintainer doesn't try to "fix" it down to `$(nproc)`.
Assisted-by: Claude Opus 4.7
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>1 parent 3a1b54d commit bb77905
1 file changed
Lines changed: 10 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
254 | 254 | | |
255 | 255 | | |
256 | 256 | | |
257 | | - | |
258 | | - | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
259 | 267 | | |
260 | 268 | | |
261 | 269 | | |
| |||
0 commit comments