ocamlPackages.ocb-stubblr: init at 0.1.0

This commit is contained in:
Vincent Laporte 2016-12-04 11:13:32 +00:00
parent 67a245356d
commit 6636dfa845
3 changed files with 53 additions and 0 deletions

View file

@ -0,0 +1,26 @@
{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, opam, topkg, astring }:
stdenv.mkDerivation {
name = "ocaml${ocaml.version}-ocb-stubblr-0.1.0";
src = fetchzip {
url = http://github.com/pqwy/ocb-stubblr/releases/download/v0.1.0/ocb-stubblr-0.1.0.tbz;
name = "src.tar.bz";
sha256 = "0hpds1lkq4j8wgslv7hnirgfrjmqi36h5rarpw9mwf24gfp5ays2";
};
patches = [ ./pkg-config.patch ];
buildInputs = [ ocaml findlib ocamlbuild opam topkg ];
propagatedBuildInputs = [ astring ];
inherit (topkg) buildPhase installPhase;
meta = {
description = "OCamlbuild plugin for C stubs";
homepage = https://github.com/pqwy/ocb-stubblr;
license = stdenv.lib.licenses.isc;
inherit (ocaml.meta) platforms;
maintainers = [ stdenv.lib.maintainers.vbgl ];
};
}

View file

@ -0,0 +1,25 @@
--- a/src/ocb_stubblr.ml 1970-01-01 00:00:01.000000000 +0000
+++ b/src/ocb_stubblr.ml 2016-12-04 11:10:10.000000000 +0000
@@ -31,20 +31,9 @@
(* XXX Would be nice to move pkg-config results to a build artefact. *)
- let opam_prefix =
- let cmd = "opam config var prefix" in
- lazy ( try run_and_read cmd with Failure _ ->
- error_msgf "error running opam")
-
- let var = "PKG_CONFIG_PATH"
-
- let path () =
- Lazy.force opam_prefix / "lib" / "pkgconfig" ::
- (try [Sys.getenv var] with Not_found -> []) |> String.concat ~sep:":"
-
let run ~flags package =
- let cmd = strf "%s=%s pkg-config %s %s 2>/dev/null"
- var (path ()) package (String.concat ~sep:" " flags) in
+ let cmd = strf "pkg-config %s %s 2>/dev/null"
+ package (String.concat ~sep:" " flags) in
try `Res (run_and_read cmd) with Failure _ -> `Nonexistent
end

View file

@ -414,6 +414,8 @@ let
minimal = false;
};
ocb-stubblr = callPackage ../development/ocaml-modules/ocb-stubblr { };
ocurl = callPackage ../development/ocaml-modules/ocurl { };
pa_ounit = callPackage ../development/ocaml-modules/pa_ounit { };