commit 4165d2f8150344dfca69e1ab9c51b5565d9283d1
parent d07dc3247b3631877ba7094d2283e20d790d6e67
Author: Christian Grothoff <christian@grothoff.org>
Date: Wed, 4 Nov 2026 00:07:20 +0100
fix packaging checks for static binaries
Diffstat:
3 files changed, 19 insertions(+), 9 deletions(-)
diff --git a/packaging/ng/buildscripts/buildlib.py b/packaging/ng/buildscripts/buildlib.py
@@ -176,14 +176,22 @@ def _check_installed_binaries(deb_files):
if not filename.startswith("/"):
filename = "/" + filename
file_info = get_output(["file", filename])
- if "ELF" in file_info and "executable" in file_info:
- print(f"checking {filename}")
- try:
- run_cmd(["ldd", filename])
- except subprocess.CalledProcessError as exc:
- raise RuntimeError(
- f"installed binary {filename} has a linker issue"
- ) from exc
+ if "ELF" not in file_info or "executable" not in file_info:
+ continue
+ if "dynamically linked" not in file_info:
+ # A statically linked executable (for example a Go binary
+ # built with CGO_ENABLED=0) has no dynamic section and thus
+ # no shared libraries to resolve; ldd would fail on it with
+ # "not a dynamic executable".
+ print(f"skipping {filename} (statically linked)")
+ continue
+ print(f"checking {filename}")
+ try:
+ run_cmd(["ldd", filename])
+ except subprocess.CalledProcessError as exc:
+ raise RuntimeError(
+ f"installed binary {filename} has a linker issue"
+ ) from exc
def _build_package(package, package_path, tag, codename, arch, prebuilt):
diff --git a/packaging/ng/distros/debian-trixie.Dockerfile b/packaging/ng/distros/debian-trixie.Dockerfile
@@ -31,6 +31,8 @@ RUN \
meson \
default-jdk-headless \
golang \
+ golang-go \
+ texinfo \
postgresql \
&& \
npm install -g pnpm@10
diff --git a/packaging/ng/packages.toml b/packaging/ng/packages.toml
@@ -191,7 +191,7 @@ enabled = true
[packages."locust"]
repository = "locust"
-tag = "v0.2.0"
+tag = "v0.2.1"
debian_path = ""
dependencies = []
enabled = true