icu74
Build times (auto-updated)
- any: 13m21s (2026-09-21 18:23 UTC, MAKEFLAGS=-j6)
- armv7h: 1h40m (2026-09-22 09:30 UTC, remote, MAKEFLAGS=-j1)
- aarch64: 27m43s (2026-09-22 09:30 UTC, remote, MAKEFLAGS=-j1)
LICENSE checksum breaks periodically (fixed 2026-09-19)
source= fetched the license file from GitHub’s moving main branch
(.../icu/raw/main/LICENSE) instead of a pinned ref. Every time
upstream touches LICENSE on main, the pinned md5/sha256 in the
PKGBUILD goes stale and the build fails checksum validation. This had
already happened twice before (Feb 2025, May 2025 – see AUR comment
history) and recurred again 2026-09-18 (AUR comment from nanoka).
Root-cause fix (pkgrel 10 -> 11): point at the same release tag already
used for the source tarball instead of main:
.../icu/raw/release-${pkgver//./-}/LICENSE. Since that expands from
pkgver (already used for the tarball URL above it), it self-updates
on every version bump and can never drift again. Verified via
makepkg --verifysource.
Same exact bug existed in [[icu75]] and [icu76] – fixed all three together. icu75’s copy was already silently broken (stale checksum) before anyone reported it there.
No AUR reply posted for the nanoka comment – the fix is obvious/
self-evident from the new pkgrel, matches the pattern for prior
comments on this thread (andreas_baumann fixed the Feb 2025 recurrence
silently too, only replying to the earlier zarianu report).
Tooling gotcha found while investigating: repo_build.sh’s arch
parser (sed -n 's/^arch=(\(.*\))$/\1/p') only matches a single-line
arch=(...). This PKGBUILD’s arch=() spans multiple lines, so the
parser returns empty and the build silently falls back to “any (via
x86_64)” – meaning i486/i686/pentium4/armv6h/armv7h/aarch64 (all
listed in arch=()) have never actually been built via this pipeline,
despite being declared. Not fixed (shared script, broad blast radius,
would also need the ARM boards up) – flagged to the user, disposition
pending.
Tooling gotcha #2: repo_build_staged.sh’s staging rsync
(rsync -a --exclude=.git, no --delete) never removes files from
/data/INSTALL/<pkg> that were deleted from the tracked arch/
pkgdir. A year-old stale icu75-LICENSE/icu76-LICENSE (the original
broken checksum file) survived in staging and got silently reused
instead of re-downloaded, causing an otherwise-fixed build to fail
again on the first retry. Worked around by manually rm-ing the stale
staged file before each retry; not fixed at the script level.
Re-checked 2026-09-24 (FEEDBACK.txt sweep): no new comments since,
nanoka’s report stays resolved by the pkgrel 11 fix above.
2026-09-22: ARM build/publish
Built for armv7h + aarch64 via the remote ARM boards, published cleanly
(same version as x86_64). armv6h (eurobuild4) failed: gcc: fatal error:
Killed signal terminated program cc1 – the OOM killer, not a code
issue. eurobuild4 is memory-constrained and ICU is a heavy C++ build;
same failure hit all three of icu74/[[icu75]]/[[icu76]] identically.
Not attempted further this pass – would need more RAM/swap on that
board, or a lower-memory build config, to actually fix armv6h.