xref: /aosp_15_r20/system/server_configurable_flags/libflags/Android.bp (revision 207333786ba243bc7d4d69ef6b05487aa7071806)
1*20733378SAndroid Build Coastguard Workerpackage {
2*20733378SAndroid Build Coastguard Worker    default_applicable_licenses: ["Android-Apache-2.0"],
3*20733378SAndroid Build Coastguard Worker}
4*20733378SAndroid Build Coastguard Worker
5*20733378SAndroid Build Coastguard Workercc_library {
6*20733378SAndroid Build Coastguard Worker    name: "server_configurable_flags",
7*20733378SAndroid Build Coastguard Worker    srcs: ["server_configurable_flags.cc"],
8*20733378SAndroid Build Coastguard Worker    host_supported: true,
9*20733378SAndroid Build Coastguard Worker    vendor_available: true,
10*20733378SAndroid Build Coastguard Worker    double_loadable: true,
11*20733378SAndroid Build Coastguard Worker    product_available: true,
12*20733378SAndroid Build Coastguard Worker    shared_libs: [
13*20733378SAndroid Build Coastguard Worker        "libbase",
14*20733378SAndroid Build Coastguard Worker        "libcutils",
15*20733378SAndroid Build Coastguard Worker    ],
16*20733378SAndroid Build Coastguard Worker    cflags: [
17*20733378SAndroid Build Coastguard Worker        "-Wall",
18*20733378SAndroid Build Coastguard Worker        "-Werror",
19*20733378SAndroid Build Coastguard Worker    ],
20*20733378SAndroid Build Coastguard Worker    export_include_dirs: ["include"],
21*20733378SAndroid Build Coastguard Worker    apex_available: [
22*20733378SAndroid Build Coastguard Worker        "//apex_available:platform",
23*20733378SAndroid Build Coastguard Worker        "//apex_available:anyapex",
24*20733378SAndroid Build Coastguard Worker    ],
25*20733378SAndroid Build Coastguard Worker    min_sdk_version: "29",
26*20733378SAndroid Build Coastguard Worker    afdo: true,
27*20733378SAndroid Build Coastguard Worker    target: {
28*20733378SAndroid Build Coastguard Worker        windows: {
29*20733378SAndroid Build Coastguard Worker            enabled: true,
30*20733378SAndroid Build Coastguard Worker        },
31*20733378SAndroid Build Coastguard Worker    },
32*20733378SAndroid Build Coastguard Worker}
33*20733378SAndroid Build Coastguard Worker
34*20733378SAndroid Build Coastguard Worker// Tests
35*20733378SAndroid Build Coastguard Worker// ------------------------------------------------------------------------------
36*20733378SAndroid Build Coastguard Workercc_test {
37*20733378SAndroid Build Coastguard Worker    name: "server_configurable_flags_test",
38*20733378SAndroid Build Coastguard Worker    cflags: [
39*20733378SAndroid Build Coastguard Worker        "-Wall",
40*20733378SAndroid Build Coastguard Worker        "-Werror",
41*20733378SAndroid Build Coastguard Worker        "-Wextra",
42*20733378SAndroid Build Coastguard Worker    ],
43*20733378SAndroid Build Coastguard Worker    srcs: [
44*20733378SAndroid Build Coastguard Worker        "server_configurable_flags_test.cc",
45*20733378SAndroid Build Coastguard Worker    ],
46*20733378SAndroid Build Coastguard Worker    shared_libs: [
47*20733378SAndroid Build Coastguard Worker        "server_configurable_flags",
48*20733378SAndroid Build Coastguard Worker        "libbase",
49*20733378SAndroid Build Coastguard Worker    ],
50*20733378SAndroid Build Coastguard Worker    local_include_dirs: ["."],
51*20733378SAndroid Build Coastguard Worker    test_suites: ["device-tests"],
52*20733378SAndroid Build Coastguard Worker}
53*20733378SAndroid Build Coastguard Worker
54*20733378SAndroid Build Coastguard Workercc_library_static {
55*20733378SAndroid Build Coastguard Worker    name: "libflags_rust_cpp_bridge",
56*20733378SAndroid Build Coastguard Worker    srcs: ["rust_get_flags.cpp"],
57*20733378SAndroid Build Coastguard Worker    generated_headers: ["cxx-bridge-header"],
58*20733378SAndroid Build Coastguard Worker    generated_sources: ["libflags_rust_generated_cpp_bridge"],
59*20733378SAndroid Build Coastguard Worker    apex_available: [
60*20733378SAndroid Build Coastguard Worker        "//apex_available:platform",
61*20733378SAndroid Build Coastguard Worker        "//apex_available:anyapex",
62*20733378SAndroid Build Coastguard Worker    ],
63*20733378SAndroid Build Coastguard Worker    host_supported: true,
64*20733378SAndroid Build Coastguard Worker    min_sdk_version: "33",
65*20733378SAndroid Build Coastguard Worker}
66*20733378SAndroid Build Coastguard Worker
67*20733378SAndroid Build Coastguard Workergenrule {
68*20733378SAndroid Build Coastguard Worker    name: "libflags_rust_generated_cpp_bridge",
69*20733378SAndroid Build Coastguard Worker    tools: ["cxxbridge"],
70*20733378SAndroid Build Coastguard Worker    cmd: "$(location cxxbridge) $(in) >> $(out)",
71*20733378SAndroid Build Coastguard Worker    srcs: ["lib.rs"],
72*20733378SAndroid Build Coastguard Worker    out: ["rust_libflags_cxx_generated.cc"],
73*20733378SAndroid Build Coastguard Worker}
74*20733378SAndroid Build Coastguard Worker
75*20733378SAndroid Build Coastguard Workerrust_library {
76*20733378SAndroid Build Coastguard Worker    name: "libflags_rust",
77*20733378SAndroid Build Coastguard Worker    crate_name: "flags_rust",
78*20733378SAndroid Build Coastguard Worker    srcs: ["lib.rs"],
79*20733378SAndroid Build Coastguard Worker    rustlibs: ["libcxx"],
80*20733378SAndroid Build Coastguard Worker    static_libs: ["libflags_rust_cpp_bridge"],
81*20733378SAndroid Build Coastguard Worker    shared_libs: [
82*20733378SAndroid Build Coastguard Worker        "libc++",
83*20733378SAndroid Build Coastguard Worker        "server_configurable_flags",
84*20733378SAndroid Build Coastguard Worker    ],
85*20733378SAndroid Build Coastguard Worker    apex_available: [
86*20733378SAndroid Build Coastguard Worker        "//apex_available:platform",
87*20733378SAndroid Build Coastguard Worker        "//apex_available:anyapex",
88*20733378SAndroid Build Coastguard Worker    ],
89*20733378SAndroid Build Coastguard Worker    host_supported: true,
90*20733378SAndroid Build Coastguard Worker    min_sdk_version: "33",
91*20733378SAndroid Build Coastguard Worker}
92