gnu: redis: Use gexps and streamline.

* gnu/packages/databases.scm (redis) [arguments]: Merge the use-correct-tclsh
into the patch-paths phase.  Use 'which' instead of assoc-ref.  Move
the #:make-flags argument before the #:phases one.  Use cc-for-target as the
value of the CC make flag.
[native-inputs]: Move field below arguments.
This commit is contained in:
Maxim Cournoyer 2023-03-05 15:24:38 -05:00
parent 458b791f35
commit 4413b09fa3
No known key found for this signature in database
GPG key ID: 1260E46482E63562

View file

@ -2455,42 +2455,37 @@ (define-public redis
;; Delete bundled jemalloc, as the package will use the libc one ;; Delete bundled jemalloc, as the package will use the libc one
'(begin (delete-file-recursively "deps/jemalloc"))))) '(begin (delete-file-recursively "deps/jemalloc")))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs
(list pkg-config procps tcl which))
(arguments (arguments
'(#:phases (list
(modify-phases %standard-phases #:make-flags #~(list #$(string-append "CC=" (cc-for-target))
(delete 'configure) "MALLOC=libc"
(add-after 'unpack 'use-correct-tclsh "LDFLAGS=-ldl"
(lambda* (#:key inputs #:allow-other-keys) (string-append "PREFIX=" #$output))
(substitute* "runtest" #:phases
(("^TCLSH=.*") #~(modify-phases %standard-phases
(string-append "TCLSH=" (delete 'configure)
(assoc-ref inputs "tcl") (add-after 'unpack 'patch-paths
"/bin/tclsh"))))) (lambda _
(add-after 'unpack 'patch-paths (substitute* "runtest"
(lambda _ (("^TCLSH=.*")
(substitute* "tests/support/server.tcl" (string-append "TCLSH=" (which "tclsh"))))
(("/usr/bin/env") (substitute* "tests/support/server.tcl"
(which "env"))))) (("/usr/bin/env")
(add-after 'unpack 'adjust-tests (which "env")))))
(lambda _ (add-after 'unpack 'adjust-tests
;; Disable failing tests (lambda _
(substitute* "tests/test_helper.tcl" ;; Disable failing tests
;; The AOF tests cause the test suite to hang waiting for a (substitute* "tests/test_helper.tcl"
;; "background AOF rewrite to finish", perhaps because dead ;; The AOF tests cause the test suite to hang waiting for a
;; processes persist as zombies in the build environment. ;; "background AOF rewrite to finish", perhaps because dead
(("unit/aofrw") "") ;; processes persist as zombies in the build environment.
(("integration/aof(-multi-part)?") "") (("unit/aofrw") "")
(("integration/failover") "") (("integration/aof(-multi-part)?") "")
(("integration/replication-4") "") (("integration/failover") "")
(("integration/replication-psync") "") (("integration/replication-4") "")
(("integration/replication[^-]") ""))))) (("integration/replication-psync") "")
#:make-flags `("CC=gcc" (("integration/replication[^-]") "")))))))
"MALLOC=libc" (native-inputs (list pkg-config procps tcl which))
"LDFLAGS=-ldl"
,(string-append "PREFIX="
(assoc-ref %outputs "out")))))
(synopsis "Key-value cache and store") (synopsis "Key-value cache and store")
(description "Redis is an advanced key-value cache and store. Redis (description "Redis is an advanced key-value cache and store. Redis
supports many data structures including strings, hashes, lists, sets, sorted supports many data structures including strings, hashes, lists, sets, sorted