diff options
author | Alyssa Ross <hi@alyssa.is> | 2023-10-20 22:09:03 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2023-10-20 22:09:03 +0000 |
commit | 50c21d167f7114fa1dbd95e5c4fb30eeb1a2d02e (patch) | |
tree | f2556b911180125ccbb7ed0e78a54e92da89adce /nixpkgs/pkgs/development/ocaml-modules/camomile/default.nix | |
parent | 4c16d4548a98563c9d9ad76f4e5b2202864ccd54 (diff) | |
parent | cfc75eec4603c06503ae750f88cf397e00796ea8 (diff) | |
download | nixlib-50c21d167f7114fa1dbd95e5c4fb30eeb1a2d02e.tar nixlib-50c21d167f7114fa1dbd95e5c4fb30eeb1a2d02e.tar.gz nixlib-50c21d167f7114fa1dbd95e5c4fb30eeb1a2d02e.tar.bz2 nixlib-50c21d167f7114fa1dbd95e5c4fb30eeb1a2d02e.tar.lz nixlib-50c21d167f7114fa1dbd95e5c4fb30eeb1a2d02e.tar.xz nixlib-50c21d167f7114fa1dbd95e5c4fb30eeb1a2d02e.tar.zst nixlib-50c21d167f7114fa1dbd95e5c4fb30eeb1a2d02e.zip |
Merge commit 'cfc75eec4603c06503ae750f88cf397e00796ea8'
Conflicts: nixpkgs/pkgs/build-support/rust/build-rust-package/default.nix
Diffstat (limited to 'nixpkgs/pkgs/development/ocaml-modules/camomile/default.nix')
-rw-r--r-- | nixpkgs/pkgs/development/ocaml-modules/camomile/default.nix | 67 |
1 files changed, 45 insertions, 22 deletions
diff --git a/nixpkgs/pkgs/development/ocaml-modules/camomile/default.nix b/nixpkgs/pkgs/development/ocaml-modules/camomile/default.nix index ea2a65393682..b1178a4e8dd8 100644 --- a/nixpkgs/pkgs/development/ocaml-modules/camomile/default.nix +++ b/nixpkgs/pkgs/development/ocaml-modules/camomile/default.nix @@ -1,34 +1,57 @@ -{ lib, fetchFromGitHub, buildDunePackage, ocaml, cppo }: +{ stdenv, lib, darwin, fetchFromGitHub, buildDunePackage, ocaml, cppo +, camlp-streams, dune-site +, version ? if lib.versionAtLeast ocaml.version "4.08" then "2.0.0" else "1.0.2" +}: -buildDunePackage rec { - pname = "camomile"; - version = "1.0.2"; +let params = + { + "1.0.2" = lib.throwIf (lib.versionAtLeast ocaml.version "5.0") + "camomile 1 is not available for OCaml ${ocaml.version}" { + src = fetchFromGitHub { + owner = "yoriyuki"; + repo = "camomile"; + rev = version; + sha256 = "00i910qjv6bpk0nkafp5fg97isqas0bwjf7m6rz11rsxilpalzad"; + }; - useDune2 = true; + nativeBuildInputs = [ cppo ]; - src = fetchFromGitHub { - owner = "yoriyuki"; - repo = pname; - rev = version; - sha256 = "00i910qjv6bpk0nkafp5fg97isqas0bwjf7m6rz11rsxilpalzad"; - }; + configurePhase = '' + runHook preConfigure + ocaml configure.ml --share $out/share/camomile + runHook postConfigure + ''; + + postInstall = '' + echo "version = \"${version}\"" >> $out/lib/ocaml/${ocaml.version}/site-lib/camomile/META + ''; + + }; - nativeBuildInputs = [ cppo ]; + "2.0.0" = { + src = fetchFromGitHub { + owner = "ocaml-community"; + repo = "camomile"; + rev = "v${version}"; + hash = "sha256-HklX+VPD0Ta3Knv++dBT2rhsDSlDRH90k4Cj1YtWIa8="; + }; - configurePhase = '' - runHook preConfigure - ocaml configure.ml --share $out/share/camomile - runHook postConfigure - ''; + nativeBuildInputs = lib.optional stdenv.isDarwin darwin.sigtool; - postInstall = '' - echo "version = \"${version}\"" >> $out/lib/ocaml/${ocaml.version}/site-lib/camomile/META - ''; + propagatedBuildInputs = [ camlp-streams dune-site ]; + }; + } +; in + + +buildDunePackage (params."${version}" // { + pname = "camomile"; + inherit version; meta = { - inherit (src.meta) homepage; + homepage = "https://github.com/ocaml-community/Camomile"; maintainers = [ lib.maintainers.vbgl ]; license = lib.licenses.lgpl21; description = "A Unicode library for OCaml"; }; -} +}) |