-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathdefault_copts.bzl
69 lines (60 loc) · 1.31 KB
/
default_copts.bzl
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
""" Default copts for various compilers"""
RAD_CPP14 = select({
"//:msvc": ["/std:c++14"],
"//:gcc": ["-std=c++14"],
"//:clang": ["-std=c++14"],
})
RAD_CPP17 = select({
"//:msvc": ["/std:c++17"],
"//:gcc": ["-std=c++17"],
"//:clang": ["-std=c++17"],
})
RAD_CPP20 = select({
"//:msvc": ["/std:c++20"],
"//:gcc": ["-std=c++20"],
"//:clang": ["-std=c++20"],
})
RAD_ASAN_COPTS = [
"-fsanitize=address",
"-DADDRESS_SANITIZER",
"-g",
"-fno-omit-frame-pointer",
]
RAD_ASAN_LINKOPTS = [
"-fsanitize=address",
]
RAD_GCC_COPTS = [
"-Wall",
"-Wextra",
"-Wcast-qual",
"-Wconversion",
"-Wconversion-null",
"-Wmissing-declarations",
"-Woverlength-strings",
"-Wpointer-arith",
"-Wundef",
"-Wunused-local-typedefs",
"-Wunused-result",
"-Wvarargs",
"-Wvla",
"-Wwrite-strings",
"-Wno-multichar",
"-Werror",
"-Wpedantic",
]
RAD_GCC_LINKOPTS = []
RAD_DEFAULT_COPTS = select({
"//:msvc": [
"/W4",
"/WX",
"/DNOMINMAX",
"/Zc:__cplusplus",
],
"//:gcc": RAD_GCC_COPTS + RAD_ASAN_COPTS,
"//:clang": RAD_GCC_COPTS,
})
RAD_DEFAULT_LINKOPTS = select({
"//:msvc": ["/NATVIS:radiant/Rad.natvis"],
"//:gcc": RAD_GCC_LINKOPTS + RAD_ASAN_LINKOPTS,
"//:clang": RAD_GCC_LINKOPTS,
})