Source: gcc-arm-none-eabi Severity: normal Tags: patch User: reproducible-bui...@lists.alioth.debian.org Usertags: usrmerge shell X-Debbugs-Cc: reproducible-b...@lists.alioth.debian.org
The paths to various binaries are embedded which differs on a usrmerge vs. non-usrmerge system. https://tests.reproducible-builds.org/debian/rb-pkg/bookworm/amd64/diffoscope-results/gcc-arm-none-eabi.html /usr/lib/gcc/arm-none-eabi/10.3.1/install-tools/fixincl /bin/sed vs. /usr/bin/sed /usr/lib/gcc/arm-none-eabi/10.3.1/install-tools/mkheaders for·shell·in·$CONFIG_SHELL·$SHELL·/bin/bash·/bin/sh·"";·do vs. for·shell·in·$CONFIG_SHELL·$SHELL·/bin/sh·/bin/sh·"";·do Patch attached which passes variables to configure to use the non-usrmerge locations, as usrmerge installations typically have compatibility symlinks, but not vice-versa. The patch also sets variables to ensure consistent values for bash, which can be triggered when /bin/sh points to bash. This patch alone does not fix all reproducibility issues (e.g. build paths, which are only tested on unstable and experimental), but does reduce the number of things that vary in the resulting build. Thanks for maintaining gcc-arm-none-eabi! live well, vagrant
From 4ee144c5271da7ab35e866a8aa84ad4b74b22021 Mon Sep 17 00:00:00 2001 From: Vagrant Cascadian <vagr...@reproducible-builds.org> Date: Tue, 12 Oct 2021 02:21:23 +0000 Subject: [PATCH 1/2] debian/rules: Pass variables to configure to make the package build reproducibly regardless of usrmerge. The variables SED, SHELL, BASH and CONFIG_SHELL should all point to their non-usrmerge locations. https://tests.reproducible-builds.org/debian/issues/paths_vary_due_to_usrmerge_issue.html --- debian/rules | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/debian/rules b/debian/rules index a3d2833a4..07d9a2571 100755 --- a/debian/rules +++ b/debian/rules @@ -65,7 +65,11 @@ CONFIGURE_GCC_FLAGS = \ --without-newlib \ $(MULTILIB_LIST) \ $(BUILDFLAGS) \ - $(TARGET_TOOLS) + $(TARGET_TOOLS) \ + SED=/bin/sed \ + SHELL=/bin/sh \ + BASH=/bin/bash \ + CONFIG_SHELL=/bin/bash \ %: dh $@ -D$(GCC_SOURCE_DIR) -B$(GCC_BUILD_DIR) --parallel --with autoreconf -- 2.30.2
signature.asc
Description: PGP signature