From 4ae8a4977bf24a2cd8aed2ae948874b5701ad345 Mon Sep 17 00:00:00 2001 From: Dmitry Kalinkin Date: Wed, 15 Jul 2020 19:45:22 -0400 Subject: arrow-cpp: fix darwin build by linking against libzstd_static The enableShared=false override will need to be reverted on staging. --- pkgs/development/libraries/arrow-cpp/default.nix | 8 ++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 10 insertions(+) diff --git a/pkgs/development/libraries/arrow-cpp/default.nix b/pkgs/development/libraries/arrow-cpp/default.nix index b559ef96f43..d9bf6752da0 100644 --- a/pkgs/development/libraries/arrow-cpp/default.nix +++ b/pkgs/development/libraries/arrow-cpp/default.nix @@ -42,6 +42,13 @@ in stdenv.mkDerivation rec { sha256 = "1nl4y1rwdl0gn67v7l05ibc4lwkn6x7fhwbmslmm08cqmwfjsx3y"; stripLen = 1; }) + + # fix build for "ZSTD_SOURCE=SYSTEM" + (fetchpatch { + url = "https://github.com/apache/arrow/commit/13cb3dbded1928d2e96574895bebaf9098a4796d.diff"; + sha256 = "12z3ys47qp2x8f63lggiyj4xs2kmg804ri4xqysw5krbjz2hr6rb"; + stripLen = 1; + }) ] ++ lib.optionals (!enableShared) [ # The shared jemalloc lib is unused and breaks in static mode due to missing -fpic. ./jemalloc-disable-shared.patch @@ -89,6 +96,7 @@ in stdenv.mkDerivation rec { "-DARROW_WITH_SNAPPY=ON" "-DARROW_WITH_ZLIB=ON" "-DARROW_WITH_ZSTD=ON" + "-DARROW_ZSTD_USE_SHARED=OFF" # TODO use shared zstd once #91984 hits the master # Parquet options: "-DARROW_PARQUET=ON" "-DPARQUET_BUILD_EXECUTABLES=ON" diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e095326a6f4..a22d7923782 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11426,6 +11426,8 @@ in arrayfire = callPackage ../development/libraries/arrayfire {}; arrow-cpp = callPackage ../development/libraries/arrow-cpp ({ + # Workaround until #91984 is in, this will need to be removed later. + zstd = zstd.override { enableShared = false; }; } // stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { stdenv = overrideCC stdenv buildPackages.gcc6; # hidden symbol `__divmoddi4' }); -- cgit 1.4.1