From 1fe1bb96f2d7cf32e056496661bb5bed20b48edc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 28 Nov 2018 22:55:12 +0100 Subject: [PATCH] gnu: bigloo: Update to "4.3b2". Fixes . * gnu/packages/scheme.scm (bigloo): Update to "4.3b2". --- gnu/packages/scheme.scm | 182 ++++++++++++++++++++-------------------- 1 file changed, 93 insertions(+), 89 deletions(-) diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm index c03c53b91f..7267afd709 100644 --- a/gnu/packages/scheme.scm +++ b/gnu/packages/scheme.scm @@ -206,98 +206,102 @@ (define-public mit-scheme (properties '((ftp-directory . "/gnu/mit-scheme/stable.pkg"))))) (define-public bigloo - (package - (name "bigloo") - (version "4.3b") - (source (origin - (method url-fetch) - (uri (string-append "ftp://ftp-sop.inria.fr/indes/fp/Bigloo/bigloo" - version ".tar.gz")) - (sha256 - (base32 - "1x7xdgsls277zlf6gcaxs2cj62xj6yvb0qxh0ddmxfamvxba0cf4")) - ;; Remove bundled libraries. - (modules '((guix build utils))) - (snippet - '(begin - (for-each delete-file-recursively - '("gc" "gmp" "libuv")) - #t)))) - (build-system gnu-build-system) - (arguments - `(#:test-target "test" - #:phases - (modify-phases %standard-phases - (replace 'configure - (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Upstream modifies source tarballs in place, making significant changes + ;; long after the initial publication: . For + ;; transparency, we give this "second 4.3b" release a different version + ;; number. + (let ((upstream-version "4.3b")) + (package + (name "bigloo") + (version "4.3b2") + (source (origin + (method url-fetch) + (uri (string-append "ftp://ftp-sop.inria.fr/indes/fp/Bigloo/bigloo" + upstream-version ".tar.gz")) + (sha256 + (base32 + "02s0wrz5b1p0yqk9x6kax1vwzil7g9cyxfvl3vmy7fzznsza9gs4")) + ;; Remove bundled libraries. + (modules '((guix build utils))) + (snippet + '(begin + (for-each delete-file-recursively + '("gc" "gmp" "libuv")) + #t)))) + (build-system gnu-build-system) + (arguments + `(#:test-target "test" + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) - (substitute* "configure" - (("^shell=.*$") - (string-append "shell=" (which "bash") "\n")) - (("`date`") "0")) - (substitute* "autoconf/runtest.in" - ((", @DATE@") "")) - (substitute* "autoconf/osversion" - (("^version.*$") "version=\"\"\n")) - (substitute* "comptime/Makefile" - (("\\$\\(LDCOMPLIBS\\)") - "$(LDCOMPLIBS) $(LDFLAGS)")) + (substitute* "configure" + (("^shell=.*$") + (string-append "shell=" (which "bash") "\n")) + (("`date`") "0")) + (substitute* "autoconf/runtest.in" + ((", @DATE@") "")) + (substitute* "autoconf/osversion" + (("^version.*$") "version=\"\"\n")) + (substitute* "comptime/Makefile" + (("\\$\\(LDCOMPLIBS\\)") + "$(LDCOMPLIBS) $(LDFLAGS)")) - ;; The `configure' script doesn't understand options - ;; of those of Autoconf. - (let ((out (assoc-ref outputs "out"))) - (invoke "./configure" - (string-append "--prefix=" out) - ; use system libraries - "--customgc=no" - "--customunistring=no" - "--customlibuv=no" - (string-append"--mv=" (which "mv")) - (string-append "--rm=" (which "rm")) - "--cflags=-fPIC" - (string-append "--ldflags=-Wl,-rpath=" - (assoc-ref outputs "out") - "/lib/bigloo/" ,version) - (string-append "--lispdir=" out - "/share/emacs/site-lisp") - "--sharedbde=yes" - "--sharedcompiler=yes" - "--disable-patch")))) - (add-after 'install 'install-emacs-modes - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (dir (string-append out "/share/emacs/site-lisp"))) - (invoke "make" "-C" "bmacs" "all" "install" - (string-append "EMACSBRAND=emacs25") - (string-append "EMACSDIR=" dir)))))))) - (inputs - `(("emacs" ,emacs) ;UDE needs the X version of Emacs - ("libgc" ,libgc) - ("libunistring" ,libunistring) - ("libuv" ,libuv) - ("openssl" ,openssl) - ("sqlite" ,sqlite) + ;; The `configure' script doesn't understand options + ;; of those of Autoconf. + (let ((out (assoc-ref outputs "out"))) + (invoke "./configure" + (string-append "--prefix=" out) + ; use system libraries + "--customgc=no" + "--customunistring=no" + "--customlibuv=no" + (string-append"--mv=" (which "mv")) + (string-append "--rm=" (which "rm")) + "--cflags=-fPIC" + (string-append "--ldflags=-Wl,-rpath=" + (assoc-ref outputs "out") + "/lib/bigloo/" ,upstream-version) + (string-append "--lispdir=" out + "/share/emacs/site-lisp") + "--sharedbde=yes" + "--sharedcompiler=yes" + "--disable-patch")))) + (add-after 'install 'install-emacs-modes + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (dir (string-append out "/share/emacs/site-lisp"))) + (invoke "make" "-C" "bmacs" "all" "install" + (string-append "EMACSBRAND=emacs25") + (string-append "EMACSDIR=" dir)))))))) + (inputs + `(("emacs" ,emacs) ;UDE needs the X version of Emacs + ("libgc" ,libgc) + ("libunistring" ,libunistring) + ("libuv" ,libuv) + ("openssl" ,openssl) + ("sqlite" ,sqlite) - ;; Optional APIs for which Bigloo has bindings. - ("avahi" ,avahi) - ("libphidget" ,libphidget) - ("pcre" ,pcre))) - (native-inputs - `(("pkg-config" ,pkg-config))) - (propagated-inputs - `(("gmp" ,gmp))) ; bigloo.h refers to gmp.h - (home-page "http://www-sop.inria.fr/indes/fp/Bigloo/") - (synopsis "Efficient Scheme compiler") - (description - "Bigloo is a Scheme implementation devoted to one goal: enabling -Scheme based programming style where C(++) is usually -required. Bigloo attempts to make Scheme practical by offering -features usually presented by traditional programming languages -but not offered by Scheme and functional programming. Bigloo -compiles Scheme modules. It delivers small and fast stand alone -binary executables. Bigloo enables full connections between -Scheme and C programs and between Scheme and Java programs.") - (license gpl2+))) + ;; Optional APIs for which Bigloo has bindings. + ("avahi" ,avahi) + ("libphidget" ,libphidget) + ("pcre" ,pcre))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (propagated-inputs + `(("gmp" ,gmp))) ; bigloo.h refers to gmp.h + (home-page "http://www-sop.inria.fr/indes/fp/Bigloo/") + (synopsis "Efficient Scheme compiler") + (description + "Bigloo is a Scheme implementation devoted to one goal: enabling Scheme +based programming style where C(++) is usually required. Bigloo attempts to +make Scheme practical by offering features usually presented by traditional +programming languages but not offered by Scheme and functional programming. +Bigloo compiles Scheme modules. It delivers small and fast stand alone binary +executables. Bigloo enables full connections between Scheme and C programs +and between Scheme and Java programs.") + (license gpl2+)))) (define-public hop (package