Source: lastpass-cli
Version: 1.0.0-1
Severity: wishlist
Tags: patch upstream
User: [email protected]
Usertags: fileordering
X-Debbugs-Cc: [email protected]
Forwarded: https://github.com/lastpass/lastpass-cli/pull/214

Hi!

While working on the "reproducible builds" effort [1], we have noticed
that lastpass-cli could not be built reproducibly.
It links objects in a non-deterministic order.

The attached patch fixes this by sorting the list of source files.

Regards,
 Reiner

[1]: https://wiki.debian.org/ReproducibleBuilds
diff --git a/debian/patches/02_reproducible_build.patch b/debian/patches/02_reproducible_build.patch
new file mode 100644
index 0000000..4053270
--- /dev/null
+++ b/debian/patches/02_reproducible_build.patch
@@ -0,0 +1,14 @@
+Author: Reiner Herrmann <[email protected]>
+Description: Sort source files for deterministic linking order
+
+--- a/Makefile
++++ b/Makefile
+@@ -34,7 +34,7 @@
+ doc-html: lpass.1.html
+ doc: doc-man doc-html
+ 
+-lpass: $(patsubst %.c,%.o,$(wildcard *.c))
++lpass: $(patsubst %.c,%.o,$(sort $(wildcard *.c)))
+ %.1: %.1.txt
+ 	a2x --no-xmllint -f manpage $<
+ %.1.html: %.1.txt
diff --git a/debian/patches/series b/debian/patches/series
index 06c3871..9d86d53 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1 +1,2 @@
 01_build_manpage
+02_reproducible_build.patch

Attachment: signature.asc
Description: PGP signature

Reply via email to