python3Packages.orjson: Disable failing tests on 32 bit
[NixPkgs.git] / pkgs / development / libraries / tiledb / default.nix
blob19ebadd895f1feeab2c1a63f1537a48452530e88
1 { lib
2 , stdenv
3 , fetchFromGitHub
4 , cmake
5 , zlib
6 , lz4
7 , bzip2
8 , zstd
9 , spdlog_0
10 , tbb
11 , openssl
12 , boost
13 , libpqxx
14 , clang-tools
15 , catch2
16 , python3
17 , gtest
18 , doxygen
19 , fixDarwinDylibNames
22 stdenv.mkDerivation rec {
23   pname = "tiledb";
24   version = "2.3.3";
26   src = fetchFromGitHub {
27     owner = "TileDB-Inc";
28     repo = "TileDB";
29     rev = version;
30     sha256 = "sha256-3Z5+QUzo2f24q11j6s8KX2vHLFkipFvGk2VFComWW/o=";
31   };
33   # (bundled) blosc headers have a warning on some archs that it will be using
34   # unaccelerated routines.
35   cmakeFlags = [
36     "-DTILEDB_WERROR=0"
37   ];
39   nativeBuildInputs = [
40     clang-tools
41     cmake
42     python3
43     doxygen
44   ] ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
46   checkInputs = [
47     gtest
48   ];
50   buildInputs = [
51     catch2
52     zlib
53     lz4
54     bzip2
55     zstd
56     spdlog_0
57     tbb
58     openssl
59     boost
60     libpqxx
61   ];
63   # emulate the process of pulling catch down
64   postPatch = ''
65     mkdir -p build/externals/src/ep_catch
66     ln -sf ${catch2}/include/catch2 build/externals/src/ep_catch/single_include
67   '';
69   doCheck = false; # 9 failing tests due to what seems an overflow
71   installTargets = [ "install-tiledb" "doc" ];
73   postInstall = lib.optionalString stdenv.isDarwin ''
74     install_name_tool -add_rpath ${tbb}/lib $out/lib/libtiledb.dylib
75   '';
77   meta = with lib; {
78     description = "TileDB allows you to manage the massive dense and sparse multi-dimensional array data";
79     homepage = "https://github.com/TileDB-Inc/TileDB";
80     license = licenses.mit;
81     platforms = platforms.unix;
82     maintainers = with maintainers; [ rakesh4g ];
83   };