xref: /aosp_15_r20/system/libprocinfo/Android.bp (revision e7c5e80fc9b28c04f5db9de8d2855377d05126c5)
1*e7c5e80fSMitch Phillips//
2*e7c5e80fSMitch Phillips// Copyright (C) 2015 The Android Open Source Project
3*e7c5e80fSMitch Phillips//
4*e7c5e80fSMitch Phillips// Licensed under the Apache License, Version 2.0 (the "License");
5*e7c5e80fSMitch Phillips// you may not use this file except in compliance with the License.
6*e7c5e80fSMitch Phillips// You may obtain a copy of the License at
7*e7c5e80fSMitch Phillips//
8*e7c5e80fSMitch Phillips//      http://www.apache.org/licenses/LICENSE-2.0
9*e7c5e80fSMitch Phillips//
10*e7c5e80fSMitch Phillips// Unless required by applicable law or agreed to in writing, software
11*e7c5e80fSMitch Phillips// distributed under the License is distributed on an "AS IS" BASIS,
12*e7c5e80fSMitch Phillips// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13*e7c5e80fSMitch Phillips// See the License for the specific language governing permissions and
14*e7c5e80fSMitch Phillips// limitations under the License.
15*e7c5e80fSMitch Phillips//
16*e7c5e80fSMitch Phillips
17*e7c5e80fSMitch Phillipspackage {
18*e7c5e80fSMitch Phillips    default_team: "trendy_team_android_kernel",
19*e7c5e80fSMitch Phillips    default_applicable_licenses: ["Android-Apache-2.0"],
20*e7c5e80fSMitch Phillips}
21*e7c5e80fSMitch Phillips
22*e7c5e80fSMitch Phillipscc_defaults {
23*e7c5e80fSMitch Phillips    name: "libprocinfo_defaults",
24*e7c5e80fSMitch Phillips    cflags: [
25*e7c5e80fSMitch Phillips        "-Wall",
26*e7c5e80fSMitch Phillips        "-Werror",
27*e7c5e80fSMitch Phillips        "-Wextra",
28*e7c5e80fSMitch Phillips    ],
29*e7c5e80fSMitch Phillips}
30*e7c5e80fSMitch Phillips
31*e7c5e80fSMitch Phillipscc_library {
32*e7c5e80fSMitch Phillips    name: "libprocinfo",
33*e7c5e80fSMitch Phillips    defaults: ["libprocinfo_defaults"],
34*e7c5e80fSMitch Phillips    vendor_available: true,
35*e7c5e80fSMitch Phillips    product_available: true,
36*e7c5e80fSMitch Phillips    // TODO(b/153609531): remove when no longer needed.
37*e7c5e80fSMitch Phillips    native_bridge_supported: true,
38*e7c5e80fSMitch Phillips    ramdisk_available: true,
39*e7c5e80fSMitch Phillips    recovery_available: true,
40*e7c5e80fSMitch Phillips    vendor_ramdisk_available: true,
41*e7c5e80fSMitch Phillips    host_supported: true,
42*e7c5e80fSMitch Phillips    srcs: [
43*e7c5e80fSMitch Phillips        "process.cpp",
44*e7c5e80fSMitch Phillips    ],
45*e7c5e80fSMitch Phillips
46*e7c5e80fSMitch Phillips    local_include_dirs: ["include"],
47*e7c5e80fSMitch Phillips    export_include_dirs: ["include"],
48*e7c5e80fSMitch Phillips    shared_libs: ["libbase"],
49*e7c5e80fSMitch Phillips    target: {
50*e7c5e80fSMitch Phillips        darwin: {
51*e7c5e80fSMitch Phillips            enabled: false,
52*e7c5e80fSMitch Phillips        },
53*e7c5e80fSMitch Phillips        linux_bionic: {
54*e7c5e80fSMitch Phillips            enabled: true,
55*e7c5e80fSMitch Phillips        },
56*e7c5e80fSMitch Phillips        windows: {
57*e7c5e80fSMitch Phillips            enabled: false,
58*e7c5e80fSMitch Phillips        },
59*e7c5e80fSMitch Phillips    },
60*e7c5e80fSMitch Phillips
61*e7c5e80fSMitch Phillips    apex_available: [
62*e7c5e80fSMitch Phillips        "//apex_available:platform",
63*e7c5e80fSMitch Phillips        "com.android.art",
64*e7c5e80fSMitch Phillips        "com.android.art.debug",
65*e7c5e80fSMitch Phillips        "com.android.runtime",
66*e7c5e80fSMitch Phillips    ],
67*e7c5e80fSMitch Phillips    min_sdk_version: "apex_inherit",
68*e7c5e80fSMitch Phillips}
69*e7c5e80fSMitch Phillips
70*e7c5e80fSMitch Phillips// Tests
71*e7c5e80fSMitch Phillips// ------------------------------------------------------------------------------
72*e7c5e80fSMitch Phillipscc_test {
73*e7c5e80fSMitch Phillips    name: "libprocinfo_test",
74*e7c5e80fSMitch Phillips    defaults: ["libprocinfo_defaults"],
75*e7c5e80fSMitch Phillips    host_supported: true,
76*e7c5e80fSMitch Phillips    isolated: true,
77*e7c5e80fSMitch Phillips    srcs: [
78*e7c5e80fSMitch Phillips        "process_test.cpp",
79*e7c5e80fSMitch Phillips        "process_map_test.cpp",
80*e7c5e80fSMitch Phillips    ],
81*e7c5e80fSMitch Phillips    target: {
82*e7c5e80fSMitch Phillips        darwin: {
83*e7c5e80fSMitch Phillips            enabled: false,
84*e7c5e80fSMitch Phillips        },
85*e7c5e80fSMitch Phillips        windows: {
86*e7c5e80fSMitch Phillips            enabled: false,
87*e7c5e80fSMitch Phillips        },
88*e7c5e80fSMitch Phillips    },
89*e7c5e80fSMitch Phillips
90*e7c5e80fSMitch Phillips    shared_libs: [
91*e7c5e80fSMitch Phillips        "libbase",
92*e7c5e80fSMitch Phillips        "libprocinfo",
93*e7c5e80fSMitch Phillips    ],
94*e7c5e80fSMitch Phillips
95*e7c5e80fSMitch Phillips    compile_multilib: "both",
96*e7c5e80fSMitch Phillips    multilib: {
97*e7c5e80fSMitch Phillips        lib32: {
98*e7c5e80fSMitch Phillips            suffix: "32",
99*e7c5e80fSMitch Phillips        },
100*e7c5e80fSMitch Phillips        lib64: {
101*e7c5e80fSMitch Phillips            suffix: "64",
102*e7c5e80fSMitch Phillips        },
103*e7c5e80fSMitch Phillips    },
104*e7c5e80fSMitch Phillips
105*e7c5e80fSMitch Phillips    data: [
106*e7c5e80fSMitch Phillips        "testdata/*",
107*e7c5e80fSMitch Phillips    ],
108*e7c5e80fSMitch Phillips
109*e7c5e80fSMitch Phillips    test_suites: ["device-tests"],
110*e7c5e80fSMitch Phillips}
111*e7c5e80fSMitch Phillips
112*e7c5e80fSMitch Phillipscc_benchmark {
113*e7c5e80fSMitch Phillips    name: "libprocinfo_benchmark",
114*e7c5e80fSMitch Phillips    defaults: ["libprocinfo_defaults"],
115*e7c5e80fSMitch Phillips    srcs: [
116*e7c5e80fSMitch Phillips        "process_map_benchmark.cpp",
117*e7c5e80fSMitch Phillips    ],
118*e7c5e80fSMitch Phillips    shared_libs: [
119*e7c5e80fSMitch Phillips        "libbase",
120*e7c5e80fSMitch Phillips        "libprocinfo",
121*e7c5e80fSMitch Phillips        "libunwindstack",
122*e7c5e80fSMitch Phillips    ],
123*e7c5e80fSMitch Phillips    compile_multilib: "both",
124*e7c5e80fSMitch Phillips    multilib: {
125*e7c5e80fSMitch Phillips        lib32: {
126*e7c5e80fSMitch Phillips            suffix: "32",
127*e7c5e80fSMitch Phillips        },
128*e7c5e80fSMitch Phillips        lib64: {
129*e7c5e80fSMitch Phillips            suffix: "64",
130*e7c5e80fSMitch Phillips        },
131*e7c5e80fSMitch Phillips    },
132*e7c5e80fSMitch Phillips
133*e7c5e80fSMitch Phillips    data: [
134*e7c5e80fSMitch Phillips        "testdata/*",
135*e7c5e80fSMitch Phillips    ],
136*e7c5e80fSMitch Phillips}
137