aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar Eric Gribkoff <ericgribkoff@google.com>2018-08-22 12:25:08 -0700
committerGravatar Eric Gribkoff <ericgribkoff@google.com>2018-08-22 12:25:08 -0700
commit0ff641a2468e9c2563e2884a0aac987ea55849c4 (patch)
tree605e03b511bada73ef9f2b7891396616b2392e0b /src
parent46008f0d76d158c4828934ab569a3570c0c21135 (diff)
Define the allow pthread atfork macro for gRPC Python MacOS builds
Diffstat (limited to 'src')
-rw-r--r--src/python/grpcio/commands.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/python/grpcio/commands.py b/src/python/grpcio/commands.py
index 4c2ebaeaea..0a3097111f 100644
--- a/src/python/grpcio/commands.py
+++ b/src/python/grpcio/commands.py
@@ -265,8 +265,17 @@ class BuildExt(build_ext.build_ext):
os.path.join(target_path, 'libgpr.a'),
os.path.join(target_path, 'libgrpc.a')
]
+ # Running make separately for Mac means we lose all
+ # Extension.define_macros configured in setup.py. Re-add the macro
+ # for gRPC Core's fork handlers.
+ # TODO(ericgribkoff) Decide what to do about the other missing core
+ # macros, including GRPC_ENABLE_FORK_SUPPORT, which defaults to 1
+ # on Linux but remains unset on Mac.
+ extra_defines = [
+ 'EXTRA_DEFINES="GRPC_POSIX_FORK_ALLOW_PTHREAD_ATFORK=1"'
+ ]
make_process = subprocess.Popen(
- ['make'] + targets,
+ ['make'] + extra_defines + targets,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE)
make_out, make_err = make_process.communicate()