From 91bab371297b1e53491548bbd9f3588dea93374d Mon Sep 17 00:00:00 2001 From: Vijay Pai Date: Fri, 5 Jan 2018 09:59:34 -0800 Subject: [PATCH] When building with bazel on a Mac, workaround bazelbuild/bazel#4341 --- include/grpc/impl/codegen/port_platform.h | 13 +++++++++++++ tools/bazel.rc | 1 + 2 files changed, 14 insertions(+) diff --git a/include/grpc/impl/codegen/port_platform.h b/include/grpc/impl/codegen/port_platform.h index f4bc3eb3e03ba..e6bee73ef152e 100644 --- a/include/grpc/impl/codegen/port_platform.h +++ b/include/grpc/impl/codegen/port_platform.h @@ -195,12 +195,25 @@ #define GPR_PTHREAD_TLS 1 #else /* __MAC_OS_X_VERSION_MIN_REQUIRED < __MAC_10_7 */ #define GPR_CPU_POSIX 1 +/* TODO(vjpai): there is a reported issue in bazel build for Mac where __thread + in a header is currently not working (bazelbuild/bazel#4341). Remove + the following conditional and use GPR_GCC_TLS when that is fixed */ +#ifndef GRPC_BAZEL_BUILD #define GPR_GCC_TLS 1 +#else /* GRPC_BAZEL_BUILD */ +#define GPR_PTHREAD_TLS 1 +#endif /* GRPC_BAZEL_BUILD */ #define GPR_APPLE_PTHREAD_NAME 1 #endif #else /* __MAC_OS_X_VERSION_MIN_REQUIRED */ #define GPR_CPU_POSIX 1 +/* TODO(vjpai): Remove the following conditional and use only GPR_GCC_TLS + when bazelbuild/bazel#4341 is fixed */ +#ifndef GRPC_BAZEL_BUILD #define GPR_GCC_TLS 1 +#else /* GRPC_BAZEL_BUILD */ +#define GPR_PTHREAD_TLS 1 +#endif /* GRPC_BAZEL_BUILD */ #endif #define GPR_POSIX_CRASH_HANDLER 1 #endif diff --git a/tools/bazel.rc b/tools/bazel.rc index c554f039713b5..8af2fc981d7d2 100644 --- a/tools/bazel.rc +++ b/tools/bazel.rc @@ -1,4 +1,5 @@ build --client_env=CC=clang +build --copt -DGRPC_BAZEL_BUILD build:asan --strip=never build:asan --copt -fsanitize-coverage=edge