Python is built from the python.org tarball against the pinned OpenSSL,
zlib, Zstd, SQLite and libffi; it does not pass --libdir because the
standard library and lib-dynload must stay under lib/python3.14. SQLite
is static, so its link flags are taken from pkg-config --static.
libffi is built with --disable-multi-os-directory so it installs into
the multiarch directory instead of lib/lib.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Build the static client libraries (libsybdb, libct) from the official
release tarball with OpenSSL; ODBC, the command-line apps, server and
pool are disabled.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Build the wg and wg-quick CLI from the upstream tag snapshot; only the
rocky9 image builds it for now.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Build from the official autoconf amalgamation in debian13, rocky9 and
alpine3.24; rocky9-system uses the distribution sqlite-devel.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Download the per-architecture Rust tarball into sources/rust/ and have the
rocky9 and debian13 Dockerfiles bind that directory and pick the archive
with uname -m. This drops the architecture-neutral hard link and keeps the
Rust layer's cache key independent of other source archives.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- Make the libevent install patch take CMAKE_INSTALL_LIBDIR instead of
hardcoding lib/x86_64-linux-gnu, and rename it to
libevent-libdir-install.patch.
- Replace every hardcoded x86_64-linux-gnu in the debian13 Dockerfile with
$(gcc -dumpmachine).
- Download the Rust tarball for `uname -m` and expose it to the Dockerfiles
as the architecture-neutral rust-1.99.1.tar.xz (a hard link refreshed on
every run), because podman cannot expand ARG in a --mount source.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- Build the ui extension (pinned duckdb-ui commit for DuckDB 1.5.6) into
DuckDB on debian13 and rocky9 so the shell supports -ui.
- Add fetch-sources.sh, which downloads source archives with aria2c into the
git-ignored sources/ repository.
- debian13: replace per-dependency downloads with
RUN --mount=type=bind,from=sources, passed by build.sh through
--build-context, so archives are not stored in image layers.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>