Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at master 1.6 kB view raw
1{ 2 lib, 3 stdenv, 4 buildPythonPackage, 5 c-ares, 6 cython, 7 fetchPypi, 8 openssl, 9 pkg-config, 10 protobuf, 11 typing-extensions, 12 pythonOlder, 13 setuptools, 14 zlib, 15}: 16 17# This package should be updated together with the main grpc package and other 18# related python grpc packages. 19# nixpkgs-update: no auto update 20buildPythonPackage rec { 21 pname = "grpcio"; 22 version = "1.75.0"; 23 pyproject = true; 24 25 disabled = pythonOlder "3.8"; 26 27 src = fetchPypi { 28 inherit pname version; 29 hash = "sha256-uYnosJSJR4wtGf7MdEopiTD0DYsnw2OK+/6E0i82zk4="; 30 }; 31 32 outputs = [ 33 "out" 34 "dev" 35 ]; 36 37 build-system = [ setuptools ]; 38 39 nativeBuildInputs = [ 40 cython 41 pkg-config 42 ]; 43 44 buildInputs = [ 45 c-ares 46 openssl 47 zlib 48 ]; 49 50 dependencies = [ 51 protobuf 52 typing-extensions 53 ]; 54 55 preBuild = '' 56 export GRPC_PYTHON_BUILD_EXT_COMPILER_JOBS="$NIX_BUILD_CORES" 57 if [ -z "$enableParallelBuilding" ]; then 58 GRPC_PYTHON_BUILD_EXT_COMPILER_JOBS=1 59 fi 60 '' 61 + lib.optionalString stdenv.hostPlatform.isDarwin '' 62 unset AR 63 ''; 64 65 GRPC_BUILD_WITH_BORING_SSL_ASM = ""; 66 GRPC_PYTHON_BUILD_SYSTEM_OPENSSL = 1; 67 GRPC_PYTHON_BUILD_SYSTEM_ZLIB = 1; 68 GRPC_PYTHON_BUILD_SYSTEM_CARES = 1; 69 70 # does not contain any tests 71 doCheck = false; 72 73 enableParallelBuilding = true; 74 75 pythonImportsCheck = [ "grpc" ]; 76 77 meta = with lib; { 78 description = "HTTP/2-based RPC framework"; 79 homepage = "https://grpc.io/grpc/python/"; 80 changelog = "https://github.com/grpc/grpc/releases/tag/v${version}"; 81 license = licenses.asl20; 82 maintainers = [ ]; 83 }; 84}