[Reproducible-builds] [PATCH 0/2] More reproducible document builds

2015-09-01 Thread Ben Hutchings
dummies still don't get cleaned properly.) 2. The current locale affects the encoding of HTML pages. With these patches (and the previous set) applied, Debian's package of Linux 4.2 is fully reproducible: https://reproducible.debian.net/rb-pkg/experimental/amd64/linux.html Ben. Ben

[Reproducible-builds] [PATCH 1/2] Documentation: Avoid creating man pages in source tree

2015-09-01 Thread Ben Hutchings
alongside the C source file. Change the title to be a relative path. Signed-off-by: Ben Hutchings --- scripts/kernel-doc | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/scripts/kernel-doc b/scripts/kernel-doc index 0ac1a07..e5a753f 100755 --- a/scripts/kernel-doc +++ b

[Reproducible-builds] [PATCH 2/2] DocBook: Use a fixed encoding for output

2015-09-01 Thread Ben Hutchings
, but the top-level Makefile unsets that. Signed-off-by: Ben Hutchings --- Documentation/DocBook/Makefile | 6 ++ Makefile | 2 +- scripts/Makefile | 7 +-- scripts/check-lc_ctype.c | 6 ++ 4 files changed, 18 insertions(+), 3 deletions

Re: [Reproducible-builds] [PATCH 2/2] DocBook: Use a fixed encoding for output

2015-09-13 Thread Ben Hutchings
On Fri, 2015-09-11 at 13:30 -0600, Jonathan Corbet wrote: > On Tue, 01 Sep 2015 23:49:19 +0100 > Ben Hutchings wrote: > > > Currently the encoding of documents generated by DocBook depends on > > the current locale. Make the output reproducible independently of > >

[Reproducible-builds] [PATCH v2 0/2] More reproducible document builds

2015-09-27 Thread Ben Hutchings
dummies still don't get cleaned properly.) 2. The current locale affects the encoding of HTML pages. With these patches (and the previous set) applied, Debian's package of Linux 4.2 became fully reproducible. v2: Rebase on 4.3-rc3. Add an explanatory comment to check-lc_t

[Reproducible-builds] [PATCH v2 2/2] DocBook: Use a fixed encoding for output

2015-09-27 Thread Ben Hutchings
, but the top-level Makefile unsets that. Signed-off-by: Ben Hutchings --- v2: Rebase on 4.3-rc3. Add an explanatory comment to check-lc_type.c. Documentation/DocBook/Makefile | 6 ++ Makefile | 2 +- scripts/Makefile | 7 +-- scripts/check

[Reproducible-builds] [PATCH v2 1/2] Documentation: Avoid creating man pages in source tree

2015-09-27 Thread Ben Hutchings
alongside the C source file. Change the title to be a relative path. Signed-off-by: Ben Hutchings --- scripts/kernel-doc | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/scripts/kernel-doc b/scripts/kernel-doc index 9a08fb5..8c47afa 100755 --- a/scripts/kernel-doc +++ b

[Reproducible-builds] [PATCH] kbuild: Add support for SOURCE_DATE_EPOCH environment variable

2015-10-01 Thread Ben Hutchings
KBUILD_BUILD_TIMESTAMP if they aren't both set. Signed-off-by: Ben Hutchings --- Documentation/kbuild/kbuild.txt | 15 +-- Makefile| 10 ++ 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/Documentation/kbuild/kbuild.txt b/Documentation/k

Re: [Reproducible-builds] [PATCH] kbuild: Add support for SOURCE_DATE_EPOCH environment variable

2015-10-26 Thread Ben Hutchings
On Mon, 2015-10-26 at 22:03 +0100, Michal Marek wrote: > Dne 2.10.2015 v 01:15 Ben Hutchings napsal(a): > > As part of the reproducible builds project, the SOURCE_DATE_EPOCH > > environment variable has been specified as a project- and > > distribution-independent means to s

Re: [Reproducible-builds] Bug#769844: linux: please make linux build reproducibly

2015-05-12 Thread Ben Hutchings
support $KBUILD_BUILD_TIMESTAMP > as a fallback? > > I think we would still need to set KBUILD_BUILD_TIMESTAMP to the > debian/changelog date in rules.real. I've implemented something pretty similar to that: - $KBUILD_BUILD_TIMESTAMP is set to the date in the changelog - $KBUILD_B

Re: [Reproducible-builds] Bug#769844: linux: please make linux build reproducibly

2015-05-12 Thread Ben Hutchings
-print0 | \ > + LC_ALL=C sort -z | tar --mtime='$(SOURCE_DATE)' --null -T - \ > + -caf 'linux-source-$(UPSTREAMVERSION).tar.xz' > rm -rf '$(DIR)' > > $(BUILD_DIR)/linux-patch-$(UPSTREAMVERSION)-%.patch.xz: >

