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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
|
bootstrap_go_package {
name: "soong-fluoride",
pkgPath: "android/soong/fluoride",
deps: [
"blueprint",
"blueprint-pathtools",
"soong",
"soong-android",
"soong-cc",
],
srcs: [
"fluoride.go",
],
pluginFor: ["soong_build"],
}
fluoride_defaults {
name: "libchrome_support_defaults",
shared_libs: ["libchrome"],
cflags: [
"-Wall",
"-Wextra",
"-Werror",
],
target: {
darwin: {
enabled: false,
},
},
}
fluoride_defaults {
name: "fluoride_types_defaults",
defaults: ["libchrome_support_defaults"],
cflags: [
"-DEXPORT_SYMBOL=__attribute__((visibility(\"default\")))",
"-fvisibility=hidden",
// struct BT_HDR is defined as a variable-size header in a struct.
"-Wno-gnu-variable-sized-type-not-at-end",
// there are too many unused parameters in all the code.
"-Wno-unused-parameter",
"-DLOG_NDEBUG=1",
],
conlyflags: [
"-std=c99",
],
product_variables: {
debuggable: {
cflags: [
"-DBLUEDROID_DEBUG",
],
},
},
}
fluoride_defaults {
name: "fluoride_defaults",
target: {
android: {
test_config_template: ":BluetoothTestConfigTemplate",
}
},
defaults: ["fluoride_types_defaults"],
header_libs: ["libbluetooth_headers"],
shared_libs: ["libstatslog"],
static_libs: [
"libbluetooth-types",
"libbt-platform-protos-lite",
],
cpp_std: "c++17",
sanitize: {
misc_undefined: ["bounds"],
},
}
// Enables code coverage for a set of source files. Must be combined with
// "clang_coverage_bin" in order to work. See //test/gen_coverage.py for more information
// on generating code coverage.
cc_defaults {
name: "clang_file_coverage",
target: {
linux: {
enabled: true,
clang_cflags: [
"-fprofile-instr-generate",
"-fcoverage-mapping",
],
},
},
}
// Enabled code coverage on a binary. These flags allow libraries that were
// compiled with "clang_file_coverage" to be properly linked together in
// order to create a binary that will create a profraw file when ran. Note
// these flags themselves don't enable code coverage for the source files
// compiled in the binary. See //test/gen_coverage.py for more information
// on generating code coverage.
cc_defaults {
name: "clang_coverage_bin",
target: {
linux: {
enabled: true,
ldflags: [
"-fprofile-instr-generate",
"-fcoverage-mapping",
],
},
},
}
|