summaryrefslogtreecommitdiffstats
path: root/pkgs/development/ocaml-modules/ctypes/foreign.nix
blob: 393e460c342efd93744c40108296f2e158d2e4cf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
{
  lib,
  stdenv,
  ocaml,
  buildDunePackage,
  ctypes,
  dune-configurator,
  libffi,
  ounit2,
  lwt,
}:

buildDunePackage {
  pname = "ctypes-foreign";

  inherit (ctypes) version src;

  buildInputs = [ dune-configurator ];

  propagatedBuildInputs = [
    ctypes
    libffi
  ];

  checkInputs = [
    ounit2
    lwt
  ];

  # Fix build with gcc 14
  env.NIX_CFLAGS_COMPILE = "-Wno-error=incompatible-pointer-types";

  # closure lifetime tests crash on darwin ocaml 5.5
  doCheck = !(stdenv.hostPlatform.isDarwin && lib.versionAtLeast ocaml.version "5.5");

  meta = ctypes.meta // {
    description = "Dynamic access to foreign C libraries using Ctypes";
  };
}