aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Nieuwenhuizen <janneke@gnu.org>2016-06-21 18:51:02 +0200
committerLudovic Courtès <ludo@gnu.org>2016-06-21 23:14:05 +0200
commita837997cab842026bde1d5c0fac3a2d5258fe06f (patch)
tree729ea522e40f7c85367104e781170b9da9ca39df
parentab23fb83c2ddc38cbcc2751814efe7b385b36c56 (diff)
downloadguix-a837997cab842026bde1d5c0fac3a2d5258fe06f.tar
guix-a837997cab842026bde1d5c0fac3a2d5258fe06f.tar.gz
gnu: nasm: Make build bit-reproducible.
* gnu/packages/patches/nasm-no-ps-pdf.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/assembly.scm (nasm): Use it. Remove ghostscript, do not build PS or PDF docs. Makes build bit-reproducible. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/assembly.scm9
-rw-r--r--gnu/packages/patches/nasm-no-ps-pdf.patch20
3 files changed, 25 insertions, 5 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 1ef7ef0833..f8d661e9b9 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -670,6 +670,7 @@ dist_patch_DATA = \
%D%/packages/patches/mumps-build-parallelism.patch \
%D%/packages/patches/mupen64plus-ui-console-notice.patch \
%D%/packages/patches/mutt-store-references.patch \
+ %D%/packages/patches/nasm-no-ps-pdf.patch \
%D%/packages/patches/net-tools-bitrot.patch \
%D%/packages/patches/netcdf-config-date.patch \
%D%/packages/patches/ngircd-handle-zombies.patch \
diff --git a/gnu/packages/assembly.scm b/gnu/packages/assembly.scm
index 575856a13e..8c9b6b30fe 100644
--- a/gnu/packages/assembly.scm
+++ b/gnu/packages/assembly.scm
@@ -23,7 +23,7 @@
#:use-module (guix download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
- #:use-module (gnu packages ghostscript)
+ #:use-module (gnu packages)
#:use-module (gnu packages perl)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages python)
@@ -39,17 +39,16 @@
version "/" name "-" version ".tar.xz"))
(sha256
(base32
- "12bl6vc5sjp9nnhf0iwy6l27vq783y0rxrjpp8sy84h5cb7a3fwx"))))
+ "12bl6vc5sjp9nnhf0iwy6l27vq783y0rxrjpp8sy84h5cb7a3fwx"))
+ (patches (search-patches "nasm-no-ps-pdf.patch"))))
(build-system gnu-build-system)
- (native-inputs `(("ghostscript" ,ghostscript) ; ps2pdf
- ("perl" ,perl) ;for test target
+ (native-inputs `(("perl" ,perl) ;for doc and test target
("texinfo" ,texinfo)))
(arguments
`(#:test-target "test"
#:phases (modify-phases %standard-phases
(add-after 'install 'install-info
(lambda _
- ;; FIXME: The PDF and PS files are not reproducible.
(zero? (system* "make" "install_doc")))))))
(home-page "http://www.nasm.us/")
(synopsis "80x86 and x86-64 assembler")
diff --git a/gnu/packages/patches/nasm-no-ps-pdf.patch b/gnu/packages/patches/nasm-no-ps-pdf.patch
new file mode 100644
index 0000000000..b03b57a6ed
--- /dev/null
+++ b/gnu/packages/patches/nasm-no-ps-pdf.patch
@@ -0,0 +1,20 @@
+Avoid building PS and PDF docs, which do not build bit-reproducible. NASM
+already installs doc in info and html.
+
+--- nasm-2.12.01/doc/Makefile.in.orig 2016-06-21 18:02:59.483484829 +0200
++++ nasm-2.12.01/doc/Makefile.in 2016-06-21 18:03:46.700151410 +0200
+@@ -27,7 +27,7 @@
+ PS2PDF = @PS2PDF@ # Part of GhostScript
+
+ SRCS = nasmdoc.src inslist.src changes.src
+-OUT = info html nasmdoc.txt nasmdoc.ps nasmdoc.pdf
++OUT = info html nasmdoc.txt
+
+ # exports
+ export srcdir
+@@ -100,4 +100,4 @@
+ $(INSTALL_DATA) info/* $(INSTALLROOT)$(infodir)
+ mkdir -p $(INSTALLROOT)$(docdir)/html
+ $(INSTALL_DATA) html/* $(INSTALLROOT)$(docdir)/html
+- $(INSTALL_DATA) nasmdoc.ps nasmdoc.pdf nasmdoc.txt $(INSTALLROOT)$(docdir)
++ $(INSTALL_DATA) nasmdoc.txt $(INSTALLROOT)$(docdir)