mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2025-01-19 05:57:04 +01:00
gnu: phoronix-test-suite: Do not propagate gcc-toolchain.
* gnu/packages/benchmark.scm (gcc-toolchain*): Replace gcc-toolchain-12 reference with gcc-toolchain. * gnu/packages/benchmark.scm (phoronix-test-suite): Augment wrap-binary phase with GCC variables. [propagated-inputs]: Delete field, moving gcc-toolchain to... [inputs]: ... here. [search-paths]: New field.
This commit is contained in:
parent
2d8aa104aa
commit
22d2f94eb2
1 changed files with 26 additions and 11 deletions
|
@ -34,6 +34,7 @@ (define-module (gnu packages benchmark)
|
|||
#:use-module (guix download)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix search-paths)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system python)
|
||||
|
@ -70,11 +71,10 @@ (define-module (gnu packages benchmark)
|
|||
#:use-module (gnu packages xml)
|
||||
#:use-module (ice-9 match))
|
||||
|
||||
;; Lazily resolve the gcc-toolchain to avoid a circular dependency. Always
|
||||
;; use the latest available toolchain to avoid conflicts in user profiles.
|
||||
;; Lazily resolve the gcc-toolchain to avoid a circular dependency.
|
||||
(define gcc-toolchain*
|
||||
(delay (module-ref (resolve-interface '(gnu packages commencement))
|
||||
'gcc-toolchain-12)))
|
||||
'gcc-toolchain)))
|
||||
|
||||
(define-public fio
|
||||
(package
|
||||
|
@ -351,24 +351,39 @@ (define (mark-as-non-free directory)
|
|||
(invoke "./install-sh" #$output "--free-software-only")))
|
||||
(add-after 'install 'wrap-binary
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((pts (string-append #$output "/bin/phoronix-test-suite")))
|
||||
(let ((pts (string-append #$output "/bin/phoronix-test-suite"))
|
||||
(gcc #$(this-package-input "gcc-toolchain")))
|
||||
(wrap-program pts
|
||||
(list "PATH" 'prefix
|
||||
(map (lambda (binary)
|
||||
(dirname (search-input-file
|
||||
inputs (string-append "bin/" binary))))
|
||||
'("bash" "cat" ;coreutils
|
||||
"gzip" "make" "php" "sed" "tar" "which"))))))))))
|
||||
"gcc"
|
||||
"gzip" "make" "php" "sed" "tar" "which")))
|
||||
;; Wrap the GCC compiler paths.
|
||||
(list "C_INCLUDE_PATH" 'prefix
|
||||
(list (string-append gcc "/include")))
|
||||
(list "CPLUS_INCLUDE_PATH" 'prefix
|
||||
(list (string-append gcc "/include/c++")
|
||||
(string-append gcc "/include")))
|
||||
(list "LIBRARY_PATH" 'prefix
|
||||
(list (string-append gcc "/lib"))))))))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs (list python which))
|
||||
;; Wrap the most basic build tools needed by Phoronix Test Suite to build
|
||||
;; simple tests such as 'fio'.
|
||||
(inputs (list bash coreutils gnu-make gzip php sed tar which))
|
||||
;; Phoronix Test Suite builds and caches the benchmarking tools itself;
|
||||
;; the user is required to manually install extra libraries depending on
|
||||
;; the selected test; but at least a working C/C++ toolchain is assumed to
|
||||
;; be available.
|
||||
(propagated-inputs (list (force gcc-toolchain*)))
|
||||
(inputs
|
||||
(list bash
|
||||
coreutils
|
||||
(force gcc-toolchain*)
|
||||
gnu-make
|
||||
gzip
|
||||
php
|
||||
sed
|
||||
tar
|
||||
which))
|
||||
(native-search-paths %gcc-search-paths)
|
||||
(home-page "https://www.phoronix-test-suite.com/")
|
||||
(synopsis "Automated testing/benchmarking software")
|
||||
(description
|
||||
|
|
Loading…
Reference in a new issue