summary refs log tree commit diff
path: root/gnu/packages
diff options
context:
space:
mode:
authorRicardo Wurmus <ricardo.wurmus@mdc-berlin.de>2018-10-02 18:32:44 +0200
committerRicardo Wurmus <rekado@elephly.net>2018-10-05 23:59:26 +0200
commit38757d610eedad4dfa4030841132c028460b6c84 (patch)
tree4953f1aae9f47ab7a03ef8011667f9a8cd1e9c14 /gnu/packages
parent80588cfccfd193d70491bb2a386667bf538dbb5d (diff)
downloadguix-38757d610eedad4dfa4030841132c028460b6c84.tar.gz
gnu: Add ghc-bindings-dsl.
* gnu/packages/haskell.scm (ghc-bindings-dsl): New variable.
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/haskell.scm25
1 files changed, 25 insertions, 0 deletions
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index d2f6a8b237..41b1146040 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -10823,6 +10823,31 @@ monadic incremental interface is provided as well.")
 source and a sink.")
     (license license:bsd-3)))
 
+(define-public ghc-bindings-dsl
+  (package
+    (name "ghc-bindings-dsl")
+    (version "1.0.25")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://hackage.haskell.org/package/bindings-DSL/"
+                           "bindings-DSL-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0kqrd78nspl3lk4a0fqn47d8dirjg3b24dkvkigcrlb81hw35pk3"))))
+    (build-system haskell-build-system)
+    (home-page "https://github.com/jwiegley/bindings-dsl/wiki")
+    (synopsis "FFI domain specific language, on top of hsc2hs")
+    (description
+     "This is a set of macros to be used when writing Haskell FFI.  They were
+designed to be able to fully describe C interfaces, so that @code{hsc2hs} can
+extract from them all Haskell code needed to mimic such interfaces.  All
+Haskell names used are automatically derived from C names, structures are
+mapped to Haskell instances of @code{Storable}, and there are also macros you
+can use with C code to help write bindings to inline functions or macro
+functions.")
+    (license license:bsd-3)))
+
 (define-public ghc-weigh
   (package
     (name "ghc-weigh")