From a19492152737181172656c1152502c5bc6a55386 Mon Sep 17 00:00:00 2001 From: Manjunath Kudlur Date: Tue, 8 Dec 2015 08:24:37 -0800 Subject: Made building the python extension configurable via --define=use_fast_cpp_protos=true --- BUILD | 31 ++++++++++++++++++++++++------- 1 file changed, 24 insertions(+), 7 deletions(-) (limited to 'BUILD') diff --git a/BUILD b/BUILD index c04a7c0b..b85bd563 100644 --- a/BUILD +++ b/BUILD @@ -513,11 +513,14 @@ cc_binary( name = "google/protobuf/internal/_api_implementation.so", srcs = ["python/google/protobuf/internal/api_implementation.cc"], copts = COPTS + [ - "-I/usr/include/python2.7", "-DPYTHON_PROTO2_CPP_IMPL_V2", ], linkshared = 1, linkstatic = 1, + deps = select({ + "//conditions:default": [], + ":use_fast_cpp_protos": ["//util/python:python_headers"], + }), ) cc_binary( @@ -528,7 +531,6 @@ cc_binary( ]), copts = COPTS + [ "-DGOOGLE_PROTOBUF_HAS_ONEOF=1", - "-I/usr/include/python2.7", ], includes = [ "python/", @@ -536,17 +538,32 @@ cc_binary( ], linkshared = 1, linkstatic = 1, - deps = [":protobuf"], + deps = [ + ":protobuf", + ] + select({ + "//conditions:default": [], + ":use_fast_cpp_protos": ["//util/python:python_headers"], + }), +) + +config_setting( + name = "use_fast_cpp_protos", + values = { + "define": "use_fast_cpp_protos=true", + }, ) py_proto_library( name = "protobuf_python", srcs = WELL_KNOWN_PROTOS, include = "src", - data = [ - ":google/protobuf/internal/_api_implementation.so", - ":google/protobuf/pyext/_message.so", - ], + data = select({ + "//conditions:default": [], + ":use_fast_cpp_protos": [ + ":google/protobuf/internal/_api_implementation.so", + ":google/protobuf/pyext/_message.so", + ], + }), default_runtime = "", protoc = ":protoc", py_extra_srcs = [":python_srcs"], -- cgit v1.2.3