diff --git a/pkgs/development/libraries/arrow-cpp/default.nix b/pkgs/development/libraries/arrow-cpp/default.nix index c4cbd970d411..7660ea81eaf8 100644 --- a/pkgs/development/libraries/arrow-cpp/default.nix +++ b/pkgs/development/libraries/arrow-cpp/default.nix @@ -4,29 +4,30 @@ let parquet-testing = fetchFromGitHub { owner = "apache"; repo = "parquet-testing"; - rev = "8991d0b58d5a59925c87dd2a0bdb59a5a4a16bd4"; - sha256 = "00js5d1s98y3ianrvh1ggrd157yfmia4g55jx9xmfcz4a8mcbawx"; - }; - - # Enable non-bundled uriparser - # Introduced in https://github.com/apache/arrow/pull/4092 - Finduriparser_cmake = fetchurl { - url = https://raw.githubusercontent.com/apache/arrow/af4f52961209a5f1b43a19483536285c957e3bed/cpp/cmake_modules/Finduriparser.cmake; - sha256 = "1cylrw00n2nkc2c49xk9j3rrza351rpravxgpw047vimcw0sk93s"; + rev = "a277dc4e55ded3e3ea27dab1e4faf98c112442df"; + sha256 = "1yh5a8l4ship36hwmgmp2kl72s5ac9r8ly1qcs650xv2g9q7yhnq"; }; in stdenv.mkDerivation rec { name = "arrow-cpp-${version}"; - version = "0.13.0"; + version = "0.14.1"; src = fetchurl { url = "mirror://apache/arrow/arrow-${version}/apache-arrow-${version}.tar.gz"; - sha256 = "06irh5zx6lc7jjf6hpz1vzk0pvbdx08lcirc8cp8ksb8j7fpfamc"; + sha256 = "0a0xrsbr7dd1yp34yw82jw7psfkfvm935jhd5mam32vrsjvdsj4r"; }; sourceRoot = "apache-arrow-${version}/cpp"; + ARROW_JEMALLOC_URL = fetchurl { + # From + # ./cpp/cmake_modules/ThirdpartyToolchain.cmake + # ./cpp/thirdparty/versions.txt + url = "https://github.com/jemalloc/jemalloc/releases/download/5.2.0/jemalloc-5.2.0.tar.bz2"; + sha256 = "1d73a5c5qdrwck0fa5pxz0myizaf3s9alsvhiqwrjahdlr29zgkl"; + }; + patches = [ # patch to fix python-test ./darwin.patch @@ -42,8 +43,6 @@ stdenv.mkDerivation rec { preConfigure = '' substituteInPlace cmake_modules/FindLz4.cmake --replace CMAKE_STATIC_LIBRARY CMAKE_SHARED_LIBRARY - cp ${Finduriparser_cmake} cmake_modules/Finduriparser.cmake - patchShebangs build-support/ # Fix build for ARROW_USE_SIMD=OFF @@ -64,7 +63,7 @@ stdenv.mkDerivation rec { PARQUET_TEST_DATA = if doInstallCheck then "${parquet-testing}/data" else null; installCheckInputs = [ perl which ]; installCheckPhase = (stdenv.lib.optionalString stdenv.isDarwin '' - for f in release/*-test; do + for f in release/*test; do install_name_tool -add_rpath "$out"/lib "$f" done '') + ''