diff --git a/pkgs/development/libraries/tiledb/default.nix b/pkgs/development/libraries/tiledb/default.nix index c332ba15c57..2726ed7f237 100644 --- a/pkgs/development/libraries/tiledb/default.nix +++ b/pkgs/development/libraries/tiledb/default.nix @@ -16,6 +16,7 @@ , python , gtest , doxygen +, fixDarwinDylibNames }: stdenv.mkDerivation rec { @@ -29,6 +30,12 @@ stdenv.mkDerivation rec { sha256 = "00g8ibsbnl4wjfx3qg4qy6s7z6dsj898j0yqfhw1gjr1pb5dsapb"; }; + # (bundled) blosc headers have a warning on some archs that it will be using + # unaccelerated routines. + cmakeFlags = [ + "-DTILEDB_WERROR=0" + ]; + nativeBuildInputs = [ clang-tools cmake @@ -53,7 +60,7 @@ stdenv.mkDerivation rec { openssl boost libpqxx - ]; + ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames; # emulate the process of pulling catch down postPatch = '' @@ -65,11 +72,15 @@ stdenv.mkDerivation rec { installTargets = [ "install-tiledb" "doc" ]; + postInstall = lib.optionalString stdenv.isDarwin '' + install_name_tool -add_rpath ${tbb}/lib $out/lib/libtiledb.dylib + ''; + meta = with lib; { description = "TileDB allows you to manage the massive dense and sparse multi-dimensional array data"; homepage = "https://github.com/TileDB-Inc/TileDB"; license = licenses.mit; - platforms = [ "x86_64-linux"]; + platforms = platforms.unix; maintainers = with maintainers; [ rakesh4g ]; }; diff --git a/pkgs/development/python-modules/tiledb/default.nix b/pkgs/development/python-modules/tiledb/default.nix index c72fd73903f..d5379b849ad 100644 --- a/pkgs/development/python-modules/tiledb/default.nix +++ b/pkgs/development/python-modules/tiledb/default.nix @@ -63,7 +63,8 @@ buildPythonPackage rec { # these tests don't always fail substituteInPlace tiledb/tests/test_libtiledb.py --replace \ "test_varlen_write_int_subarray" "dont_test_varlen_write_int_subarray" \ - --replace "test_memory_cleanup" "dont_test_memory_cleanup" + --replace "test_memory_cleanup" "dont_test_memory_cleanup" \ + --replace "test_ctx_thread_cleanup" "dont_test_ctx_thread_cleanup" substituteInPlace tiledb/tests/test_metadata.py --replace \ "test_metadata_consecutive" "dont_test_metadata_consecutive" '';