Bug#828168: x42-plugins: midimap.lv2/manifest.ttl uses non-portable shell syntax; please make the build reproducible (shell)

Daniel Shahaf danielsh at apache.org
Sat Jun 25 16:40:15 UTC 2016


Package: x42-plugins
Version: 20160619-1
Severity: normal
Tags: upstream patch
User: reproducible-builds at 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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-unportable-shell-syntax.patch
Type: text/x-diff
Size: 531 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-multimedia-maintainers/attachments/20160625/54f8f9d5/attachment.patch>


More information about the pkg-multimedia-maintainers mailing list