xref: /aosp_15_r20/system/core/libprocessgroup/Android.bp (revision 00c7fec1bb09f3284aad6a6f96d2f63dfc3650ad)
1*00c7fec1SAndroid Build Coastguard Workerpackage {
2*00c7fec1SAndroid Build Coastguard Worker    default_applicable_licenses: ["Android-Apache-2.0"],
3*00c7fec1SAndroid Build Coastguard Worker}
4*00c7fec1SAndroid Build Coastguard Worker
5*00c7fec1SAndroid Build Coastguard Workersoong_config_module_type {
6*00c7fec1SAndroid Build Coastguard Worker    name: "libprocessgroup_flag_aware_cc_defaults",
7*00c7fec1SAndroid Build Coastguard Worker    module_type: "cc_defaults",
8*00c7fec1SAndroid Build Coastguard Worker    config_namespace: "ANDROID",
9*00c7fec1SAndroid Build Coastguard Worker    bool_variables: [
10*00c7fec1SAndroid Build Coastguard Worker        "memcg_v2_force_enabled",
11*00c7fec1SAndroid Build Coastguard Worker        "cgroup_v2_sys_app_isolation",
12*00c7fec1SAndroid Build Coastguard Worker    ],
13*00c7fec1SAndroid Build Coastguard Worker    properties: [
14*00c7fec1SAndroid Build Coastguard Worker        "cflags",
15*00c7fec1SAndroid Build Coastguard Worker    ],
16*00c7fec1SAndroid Build Coastguard Worker}
17*00c7fec1SAndroid Build Coastguard Worker
18*00c7fec1SAndroid Build Coastguard Workerlibprocessgroup_flag_aware_cc_defaults {
19*00c7fec1SAndroid Build Coastguard Worker    name: "libprocessgroup_build_flags_cc",
20*00c7fec1SAndroid Build Coastguard Worker    cpp_std: "gnu++23",
21*00c7fec1SAndroid Build Coastguard Worker    soong_config_variables: {
22*00c7fec1SAndroid Build Coastguard Worker        memcg_v2_force_enabled: {
23*00c7fec1SAndroid Build Coastguard Worker            cflags: [
24*00c7fec1SAndroid Build Coastguard Worker                "-DMEMCG_V2_FORCE_ENABLED=true",
25*00c7fec1SAndroid Build Coastguard Worker            ],
26*00c7fec1SAndroid Build Coastguard Worker        },
27*00c7fec1SAndroid Build Coastguard Worker        cgroup_v2_sys_app_isolation: {
28*00c7fec1SAndroid Build Coastguard Worker            cflags: [
29*00c7fec1SAndroid Build Coastguard Worker                "-DCGROUP_V2_SYS_APP_ISOLATION=true",
30*00c7fec1SAndroid Build Coastguard Worker            ],
31*00c7fec1SAndroid Build Coastguard Worker        },
32*00c7fec1SAndroid Build Coastguard Worker    },
33*00c7fec1SAndroid Build Coastguard Worker}
34*00c7fec1SAndroid Build Coastguard Worker
35*00c7fec1SAndroid Build Coastguard Workercc_library_headers {
36*00c7fec1SAndroid Build Coastguard Worker    name: "libprocessgroup_headers",
37*00c7fec1SAndroid Build Coastguard Worker    vendor_available: true,
38*00c7fec1SAndroid Build Coastguard Worker    product_available: true,
39*00c7fec1SAndroid Build Coastguard Worker    ramdisk_available: true,
40*00c7fec1SAndroid Build Coastguard Worker    vendor_ramdisk_available: true,
41*00c7fec1SAndroid Build Coastguard Worker    recovery_available: true,
42*00c7fec1SAndroid Build Coastguard Worker    host_supported: true,
43*00c7fec1SAndroid Build Coastguard Worker    native_bridge_supported: true,
44*00c7fec1SAndroid Build Coastguard Worker    export_include_dirs: ["include"],
45*00c7fec1SAndroid Build Coastguard Worker    target: {
46*00c7fec1SAndroid Build Coastguard Worker        linux_bionic: {
47*00c7fec1SAndroid Build Coastguard Worker            enabled: true,
48*00c7fec1SAndroid Build Coastguard Worker        },
49*00c7fec1SAndroid Build Coastguard Worker        windows: {
50*00c7fec1SAndroid Build Coastguard Worker            enabled: true,
51*00c7fec1SAndroid Build Coastguard Worker        },
52*00c7fec1SAndroid Build Coastguard Worker    },
53*00c7fec1SAndroid Build Coastguard Worker    apex_available: [
54*00c7fec1SAndroid Build Coastguard Worker        "//apex_available:platform",
55*00c7fec1SAndroid Build Coastguard Worker        "//apex_available:anyapex",
56*00c7fec1SAndroid Build Coastguard Worker    ],
57*00c7fec1SAndroid Build Coastguard Worker    min_sdk_version: "29",
58*00c7fec1SAndroid Build Coastguard Worker}
59*00c7fec1SAndroid Build Coastguard Worker
60*00c7fec1SAndroid Build Coastguard Workercc_library {
61*00c7fec1SAndroid Build Coastguard Worker    srcs: [
62*00c7fec1SAndroid Build Coastguard Worker        "cgroup_map.cpp",
63*00c7fec1SAndroid Build Coastguard Worker        "processgroup.cpp",
64*00c7fec1SAndroid Build Coastguard Worker        "sched_policy.cpp",
65*00c7fec1SAndroid Build Coastguard Worker        "task_profiles.cpp",
66*00c7fec1SAndroid Build Coastguard Worker    ],
67*00c7fec1SAndroid Build Coastguard Worker    name: "libprocessgroup",
68*00c7fec1SAndroid Build Coastguard Worker    host_supported: true,
69*00c7fec1SAndroid Build Coastguard Worker    native_bridge_supported: true,
70*00c7fec1SAndroid Build Coastguard Worker    ramdisk_available: true,
71*00c7fec1SAndroid Build Coastguard Worker    vendor_ramdisk_available: true,
72*00c7fec1SAndroid Build Coastguard Worker    recovery_available: true,
73*00c7fec1SAndroid Build Coastguard Worker    vendor_available: true,
74*00c7fec1SAndroid Build Coastguard Worker    product_available: true,
75*00c7fec1SAndroid Build Coastguard Worker    double_loadable: true,
76*00c7fec1SAndroid Build Coastguard Worker    shared_libs: [
77*00c7fec1SAndroid Build Coastguard Worker        "libbase",
78*00c7fec1SAndroid Build Coastguard Worker    ],
79*00c7fec1SAndroid Build Coastguard Worker    static_libs: [
80*00c7fec1SAndroid Build Coastguard Worker        "libjsoncpp",
81*00c7fec1SAndroid Build Coastguard Worker        "libprocessgroup_util",
82*00c7fec1SAndroid Build Coastguard Worker    ],
83*00c7fec1SAndroid Build Coastguard Worker    // for cutils/android_filesystem_config.h
84*00c7fec1SAndroid Build Coastguard Worker    header_libs: [
85*00c7fec1SAndroid Build Coastguard Worker        "libcutils_headers",
86*00c7fec1SAndroid Build Coastguard Worker        "libprocessgroup_headers",
87*00c7fec1SAndroid Build Coastguard Worker    ],
88*00c7fec1SAndroid Build Coastguard Worker    export_include_dirs: ["include"],
89*00c7fec1SAndroid Build Coastguard Worker    export_header_lib_headers: [
90*00c7fec1SAndroid Build Coastguard Worker        "libprocessgroup_headers",
91*00c7fec1SAndroid Build Coastguard Worker    ],
92*00c7fec1SAndroid Build Coastguard Worker    defaults: ["libprocessgroup_build_flags_cc"],
93*00c7fec1SAndroid Build Coastguard Worker    apex_available: [
94*00c7fec1SAndroid Build Coastguard Worker        "//apex_available:platform",
95*00c7fec1SAndroid Build Coastguard Worker        "//apex_available:anyapex",
96*00c7fec1SAndroid Build Coastguard Worker    ],
97*00c7fec1SAndroid Build Coastguard Worker    min_sdk_version: "29",
98*00c7fec1SAndroid Build Coastguard Worker}
99*00c7fec1SAndroid Build Coastguard Worker
100*00c7fec1SAndroid Build Coastguard Workercc_test {
101*00c7fec1SAndroid Build Coastguard Worker    name: "task_profiles_test",
102*00c7fec1SAndroid Build Coastguard Worker    host_supported: true,
103*00c7fec1SAndroid Build Coastguard Worker    defaults: ["libprocessgroup_build_flags_cc"],
104*00c7fec1SAndroid Build Coastguard Worker    srcs: [
105*00c7fec1SAndroid Build Coastguard Worker        "task_profiles_test.cpp",
106*00c7fec1SAndroid Build Coastguard Worker    ],
107*00c7fec1SAndroid Build Coastguard Worker    header_libs: [
108*00c7fec1SAndroid Build Coastguard Worker        "libcutils_headers",
109*00c7fec1SAndroid Build Coastguard Worker        "libprocessgroup_headers",
110*00c7fec1SAndroid Build Coastguard Worker    ],
111*00c7fec1SAndroid Build Coastguard Worker    shared_libs: [
112*00c7fec1SAndroid Build Coastguard Worker        "libbase",
113*00c7fec1SAndroid Build Coastguard Worker        "libprocessgroup",
114*00c7fec1SAndroid Build Coastguard Worker    ],
115*00c7fec1SAndroid Build Coastguard Worker    static_libs: [
116*00c7fec1SAndroid Build Coastguard Worker        "libgmock",
117*00c7fec1SAndroid Build Coastguard Worker        "libprocessgroup_util",
118*00c7fec1SAndroid Build Coastguard Worker    ],
119*00c7fec1SAndroid Build Coastguard Worker}
120