On Wed, 26 Feb 2020, Jeremy A. Puhlman wrote: > > > On 2/26/2020 9:18 AM, John Kacur wrote: > > > > On Tue, 25 Feb 2020, Jeremy A. Puhlman wrote: > > > >> From: Jeremy Puhlman > >> > >> Add -n to gzip call to make the build output > >> of the manpages reproducible. > >> > >> Signed-off-by: Jeremy A. Puhlman > >> --- > >> Makefile | 2 +- > >> 1 file changed, 1 insertion(+), 1 deletion(-) > >> > >> diff --git a/Makefile b/Makefile > >> index 8747971..1b37ba7 100644 > >> --- a/Makefile > >> +++ b/Makefile > >> @@ -181,7 +181,7 @@ ssdd: $(OBJDIR)/ssdd.o $(OBJDIR)/librttest.a > >> $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< $(LIBS) $(RTTESTLIB) > >> > >> %.8.gz: %.8 > >> - gzip -c $< > $@ > >> + gzip -nc $< > $@ > >> > >> %.8.bz2: %.8 > >> bzip2 -c $< > $@ > >> -- > >> 2.20.1 > >> > >> > > Could you explain to me how this makes the build output of manpages more > > reproducible? > > gzip adds the name of the file(not really an issue) and the modification time > into the header of the > gzipped archive.  Different modification times can cause the archives to have > different md5sums even > though the content is identical.  Adding -n causes the archives to always be > identical regardless of when > they are built so long as the content is identical. Its less of an > issue(provided the build system in question > doesn't touch or modify the man pages) when you are building from released > tarballs, but if you build > from git, the modification time of the file is when the file was checked out. > > Tools like rpm will object to the files being installed(like say multilib > versions of the same packages) together > due different md5sums and the fact that they are not elf binaries, even though > the files are the same. > > > -- > Jeremy A. Puhlman > jpuhlman@mvista.com > > Signed-off-by: John Kacur