[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#807838: graphite2: please make the build reproducible



Source: graphite2
Version: 1.3.4-1
Severity: wishlist
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: randomness
X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org

Hi!

While working on the "reproducible builds" effort [1], we have noticed
that graphite2 could not be built reproducibly.
It is generating pdf documentation by calling asciidoc, which uses
dblatex to generate the file.
By default, dblatex builds the documentation in a random path (which
will then be used to generate the PDF ID).

The attached patch fixes this by telling dblatex to use a static path.

Regards,
 Reiner

[1]: https://wiki.debian.org/ReproducibleBuilds
diff --git a/debian/patches/reproducible-build.diff b/debian/patches/reproducible-build.diff
new file mode 100644
index 0000000..3b83c70
--- /dev/null
+++ b/debian/patches/reproducible-build.diff
@@ -0,0 +1,11 @@
+--- a/doc/CMakeLists.txt
++++ b/doc/CMakeLists.txt
+@@ -12,7 +12,7 @@
+     if(DBLATEX)
+         add_custom_command(OUTPUT ${PROJECT_BINARY_DIR}/manual.pdf
+                            DEPENDS ${PROJECT_SOURCE_DIR}/[a-z]*.txt
+-                           COMMAND ${A2X} -D ${PROJECT_BINARY_DIR} ${PROJECT_SOURCE_DIR}/manual.txt)
++                           COMMAND ${A2X} -D ${PROJECT_BINARY_DIR} --dblatex-opts="--tmpdir=docbuild" ${PROJECT_SOURCE_DIR}/manual.txt)
+         add_custom_command(OUTPUT ${PROJECT_BINARY_DIR}/GTF.pdf
+                            DEPENDS ${PROJECT_SOURCE_DIR}/GTF.txt
+                            COMMAND ${A2X} -D ${PROJECT_BINARY_DIR} ${PROJECT_SOURCE_DIR}/GTF.txt)
diff --git a/debian/patches/series b/debian/patches/series
index d39cfd6..ba9444d 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1,4 @@
 non-linux.diff
 no-icons.diff
 test-timeout.diff
+reproducible-build.diff

Reply to: