137 lines
5.5 KiB
Scheme
137 lines
5.5 KiB
Scheme
;;; GNU Guix --- Functional package management for GNU
|
|
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
|
|
;;; Copyright © 2014 Cyril Roelandt <tipecaml@gmail.com>
|
|
;;; Copyright © 2014, 2016, 2018 David Thompson <davet@gnu.org>
|
|
;;; Copyright © 2014, 2017, 2018 Mark H Weaver <mhw@netris.org>
|
|
;;; Copyright © 2015, 2017 Christopher Allan Webber <cwebber@dustycloud.org>
|
|
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
|
|
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
|
|
;;; Copyright © 2016, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
|
|
;;; Copyright © 2017 Andy Wingo <wingo@igalia.com>
|
|
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
|
|
;;; Copyright © 2017, 2019 Mathieu Othacehe <m.othacehe@gmail.com>
|
|
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
|
|
;;; Copyright © 2017, 2018 Amirouche <amirouche@hypermove.net>
|
|
;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org>
|
|
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
|
|
;;; Copyright © 2019 Taylan Kammer <taylan.kammer@gmail.com>
|
|
;;;
|
|
;;; This file is part of GNU Guix.
|
|
;;;
|
|
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
|
;;; under the terms of the GNU General Public License as published by
|
|
;;; the Free Software Foundation; either version 3 of the License, or (at
|
|
;;; your option) any later version.
|
|
;;;
|
|
;;; GNU Guix is distributed in the hope that it will be useful, but
|
|
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
;;; GNU General Public License for more details.
|
|
;;;
|
|
;;; You should have received a copy of the GNU General Public License
|
|
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
(define-module (dmbcs development packages guile)
|
|
#:use-module ((guix licenses) #:prefix license:)
|
|
#:use-module (gnu packages)
|
|
#:use-module (gnu packages autotools)
|
|
#:use-module (gnu packages base)
|
|
#:use-module (gnu packages bash)
|
|
#:use-module (gnu packages bdw-gc)
|
|
#:use-module (gnu packages compression)
|
|
#:use-module (gnu packages dbm)
|
|
#:use-module (gnu packages flex)
|
|
#:use-module (gnu packages gawk)
|
|
#:use-module (gnu packages gettext)
|
|
#:use-module (gnu packages guile)
|
|
#:use-module (gnu packages hurd)
|
|
#:use-module (gnu packages libffi)
|
|
#:use-module (gnu packages libunistring)
|
|
#:use-module (gnu packages linux)
|
|
#:use-module (gnu packages m4)
|
|
#:use-module (gnu packages multiprecision)
|
|
#:use-module (gnu packages pkg-config)
|
|
#:use-module (gnu packages readline)
|
|
#:use-module (gnu packages sqlite)
|
|
#:use-module (gnu packages texinfo)
|
|
#:use-module (gnu packages version-control)
|
|
#:use-module (guix packages)
|
|
#:use-module (guix download)
|
|
#:use-module (guix git-download)
|
|
#:use-module (guix build-system gnu)
|
|
#:use-module (guix build-system guile)
|
|
#:use-module (guix deprecation)
|
|
#:use-module (guix utils)
|
|
#:use-module (ice-9 match)
|
|
#:use-module ((srfi srfi-1) #:prefix srfi-1:))
|
|
|
|
;;; Commentary:
|
|
;;;
|
|
;;; GNU Guile, and modules and extensions.
|
|
;;;
|
|
;;; Code:
|
|
|
|
|
|
(define-public guile
|
|
;; This is the latest Guile stable version.
|
|
(package
|
|
(inherit guile-2.2)
|
|
(name "guile")
|
|
(version "3.0.4+dmbcs")
|
|
(source (origin
|
|
(inherit (package-source guile-2.2))
|
|
(method git-fetch)
|
|
(uri (git-reference
|
|
(url "https://rdmp.org/dmbcs/guile.git")
|
|
(commit "a3a28334a3d5c397dfc24dfbceab113f993c5f0b")))
|
|
(sha256
|
|
(base32
|
|
"0zw2s748d0gj31q9wc23mmgdjc8fpl6577v5b2lqj5ca4m69d8x0"))
|
|
(patches '())))
|
|
(arguments
|
|
;; XXX: JIT-enabled Guile crashes in obscure ways on GNU/Hurd.
|
|
(if #f ;; (hurd-target?)
|
|
(substitute-keyword-arguments (package-arguments guile-2.2)
|
|
((#:configure-flags flags ''())
|
|
`(cons "--disable-jit" ,flags)))
|
|
(substitute-keyword-arguments (package-arguments guile-2.2)
|
|
((#:phases phases '%standard-phases)
|
|
`(modify-phases ,phases
|
|
(replace 'bootstrap
|
|
(lambda _
|
|
;; Disable broken tests.
|
|
;; TODO: Fix them!
|
|
(substitute* "test-suite/tests/gc.test"
|
|
(("\\(pass-if \"after-gc-hook gets called\"" m)
|
|
(string-append "#;" m)))
|
|
(substitute* "test-suite/tests/version.test"
|
|
(("\\(pass-if \"version reporting works\"" m)
|
|
(string-append "#;" m)))
|
|
;; Warning: Unwind-only `out-of-memory' exception; skipping pre-unwind handler.
|
|
;; FAIL: test-out-of-memory
|
|
(substitute* "test-suite/standalone/Makefile.am"
|
|
(("(check_SCRIPTS|TESTS) \\+= test-out-of-memory") ""))
|
|
|
|
(patch-shebang "build-aux/git-version-gen")
|
|
(invoke "sh" "autogen.sh")
|
|
#t)))))))
|
|
(native-inputs
|
|
`(("autoconf" ,autoconf)
|
|
("automake" ,automake)
|
|
("libtool" ,libtool)
|
|
("flex" ,flex)
|
|
("texinfo" ,texinfo)
|
|
("gettext" ,gettext-minimal)
|
|
,@(package-native-inputs guile-2.2)))
|
|
(native-search-paths
|
|
(list (search-path-specification
|
|
(variable "GUILE_LOAD_PATH")
|
|
(files '("share/guile/site/3.0")))
|
|
(search-path-specification
|
|
(variable "GUILE_LOAD_COMPILED_PATH")
|
|
(files '("lib/guile/3.0/site-ccache"
|
|
"share/guile/site/3.0")))))))
|
|
|
|
|
|
;;; guile.scm ends here
|
|
|