From dd3b79e7a1ba21b89b2b1cfc6b8679fdd63c96b2 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 26 Jul 2024 11:03:48 +0200 Subject: gnu: nss: Use ‘datefudge’ to run tests on 32-bit platforms. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes . * gnu/packages/nss.scm (nss)[arguments]: In ‘check’ phase, on 32-bit platforms, modify ‘SOURCE_DIR’ in ‘gtests.sh’ and use ‘datefudge’ rather than ‘faketime’. [native-inputs]: On 32-bit platforms, use ‘datefudge’ rather than ‘libfaketime’. Change-Id: I6b35f4d979897dd2215e189c4375aa0d792530d0 --- gnu/packages/nss.scm | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/nss.scm b/gnu/packages/nss.scm index d2d0b33180..6c60e9fbae 100644 --- a/gnu/packages/nss.scm +++ b/gnu/packages/nss.scm @@ -40,7 +40,8 @@ #:use-module (gnu packages crates-io) #:use-module (gnu packages compression) #:use-module (gnu packages perl) - #:use-module (gnu packages sqlite)) + #:use-module (gnu packages sqlite) + #:use-module (gnu packages time)) (define-public nspr (package @@ -213,11 +214,21 @@ in the Mozilla clients.") (substitute* "nss/tests/dbtests/dbtests.sh" ((" -lt 5") " -lt 50")) + #$@(if (target-64bit?) + '() + ;; The script fails to determine the source + ;; directory when running under 'datefudge' (see + ;; ). Help it. + #~((substitute* "nss/tests/gtests/gtests.sh" + (("SOURCE_DIR=.*") + (string-append "SOURCE_DIR=" (getcwd) "/nss\n"))))) + ;; The "PayPalEE.cert" certificate expires every six months, ;; leading to test failures: ;; . To ;; work around that, set the time to roughly the release date. - (invoke "faketime" "2024-01-23" "./nss/tests/all.sh")) + (invoke #$(if (target-64bit?) "faketime" "datefudge") + "2024-01-23" "./nss/tests/all.sh")) (format #t "test suite not run~%")))) (replace 'install (lambda* (#:key outputs #:allow-other-keys) @@ -242,7 +253,9 @@ in the Mozilla clients.") (copy-recursively (string-append obj "/lib") lib))))))) (inputs (list sqlite zlib)) (propagated-inputs (list nspr)) ;required by nss.pc. - (native-inputs (list perl libfaketime which)) ;for tests + (native-inputs (list perl ;for tests + (if (target-64bit?) libfaketime datefudge) + which)) ;; The NSS test suite takes around 48 hours on Loongson 3A (MIPS) when ;; another build is happening concurrently on the same machine. -- cgit v1.2.3