Compare commits

...
2 Commits
Author SHA1 Message Date
GuofangandClaude Sonnet 5.5 70351db908 Add libffi 3.8.0 and Python 3.14.10 to debian13
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>
2026-11-13 13:51:03 +08:00
GuofangandClaude Sonnet 5.5 d23bd42892 Add FreeTDS 1.5.21 to debian13
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>
2026-11-13 13:51:03 +08:00
3 changed files with 43 additions and 0 deletions

No files matched your search

+3
View File
@@ -51,6 +51,9 @@
| LZ4 | `v1.10.0` |
| Apache Arrow / Parquet | `25.0.1` |
| SQLite | `3.54.1` |
| FreeTDS | `1.5.21` |
| libffi | `3.8.0` |
| Python | `3.14.10` |
| wireguard-tools (`wg`, `wg-quick` CLI) | `v1.0.20260223` |
The image includes position-independent static builds of these libraries. Protobuf and libxml2 enable zlib support, and LibDwarf enables compressed debug section support using zlib and Zstd. ZeroMQ enables CURVE security using static libsodium. CZMQ enables UUID support using static util-linux libuuid while disabling undeclared optional integrations. librdkafka includes SSL, zlib, Zstd, and bundled LZ4 support while disabling undeclared optional integrations. spdlog uses external fmt, glog uses gflags, and all Meta libraries share the same release tag. Apache Arrow is built with Parquet (including OpenSSL-based Parquet encryption) and Snappy, LZ4, zlib, and Zstd compression using only the pinned system dependencies above (`ARROW_DEPENDENCY_SOURCE=SYSTEM`), with the bundled jemalloc and mimalloc allocators disabled. Apache Thrift only builds its C++ library, and its headers sit next to fbthrift's under `include/thrift` without overlapping.
+34
View File
@@ -829,6 +829,40 @@ RUN --mount=type=bind,from=sources,source=sqlite-autoconf-3540100.tar.gz,target=
&& cd .. \
&& rm -rf src
RUN --mount=type=bind,from=sources,source=freetds-1.5.21.tar.gz,target=/tmp/freetds.tar.gz \
mkdir src \
&& tar --extract --gzip --file=/tmp/freetds.tar.gz --directory=src --strip-components=1 \
&& cd src \
&& CFLAGS="-O2 -fPIC" ./configure --prefix=${PREFIX} --libdir=${PREFIX}/lib/$(gcc -dumpmachine) \
--disable-shared --enable-static --with-openssl=${PREFIX} \
--disable-odbc --disable-apps --disable-server --disable-pool --disable-libiconv \
&& make --jobs="$(nproc)" \
&& make install \
&& cd .. \
&& rm -rf src
RUN --mount=type=bind,from=sources,source=libffi-3.8.0.tar.gz,target=/tmp/libffi.tar.gz \
mkdir src \
&& tar --extract --gzip --file=/tmp/libffi.tar.gz --directory=src --strip-components=1 \
&& cd src \
&& CFLAGS="-O2 -fPIC" ./configure --prefix=${PREFIX} --libdir=${PREFIX}/lib/$(gcc -dumpmachine) --disable-shared --enable-static --disable-docs --disable-multi-os-directory \
&& make --jobs="$(nproc)" \
&& make install \
&& cd .. \
&& rm -rf src
RUN --mount=type=bind,from=sources,source=Python-3.14.10.tgz,target=/tmp/python.tgz \
mkdir src \
&& tar --extract --gzip --file=/tmp/python.tgz --directory=src --strip-components=1 \
&& cd src \
&& ./configure --prefix=${PREFIX} --with-ensurepip=install \
LIBSQLITE3_CFLAGS="$(pkg-config --cflags sqlite3)" \
LIBSQLITE3_LIBS="$(pkg-config --static --libs sqlite3)" \
&& make --jobs="$(nproc)" \
&& make install \
&& cd .. \
&& rm -rf src
COPY source-stack.cmake.in /tmp/
RUN mkdir -p ${PREFIX}/share/source-stack \
&& sed "s|@MULTIARCH@|$(gcc -dumpmachine)|" /tmp/source-stack.cmake.in \
+6
View File
@@ -166,3 +166,9 @@ fetch sqlite-autoconf-3540100.tar.gz \
https://www.sqlite.org/2026/sqlite-autoconf-3540100.tar.gz
fetch wireguard-tools-v1.0.20260223.tar.xz \
https://git.zx2c4.com/wireguard-tools/snapshot/wireguard-tools-v1.0.20260223.tar.xz
fetch freetds-1.5.21.tar.gz \
https://www.freetds.org/files/stable/freetds-1.5.21.tar.gz
fetch libffi-3.8.0.tar.gz \
https://github.com/libffi/libffi/releases/download/v3.8.0/libffi-3.8.0.tar.gz
fetch Python-3.14.10.tgz \
https://www.python.org/ftp/python/3.14.10/Python-3.14.10.tgz