Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / development / ocaml-modules / stdint / default.nix
blobcec0ec8183002752a7732fcb59d9c66e5b41b3bb
1 { lib, fetchurl, buildDunePackage, ocaml, qcheck }:
3 buildDunePackage rec {
4   pname = "stdint";
5   version = "0.7.2";
7   duneVersion = "3";
9   minimalOCamlVersion = "4.03";
11   src = fetchurl {
12     url = "https://github.com/andrenth/ocaml-stdint/releases/download/${version}/stdint-${version}.tbz";
13     sha256 = "sha256-FWAZjYvJx68+qVLEDavoJmZpQhDsw/35u/60MhHpd+Y=";
14   };
16   # 1. disable remaining broken tests, see
17   #    https://github.com/andrenth/ocaml-stdint/issues/59
18   # 2. fix tests to liberal test range
19   #    https://github.com/andrenth/ocaml-stdint/pull/61
20   postPatch = ''
21     substituteInPlace tests/stdint_test.ml \
22       --replace 'test "An integer should perform left-shifts correctly"' \
23                 'skip "An integer should perform left-shifts correctly"' \
24       --replace 'test "Logical shifts must not sign-extend"' \
25                 'skip "Logical shifts must not sign-extend"'
26   '';
28   doCheck = lib.versionAtLeast ocaml.version "4.08";
29   checkInputs = [ qcheck ];
31   meta = {
32     description = "Various signed and unsigned integers for OCaml";
33     homepage = "https://github.com/andrenth/ocaml-stdint";
34     license = lib.licenses.mit;
35     maintainers = [ lib.maintainers.gebner ];
36   };