BUILD.gn
1.67 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
import("//compiler-rt/target.gni")
static_library("profile") {
output_dir = crt_current_out_dir
if (current_os == "mac") {
output_name = "clang_rt.profile_osx"
} else {
output_name = "clang_rt.profile$crt_current_target_suffix"
}
complete_static_lib = true
configs -= [ "//llvm/utils/gn/build:thin_archive" ]
cflags = []
if (current_os != "win") {
cflags = [
"-fPIC",
"-Wno-pedantic",
]
} else {
# This appears to be a C-only warning banning the use of locals in
# aggregate initializers. All other compilers accept this, though.
# nonstandard extension used : 'identifier' :
# cannot be initialized using address of automatic variable
cflags += [ "/wd4221" ]
}
include_dirs = [
"..",
"../../include",
]
sources = [
"GCDAProfiling.c",
"InstrProfiling.c",
"InstrProfiling.h",
"InstrProfilingBuffer.c",
"InstrProfilingFile.c",
"InstrProfilingInternal.h",
"InstrProfilingMerge.c",
"InstrProfilingMergeFile.c",
"InstrProfilingNameVar.c",
"InstrProfilingPlatformDarwin.c",
"InstrProfilingPlatformFuchsia.c",
"InstrProfilingPlatformLinux.c",
"InstrProfilingPlatformOther.c",
"InstrProfilingPlatformWindows.c",
"InstrProfilingPort.h",
"InstrProfilingRuntime.cpp",
"InstrProfilingUtil.c",
"InstrProfilingUtil.h",
"InstrProfilingValue.c",
"InstrProfilingWriter.c",
]
if (current_os == "win") {
sources += [
"WindowsMMap.c",
"WindowsMMap.h",
]
}
if (current_os != "win") {
defines = [
"COMPILER_RT_TARGET_HAS_ATOMICS",
"COMPILER_RT_TARGET_HAS_FCNTL_LCK",
"COMPILER_RT_TARGET_HAS_UNAME",
]
}
}