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.
This commit is contained in:
Ricardo Wurmus 2022-09-29 23:17:19 +02:00
parent 4244f5e9a7
commit 1ee2d117d8
No known key found for this signature in database
GPG key ID: 197A5888235FACAC

View file

@ -1656,7 +1656,27 @@ (define-public blast+
;; 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