;;; SPDX-License-Identifier: GPL-3.0-or-later ;;; Copyright © 2021-2023 Petr Hodina (define-module (nongnu packages benchmark) #:use-module (guix packages) #:use-module (gnu packages base) #:use-module (gnu packages gcc) #:use-module (guix gexp) #:use-module (guix utils) #:use-module (guix download) #:use-module (nonguix build-system binary) #:use-module ((nonguix licenses) #:prefix license:)) (define-public geekbench5 ;; NOTE: ARM version does not offer same version as x86-64 version (let ((version-arm "5.4.0")) (package (name "geekbench5") (version "5.4.5") (source (cond ((target-x86-64?) (origin (method url-fetch) (uri (string-append "https://cdn.geekbench.com/Geekbench-" version "-Linux.tar.gz")) (sha256 (base32 "0qppx5ivclfwldb4fcmzg3v9a9nzi7d4f44vx634mfzw2symn3r4")))) ((or (target-aarch64?) (target-armhf?)) (origin (method url-fetch) (uri (string-append "https://cdn.geekbench.com/Geekbench-" version-arm "-LinuxARMPreview.tar.gz")) (sha256 (base32 "15pvqx452n23v5qsx8hbbqxh18x8x4ggcldd68wjjx9apxprkzih")))))) (build-system binary-build-system) (arguments (cond ((target-x86-64?) (list #:strip-binaries? #f ;TODO: For some reason it fails validate-runpath #:install-plan #~'(("geekbench5" "bin/") ("geekbench.plar" "bin/") ("geekbench_x86_64" "bin/")) #:patchelf-plan #~(list (list "geekbench5" '("glibc" "gcc:lib")) (list "geekbench_x86_64" '("glibc" "gcc:lib"))))) ((target-aarch64?) (list #:strip-binaries? #f ;TODO: For some reason it fails validate-runpath #:install-plan #~'(("geekbench5" "bin/") ("geekbench.plar" "bin/") ("geekbench_aarch64" "bin/")) #:patchelf-plan #~(list (list "geekbench5" '("glibc" "gcc:lib")) (list "geekbench_aarch64" '("glibc" "gcc:lib"))))) ((target-armhf?) (list #:strip-binaries? #f ;TODO: For some reason it fails validate-runpath #:install-plan #~'(("geekbench5" "bin/") ("geekbench.plar" "bin/") ; ld-linux-armhf.so.3 ("geekbench_armv7" "bin/")) #:patchelf-plan #~(list (list "geekbench5" '("glibc" "gcc:lib")) (list "geekbench_armv7" '("glibc" "gcc:lib"))))))) (supported-systems '("x86_64-linux" "aarch64-linux" "armhf-linux")) (inputs `(("gcc:lib" ,gcc "lib") ("glibc" ,glibc))) (synopsis "Benchmark that measures processor and memory performance") (description "This package provides benchmark that measures processor and memory performance and uploads the results into online database.") (home-page "https://www.geekbench.com/") (license (license:nonfree "https://www.primatelabs.com/legal/terms-of-use.html")))))