[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#67921] [PATCH haskell-team 22/23] gnu: Add ghc-9.6
From: |
Saku Laesvuori |
Subject: |
[bug#67921] [PATCH haskell-team 22/23] gnu: Add ghc-9.6 |
Date: |
Fri, 7 Jun 2024 10:49:53 +0300 |
* gnu/packages/haskell.scm (ghc-9.6): New variable.
Change-Id: I6883ed973bdd1d6eaf981605c1bc8f855f850187
---
gnu/packages/haskell.scm | 157 ++++++++++++++++++++++++++++++++++++++-
1 file changed, 155 insertions(+), 2 deletions(-)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 5070833a94..158bdd41bd 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -2115,14 +2115,14 @@ (define ghc-primitive-bootstrap-for-9.6
(define hadrian-for-ghc-9.6
(package
(name "hadrian")
- (version "9.6.4")
+ (version "9.6.5")
(source (origin
(method url-fetch)
(uri (string-append "https://www.haskell.org/ghc/dist/" version
"/ghc-" version "-src.tar.xz"))
(sha256
(base32
- "1h6lpx8kd4xycjwb8iv2rgnz23kwq5b0qp4bhvczsx3in2w2bgqh"))))
+ "0g5r68j788i6lbx71xpws4xb7nn871rpa8ji41na5hcq9y98kcw7"))))
(build-system haskell-build-system)
(inputs
(list ghc-base16-bytestring-bootstrap-for-9.6
@@ -2152,4 +2152,157 @@ (define hadrian-for-ghc-9.6
It is based on the Shake library and replaces @{make} in building GHC")
(license license:expat)))
+(define-public ghc-9.6
+ (let ((base ghc-9.4))
+ (package
+ (inherit base)
+ (name "ghc-next")
+ (version "9.6.5")
+ (source (origin
+ (inherit (package-source base))
+ (uri (string-append "https://www.haskell.org/ghc/dist/" version
+ "/ghc-" version "-src.tar.xz"))
+ (sha256
+ (base32
+ "0g5r68j788i6lbx71xpws4xb7nn871rpa8ji41na5hcq9y98kcw7"))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments base)
+ ((#:make-flags flags ''())
+ #~(list "-V" "--docs=no-sphinx"))
+ ((#:phases phases '%standard-phases)
+ #~(let* ((run-hadrian (lambda args
+ (apply invoke "hadrian" args))))
+ (modify-phases #$phases
+ (delete 'fix-shell-wrappers)
+ ;; https://gitlab.haskell.org/ghc/ghc/-/issues/22557
+ (replace 'fix-lib-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute*
+ (list "libraries/process/System/Process/Posix.hs"
+ "libraries/unix/cbits/execvpe.c")
+ (("/bin/sh") (search-input-file inputs "/bin/sh")))))
+ (add-before 'build 'fix-iserv-rpath
+ (lambda _
+ (mkdir-p "_build")
+ (call-with-output-file
+ "_build/hadrian.settings"
+ (lambda (port)
+ (display
+ (string-append
+ "*.iserv.ghc.link.opts += -optl-Wl,-rpath,"
+ #$output "/lib/ghc-" #$(package-version this-package)
+ "/lib/" #$(or (%current-target-system)
+ (%current-system))
+ "-ghc-" #$(package-version this-package) "/")
+ port)))))
+ (replace 'build
+ (lambda* (#:key (parallel-build? #f) (make-flags '())
+ #:allow-other-keys)
+ (apply run-hadrian
+ `("binary-dist-dir"
+ ,@(if parallel-build?
+ `(,(string-append "-j" (number->string
(parallel-job-count))))
+ '())
+ ,@make-flags))))
+ (replace 'check
+ (lambda* (#:key (tests? #t) (parallel-tests? #f) (make-flags
'()) #:allow-other-keys)
+ (if tests?
+ (apply run-hadrian
+ `(,@(if parallel-tests?
+ `(,(string-append "-j" (number->string
(parallel-job-count))))
+ '())
+ ,@make-flags
+ "test"
+ ,(string-append "--broken-test="
+ (string-join
+ (list "bkpcabal01"
+ "cabal01"
+ "cabal06"
+ "cabal08"
+ "haddock_parser_perf"
+ "haddock_renamer_perf"
+ "package-imports-20779"
+ "plugins01"
+ "plugins08"
+ "plugins10"
+ "recomp007"
+ "recompChangedPackage"
+ "recompPkgLink"
+ "recompPluginPackage"
+ "recompTHpackage"
+ "T10420"
+ "T10458"
+ "T12504"
+ "T13340"
+ "T1372"
+ "T14304"
+ "T16219"
+ "T20218b"
+ "T22333"
+ "T3007"
+ "T7014"
+ "T8832"
+ "test-defaulting-plugin"
+ "plugin-recomp-change"
+ "plugin-recomp-change-2"
+ "plugin-recomp-change-prof"
+ "plugin-recomp-flags"
+ "plugin-recomp-impure"
+ "plugin-recomp-pure"
+ "plugins-order"
+ "plugins-order-pragma"
+ "T15633a"
+ "T15633b"
+ "T15858"
+ "T20417")))
+ "--skip-perf"))
+ (format #t "test suite not run~%"))))
+ (replace 'install
+ (lambda* (#:key (make-flags '()) #:allow-other-keys)
+ (apply run-hadrian
+ `("install"
+ ,@make-flags
+ ,(string-append "--prefix=" #$output)))))
+ (add-after 'install 'replace-$pkgroot
+ (lambda _
+ (substitute*
+ (find-files
+ (string-append #$output "/lib/ghc-"
+ #$(package-version this-package)
+ "/lib/package.conf.d/")
+ "^.*\\.conf$")
+ (("\\$\\{pkgroot\\}/")
+ (string-append #$output "/lib/ghc-"
+ #$(package-version this-package)
+ "/lib/"))))))))))
+ (inputs (list bash-minimal gmp ncurses libffi))
+ (native-inputs
+ `(("perl" ,perl)
+ ("python" ,python)
+ ("git" ,git-minimal/pinned)
+ ("which" ,which)
+ ("ghostscript" ,ghostscript)
+ ("autoconf" ,autoconf)
+ ("automake" ,automake)
+
+ ("hadrian" ,hadrian-for-ghc-9.6)
+ ("ghc-bootstrap" ,ghc-bootstrap-for-9.6)
+ ("ghc-alex" ,ghc-alex-bootstrap-for-9.4)
+ ("ghc-happy" ,ghc-happy-bootstrap-for-9.4)
+ ("ghc-testsuite"
+ ,(origin
+ (method url-fetch)
+ (uri (string-append
+ "https://www.haskell.org/ghc/dist/"
+ version "/ghc-" version "-testsuite.tar.xz"))
+ (sha256
+ (base32
+ "0k521601lgbs03ii66nb6y1y9327x4965zz3niyr3xswjx4dz8yw"))))))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GHC_PACKAGE_PATH")
+ (files (list (string-append "lib/ghc-" version)))
+ (file-pattern ".*\\.conf\\.d$")
+ (file-type 'directory)))))))
+
;;; haskell.scm ends here
--
2.41.0
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [bug#67921] [PATCH haskell-team 22/23] gnu: Add ghc-9.6,
Saku Laesvuori <=