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
parent
9eabf4983f
commit
44ed008ac1
|
@ -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
|
||||||
|
|
Reference in New Issue