summary refs log tree commit diff
path: root/pkgs/development/python-modules
diff options
context:
space:
mode:
authorDaniël de Kok <me@danieldk.eu>2018-08-11 16:42:43 +0200
committerDaniël de Kok <me@danieldk.eu>2018-08-11 16:47:35 +0200
commit4beb94d6d6b7cf1829c27b1fd52d43707fbc1844 (patch)
treeba30b6007bedf0b9e8bdb319680499d152068a55 /pkgs/development/python-modules
parentc2cf0c5f4ce0457728d9c674dde9a598974be130 (diff)
downloadnixlib-4beb94d6d6b7cf1829c27b1fd52d43707fbc1844.tar
nixlib-4beb94d6d6b7cf1829c27b1fd52d43707fbc1844.tar.gz
nixlib-4beb94d6d6b7cf1829c27b1fd52d43707fbc1844.tar.bz2
nixlib-4beb94d6d6b7cf1829c27b1fd52d43707fbc1844.tar.lz
nixlib-4beb94d6d6b7cf1829c27b1fd52d43707fbc1844.tar.xz
nixlib-4beb94d6d6b7cf1829c27b1fd52d43707fbc1844.tar.zst
nixlib-4beb94d6d6b7cf1829c27b1fd52d43707fbc1844.zip
python/grpcio: fix darwin build
grpcio currently does not build on Darwin (10.13.6). Due to the
following issues:

* ar is invoked with incorrect flags (#33765).
* libtool cannot be found, with a libtool dependency, with libtool
  the option '-no_warning_for_no_symbols' is not recognized.
* the module build cannot find boringssl that is packaged with
  python-grpcio when pkgconfig is not installed (grpc/#10058).
Diffstat (limited to 'pkgs/development/python-modules')
-rw-r--r--pkgs/development/python-modules/grpcio/default.nix9
1 files changed, 7 insertions, 2 deletions
diff --git a/pkgs/development/python-modules/grpcio/default.nix b/pkgs/development/python-modules/grpcio/default.nix
index 1846c7bcd896..204080fe115e 100644
--- a/pkgs/development/python-modules/grpcio/default.nix
+++ b/pkgs/development/python-modules/grpcio/default.nix
@@ -1,6 +1,7 @@
-{ stdenv, buildPythonPackage, fetchPypi, lib
-, six, protobuf, enum34, futures, isPy27, isPy34 }:
+{ stdenv, buildPythonPackage, fetchPypi, lib, darwin
+, six, protobuf, enum34, futures, isPy27, isPy34, pkgconfig }:
 
+with stdenv.lib;
 buildPythonPackage rec {
   pname = "grpcio";
   version = "1.13.0";
@@ -10,10 +11,14 @@ buildPythonPackage rec {
     sha256 = "6324581e215157f0fbe335dff2e21a65b4406db98ac7cca05f1e23b4f510b426";
   };
 
+  nativeBuildInputs = [ pkgconfig ] ++ optional stdenv.isDarwin darwin.cctools;
+
   propagatedBuildInputs = [ six protobuf ]
                         ++ lib.optionals (isPy27 || isPy34) [ enum34 ]
                         ++ lib.optionals (isPy27) [ futures ];
 
+  preBuild = optionalString stdenv.isDarwin "unset AR";
+
   meta = with stdenv.lib; {
     description = "HTTP/2-based RPC framework";
     license = lib.licenses.asl20;