1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- # Copyright 2021 the gRPC authors.
- #
- # 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.
- """
- Includes default copts.
- """
- # This is a list of llvm flags to be used when being built with use_strict_warning=1
- GRPC_LLVM_WARNING_FLAGS = [
- # Enable all & extra warnings
- "-Wall",
- "-Wextra",
- # Avoid some known traps
- "-Wimplicit-fallthrough",
- # Consider warnings as errors
- "-Werror",
- # Ignore unknown warning flags
- "-Wno-unknown-warning-option",
- # A list of enabled flags coming from internal build system
- "-Wc++20-extensions",
- "-Wctad-maybe-unsupported",
- "-Wdeprecated-increment-bool",
- "-Wfloat-overflow-conversion",
- "-Wfloat-zero-conversion",
- "-Wfor-loop-analysis",
- "-Wformat-security",
- "-Wgnu-redeclared-enum",
- "-Winfinite-recursion",
- "-Wliteral-conversion",
- "-Wnon-virtual-dtor",
- "-Woverloaded-virtual",
- "-Wself-assign",
- "-Wstring-conversion",
- "-Wtautological-overlap-compare",
- "-Wthread-safety-analysis",
- "-Wthread-safety-beta",
- "-Wunused-comparison",
- "-Wvla",
- # -Wextra compatibility between gcc and clang
- "-Wtype-limits",
- # A list of disabled flags coming from internal build system
- "-Wno-string-concatenation",
- # Exceptions but will be removed
- "-Wno-deprecated-declarations",
- "-Wno-unused-function",
- ]
- GRPC_DEFAULT_COPTS = select({
- "//:use_strict_warning": GRPC_LLVM_WARNING_FLAGS,
- "//conditions:default": [],
- })
|