Debian Bug report logs -
#823174
ros-pluginlib: debian/rules uses non-portable shell syntax; please make the build reproducible (shell)
Reported by: Daniel Shahaf <danielsh@apache.org>
Date: Sun, 1 May 2016 19:57:01 UTC
Severity: minor
Tags: patch
Found in version ros-pluginlib/1.10.1-3
Fixed in version ros-pluginlib/1.10.3-1
Done: Jochen Sprickerhof <debian@jochen.sprickerhof.de>
Bug is archived. No further changes may be made.
Toggle useless messages
Report forwarded
to debian-bugs-dist@lists.debian.org, danielsh@apache.org, Debian Science Maintainers <debian-science-maintainers@lists.alioth.debian.org>:
Bug#823174; Package src:ros-pluginlib.
(Sun, 01 May 2016 19:57:05 GMT) (full text, mbox, link).
Acknowledgement sent
to Daniel Shahaf <danielsh@apache.org>:
New Bug report received and forwarded. Copy sent to danielsh@apache.org, Debian Science Maintainers <debian-science-maintainers@lists.alioth.debian.org>.
(Sun, 01 May 2016 19:57:05 GMT) (full text, mbox, link).
Message #5 received at submit@bugs.debian.org (full text, mbox, reply):
Source: ros-pluginlib
Version: 1.10.1-3
Severity: minor
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: environment
Dear Maintainer,
While working on the “reproducible builds” effort, we have noticed that
ros-pluginlib could not be built reproducibly; the diff between two
builds is:
https://tests.reproducible-builds.org/rb-pkg/unstable/amd64/ros-pluginlib.html
│ │ │ │ -add_definitions(-DCMAKE_LIBRARY_ARCHITECTURE=\"${CMAKE_LIBRARY_ARCHITECTURE}\")
│ │ │ │ +add_definitions(-DCMAKE_LIBRARY_ARCHITECTURE=\\"${CMAKE_LIBRARY_ARCHITECTURE}\\")
This difference is down to debian/rules 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 debian/rules
uses echo(1) from the building user's shell, the build output differs
when the building user uses SHELL=bash v. SHELL=dash:
% s=\'foo\\\\bar\'; LC_ALL=C dash -c "echo $s"
foo\bar
% s=\'foo\\\\bar\'; LC_ALL=C bash -c "echo $s"
foo\\bar
%
The following patch removes the use of implementation-defined behaviour:
[[[
diff --git a/debian/rules b/debian/rules
index 9e5b691..c867402 100755
--- a/debian/rules
+++ b/debian/rules
@@ -10,7 +10,7 @@ override_dh_auto_test:
override_dh_auto_configure:
dh_auto_configure
- echo 'add_definitions(-DCMAKE_LIBRARY_ARCHITECTURE=\\"$${CMAKE_LIBRARY_ARCHITECTURE}\\")' >> build/catkin_generated/installspace/pluginlibConfig.cmake
+ printf 'add_definitions(-DCMAKE_LIBRARY_ARCHITECTURE=\\"%s\\")' '$${CMAKE_LIBRARY_ARCHITECTURE}' >> build/catkin_generated/installspace/pluginlibConfig.cmake
override_dh_auto_install:
dh_auto_install --destdir=debian/tmp
]]]
This patch should also make the build reproducible, but I didn't test that.
Note that when built under bash, pluginlibConfig.cmake would contain
additional backslashes; I'm not sure what their effect would be.
Cheers,
Daniel
Information forwarded
to debian-bugs-dist@lists.debian.org, Debian Science Maintainers <debian-science-maintainers@lists.alioth.debian.org>:
Bug#823174; Package src:ros-pluginlib.
(Sat, 25 Jun 2016 16:30:04 GMT) (full text, mbox, link).
Acknowledgement sent
to Daniel Shahaf <danielsh@apache.org>:
Extra info received and forwarded to list. Copy sent to Debian Science Maintainers <debian-science-maintainers@lists.alioth.debian.org>.
(Sat, 25 Jun 2016 16:30:04 GMT) (full text, mbox, link).
Message #10 received at 823174@bugs.debian.org (full text, mbox, reply):
Daniel Shahaf wrote on Sun, May 01, 2016 at 19:51:37 +0000:
> - echo 'add_definitions(-DCMAKE_LIBRARY_ARCHITECTURE=\\"$${CMAKE_LIBRARY_ARCHITECTURE}\\")' >> build/catkin_generated/installspace/pluginlibConfig.cmake
> + printf 'add_definitions(-DCMAKE_LIBRARY_ARCHITECTURE=\\"%s\\")' '$${CMAKE_LIBRARY_ARCHITECTURE}' >> build/catkin_generated/installspace/pluginlibConfig.cmake
That needs to explicitly print the newline:
+ printf 'add_definitions(-DCMAKE_LIBRARY_ARCHITECTURE=\\"%s\\")\n' '$${CMAKE_LIBRARY_ARCHITECTURE}' >> build/catkin_generated/installspace/pluginlibConfig.cmake
Reply sent
to Jochen Sprickerhof <debian@jochen.sprickerhof.de>:
You have taken responsibility.
(Sun, 10 Jul 2016 21:54:11 GMT) (full text, mbox, link).
Notification sent
to Daniel Shahaf <danielsh@apache.org>:
Bug acknowledged by developer.
(Sun, 10 Jul 2016 21:54:11 GMT) (full text, mbox, link).
Message #15 received at 823174-close@bugs.debian.org (full text, mbox, reply):
Source: ros-pluginlib
Source-Version: 1.10.3-1
We believe that the bug you reported is fixed in the latest version of
ros-pluginlib, which is due to be installed in the Debian FTP archive.
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to 823174@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Jochen Sprickerhof <debian@jochen.sprickerhof.de> (supplier of updated ros-pluginlib package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Format: 1.8
Date: Sun, 10 Jul 2016 23:12:21 +0200
Source: ros-pluginlib
Binary: pluginlib-dev
Architecture: source amd64
Version: 1.10.3-1
Distribution: unstable
Urgency: medium
Maintainer: Debian Science Maintainers <debian-science-maintainers@lists.alioth.debian.org>
Changed-By: Jochen Sprickerhof <debian@jochen.sprickerhof.de>
Description:
pluginlib-dev - ROS library for plugins
Closes: 823174
Changes:
ros-pluginlib (1.10.3-1) unstable; urgency=medium
.
* Make rules reproducible.
Thanks to Daniel Shahaf (Closes: #823174)
* Imported Upstream version 1.10.3
Checksums-Sha1:
914b91a9bebd15874564cebe47b593b7aa7fd1bc 2315 ros-pluginlib_1.10.3-1.dsc
f1e8dbbca19879f95bd9ec53b9e8b0da4d990db6 20554 ros-pluginlib_1.10.3.orig.tar.gz
6989567f3e45f828643d2543c61e9938326c2a8e 3388 ros-pluginlib_1.10.3-1.debian.tar.xz
c319369d5a06ddb2390bfb0d5d56ace2d145a7b7 251248 pluginlib-dev-dbgsym_1.10.3-1_amd64.deb
8231342a01f3bc8dc62f32e19bbf1d208eb5f367 43834 pluginlib-dev_1.10.3-1_amd64.deb
Checksums-Sha256:
36b8a4d1911af7370b00182e4bb7e7f4866adb4cf9a5abccdba5da6a326fb7e8 2315 ros-pluginlib_1.10.3-1.dsc
fca9f2f449ac7fea4eb4597d5ac8ac77d572f18f890333abd4cd2bbc0249f117 20554 ros-pluginlib_1.10.3.orig.tar.gz
e841bae9fb9339149f8251700495ca6c3a4edfc6661e2b737e324e16b73465ac 3388 ros-pluginlib_1.10.3-1.debian.tar.xz
ff54521452ecf4b0ebad32faaad1b9b6e8d61108ea3299c07c0efe291af269bf 251248 pluginlib-dev-dbgsym_1.10.3-1_amd64.deb
31d8e36d9eb21b4a38e549ed44c44b780b0f9d361d34c7c5792519f371e9f0d6 43834 pluginlib-dev_1.10.3-1_amd64.deb
Files:
d3ebfd7a205a92648000d365a0f088f0 2315 libs optional ros-pluginlib_1.10.3-1.dsc
6fb641ba2a31737e38d1535bbdf37a07 20554 libs optional ros-pluginlib_1.10.3.orig.tar.gz
d6ce2223ed555119bae4155738bc960a 3388 libs optional ros-pluginlib_1.10.3-1.debian.tar.xz
b61fd7010d0eb02b4c2bb278d6ecb5b7 251248 debug extra pluginlib-dev-dbgsym_1.10.3-1_amd64.deb
470ec1ab9c5b6980c7a3eccec85ae46c 43834 libdevel optional pluginlib-dev_1.10.3-1_amd64.deb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAEBCgAGBQJXgrtPAAoJEFv/3MJY5pQzrRIP/2HEXNg/jEf9XMou18HJbaw1
VO07UmwqjNVm4ghNMHV5wl9jeg2Uw81szZG6fqH+786VO3Q0rUdHaeVoY5NwFE/P
bKwnjaVWdXenNbrTwxiJjGfD7uzmtq4In/uXSdJYdIFyVR+u3HcU70k9/ak5tjAp
xciDP55FnkTgiVdGoMJOfY1tvaqvDKVZmCBBZ99LJHKlqPMxxl+8rpYab6MTuCHG
dcZFEsRoUkS1CAAFw7JBjcHvQ1DjmxVynzqTfdztUPgUUtKtit+PaI3T4n/LHyas
wcyVmYtrhTqvTc5WeST7k5HEPKWlcdUOeoFSIqfypPaXKF5niGfyc1rlyEAL6pkZ
hwNqLynmH6csmys0xbmVCfT9TQKqb35UTcgLEKU1QfY//ZsECWQrfNeQhTZLUUdL
QFhbrEKBt/A+7Day1lYFfvzSXE94KjzLAe17dNwbUp2b0bkkYvDS+9SzdnkJPJvP
SwEtTb30AuUatYNG+jgdV5mJriXTFtHz8YW9KTt3+vkgYJb9YvBrFi+Rxxu45QOA
imNJiu75CeyRwiZqehVa1xz23asDQzzS0VFxWyQF0nfF2YoKTcIInWocjD64Z/iO
uq6giEY0MhgEvyrpFC2FLJDqib7hLthouThjaTbwobZsPROMZuNbrkBqsOZsZ/r4
B2uokbnMTFMkvr/y4b3I
=C/CC
-----END PGP SIGNATURE-----
Bug archived.
Request was from Debbugs Internal Request <owner@bugs.debian.org>
to internal_control@bugs.debian.org.
(Tue, 16 Aug 2016 07:35:57 GMT) (full text, mbox, link).
Send a report that this bug log contains spam.
Debian bug tracking system administrator <owner@bugs.debian.org>.
Last modified:
Wed May 17 13:44:06 2023;
Machine Name:
buxtehude
Debian Bug tracking system
Debbugs is free software and licensed under the terms of the GNU
Public License version 2. The current version can be obtained
from https://bugs.debian.org/debbugs-source/.
Copyright © 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson,
2005-2017 Don Armstrong, and many other contributors.