Source: llvm-toolchain-22 Version: 1:22.1.0-2 Severity: serious X-Debbugs-Cc: [email protected] User: [email protected] Usertags: buildinfo
Hi, src:llvm-toolchain-22 modifies the debian/control file during the build: diff -u debian/control debian/control.new || true mv debian/control.new debian/control https://buildd.debian.org/status/fetch.php?pkg=llvm-toolchain-22&arch=all&ver=1%3A22.1.0-2&stamp=1772141829&raw=0 This is forbidding by the ftp-master REJECT-FAQ: | Putting all of that together, you can simplify it with debian/control | has to contain a list of binaries to be built before the build-process | starts, do not modify that in the running build-process. https://web.archive.org/web/20260208141017/https://ftp-master.debian.org/REJECT-FAQ.html And makes the package not reproducible on reproduce.debian.net: https://qa.debian.org/excuses.php?package=llvm-toolchain-22 The problem is that llvm-spirv-21 is replaced by llvm-spirv-22 (already changed in git). A better approach is to fail the build in that case: --- a/debian/rules +++ b/debian/rules @@ -1086,8 +1086,9 @@ stamps/preconfigure: $(if $(filter yes, $(LIBCLC_ENABLE)),,--skip-libclc-packages) \ debian/control debian/packages.common debian/packages.ocaml debian/packages.libclc \ > debian/control.new - diff -u debian/control debian/control.new || true - mv debian/control.new debian/control + # Make sure d/control is up to date and fail the build otherwise. + # Do not simply replace it here as modifying it during the build is forbidden by policy. + diff -u debian/control debian/control.new ifeq (,$(filter llvm.noclang, $(DEB_BUILD_PROFILES))) if ! dh_listpackages|grep -q clang-$(LLVM_VERSION); then \ Cheers Jochen

