me
/
guix
Archived
1
0
Fork 0

gnu: lean: Use G-expressions.

* gnu/packages/lean.scm (lean)[arguments]: Use G-expressions.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Zhu Zihao 2023-11-21 11:54:38 +08:00 committed by Ludovic Courtès
parent 17213c1b20
commit f1bcc043a4
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5
1 changed files with 26 additions and 23 deletions

View File

@ -3,6 +3,7 @@
;;; Copyright © 2020 Brett Gilio <brettg@gnu.org> ;;; Copyright © 2020 Brett Gilio <brettg@gnu.org>
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2022 Pradana Aumars <paumars@courrier.dev> ;;; Copyright © 2022 Pradana Aumars <paumars@courrier.dev>
;;; Copyright © 2023 Zhu Zihao <all_but_last@163.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -25,6 +26,7 @@
#:use-module (guix build-system cmake) #:use-module (guix build-system cmake)
#:use-module (guix build-system python) #:use-module (guix build-system python)
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (guix gexp)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix git-download) #:use-module (guix git-download)
#:use-module (guix download) #:use-module (guix download)
@ -52,29 +54,30 @@
(inputs (inputs
(list bash-minimal gmp)) (list bash-minimal gmp))
(arguments (arguments
`(#:build-type "Release" ; default upstream build type (list
;; XXX: Test phases currently fail on 32-bit sytems. #:build-type "Release" ; default upstream build type
;; Tests for those architectures have been temporarily ;; XXX: Test phases currently fail on 32-bit sytems.
;; disabled, pending further investigation. ;; Tests for those architectures have been temporarily
#:tests? ,(and (not (%current-target-system)) ;; disabled, pending further investigation.
(let ((arch (%current-system))) #:tests? (and (not (%current-target-system))
(not (or (string-prefix? "i686" arch) (let ((arch (%current-system)))
(string-prefix? "armhf" arch))))) (not (or (string-prefix? "i686" arch)
#:phases (string-prefix? "armhf" arch)))))
(modify-phases %standard-phases #:phases
(add-after 'patch-source-shebangs 'patch-tests-shebangs #~(modify-phases %standard-phases
(lambda _ (add-after 'patch-source-shebangs 'patch-tests-shebangs
(let ((sh (which "sh")) (lambda _
(bash (which "bash"))) (let ((sh (which "sh"))
(substitute* (find-files "tests/lean" "\\.sh$") (bash (which "bash")))
(("#![[:blank:]]?/bin/sh") (substitute* (find-files "tests/lean" "\\.sh$")
(string-append "#!" sh)) (("#![[:blank:]]?/bin/sh")
(("#![[:blank:]]?/bin/bash") (string-append "#!" sh))
(string-append "#!" bash)) (("#![[:blank:]]?/bin/bash")
(("#![[:blank:]]?usr/bin/env bash") (string-append "#!" bash))
(string-append "#!" bash)))))) (("#![[:blank:]]?usr/bin/env bash")
(add-before 'configure 'chdir-to-src (string-append "#!" bash))))))
(lambda _ (chdir "src")))))) (add-before 'configure 'chdir-to-src
(lambda _ (chdir "src"))))))
(synopsis "Theorem prover and programming language") (synopsis "Theorem prover and programming language")
(description (description
"Lean is a theorem prover and programming language with a small trusted "Lean is a theorem prover and programming language with a small trusted