diff --git a/pkgs/development/tools/capnproto-java/default.nix b/pkgs/development/tools/capnproto-java/default.nix new file mode 100644 index 00000000000..95b78b724eb --- /dev/null +++ b/pkgs/development/tools/capnproto-java/default.nix @@ -0,0 +1,35 @@ +{ lib, stdenv, fetchFromGitHub, fetchpatch, capnproto, pkg-config }: + +stdenv.mkDerivation rec { + pname = "capnproto-java"; + version = "0.1.5"; + + src = fetchFromGitHub { + owner = "capnproto"; + repo = pname; + rev = "v${version}"; + hash = "sha256:1512x70xa6mlg9dmr84r8xbf0jzysjal51ivhhh2ppl97yiqjgls"; + }; + + patches = [ + # Add make install rule + (fetchpatch { + url = "https://github.com/capnproto/capnproto-java/commit/e96448d3f5737db25e55cd268652712b69db5cc0.diff"; + sha256 = "0f3vyap1zsxy675900pzg5ngh7bf9icllm1w04q64g8i91sdzljl"; + }) + ]; + + nativeBuildInputs = [ pkg-config ]; + + buildInputs = [ capnproto ]; + + makeFlags = [ "PREFIX=${placeholder "out"}" ]; + + meta = with lib; { + description = "Cap'n Proto codegen plugin for Java"; + longDescription = "Only includes compiler plugin, the Java runtime/library that the generated code will link to must be built separately with Maven."; + homepage = "https://dwrensha.github.io/capnproto-java/index.html"; + license = licenses.mit; + maintainers = with maintainers; [ bhipple ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d27ec697a2f..65399f19365 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -13150,6 +13150,8 @@ in capnproto = callPackage ../development/libraries/capnproto { }; + capnproto-java = callPackage ../development/tools/capnproto-java { }; + captive-browser = callPackage ../applications/networking/browsers/captive-browser { }; ndn-cxx = callPackage ../development/libraries/ndn-cxx { };