-
Notifications
You must be signed in to change notification settings - Fork 215
Expand file tree
/
Copy path.bazelrc
More file actions
92 lines (67 loc) · 2.15 KB
/
Copy path.bazelrc
File metadata and controls
92 lines (67 loc) · 2.15 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# Copyright 2025 Google LLC
#
# 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.
# ~~~~ General flags ~~~~
# Common flags
common --announce_rc
common --experimental_repo_remote_exec
common --verbose_failures
# Default build options
build --copt -std=c++17
build --copt -D_GLIBCXX_USE_CXX11_ABI=1
# Test flags
test --test_output=errors
# CUDA options
build:cuda --@local_config_cuda//:enable_cuda
build:cuda --define=using_cuda=true --define=using_cuda_nvcc=true
# Configs for verbose builds & tests
common:verbose --announce_rc
common:verbose --auto_output_filter=none
build:verbose --show_progress_rate_limit=1
test:verbose --test_summary=detailed
# ~~~~ Sanitizers (choose one, or nosan for none) ~~~~
# Shared config for sanitizers
build:sanitizer --strip=never
build:sanitizer --copt -O1
build:sanitizer --copt -fno-omit-frame-pointer
# Address sanitizer
build:asan --config=sanitizer
build:asan --copt -fsanitize=address
build:asan --linkopt -fsanitize=address
# Memory sanitizer
build:msan --config=sanitizer
build:msan --copt -fsanitize=leak
build:msan --linkopt -fsanitize=leak
# No sanitizers
build:nosan --
# ~~~~ Instruction set options (choose one) ~~~~
# Build with AVX2 + FMA
build:avx --copt -O3
build:avx --copt -mavx2
build:avx --copt -mfma
# Build with SSE
build:sse --copt -O3
build:sse --copt -msse4
# Build without AVX or SSE
build:basic --copt -O3
# ~~~~ Parallelization (choose one, or nopenmp for none) ~~~~
# Build with OpenMP
build:openmp --copt -fopenmp
build:openmp --linkopt -lgomp
# No OpenMP
build:nopenmp --
# ~~~~ Memory handler (choose one) ~~~~
# Build with tcmalloc
build:tcmalloc --linkopt="-ltcmalloc"
# Build using malloc (default)
build:malloc --