Package: x42-plugins Version: 20160619-1 Severity: normal Tags: upstream patch User: reproducible-bui...@lists.alioth.debian.org Usertags: environment
Dear Maintainer, While working on the “reproducible builds” effort, we have noticed that x42-plugins could not be built reproducibly; the diff between two builds is: https://tests.reproducible-builds.org/debian/dbdtxt/unstable/amd64/x42-plugins_20160619-1.diffoscope.txt │ │ │ ├── ./usr/lib/lv2/midimap.lv2/manifest.ttl │ │ │ │ @@ -14,43 +14,43 @@ │ │ │ │ mmpset:lp_thirds_c4_colors │ │ │ │ a pset:Preset ; │ │ │ │ lv2:appliesTo <http://gareus.org/oss/lv2/midimap> ; │ │ │ │ - rdfs:seeAlso <presets.ttl> . │ │ │ │ +\trdfs:seeAlso <presets.ttl> . This difference is down to midimap.lv2/Makefile [1] calling echo(1) with an argument that contains a literal backslash. The behaviour of echo(1) in that case is (according to POSIX) implementation-defined. Since makefiles use echo(1) from the building user's shell, the build output differs when the building user uses SHELL=bash v. SHELL=dash: % LC_ALL=C dash -c 'echo "\t"' | xxd 0000000: 090a .. % LC_ALL=C bash -c 'echo "\t"' | xxd 0000000: 5c74 0a \t. I believe the attached patch will fix the issue. Note that when built under bash, pluginlibConfig.cmakep.lv2/manifest.ttl would contain literal «\t» sequences; I'm not sure what their effect would be. Cheers, Daniel [1] https://sources.debian.net/src/x42-plugins/20160619-1/midimap.lv2/Makefile/#L84
Description: Avoid non-portable shell syntax Author: Daniel Shahaf <danie...@apache.org> Bug-Debian: https://bugs.debian.org/-1 Last-Update: 2016-06-25 --- x42-plugins-20160619.orig/midimap.lv2/Makefile +++ x42-plugins-20160619/midimap.lv2/Makefile @@ -81,7 +81,7 @@ $(BUILDDIR)manifest.ttl: lv2ttl/manifest >> $(BUILDDIR)manifest.ttl;\ head -n 3 $$file \ >> $(BUILDDIR)manifest.ttl; \ - echo "\trdfs:seeAlso <presets.ttl> ." \ + printf '\trdfs:seeAlso <presets.ttl> .\n' \ >> $(BUILDDIR)manifest.ttl;\ done