blob: 162ded6ebdbc05bcd47e289a31fc3d0adfdd8a35 [file] [log] [blame]
# Copyright 2020 The Pigweed 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
#
# https://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.
buildconfig = "//BUILDCONFIG.gn"
import("//build_overrides/pigweed_environment.gni")
# Generate a compilation database for all targets.
export_compile_commands = [ ":*" ]
default_args = {
# Default all upstream Pigweed toolchains to enable pw::span asserts.
pw_span_ENABLE_ASSERTS = true
# Don't allow a plain .options file extension for upstream pwpb code.
pw_protobuf_compiler_NO_GENERIC_OPTIONS_FILES = true
pw_build_PIP_CONSTRAINTS =
[ "//pw_env_setup/py/pw_env_setup/virtualenv_setup/constraint.list" ]
pw_build_PIP_REQUIREMENTS = [ "//pw_env_setup/py/pw_env_setup/virtualenv_setup/pigweed_upstream_requirements.txt" ]
# TODO(b/292098416): This should stay false until a cross-platform constraint
# file workflow is implemented.
pw_build_PYTHON_PIP_INSTALL_REQUIRE_HASHES = false
pw_build_PYTHON_PIP_INSTALL_FIND_LINKS =
[ "${pw_env_setup_CIPD_MSRV_PYTHON}/pip_cache" ]
pw_toolchain_STATIC_ANALYSIS_SKIP_SOURCES_RES = [
# Exclude third party CHRE headers that were downloaded from static analysis.
"environment/packages/chre/.*",
# Exclude third-party headers from static analysis.
"third_party/.*",
# Exclude GoogleTest, which fails some clang-tidy checks.
".*/googletest/src/.*",
".*/googlemock/src/.*",
# Exclude Boringssl, which fails some clang-tidy checks.
".*/boringssl/src/.*",
# Exclude mbedtls, which fails some clang-tidy checks.
".*/mbedtls/library/.*",
"pw_bluetooth_sapphire/.*",
"../pw_bluetooth_sapphire/.*",
]
pw_toolchain_STATIC_ANALYSIS_SKIP_INCLUDE_PATHS = [
# Exclude third party CHRE code from static analysis.
"../environment/packages/chre/.*",
# Code generated by third-party tool.
"pw_tls_client/generate_test_data",
# Exclude GoogleTest, which fails some clang-tidy checks.
".*/googletest/include.*",
".*/googlemock/include.*",
# Exclude Boringssl, which fails some clang-tidy checks.
".*/boringssl/src/include.*",
# Exclude mbedtls, which fails some clang-tidy checks.
".*/mbedtls/include.*",
"../pw_bluetooth_sapphire/.*",
]
}