[master]: Redo the handling of changed ar behaviour

Also added a NEWS file, since there is a change in the behaviour of
ar, and thus make.

Signed-off-by: Manoj Srivastava <srivasta@debian.org>
This commit is contained in:
Manoj Srivastava 2016-01-18 16:11:09 -08:00
parent 3e6bddb89d
commit f8a4b24632
2 changed files with 39 additions and 0 deletions

26
debian/NEWS.Debian vendored
View file

@ -1,3 +1,29 @@
make-dfsg (4.1-2) unstable; urgency=low
WARNING: Backward-incompatibility!
The ar program in the binutils package in Debian is now configured
with --enable-deterministic-archives. This change makes the archives
reproducible, by setting the UID, GID, and timestamp to 0. However,
when dealing with archives created with the libxx(*.o) style rules,
make needs the timestamp of the file in order to decide to update it
or not. With the current deterministic behavior of ar, the time stamp
is always 0. This has consequences, since make will fall back to always
adding each member to the archive, whether or not it is required. This
is a change in behaviour, and, for instance, it makes make fail to
build, failing 7 out of 10 archive tests.
.
Since binutils will create archive with time stamps set to 0 when
running in "deterministic" mode, make will always try to update such
members. When this is detected, make will emit a warning.
.
There is some online discussion:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=798804
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=798913
https://bugzilla.redhat.com/show_bug.cgi?id=1195883
-- Manoj Srivastava <srivasta@debian.org> Mon, 18 Jan 2016 16:09:19 -0800
make-dfsg (4.0-1) experimental; urgency=low
WARNING: Backward-incompatibility!

13
debian/changelog vendored
View file

@ -1,3 +1,16 @@
make-dfsg (4.1-2) unstable; urgency=low
* Update the handling of the changed behaviour of ar. The fix in the
previous version has been rolled back. The new strategy is to narrowly
change running the test suite to pass in the U modifier to ar, and
change make to detect and warn the user of they are using the archive
rule like libxx(*.o) to generate archives, and the archives do not
contain time stamps. The warning advises the user to explicitly pass
in the modifier U in the environment variable ARFLAGS, which is
essentially what we did for the test suite.
-- Manoj Srivastava <srivasta@debian.org> Mon, 18 Jan 2016 15:57:45 -0800
make-dfsg (4.1-1) unstable; urgency=low
* New upstream release