From 9a2b8b5db4e279a4ca11a79ea6b6eb88440e70c0 Mon Sep 17 00:00:00 2001 From: Guofang Date: Sat, 24 Oct 2026 14:30:19 +0800 Subject: [PATCH] Add DuckDB build to debian13 and drop Boost submodule rule from AGENTS.md Co-Authored-By: Claude Sonnet 5.5 --- AGENTS.md | 1 - debian13/Dockerfile | 18 ++++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/AGENTS.md b/AGENTS.md index ac8f23a..071808b 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -9,7 +9,6 @@ - Add each dependency as a separate, reviewable build step so its source and version remain visible. - Append new dependency build steps after all existing dependency build steps. Do not insert or reorder steps in the existing build sequence, so previously successful build layers remain unchanged. - The log4cplus build is allowed to fetch its required `ThreadPool` submodule as a shallow repository pinned by `REL_2_0_5` to commit `cc0b6371d3963f7028c2da5fc007733f9f3bf205`. Do not fetch unused log4cplus submodules. -- Boost is allowed to recursively clone its modular source submodules. The parent repository and every submodule must be shallow clones from the `boost-1.83.0` release tag. ## System Development Packages diff --git a/debian13/Dockerfile b/debian13/Dockerfile index 6059efb..ce9a4a9 100644 --- a/debian13/Dockerfile +++ b/debian13/Dockerfile @@ -894,4 +894,22 @@ RUN aria2c \ && rust-src/install.sh --prefix=/usr/local --without=rust-docs \ && rm -rf rust.tar.xz rust-src +RUN curl --fail --location --output duckdb.tar.gz \ + https://wangguofang.net/github.com/duckdb/duckdb/archive/v1.5.6.tar.gz \ + && mkdir src \ + && tar --extract --gzip --file=duckdb.tar.gz --directory=src --strip-components=1 \ + && rm duckdb.tar.gz \ + && cmake -G Ninja -S src -B build -DCMAKE_BUILD_TYPE=Release \ + -DBUILD_SHARED_LIBS=OFF \ + -DBUILD_EXTENSIONS="core_functions;parquet;json" \ + -DBUILD_SHELL=ON \ + -DBUILD_UNITTESTS=OFF \ + -DBUILD_BENCHMARKS=OFF \ + -DENABLE_EXTENSION_AUTOLOADING=OFF \ + -DENABLE_EXTENSION_AUTOINSTALL=OFF \ + -DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu \ + -DCMAKE_POSITION_INDEPENDENT_CODE=ON \ + && cmake --build build --parallel "$(nproc)" --target install \ + && rm -rf build src + CMD ["/bin/bash"]