From d3c7a2279d67e70fae904f862bc7ae48a6347fd3 Mon Sep 17 00:00:00 2001 From: buildbreaker2021 <88653395+buildbreaker2021@users.noreply.github.com> Date: Tue, 18 Jul 2023 10:09:37 +0200 Subject: [PATCH] Revert "Add well-known compiler `config_setting`s" --- cc/compiler/BUILD | 71 --------------------------------- tests/compiler_settings/BUILD | 32 --------------- tests/compiler_settings/main.cc | 22 ---------- 3 files changed, 125 deletions(-) delete mode 100644 cc/compiler/BUILD delete mode 100644 tests/compiler_settings/BUILD delete mode 100644 tests/compiler_settings/main.cc diff --git a/cc/compiler/BUILD b/cc/compiler/BUILD deleted file mode 100644 index fade580..0000000 --- a/cc/compiler/BUILD +++ /dev/null @@ -1,71 +0,0 @@ -# Copyright 2023 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. - -"""Config settings for compilers identified by Bazel. - -Targets that require compiler-specific flags can use the config_settings defined -in this package in their select() statements. - -*Note*: Before Bazel 6, gcc on Linux and clang on macOS would not match their -specific config_setting, but only the fallback case of a select expression. - -Toolchains not shipped with Bazel are encouraged to use the same names to -identify compilers as used below, but this is not enforced. - -Example: - - cc_binary( - name = "foo", - srcs = ["foo.cc"], - copts = select({ - "@rules_cc//cc/compiler:gcc": [...], - "@rules_cc//cc/compiler:clang": [...], - "@rules_cc//cc/compiler:msvc-cl": [...], - # Fallback case for an undetected compiler. - "//conditions:default": [...], - }), - ) - -If multiple targets use the same set of conditionally enabled flags, this can be -simplified by extracting the select expression into a Starlark constant. -""" - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -config_setting( - name = "clang", - flag_values = {"@bazel_tools//tools/cpp:compiler": "clang"}, -) - -config_setting( - name = "clang-cl", - flag_values = {"@bazel_tools//tools/cpp:compiler": "clang-cl"}, -) - -config_setting( - name = "gcc", - flag_values = {"@bazel_tools//tools/cpp:compiler": "gcc"}, -) - -config_setting( - name = "mingw-gcc", - flag_values = {"@bazel_tools//tools/cpp:compiler": "mingw-gcc"}, -) - -config_setting( - name = "msvc-cl", - flag_values = {"@bazel_tools//tools/cpp:compiler": "msvc-cl"}, -) diff --git a/tests/compiler_settings/BUILD b/tests/compiler_settings/BUILD deleted file mode 100644 index bb5ed83..0000000 --- a/tests/compiler_settings/BUILD +++ /dev/null @@ -1,32 +0,0 @@ -# Copyright 2023 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. - -load("//cc:defs.bzl", "cc_binary") - -licenses(["notice"]) - -cc_binary( - name = "main", - srcs = ["main.cc"], - local_defines = select( - { - "//cc/compiler:clang": ["COMPILER=clang"], - "//cc/compiler:clang-cl": ["COMPILER=clang-cl"], - "//cc/compiler:gcc": ["COMPILER=gcc"], - "//cc/compiler:mingw-gcc": ["COMPILER=mingw-gcc"], - "//cc/compiler:msvc-cl": ["COMPILER=msvc-cl"], - }, - no_match_error = "Compiler not detected by Bazel", - ), -) diff --git a/tests/compiler_settings/main.cc b/tests/compiler_settings/main.cc deleted file mode 100644 index 35b088c..0000000 --- a/tests/compiler_settings/main.cc +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright 2023 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. - -#include - -#define STRINGIFY(x) #x -#define TO_STRING(x) STRINGIFY(x) - -int main() { - std::cout << "Hello, " << TO_STRING(COMPILER) << "!" << std::endl; -}