summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen J. Woodcroft <donttrustben near gmail.com>2017-03-10 20:25:00 +1000
committerBen Woodcroft <donttrustben@gmail.com>2017-03-10 20:31:30 +1000
commit79f09fa2394c5de06668406222a655eac39c36f6 (patch)
tree26227903f0410b2fabd93e66271b7c9576a89535
parent5ded35d89d33a58294956c4a6c86cfb2fc7c7924 (diff)
gnu: hmmer: Build reproducibly.
* gnu/packages/patches/hmmer-remove-cpu-specificity.patch: New file. * gnu/packages/bioinformatics.scm (hmmer): Use it.
-rw-r--r--gnu/packages/bioinformatics.scm20
-rw-r--r--gnu/packages/patches/hmmer-remove-cpu-specificity.patch22
2 files changed, 33 insertions, 9 deletions
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index b6f753ef0a..866900d40b 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -2839,15 +2839,17 @@ indexing scheme is called a @dfn{Hierarchical Graph FM index} (HGFM).")
(package
(name "hmmer")
(version "3.1b2")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "http://eddylab.org/software/hmmer"
- (version-prefix version 1) "/"
- version "/hmmer-" version ".tar.gz"))
- (sha256
- (base32
- "0djmgc0pfli0jilfx8hql1axhwhqxqb8rxg2r5rg07aw73sfs5nx"))))
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://eddylab.org/software/hmmer"
+ (version-prefix version 1) "/"
+ version "/hmmer-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0djmgc0pfli0jilfx8hql1axhwhqxqb8rxg2r5rg07aw73sfs5nx"))
+ (patches (search-patches "hmmer-remove-cpu-specificity.patch"))))
(build-system gnu-build-system)
(native-inputs `(("perl" ,perl)))
(home-page "http://hmmer.org/")
diff --git a/gnu/packages/patches/hmmer-remove-cpu-specificity.patch b/gnu/packages/patches/hmmer-remove-cpu-specificity.patch
new file mode 100644
index 0000000000..ba98db4d0e
--- /dev/null
+++ b/gnu/packages/patches/hmmer-remove-cpu-specificity.patch
@@ -0,0 +1,22 @@
+This patch removes compilation flags which make the build for the machine
+where compilation takes place, rendering the build not reproducible.
+
+diff --git a/configure b/configure
+index 8b6aaef..49a6afc 100755
+--- a/configure
++++ b/configure
+@@ -6125,14 +6125,6 @@ fi # guess arch
+
+ if test "x$ax_gcc_arch" != x -a "x$ax_gcc_arch" != xno; then
+ for arch in $ax_gcc_arch; do
+- if test "x$acx_maxopt_portable" = xyes; then # if we require portable code
+- flags="-mtune=$arch"
+- # -mcpu=$arch and m$arch generate nonportable code on every arch except
+- # x86. And some other arches (e.g. Alpha) don't accept -mtune. Grrr.
+- case $host_cpu in i*86|x86_64*) flags="$flags -mcpu=$arch -m$arch";; esac
+- else
+- flags="-march=$arch -mcpu=$arch -m$arch"
+- fi
+ for flag in $flags; do
+ as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$flag" | $as_tr_sh`
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5