please make the build reproducible

Source: samtools
Version: 1.13-1
Severity: wishlist
Tags: patch
User: reproducible-bui...@lists.alioth.debian.org
Usertags: buildpath
X-Debbugs-Cc: reproducible-b...@lists.alioth.debian.org

Hi,

Whilst working on the Reproducible Builds effort [0] we noticed that
samtools could not be built reproducibly.

This is because it includes the build flags in the binary to include
in --version output, but this will encode the buildpath due to
dpkg-buildflags(1) embedding (for example) -ffile-prefix-map.

Patch attached that normalises these paths to a placeholder entry
using sed(1).

 [0] https://reproducible-builds.org/


Regards,

--
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      la...@debian.org / chris-lamb.co.uk
       `-
--- a/Makefile  2021-08-30 13:55:03.961164646 +0100
--- b/Makefile  2021-08-30 14:49:18.163317766 +0100
@@ -130,6 +130,7 @@
        echo '#define SAMTOOLS_HTSDIR "$(HTSDIR)"' >> $@
        echo '#define SAMTOOLS_LIBS "$(LIBS)"' >> $@
        echo '#define SAMTOOLS_CURSES_LIB "$(CURSES_LIB)"' >> $@
+       sed -i -e 's@$(CURDIR)@«BUILDPATH»@g' $@
 
 print-version:
        @echo $(PACKAGE_VERSION)

Read more here: Source link