Jack He | e2eeff4 | 2016-12-07 18:25:17 -0800 | [diff] [blame] | 1 | bootstrap_go_package { |
| 2 | name: "soong-fluoride", |
| 3 | pkgPath: "android/soong/fluoride", |
| 4 | deps: [ |
| 5 | "blueprint", |
| 6 | "blueprint-pathtools", |
| 7 | "soong", |
| 8 | "soong-android", |
| 9 | "soong-cc", |
| 10 | ], |
| 11 | srcs: [ |
| 12 | "fluoride.go", |
| 13 | ], |
| 14 | pluginFor: ["soong_build"], |
| 15 | } |
| 16 | |
| 17 | fluoride_defaults { |
Myles Watson | 65d24fb | 2018-02-13 10:33:54 -0800 | [diff] [blame] | 18 | name: "libchrome_support_defaults", |
| 19 | shared_libs: ["libchrome"], |
Jack He | e2eeff4 | 2016-12-07 18:25:17 -0800 | [diff] [blame] | 20 | cflags: [ |
Jack He | e2eeff4 | 2016-12-07 18:25:17 -0800 | [diff] [blame] | 21 | "-Wall", |
| 22 | "-Wextra", |
| 23 | "-Werror", |
Myles Watson | 65d24fb | 2018-02-13 10:33:54 -0800 | [diff] [blame] | 24 | ], |
| 25 | target: { |
| 26 | darwin: { |
| 27 | enabled: false, |
| 28 | }, |
| 29 | }, |
| 30 | } |
| 31 | |
| 32 | fluoride_defaults { |
| 33 | name: "fluoride_types_defaults", |
| 34 | defaults: ["libchrome_support_defaults"], |
| 35 | cflags: [ |
| 36 | "-DEXPORT_SYMBOL=__attribute__((visibility(\"default\")))", |
| 37 | "-fvisibility=hidden", |
Jack He | e2eeff4 | 2016-12-07 18:25:17 -0800 | [diff] [blame] | 38 | // struct BT_HDR is defined as a variable-size header in a struct. |
| 39 | "-Wno-gnu-variable-sized-type-not-at-end", |
Jack He | e2eeff4 | 2016-12-07 18:25:17 -0800 | [diff] [blame] | 40 | // there are too many unused parameters in all the code. |
| 41 | "-Wno-unused-parameter", |
| 42 | "-DLOG_NDEBUG=1", |
| 43 | ], |
| 44 | conlyflags: [ |
| 45 | "-std=c99", |
| 46 | ], |
| 47 | product_variables: { |
| 48 | debuggable: { |
Jakub Pawlowski | ba993e9 | 2017-02-09 16:46:45 -0800 | [diff] [blame] | 49 | cflags: [ |
| 50 | "-DBLUEDROID_DEBUG", |
Jakub Pawlowski | ba993e9 | 2017-02-09 16:46:45 -0800 | [diff] [blame] | 51 | ], |
Jack He | e2eeff4 | 2016-12-07 18:25:17 -0800 | [diff] [blame] | 52 | }, |
| 53 | }, |
Jack He | e2eeff4 | 2016-12-07 18:25:17 -0800 | [diff] [blame] | 54 | } |
Jakub Pawlowski | b707f44 | 2017-07-03 15:39:36 -0700 | [diff] [blame] | 55 | |
| 56 | fluoride_defaults { |
| 57 | name: "fluoride_defaults", |
Dan Shi | 0215545 | 2018-12-14 09:56:36 -0800 | [diff] [blame] | 58 | target: { |
| 59 | android: { |
| 60 | test_config_template: ":BluetoothTestConfigTemplate", |
| 61 | } |
| 62 | }, |
Jakub Pawlowski | b707f44 | 2017-07-03 15:39:36 -0700 | [diff] [blame] | 63 | defaults: ["fluoride_types_defaults"], |
Jakub Pawlowski | e56fabc | 2017-10-19 00:26:09 -0700 | [diff] [blame] | 64 | header_libs: ["libbluetooth_headers"], |
Jack He | 9d9df72 | 2018-12-20 15:46:17 -0800 | [diff] [blame] | 65 | shared_libs: ["libstatslog"], |
Jakub Pawlowski | b707f44 | 2017-07-03 15:39:36 -0700 | [diff] [blame] | 66 | static_libs: [ |
| 67 | "libbluetooth-types", |
Jack He | 9d9df72 | 2018-12-20 15:46:17 -0800 | [diff] [blame] | 68 | "libbt-platform-protos-lite", |
Jakub Pawlowski | b707f44 | 2017-07-03 15:39:36 -0700 | [diff] [blame] | 69 | ], |
Ajay Panicker | 96bcf14 | 2018-09-17 11:35:24 -0700 | [diff] [blame] | 70 | cpp_std: "c++17", |
Ivan Lozano | be596a8 | 2018-09-28 11:23:51 -0700 | [diff] [blame] | 71 | sanitize: { |
| 72 | misc_undefined: ["bounds"], |
| 73 | }, |
Jakub Pawlowski | b707f44 | 2017-07-03 15:39:36 -0700 | [diff] [blame] | 74 | } |
Ajay Panicker | ff48ce8 | 2018-09-20 14:39:00 -0700 | [diff] [blame] | 75 | |
| 76 | // Enables code coverage for a set of source files. Must be combined with |
| 77 | // "clang_coverage_bin" in order to work. See //test/gen_coverage.py for more information |
| 78 | // on generating code coverage. |
| 79 | cc_defaults { |
| 80 | name: "clang_file_coverage", |
| 81 | target: { |
Hansong Zhang | 262bff9 | 2019-03-27 15:49:13 -0700 | [diff] [blame] | 82 | host: { |
Ajay Panicker | ff48ce8 | 2018-09-20 14:39:00 -0700 | [diff] [blame] | 83 | clang_cflags: [ |
| 84 | "-fprofile-instr-generate", |
| 85 | "-fcoverage-mapping", |
| 86 | ], |
| 87 | }, |
| 88 | }, |
| 89 | } |
| 90 | |
| 91 | // Enabled code coverage on a binary. These flags allow libraries that were |
| 92 | // compiled with "clang_file_coverage" to be properly linked together in |
| 93 | // order to create a binary that will create a profraw file when ran. Note |
| 94 | // these flags themselves don't enable code coverage for the source files |
| 95 | // compiled in the binary. See //test/gen_coverage.py for more information |
| 96 | // on generating code coverage. |
| 97 | cc_defaults { |
| 98 | name: "clang_coverage_bin", |
| 99 | target: { |
Hansong Zhang | 262bff9 | 2019-03-27 15:49:13 -0700 | [diff] [blame] | 100 | host: { |
Ajay Panicker | ff48ce8 | 2018-09-20 14:39:00 -0700 | [diff] [blame] | 101 | ldflags: [ |
| 102 | "-fprofile-instr-generate", |
| 103 | "-fcoverage-mapping", |
| 104 | ], |
| 105 | }, |
| 106 | }, |
| 107 | } |