Hi, in addition to the sorting problem found by Reiner dash is also not reproducible since it indirectly captures the shell used as /bin/sh.
The problem is that that dash sets argv[0] to the relative path if 'exec' is called with a relative path and bash sets argv[0] to the absolute path. When executing 'exec configure' in debian/rules argv[0] gets captured by the configure script as $srcdir which is later used in $DEFAULT_INCLUDES and passed to gcc. This leads to different build-ids depending on the choice of /bin/sh. The attached patch fix this by simply avoiding the exec call. Thanks, HW42
diff -urN a/debian/rules b/debian/rules --- a/debian/rules 2016-06-13 01:27:12.000000000 +0200 +++ b/debian/rules 2016-06-13 01:20:28.447939088 +0200 @@ -46,7 +46,7 @@ touch configure (cd build-tmp && CC='$(CC)' \ CFLAGS='$(CFLAGS)' CPPFLAGS='$(CPPFLAGS)' LDFLAGS='$(LDFLAGS)' \ - exec ../configure --enable-fnmatch --disable-lineno \ + ../configure --enable-fnmatch --disable-lineno \ --host='$(DEB_HOST_GNU_TYPE)') touch configure-stamp
signature.asc
Description: OpenPGP digital signature