Message ID | 87h80w4w67.fsf@jo.zone |
---|---|
State | Accepted |
Headers | show |
Series | [bug#39105] gnu: Add ghc-llvm-hs and dependency | expand |
Context | Check | Description |
---|---|---|
cbaines/applying patch | fail | Apply failed |
Sorry, screwed up the commit title / subject message of the second patch there. It's supposed to be "[PATCH 2/2] gnu: Add ghc-llvm-hs". On Wed, Jan 15 2020, JoJo wrote: > * gnu/packages/haskell-xyz.scm > (ghc-llvm-hs): New variable. > --- > gnu/packages/haskell-xyz.scm | 37 ++++++++++++++++++++++++++++++++++++ > 1 file changed, 37 insertions(+) > > diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm > index a04e8f652e..af507d9d43 100644 > --- a/gnu/packages/haskell-xyz.scm > +++ b/gnu/packages/haskell-xyz.scm > @@ -54,6 +54,7 @@ > #:use-module (gnu packages haskell-web) > #:use-module (gnu packages libffi) > #:use-module (gnu packages linux) > + #:use-module (gnu packages llvm) > #:use-module (gnu packages lua) > #:use-module (gnu packages maths) > #:use-module (gnu packages ncurses) > @@ -6733,6 +6734,42 @@ llvm-hs package builds on this one with FFI bindings to LLVM, but llvm-hs-pure > does not require LLVM to be available.") > (license license:bsd-3))) > > +(define-public ghc-llvm-hs > + (package > + (name "ghc-llvm-hs") > + (version "9.0.1") > + (source > + (origin > + (method url-fetch) > + (uri (string-append > + "https://hackage.haskell.org/package/llvm-hs/llvm-hs-" > + version > + ".tar.gz")) > + (sha256 > + (base32 > + "0723xgh45h9cyxmmjsvxnsp8bpn1ljy4qgh7a7vqq3sj9d6wzq00")))) > + (build-system haskell-build-system) > + (inputs `(("ghc-attoparsec" ,ghc-attoparsec) > + ("ghc-exceptions" ,ghc-exceptions) > + ("ghc-utf8-string" ,ghc-utf8-string) > + ("ghc-llvm-hs-pure" ,ghc-llvm-hs-pure) > + ("llvm" ,llvm-9))) > + (native-inputs `(("ghc-tasty" ,ghc-tasty) > + ("ghc-tasty-hunit" ,ghc-tasty-hunit) > + ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck) > + ("ghc-quickcheck" ,ghc-quickcheck) > + ("ghc-temporary" ,ghc-temporary) > + ("ghc-pretty-show" ,ghc-pretty-show) > + ("ghc-temporary" ,ghc-temporary))) > + (home-page "http://github.com/llvm-hs/llvm-hs/") > + (synopsis "General purpose LLVM bindings") > + (description "llvm-hs is a set of Haskell bindings for LLVM. Unlike other > +current Haskell bindings, it uses an ADT to represent LLVM IR, and so offers > +two advantages: it handles almost all of the stateful complexities of using > +the LLVM API to build IR; and it supports moving IR not only from Haskell into > +LLVM C++ objects, but the other direction - from LLVM C++ into Haskell.") > + (license license:bsd-3))) > + > (define-public ghc-logging-facade > (package > (name "ghc-logging-facade") > -- > 2.24.1
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm index a04e8f652e..af507d9d43 100644 --- a/gnu/packages/haskell-xyz.scm +++ b/gnu/packages/haskell-xyz.scm @@ -54,6 +54,7 @@ #:use-module (gnu packages haskell-web) #:use-module (gnu packages libffi) #:use-module (gnu packages linux) + #:use-module (gnu packages llvm) #:use-module (gnu packages lua) #:use-module (gnu packages maths) #:use-module (gnu packages ncurses) @@ -6733,6 +6734,42 @@ llvm-hs package builds on this one with FFI bindings to LLVM, but llvm-hs-pure does not require LLVM to be available.") (license license:bsd-3))) +(define-public ghc-llvm-hs + (package + (name "ghc-llvm-hs") + (version "9.0.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/llvm-hs/llvm-hs-" + version + ".tar.gz")) + (sha256 + (base32 + "0723xgh45h9cyxmmjsvxnsp8bpn1ljy4qgh7a7vqq3sj9d6wzq00")))) + (build-system haskell-build-system) + (inputs `(("ghc-attoparsec" ,ghc-attoparsec) + ("ghc-exceptions" ,ghc-exceptions) + ("ghc-utf8-string" ,ghc-utf8-string) + ("ghc-llvm-hs-pure" ,ghc-llvm-hs-pure) + ("llvm" ,llvm-9))) + (native-inputs `(("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-hunit" ,ghc-tasty-hunit) + ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-temporary" ,ghc-temporary) + ("ghc-pretty-show" ,ghc-pretty-show) + ("ghc-temporary" ,ghc-temporary))) + (home-page "http://github.com/llvm-hs/llvm-hs/") + (synopsis "General purpose LLVM bindings") + (description "llvm-hs is a set of Haskell bindings for LLVM. Unlike other +current Haskell bindings, it uses an ADT to represent LLVM IR, and so offers +two advantages: it handles almost all of the stateful complexities of using +the LLVM API to build IR; and it supports moving IR not only from Haskell into +LLVM C++ objects, but the other direction - from LLVM C++ into Haskell.") + (license license:bsd-3))) + (define-public ghc-logging-facade (package (name "ghc-logging-facade")