Commit 22ae0b20 authored by toastal's avatar toastal Committed by Vincent Laporte
Browse files

ocamlPackages.jsont: flags to turn off optional dependencies

parent 327e83ae
Loading
Loading
Loading
Loading
+18 −9
Original line number Diff line number Diff line
{
  lib,
  fetchzip,
  topkg,
  buildTopkgPackage,
  withBrr ? true,
  brr,
  withBytesrw ? true,
  bytesrw,
  withCmdliner ? true,
  cmdliner,
}:

@@ -18,17 +22,22 @@ buildTopkgPackage rec {
    hash = "sha256-dXHl+bLuIrlrQ5Np37+uVuETFBb3j8XeDVEK9izoQFk=";
  };

  # docs say these dependendencies are optional, but buildTopkgPackage doesn’t
  # handle missing dependencies
  buildInputs = lib.optional withCmdliner cmdliner;

  buildInputs = [
    cmdliner
  ];
  propagatedBuildInputs = lib.optional withBrr brr ++ lib.optional withBytesrw bytesrw;

  propagatedBuildInputs = [
    brr
    bytesrw
  ];
  buildPhase = "${topkg.run} build ${
    lib.escapeShellArgs [
      "--with-brr"
      (lib.boolToString withBrr)

      "--with-bytesrw"
      (lib.boolToString withBytesrw)

      "--with-cmdliner"
      (lib.boolToString withCmdliner)
    ]
  }";

  meta = {
    description = "Declarative JSON data manipulation";