[Reproducible-builds] [PATCH 2/5] DocBook: Don't store mtime (or name) in compressed man pages

2015-07-08 Thread Ben Hutchings
@@ htmldocs: $(HTML) MAN := $(patsubst %.xml, %.9, $(BOOKS)) mandocs: $(MAN) - find $(obj)/man -name '*.9' | xargs gzip -f + find $(obj)/man -name '*.9' | xargs gzip -nf installmandocs: mandocs mkdir -p /usr/local/man/man9/ -- Ben Hutchings If the facts do

[Reproducible-builds] [PATCH 3/5] DocBook: Generate consistent IDs

2015-07-08 Thread Ben Hutchings
rted-by: Jérémy Bobbio Signed-off-by: Ben Hutchings --- Documentation/DocBook/stylesheet.xsl | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/DocBook/stylesheet.xsl b/Documentation/DocBook/stylesheet.xsl index 85b2527..3bf4ecf 100644 --- a/Documentation/DocBook/stylesheet.xsl +++

[Reproducible-builds] [PATCH 0/5] Reproducible document builds

2015-07-08 Thread Ben Hutchings
As part of the reproducible builds project, Jérémy Bobbio identified several time-dependent and non-deterministic functions in the document build process (htmldocs, mandocs targets). This patch series should fix all of those. Ben. Ben Hutchings (4): DocBook: Don't store mtime (or nam

[Reproducible-builds] [PATCH 5/5] scripts/kernel-doc: Use $KBUILD_BUILD_TIMESTAMP as man page date

2015-07-08 Thread Ben Hutchings
Together with the preceding changes, this allows man pages to be built reproducibly. Signed-off-by: Ben Hutchings --- scripts/kernel-doc | 15 --- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/scripts/kernel-doc b/scripts/kernel-doc index 71ada00..0ac1a07 100755

[Reproducible-builds] [PATCH 1/5] scripts/kernel-doc: parse kernel-doc deterministically

2015-07-08 Thread Ben Hutchings
others it will be interpreted as a function. We now sort the %highlights hash to get the same behavior on every run. Signed-off-by: Jérémy Bobbio Signed-off-by: Ben Hutchings --- scripts/kernel-doc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/kernel-doc b/scripts

[Reproducible-builds] [PATCH 4/5] DocBook: Avoid building man pages repeatedly and inconsistently

2015-07-08 Thread Ben Hutchings
ment tree. 2. Use DocBook profiling. This works but requires passing an absolute path to the profile stylesheet to xmlto, so it's not portable. 3. Use SGML marked sections. docbook2x can handle these but xmlto chokes on them. Reported-by: Jérémy Bobbio Signed-off-by: Ben Hutchings ---

[Reproducible-builds] Reproducibility vs signatures

2015-08-02 Thread Ben Hutchings
All these signatures will all be embedded within binaries and will of course not be reproducible. The locations of differences will however be predictable. How should we deal with this limited variability? Could source packages or buildinfo describe the expected variations somehow? Ben. --

Re: [Reproducible-builds] Reproducibility vs signatures

2015-08-03 Thread Ben Hutchings
On Mon, 2015-08-03 at 10:27 +0200, Jérémy Bobbio wrote: > Ben Hutchings: > > At some point we're hopefully going to support Secure Boot on amd64. > > That means there will be a signed kernel image (separate from the > > current linux-image packages) and a signed GRUB imag

Re: [Reproducible-builds] Reproducibility vs signatures

2015-08-03 Thread Ben Hutchings
On Mon, 2015-08-03 at 12:27 +0200, Holger Levsen wrote: > Hi, > > On Montag, 3. August 2015, Ben Hutchings wrote: > > That sort of works as long as there's only one architecture we want to > > do this for. But the ability to verify modules is useful in general so > &

Re: [Reproducible-builds] Reproducibility vs signatures

2015-08-03 Thread Ben Hutchings
On Mon, 2015-08-03 at 12:46 +0200, Holger Levsen wrote: > Hi, > > On Montag, 3. August 2015, Ben Hutchings wrote: > > See <https://lists.debian.org/debian-kernel/2013/08/msg00267.html>. > > Thanks. > > That seems to say that a.) only the kernel team can s

[Reproducible-builds] [PATCH] DocBook: Fix non-determinstic installation of duplicate man pages

2015-08-06 Thread Ben Hutchings
utput is non-determinstic. Build the manual pages in a separate subdirectory per DocBook file, then sort and de-duplicate when installing them (which is serialised). Signed-off-by: Ben Hutchings --- Please apply this after reverting my earlier attempt, "DocBook: Fix duplicate man pa