aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2022-09-29 23:17:19 +0200
committerRicardo Wurmus <rekado@elephly.net>2022-09-29 23:21:16 +0200
commit1ee2d117d8fa9e2e0d4ec46cc5555497bb5e6337 (patch)
treef7b1e46cf4455bbc895861d6dab7ebea540e1b04
parent4244f5e9a7be02b67ba2cf76f8a67da221349bd3 (diff)
downloadguix-1ee2d117d8fa9e2e0d4ec46cc5555497bb5e6337.tar
guix-1ee2d117d8fa9e2e0d4ec46cc5555497bb5e6337.tar.gz
gnu: blast+: Build reproducibly.
Fixes <https://issues.guix.gnu.org/42141>. * gnu/packages/bioinformatics.scm (blast+)[source]: Do not record kernel version and use fix set of random numbers.
-rw-r--r--gnu/packages/bioinformatics.scm22
1 files changed, 21 insertions, 1 deletions
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index a034bf134e..ca341a45a7 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -1656,7 +1656,27 @@ package provides command line tools using the Bio++ library.")
;; Remove useless msbuild directory
(delete-file-recursively
"c++/src/build-system/project_tree_builder/msbuild")
- #t))))
+
+ ;; Build reproducibly.
+ ;; Do not record the kernel version
+ (substitute* "c++/src/build-system/configure"
+ (("kver=.*") "kver=\"\""))
+ ;; Do not generate random numbers.
+ (substitute* "c++/scripts/common/impl/define_random_macros.sh"
+ (("#define NCBI_RANDOM_VALUE_MAX 0xffffffffu" m)
+ (string-append m "
+#define NCBI_RANDOM_VALUE_0 2845495105u
+#define NCBI_RANDOM_VALUE_1 2158634051u
+#define NCBI_RANDOM_VALUE_2 4072202242u
+#define NCBI_RANDOM_VALUE_3 902228395u
+#define NCBI_RANDOM_VALUE_4 1353323915u
+#define NCBI_RANDOM_VALUE_5 574823513u
+#define NCBI_RANDOM_VALUE_6 4119501261u
+#define NCBI_RANDOM_VALUE_7 2477640938u
+#define NCBI_RANDOM_VALUE_8 2776595395u
+#define NCBI_RANDOM_VALUE_9 270550684u
+"))
+ (("cksum") "cksum >/dev/null"))))))
(build-system gnu-build-system)
(arguments
`(;; There are two(!) tests for this massive library, and both fail with