46 lines
1.9 KiB
Diff
46 lines
1.9 KiB
Diff
diff -Naur grpc-1.37.0-original/setup.py grpc-1.37.0/setup.py
|
|
--- grpc-1.37.0-original/setup.py 2021-04-06 18:48:56.000000000 -0400
|
|
+++ grpc-1.37.0/setup.py 2021-04-08 15:34:35.182802019 -0400
|
|
@@ -28,6 +28,7 @@
|
|
from distutils import util
|
|
import os
|
|
import os.path
|
|
+import pathlib
|
|
import pkg_resources
|
|
import platform
|
|
import re
|
|
@@ -154,6 +155,11 @@
|
|
# runtime, the shared library must be installed
|
|
BUILD_WITH_SYSTEM_RE2 = os.environ.get('GRPC_PYTHON_BUILD_SYSTEM_RE2', False)
|
|
|
|
+# Export this variable to use the system installation of abseil. You need to
|
|
+# have the header files installed (in /usr/include/absl) and during
|
|
+# runtime, the shared library must be installed
|
|
+BUILD_WITH_SYSTEM_ABSL = os.environ.get('GRPC_PYTHON_BUILD_SYSTEM_ABSL', False)
|
|
+
|
|
# For local development use only: This skips building gRPC Core and its
|
|
# dependencies, including protobuf and boringssl. This allows "incremental"
|
|
# compilation by first building gRPC Core using make, then building only the
|
|
@@ -296,6 +302,10 @@
|
|
CORE_C_FILES = filter(lambda x: 'third_party/re2' not in x, CORE_C_FILES)
|
|
RE2_INCLUDE = (os.path.join('/usr', 'include', 're2'),)
|
|
|
|
+if BUILD_WITH_SYSTEM_ABSL:
|
|
+ CORE_C_FILES = filter(lambda x: 'third_party/abseil-cpp' not in x, CORE_C_FILES)
|
|
+ ABSL_INCLUDE = (os.path.join('/usr', 'include'),)
|
|
+
|
|
EXTENSION_INCLUDE_DIRECTORIES = ((PYTHON_STEM,) + CORE_INCLUDE + ABSL_INCLUDE +
|
|
ADDRESS_SORTING_INCLUDE + CARES_INCLUDE +
|
|
RE2_INCLUDE + SSL_INCLUDE + UPB_INCLUDE +
|
|
@@ -325,6 +335,10 @@
|
|
EXTENSION_LIBRARIES += ('cares',)
|
|
if BUILD_WITH_SYSTEM_RE2:
|
|
EXTENSION_LIBRARIES += ('re2',)
|
|
+if BUILD_WITH_SYSTEM_ABSL:
|
|
+ EXTENSION_LIBRARIES += tuple(
|
|
+ lib.stem[3:] for lib in pathlib.Path('/usr').glob('lib*/libabsl_*.so')
|
|
+ )
|
|
|
|
DEFINE_MACROS = (('OPENSSL_NO_ASM', 1), ('_WIN32_WINNT', 0x600))
|
|
if not DISABLE_LIBC_COMPATIBILITY:
|