From cade3ac4af588f66dc9bb0369790857fbd7b1965 Mon Sep 17 00:00:00 2001 From: scentini Date: Thu, 19 Jul 2018 18:24:16 +0200 Subject: Replace config_setting.values{"compiler"} with config_setting.flag_values{"@bazel_tools//tools/cpp:compiler"} --- third_party/protobuf/3.6.0/BUILD | 7 ++--- .../protobuf/3.6.0/compiler_config_setting.bzl | 35 ++++++++++++++++++++++ 2 files changed, 38 insertions(+), 4 deletions(-) create mode 100644 third_party/protobuf/3.6.0/compiler_config_setting.bzl (limited to 'third_party/protobuf') diff --git a/third_party/protobuf/3.6.0/BUILD b/third_party/protobuf/3.6.0/BUILD index ca503be57d..e9674eeda9 100644 --- a/third_party/protobuf/3.6.0/BUILD +++ b/third_party/protobuf/3.6.0/BUILD @@ -101,10 +101,9 @@ COPTS = select({ ], }) -config_setting( - name = "msvc", - values = { "compiler": "msvc-cl" }, -) +load(":compiler_config_setting.bzl", "create_compiler_config_setting") + +create_compiler_config_setting(name = "msvc", value = "msvc-cl") config_setting( name = "android", diff --git a/third_party/protobuf/3.6.0/compiler_config_setting.bzl b/third_party/protobuf/3.6.0/compiler_config_setting.bzl new file mode 100644 index 0000000000..21b1cdb788 --- /dev/null +++ b/third_party/protobuf/3.6.0/compiler_config_setting.bzl @@ -0,0 +1,35 @@ +# Copyright 2018 The Bazel Authors. All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Creates config_setting that allows selecting based on 'compiler' value.""" + +def create_compiler_config_setting(name, value): + # The "do_not_use_tools_cpp_compiler_present" attribute exists to + # distinguish between older versions of Bazel that do not support + # "@bazel_tools//tools/cpp:compiler" flag_value, and newer ones that do. + # In the future, the only way to select on the compiler will be through + # flag_values{"@bazel_tools//tools/cpp:compiler"} and the else branch can + # be removed. + if hasattr(cc_common, "do_not_use_tools_cpp_compiler_present"): + native.config_setting( + name = name, + flag_values = { + "@bazel_tools//tools/cpp:compiler": value, + }, + ) + else: + native.config_setting( + name = name, + values = {"compiler": value}, + ) -- cgit v1.2.3