mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-25 05:48:07 -05:00
gnu: Remove scmutils.
Fixes <https://bugs.gnu.org/34203>. * gnu/packages/scheme.scm (scmutils): Remove variable.
This commit is contained in:
parent
373a2a0797
commit
4267481a4e
1 changed files with 0 additions and 172 deletions
|
@ -620,178 +620,6 @@ (define-public chibi-scheme
|
||||||
threads.")
|
threads.")
|
||||||
(license bsd-3)))
|
(license bsd-3)))
|
||||||
|
|
||||||
(define-public scmutils
|
|
||||||
(let ()
|
|
||||||
(define (system-suffix)
|
|
||||||
(cond
|
|
||||||
((string-prefix? "x86_64" (or (%current-target-system)
|
|
||||||
(%current-system)))
|
|
||||||
"x86-64")
|
|
||||||
(else "i386")))
|
|
||||||
|
|
||||||
(package
|
|
||||||
(name "scmutils")
|
|
||||||
(version "20160827")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method url-fetch/tarbomb)
|
|
||||||
(modules '((guix build utils)))
|
|
||||||
(snippet '(begin
|
|
||||||
;; Remove binary code
|
|
||||||
(delete-file-recursively "scmutils/mit-scheme")
|
|
||||||
#t))
|
|
||||||
(uri (string-append "http://groups.csail.mit.edu/mac/users/gjs/6946"
|
|
||||||
"/scmutils-tarballs/" name "-" version
|
|
||||||
"-x86-64-gnu-linux.tar.gz"))
|
|
||||||
(sha256
|
|
||||||
(base32 "00ly5m0s4dy5kxravjaqlpii5zcnr6b9nqm0607lr7xcs52i4j8b"))))
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(inputs
|
|
||||||
`(("mit-scheme" ,mit-scheme)
|
|
||||||
("emacs" ,emacs-minimal)))
|
|
||||||
(arguments
|
|
||||||
`(#:tests? #f ;; no tests-suite
|
|
||||||
#:modules ((guix build gnu-build-system)
|
|
||||||
(guix build utils)
|
|
||||||
(guix build emacs-utils))
|
|
||||||
#:imported-modules (,@%gnu-build-system-modules
|
|
||||||
(guix build emacs-utils))
|
|
||||||
#:phases
|
|
||||||
(modify-phases %standard-phases
|
|
||||||
(replace 'configure
|
|
||||||
;; No standard build procedure is used. We set the correct
|
|
||||||
;; runtime path in the custom build system.
|
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
|
||||||
(let ((out (assoc-ref outputs "out")))
|
|
||||||
;; Required to find .bci files at runtime.
|
|
||||||
(with-directory-excursion "scmutils"
|
|
||||||
(rename-file "src" "scmutils"))
|
|
||||||
(substitute* "scmutils/scmutils/load.scm"
|
|
||||||
(("/usr/local/scmutils/")
|
|
||||||
(string-append out "/lib/mit-scheme-"
|
|
||||||
,(system-suffix) "/")))
|
|
||||||
#t)))
|
|
||||||
(replace 'build
|
|
||||||
;; Compile the code and build a band.
|
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
|
||||||
(make-img (string-append
|
|
||||||
"echo '(load \"load\") "
|
|
||||||
"(disk-save \"edwin-mechanics.com\")'"
|
|
||||||
"| mit-scheme")))
|
|
||||||
(with-directory-excursion "scmutils/scmutils"
|
|
||||||
(and (zero? (system "mit-scheme < compile.scm"))
|
|
||||||
(zero? (system make-img))))
|
|
||||||
#t)))
|
|
||||||
(add-before 'install 'fix-directory-names
|
|
||||||
;; Correct directory names in the startup script.
|
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
|
||||||
(scm-root (assoc-ref inputs "mit-scheme")))
|
|
||||||
(substitute* "bin/mechanics"
|
|
||||||
(("ROOT=\"\\$\\{SCMUTILS_ROOT:-/.*\\}\"")
|
|
||||||
(string-append
|
|
||||||
"ROOT=\"${SCMUTILS_ROOT:-" scm-root "}\"\n"
|
|
||||||
"LIB=\"${ROOT}/lib/mit-scheme-"
|
|
||||||
,(system-suffix) ":"
|
|
||||||
out "/lib/mit-scheme-" ,(system-suffix) "\""))
|
|
||||||
(("EDWIN_INFO_DIRECTORY=.*\n") "")
|
|
||||||
(("SCHEME=.*\n")
|
|
||||||
(string-append "SCHEME=\"${ROOT}/bin/scheme "
|
|
||||||
"--library ${LIB}\"\n"))
|
|
||||||
(("export EDWIN_INFO_DIRECTORY") ""))
|
|
||||||
#t)))
|
|
||||||
(add-before 'install 'emacs-tags
|
|
||||||
;; Generate Emacs's tags for easy reference to source
|
|
||||||
;; code.
|
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
|
||||||
(with-directory-excursion "scmutils/scmutils"
|
|
||||||
(apply invoke "etags" (find-files "." "\\.scm")))
|
|
||||||
#t))
|
|
||||||
(replace 'install
|
|
||||||
;; Copy files to the store.
|
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
|
||||||
(define* (copy-files-to-directory files dir
|
|
||||||
#:optional (delete? #f))
|
|
||||||
(for-each (lambda (f)
|
|
||||||
(copy-file f (string-append dir "/" f))
|
|
||||||
(when delete? (delete-file f)))
|
|
||||||
files))
|
|
||||||
|
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
|
||||||
(bin (string-append out "/bin"))
|
|
||||||
(doc (string-append out "/share/doc/"
|
|
||||||
,name "-" ,version))
|
|
||||||
(lib (string-append out "/lib/mit-scheme-"
|
|
||||||
,(system-suffix)
|
|
||||||
"/scmutils")))
|
|
||||||
(for-each mkdir-p (list lib doc bin))
|
|
||||||
(with-directory-excursion "scmutils/scmutils"
|
|
||||||
(copy-files-to-directory '("COPYING" "LICENSE")
|
|
||||||
doc #t)
|
|
||||||
(for-each delete-file (find-files "." "\\.bin"))
|
|
||||||
(copy-files-to-directory '("edwin-mechanics.com")
|
|
||||||
(string-append lib "/..") #t)
|
|
||||||
(copy-recursively "." lib))
|
|
||||||
(with-directory-excursion "bin"
|
|
||||||
(copy-files-to-directory (find-files ".") bin))
|
|
||||||
(with-directory-excursion "scmutils/manual"
|
|
||||||
(copy-files-to-directory (find-files ".") doc))
|
|
||||||
#t)))
|
|
||||||
(add-after 'install 'emacs-helpers
|
|
||||||
;; Add convenience Emacs commands to easily load the
|
|
||||||
;; Scmutils band in an MIT-Scheme buffer inside of Emacs
|
|
||||||
;; and to easily load code tags.
|
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
|
||||||
(mit-root (assoc-ref inputs "mit-scheme"))
|
|
||||||
(emacs-lisp-dir
|
|
||||||
(string-append out "/share/emacs/site-lisp"
|
|
||||||
"/guix.d/" ,name "-" ,version))
|
|
||||||
(el-file (string-append emacs-lisp-dir
|
|
||||||
"/scmutils.el"))
|
|
||||||
(lib-relative-path
|
|
||||||
(string-append "/lib/mit-scheme-"
|
|
||||||
,(system-suffix))))
|
|
||||||
(mkdir-p emacs-lisp-dir)
|
|
||||||
(call-with-output-file el-file
|
|
||||||
(lambda (p)
|
|
||||||
(format p
|
|
||||||
";;;###autoload
|
|
||||||
(defun scmutils-load ()
|
|
||||||
(interactive)
|
|
||||||
(require 'xscheme)
|
|
||||||
(let ((mit-root \"~a\")
|
|
||||||
(scmutils \"~a\"))
|
|
||||||
(run-scheme
|
|
||||||
(concat mit-root \"/bin/scheme --library \"
|
|
||||||
mit-root \"~a:\" scmutils \"~a\"
|
|
||||||
\" --band edwin-mechanics.com\"
|
|
||||||
\" --emacs\"))))
|
|
||||||
|
|
||||||
;;;###autoload
|
|
||||||
(defun scmutils-load-tags ()
|
|
||||||
(interactive)
|
|
||||||
(let ((scmutils \"~a\"))
|
|
||||||
(visit-tags-table (concat scmutils \"/TAGS\"))))
|
|
||||||
"
|
|
||||||
mit-root out
|
|
||||||
lib-relative-path
|
|
||||||
lib-relative-path
|
|
||||||
(string-append out lib-relative-path
|
|
||||||
"/scmutils"))))
|
|
||||||
(emacs-generate-autoloads ,name emacs-lisp-dir)
|
|
||||||
(emacs-byte-compile-directory emacs-lisp-dir)
|
|
||||||
#t))))))
|
|
||||||
(home-page
|
|
||||||
"http://groups.csail.mit.edu/mac/users/gjs/6946/linux-install.htm")
|
|
||||||
(synopsis "Scmutils library for MIT Scheme")
|
|
||||||
(description "The Scmutils system is an integrated library of
|
|
||||||
procedures, embedded in the programming language Scheme, and intended to
|
|
||||||
support teaching and research in mathematical physics and electrical
|
|
||||||
engineering.")
|
|
||||||
(license gpl2+))))
|
|
||||||
|
|
||||||
(define-public sicp
|
(define-public sicp
|
||||||
(let ((commit "225c172f9b859902a64a3c5dd5e1f9ac1a7382de"))
|
(let ((commit "225c172f9b859902a64a3c5dd5e1f9ac1a7382de"))
|
||||||
(package
|
(package
|
||||||
|
|
Loading…
Reference in a new issue