summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorJulien Lepiller <julien@lepiller.eu>2016-12-30 16:34:09 +0100
committerJulien Lepiller <julien@lepiller.eu>2017-02-15 20:10:39 +0100
commit9e5687867da327f8d1993b83392324e6e16679ed (patch)
tree55ed57fb313b6642471090f1e54badc538bbb1e9 /gnu
parent567b4e029950340ce3219cfd1dcab391858813e1 (diff)
downloadguix-patches-9e5687867da327f8d1993b83392324e6e16679ed.tar
guix-patches-9e5687867da327f8d1993b83392324e6e16679ed.tar.gz
gnu: Add ocaml-ppx-driver.
* gnu/packages/ocaml.scm (ocaml-ppx-driver): New variable.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/ocaml.scm29
1 files changed, 29 insertions, 0 deletions
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 5820f1599b..83d2632f17 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -2088,3 +2088,32 @@ It contains:
used to handle optional compilations of pieces of code depending of the word
size, the version of the compiler, ...")
(license license:asl2.0)))
+
+(define-public ocaml-ppx-driver
+ (package
+ (name "ocaml-ppx-driver")
+ (version "113.33.03")
+ (source (janestreet-origin "ppx_driver" version
+ "011zzr45897j49b7iiybb29k7pspcx36mlnp7nh6pxb8b0ga76fh"))
+ (build-system ocaml-build-system)
+ (native-inputs
+ `(("js-build-tools" ,ocaml-js-build-tools)
+ ("opam" ,opam)
+ ("ppx-optcomp" ,ocaml-ppx-optcomp)))
+ (propagated-inputs
+ `(("ppx-optcomp" ,ocaml-ppx-optcomp)
+ ("ppx-core" ,ocaml-ppx-core)))
+ (arguments janestreet-arguments)
+ (home-page "https://github.com/janestreet/ppx_driver/")
+ (synopsis "Feature-full driver for OCaml AST transformers")
+ (description "A driver is an executable created from a set of OCaml AST
+transformers linked together with a command line frontend. The aim is to
+provide a tool that can be used to:
+@enumerate
+@item easily view the pre-processed version of a file, no need to construct a
+ complex command line: @command{ppx file.ml} will do
+@item use a single executable to run several transformations: no need to fork
+ many times just for pre-processing
+@item improved errors for misspelled/misplaced attributes and extension points.
+@end enumerate")
+ (license license:asl2.0)))