diff --git a/pkgs/development/ocaml-modules/piqi/default.nix b/pkgs/development/ocaml-modules/piqi/default.nix new file mode 100644 index 000000000000..7cca68c4f795 --- /dev/null +++ b/pkgs/development/ocaml-modules/piqi/default.nix @@ -0,0 +1,30 @@ +{stdenv, fetchurl, ocaml, findlib, camlp4, which, ulex, easy-format, ocaml_optcomp, xmlm, base64}: + +stdenv.mkDerivation rec { + version = "0.6.12"; + name = "piqi-${version}"; + + src = fetchurl { + url = "https://github.com/alavrik/piqi/archive/v${version}.tar.gz"; + sha256 = "1ifnawnblvibf5rgp6gr4f20266dckfrlryikg1iiq3dx2wfl7f8"; + }; + + buildInputs = [ocaml findlib camlp4 which ocaml_optcomp base64]; + propagatedBuildInputs = [ulex xmlm easy-format]; + + patches = [ ./no-ocamlpath-override.patch ]; + + createFindlibDestdir = true; + + installPhase = '' + make install; + make ocaml-install; + ''; + + meta = with stdenv.lib; { + homepage = http://piqi.org; + description = "Universal schema language and a collection of tools built around it."; + license = licenses.asl20; + maintainers = [ maintainers.maurer ]; + }; +} diff --git a/pkgs/development/ocaml-modules/piqi/no-ocamlpath-override.patch b/pkgs/development/ocaml-modules/piqi/no-ocamlpath-override.patch new file mode 100644 index 000000000000..bf85a42551c0 --- /dev/null +++ b/pkgs/development/ocaml-modules/piqi/no-ocamlpath-override.patch @@ -0,0 +1,17 @@ +diff -rupN piqi-0.6.12.orig/make/Makefile.ocaml piqi-0.6.12/make/Makefile.ocaml +--- piqi-0.6.12.orig/make/Makefile.ocaml 2015-03-13 13:35:19.000000000 +0100 ++++ piqi-0.6.12/make/Makefile.ocaml 2015-06-10 21:19:57.231000000 +0200 +@@ -1,13 +1,5 @@ + OCAMLMAKEFILE := $(PIQI_ROOT)/make/OCamlMakefile + +- +-OCAMLPATH := $(PIQI_BUILD)/lib/ocaml +-ifeq ($(SYSTEM),$(filter $(SYSTEM),mingw mingw64)) +-OCAMLPATH := $(shell cygpath -w $(OCAMLPATH)) +-endif +-export OCAMLPATH +- +- + # make sure camlp4o produces pretty-printed text instead of AST + export CAMLP4_O = $(CAMLP4)o -printer o + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a3d44ea65239..2d4577efd4cf 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4478,6 +4478,8 @@ let ounit = callPackage ../development/ocaml-modules/ounit { }; + piqi = callPackage ../development/ocaml-modules/piqi { }; + re2 = callPackage ../development/ocaml-modules/re2 { }; tyxml = callPackage ../development/ocaml-modules/tyxml { };