diff options
author | Robert Vollmert <rob@vllmrt.net> | 2019-07-16 08:45:40 +0200 |
---|---|---|
committer | Timothy Sample <samplet@ngyro.com> | 2019-08-07 22:05:29 -0400 |
commit | cce84c34cd40610f49d7acc58eeea541edf45578 (patch) | |
tree | 2aa130fa85e1156f76954e237af4dd37a61440a5 | |
parent | a62ddb748fd453597152e2409f6101c162900bb5 (diff) |
gnu: Add ghc-8.6.
* gnu/packages/haskell.scm (ghc-8.6): New variable.
Co-authored-by: Timothy Sample <samplet@ngyro.com>
-rw-r--r-- | gnu/packages/haskell.scm | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 019f751307..4f283f7069 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -73,6 +73,7 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix utils) + #:use-module (ice-9 match) #:use-module (ice-9 regex) #:use-module ((srfi srfi-1) #:select (alist-delete))) @@ -572,6 +573,51 @@ interactive environment for the functional language Haskell.") (file-pattern ".*\\.conf\\.d$") (file-type 'directory)))))) +(define-public ghc-8.6 + (package (inherit ghc-8.4) + (name "ghc") + (version "8.6.5") + (source + (origin + (method url-fetch) + (uri (string-append "https://www.haskell.org/ghc/dist/" + version "/" name "-" version "-src.tar.xz")) + (sha256 + (base32 "0qg3zsmbk4rkwkc3jpas3zs74qaxmw4sp4v1mhsbj0a0dzls2jjd")))) + (native-inputs + `(;; GHC 8.6.5 must be built with GHC >= 8.2. + ("ghc-bootstrap" ,ghc-8.4) + ("ghc-testsuite" + ,(origin + (method url-fetch) + (uri (string-append + "https://www.haskell.org/ghc/dist/" + version "/" name "-" version "-testsuite.tar.xz")) + (sha256 + (base32 + "0pw9r91g2np3i806g2f4f8z4jfdd7mx226cmdizk4swa7av1qf91")))) + ,@(filter (match-lambda + (("ghc-bootstrap" . _) #f) + (("ghc-testsuite" . _) #f) + (_ #t)) + (package-native-inputs ghc-8.4)))) + (arguments + (substitute-keyword-arguments (package-arguments ghc-8.4) + ((#:make-flags make-flags ''()) + `(cons "EXTRA_RUNTEST_OPTS=--skip-perf-tests" + ,make-flags)) + ((#:phases phases '%standard-phases) + `(modify-phases ,phases + ;; These two tests refer to the root user, which doesn't exist + ;; (see <https://bugs.gnu.org/36692>). + (add-after 'unpack-testsuite 'skip-tests + (lambda _ + (substitute* "libraries/unix/tests/all.T" + (("^test\\('T8108'") "# guix skipped: test('T8108'")) + (substitute* "libraries/unix/tests/libposix/all.T" + (("^test\\('posix010'") "# guix skipped: test('posix010'")) + #t)))))))) + (define-public ghc-8 ghc-8.4) (define-public ghc ghc-8) |