gnu: bigloo: Update to "4.3b2".
Fixes <https://bugs.gnu.org/33525>. * gnu/packages/scheme.scm (bigloo): Update to "4.3b2".
This commit is contained in:
parent
13bcc6b45f
commit
1fe1bb96f2
|
@ -206,98 +206,102 @@ features an integrated Emacs-like editor and a large runtime library.")
|
||||||
(properties '((ftp-directory . "/gnu/mit-scheme/stable.pkg")))))
|
(properties '((ftp-directory . "/gnu/mit-scheme/stable.pkg")))))
|
||||||
|
|
||||||
(define-public bigloo
|
(define-public bigloo
|
||||||
(package
|
;; Upstream modifies source tarballs in place, making significant changes
|
||||||
(name "bigloo")
|
;; long after the initial publication: <https://bugs.gnu.org/33525>. For
|
||||||
(version "4.3b")
|
;; transparency, we give this "second 4.3b" release a different version
|
||||||
(source (origin
|
;; number.
|
||||||
(method url-fetch)
|
(let ((upstream-version "4.3b"))
|
||||||
(uri (string-append "ftp://ftp-sop.inria.fr/indes/fp/Bigloo/bigloo"
|
(package
|
||||||
version ".tar.gz"))
|
(name "bigloo")
|
||||||
(sha256
|
(version "4.3b2")
|
||||||
(base32
|
(source (origin
|
||||||
"1x7xdgsls277zlf6gcaxs2cj62xj6yvb0qxh0ddmxfamvxba0cf4"))
|
(method url-fetch)
|
||||||
;; Remove bundled libraries.
|
(uri (string-append "ftp://ftp-sop.inria.fr/indes/fp/Bigloo/bigloo"
|
||||||
(modules '((guix build utils)))
|
upstream-version ".tar.gz"))
|
||||||
(snippet
|
(sha256
|
||||||
'(begin
|
(base32
|
||||||
(for-each delete-file-recursively
|
"02s0wrz5b1p0yqk9x6kax1vwzil7g9cyxfvl3vmy7fzznsza9gs4"))
|
||||||
'("gc" "gmp" "libuv"))
|
;; Remove bundled libraries.
|
||||||
#t))))
|
(modules '((guix build utils)))
|
||||||
(build-system gnu-build-system)
|
(snippet
|
||||||
(arguments
|
'(begin
|
||||||
`(#:test-target "test"
|
(for-each delete-file-recursively
|
||||||
#:phases
|
'("gc" "gmp" "libuv"))
|
||||||
(modify-phases %standard-phases
|
#t))))
|
||||||
(replace 'configure
|
(build-system gnu-build-system)
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(arguments
|
||||||
|
`(#:test-target "test"
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(replace 'configure
|
||||||
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
|
|
||||||
(substitute* "configure"
|
(substitute* "configure"
|
||||||
(("^shell=.*$")
|
(("^shell=.*$")
|
||||||
(string-append "shell=" (which "bash") "\n"))
|
(string-append "shell=" (which "bash") "\n"))
|
||||||
(("`date`") "0"))
|
(("`date`") "0"))
|
||||||
(substitute* "autoconf/runtest.in"
|
(substitute* "autoconf/runtest.in"
|
||||||
((", @DATE@") ""))
|
((", @DATE@") ""))
|
||||||
(substitute* "autoconf/osversion"
|
(substitute* "autoconf/osversion"
|
||||||
(("^version.*$") "version=\"\"\n"))
|
(("^version.*$") "version=\"\"\n"))
|
||||||
(substitute* "comptime/Makefile"
|
(substitute* "comptime/Makefile"
|
||||||
(("\\$\\(LDCOMPLIBS\\)")
|
(("\\$\\(LDCOMPLIBS\\)")
|
||||||
"$(LDCOMPLIBS) $(LDFLAGS)"))
|
"$(LDCOMPLIBS) $(LDFLAGS)"))
|
||||||
|
|
||||||
;; The `configure' script doesn't understand options
|
;; The `configure' script doesn't understand options
|
||||||
;; of those of Autoconf.
|
;; of those of Autoconf.
|
||||||
(let ((out (assoc-ref outputs "out")))
|
(let ((out (assoc-ref outputs "out")))
|
||||||
(invoke "./configure"
|
(invoke "./configure"
|
||||||
(string-append "--prefix=" out)
|
(string-append "--prefix=" out)
|
||||||
; use system libraries
|
; use system libraries
|
||||||
"--customgc=no"
|
"--customgc=no"
|
||||||
"--customunistring=no"
|
"--customunistring=no"
|
||||||
"--customlibuv=no"
|
"--customlibuv=no"
|
||||||
(string-append"--mv=" (which "mv"))
|
(string-append"--mv=" (which "mv"))
|
||||||
(string-append "--rm=" (which "rm"))
|
(string-append "--rm=" (which "rm"))
|
||||||
"--cflags=-fPIC"
|
"--cflags=-fPIC"
|
||||||
(string-append "--ldflags=-Wl,-rpath="
|
(string-append "--ldflags=-Wl,-rpath="
|
||||||
(assoc-ref outputs "out")
|
(assoc-ref outputs "out")
|
||||||
"/lib/bigloo/" ,version)
|
"/lib/bigloo/" ,upstream-version)
|
||||||
(string-append "--lispdir=" out
|
(string-append "--lispdir=" out
|
||||||
"/share/emacs/site-lisp")
|
"/share/emacs/site-lisp")
|
||||||
"--sharedbde=yes"
|
"--sharedbde=yes"
|
||||||
"--sharedcompiler=yes"
|
"--sharedcompiler=yes"
|
||||||
"--disable-patch"))))
|
"--disable-patch"))))
|
||||||
(add-after 'install 'install-emacs-modes
|
(add-after 'install 'install-emacs-modes
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
(dir (string-append out "/share/emacs/site-lisp")))
|
(dir (string-append out "/share/emacs/site-lisp")))
|
||||||
(invoke "make" "-C" "bmacs" "all" "install"
|
(invoke "make" "-C" "bmacs" "all" "install"
|
||||||
(string-append "EMACSBRAND=emacs25")
|
(string-append "EMACSBRAND=emacs25")
|
||||||
(string-append "EMACSDIR=" dir))))))))
|
(string-append "EMACSDIR=" dir))))))))
|
||||||
(inputs
|
(inputs
|
||||||
`(("emacs" ,emacs) ;UDE needs the X version of Emacs
|
`(("emacs" ,emacs) ;UDE needs the X version of Emacs
|
||||||
("libgc" ,libgc)
|
("libgc" ,libgc)
|
||||||
("libunistring" ,libunistring)
|
("libunistring" ,libunistring)
|
||||||
("libuv" ,libuv)
|
("libuv" ,libuv)
|
||||||
("openssl" ,openssl)
|
("openssl" ,openssl)
|
||||||
("sqlite" ,sqlite)
|
("sqlite" ,sqlite)
|
||||||
|
|
||||||
;; Optional APIs for which Bigloo has bindings.
|
;; Optional APIs for which Bigloo has bindings.
|
||||||
("avahi" ,avahi)
|
("avahi" ,avahi)
|
||||||
("libphidget" ,libphidget)
|
("libphidget" ,libphidget)
|
||||||
("pcre" ,pcre)))
|
("pcre" ,pcre)))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("pkg-config" ,pkg-config)))
|
`(("pkg-config" ,pkg-config)))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("gmp" ,gmp))) ; bigloo.h refers to gmp.h
|
`(("gmp" ,gmp))) ; bigloo.h refers to gmp.h
|
||||||
(home-page "http://www-sop.inria.fr/indes/fp/Bigloo/")
|
(home-page "http://www-sop.inria.fr/indes/fp/Bigloo/")
|
||||||
(synopsis "Efficient Scheme compiler")
|
(synopsis "Efficient Scheme compiler")
|
||||||
(description
|
(description
|
||||||
"Bigloo is a Scheme implementation devoted to one goal: enabling
|
"Bigloo is a Scheme implementation devoted to one goal: enabling Scheme
|
||||||
Scheme based programming style where C(++) is usually
|
based programming style where C(++) is usually required. Bigloo attempts to
|
||||||
required. Bigloo attempts to make Scheme practical by offering
|
make Scheme practical by offering features usually presented by traditional
|
||||||
features usually presented by traditional programming languages
|
programming languages but not offered by Scheme and functional programming.
|
||||||
but not offered by Scheme and functional programming. Bigloo
|
Bigloo compiles Scheme modules. It delivers small and fast stand alone binary
|
||||||
compiles Scheme modules. It delivers small and fast stand alone
|
executables. Bigloo enables full connections between Scheme and C programs
|
||||||
binary executables. Bigloo enables full connections between
|
and between Scheme and Java programs.")
|
||||||
Scheme and C programs and between Scheme and Java programs.")
|
(license gpl2+))))
|
||||||
(license gpl2+)))
|
|
||||||
|
|
||||||
(define-public hop
|
(define-public hop
|
||||||
(package
|
(package
|
||||||
|
|
Loading…
Reference in New Issue