build: freetype download falls back to sha-pinned mirrors (savannah 502)
download.savannah.gnu.org 502'd through all retries and took out the 2026-08-31 staging CI run. Try savannah, then its mirror pool alias, then SourceForge — every candidate must hash to FREETYPE_SHA256, so a mirror can only supply the byte-identical tarball. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MLPKYptXFrxHj5Gu7rhToz
This commit is contained in:
parent
8a3fc914e5
commit
141f7ba5bd
1 changed files with 19 additions and 2 deletions
|
|
@ -41,8 +41,25 @@ if [ ! -d "${FREETYPE_DIR}" ]; then
|
|||
mkdir -p "${DEPS_ROOT}"
|
||||
cd "${DEPS_ROOT}"
|
||||
|
||||
FREETYPE_URL="https://download.savannah.gnu.org/releases/freetype/freetype-${FREETYPE_VERSION}.tar.xz"
|
||||
download_file "${FREETYPE_URL}" "freetype-${FREETYPE_VERSION}.tar.xz" "${FREETYPE_SHA256}"
|
||||
# savannah 502s regularly (took out the 2026-08-31 staging CI run); every
|
||||
# mirror must serve the byte-identical tarball — FREETYPE_SHA256 gates it.
|
||||
FREETYPE_URLS=(
|
||||
"https://download.savannah.gnu.org/releases/freetype/freetype-${FREETYPE_VERSION}.tar.xz"
|
||||
"https://download-mirror.savannah.gnu.org/releases/freetype/freetype-${FREETYPE_VERSION}.tar.xz"
|
||||
"https://downloads.sourceforge.net/freetype/freetype-${FREETYPE_VERSION}.tar.xz"
|
||||
)
|
||||
downloaded=0
|
||||
for FREETYPE_URL in "${FREETYPE_URLS[@]}"; do
|
||||
if download_file "${FREETYPE_URL}" "freetype-${FREETYPE_VERSION}.tar.xz" "${FREETYPE_SHA256}"; then
|
||||
downloaded=1
|
||||
break
|
||||
fi
|
||||
log_warn "FreeType download failed from ${FREETYPE_URL} — trying next mirror"
|
||||
done
|
||||
if [ "${downloaded}" != "1" ]; then
|
||||
log_error "All FreeType mirrors failed"
|
||||
exit 1
|
||||
fi
|
||||
tar -xJf "freetype-${FREETYPE_VERSION}.tar.xz"
|
||||
rm "freetype-${FREETYPE_VERSION}.tar.xz"
|
||||
fi
|
||||
|
|
|
|||
Loading…
Reference in a new issue