me
/
guix
Archived
1
0
Fork 0

gnu: proof-general: Update to 4.4-0.bc86736.

There hasn’t been a new release since 2016 and there has been more than 450
new commits since then.

* gnu/packages/coq.scm (proof-general): Update to 4.4-0.bc86736.
[arguments]<#:make-flags>: Set ELISP_START.
<#:phases>: Remove ‘coq-prog’ procedure which was unused; don’t run
‘substitute*’ on bin/proofgeneral since it no longer exists.  Don’t end phases
with #t, this will be unnecessary once the ‘core-updates’ branch is merged.
[home-page]: Remove trailing whitesapce.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
master
Xinglu Chen 2021-06-10 15:30:06 +02:00 committed by Ludovic Courtès
parent 9eabf4983f
commit 44ed008ac1
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5
1 changed files with 69 additions and 71 deletions

View File

@ -6,6 +6,7 @@
;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de> ;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2020 raingloom <raingloom@riseup.net> ;;; Copyright © 2020 raingloom <raingloom@riseup.net>
;;; Copyright © 2020 Robin Green <greenrd@greenrd.org> ;;; Copyright © 2020 Robin Green <greenrd@greenrd.org>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -142,79 +143,76 @@ It is developed using Objective Caml and Camlp5.")
(license (list license:lgpl2.1 license:opl1.0+)))) (license (list license:lgpl2.1 license:opl1.0+))))
(define-public proof-general (define-public proof-general
(package ;; The latest release is from 2016 and there has been more than 450 commits
(name "proof-general") ;; since then.
(version "4.4") ;; Commit from 2021-06-07.
(source (origin (let ((commit "bc86736abb728ec0d28abc90ef0adae21d29a66a")
(method git-fetch) (revision "0"))
(uri (git-reference (package
(url (string-append (name "proof-general")
"https://github.com/ProofGeneral/PG")) (version (git-version "4.4" revision commit))
(commit (string-append "v" version)))) (source (origin
(file-name (git-file-name name version)) (method git-fetch)
(sha256 (uri (git-reference
(base32 (url "https://github.com/ProofGeneral/PG")
"0bdfk91wf71z80mdfnl8hpinripndcjgdkz854zil6521r84nqk8")))) (commit commit)))
(build-system gnu-build-system) (file-name (git-file-name name version))
(native-inputs (sha256
`(("which" ,which) (base32
("emacs" ,emacs-minimal) "00cga3n9nj2xa3ivb0fdkkdx3k11fp4879y188738631yd1x2lsa"))))
("texinfo" ,texinfo))) (build-system gnu-build-system)
(inputs (native-inputs
`(("host-emacs" ,emacs) `(("which" ,which)
("perl" ,perl) ("emacs" ,emacs-minimal)
("coq" ,coq))) ("texinfo" ,texinfo)))
(arguments (inputs
`(#:tests? #f ; no check target `(("host-emacs" ,emacs)
#:make-flags (list (string-append "PREFIX=" %output) ("perl" ,perl)
(string-append "DEST_PREFIX=" %output)) ("coq" ,coq)))
#:modules ((guix build gnu-build-system) (arguments
(guix build utils) `(#:tests? #f ; no check target
(guix build emacs-utils)) #:make-flags (list (string-append "PREFIX=" %output)
#:imported-modules (,@%gnu-build-system-modules (string-append "DEST_PREFIX=" %output)
(guix build emacs-utils)) (string-append "ELISP_START=" %output
#:phases "/share/emacs/site-lisp/ProofGeneral"))
(modify-phases %standard-phases #:modules ((guix build gnu-build-system)
(delete 'configure) (guix build utils)
(add-after 'unpack 'disable-byte-compile-error-on-warn (guix build emacs-utils))
(lambda _ #:imported-modules (,@%gnu-build-system-modules
(substitute* "Makefile" (guix build emacs-utils))
(("\\(setq byte-compile-error-on-warn t\\)") #:phases
"(setq byte-compile-error-on-warn nil)")) (modify-phases %standard-phases
#t)) (delete 'configure)
(add-after 'unpack 'patch-hardcoded-paths (add-after 'unpack 'disable-byte-compile-error-on-warn
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda _
(let ((out (assoc-ref outputs "out")) (substitute* "Makefile"
(coq (assoc-ref inputs "coq")) (("\\(setq byte-compile-error-on-warn t\\)")
(emacs (assoc-ref inputs "host-emacs"))) "(setq byte-compile-error-on-warn nil)"))))
(define (coq-prog name) (add-after 'unpack 'patch-hardcoded-paths
(string-append coq "/bin/" name)) (lambda* (#:key inputs outputs #:allow-other-keys)
(substitute* "Makefile" (let ((out (assoc-ref outputs "out"))
(("/sbin/install-info") "install-info")) (coq (assoc-ref inputs "coq"))
(substitute* "bin/proofgeneral" (emacs (assoc-ref inputs "host-emacs")))
(("^PGHOMEDEFAULT=.*" all) (substitute* "Makefile"
(string-append all (("/sbin/install-info") "install-info")))))
"PGHOME=$PGHOMEDEFAULT\n" (add-after 'unpack 'clean
"EMACS=" emacs "/bin/emacs"))) (lambda _
#t))) ;; Delete the pre-compiled elc files for Emacs 23.
(add-after 'unpack 'clean (invoke "make" "clean")))
(lambda _ (add-after 'install 'install-doc
;; Delete the pre-compiled elc files for Emacs 23. (lambda* (#:key make-flags #:allow-other-keys)
(invoke "make" "clean"))) ;; XXX FIXME avoid building/installing pdf files,
(add-after 'install 'install-doc ;; due to unresolved errors building them.
(lambda* (#:key make-flags #:allow-other-keys) (substitute* "Makefile"
;; XXX FIXME avoid building/installing pdf files, ((" [^ ]*\\.pdf") ""))
;; due to unresolved errors building them. (apply invoke "make" "install-doc" make-flags))))))
(substitute* "Makefile" (home-page "https://proofgeneral.github.io/")
((" [^ ]*\\.pdf") "")) (synopsis "Generic front-end for proof assistants based on Emacs")
(apply invoke "make" "install-doc" make-flags)))))) (description
(home-page "https://proofgeneral.github.io/ ") "Proof General is a major mode to turn Emacs into an interactive proof
(synopsis "Generic front-end for proof assistants based on Emacs")
(description
"Proof General is a major mode to turn Emacs into an interactive proof
assistant to write formal mathematical proofs using a variety of theorem assistant to write formal mathematical proofs using a variety of theorem
provers.") provers.")
(license license:gpl2+))) (license license:gpl2+))))
(define-public coq-flocq (define-public coq-flocq
(package (package