xref: /aosp_15_r20/frameworks/av/media/utils/Android.bp (revision ec779b8e0859a360c3d303172224686826e6e0e1)
1*ec779b8eSAndroid Build Coastguard Worker// Copyright 2017 The Android Open Source Project
2*ec779b8eSAndroid Build Coastguard Worker//
3*ec779b8eSAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License");
4*ec779b8eSAndroid Build Coastguard Worker// you may not use this file except in compliance with the License.
5*ec779b8eSAndroid Build Coastguard Worker// You may obtain a copy of the License at
6*ec779b8eSAndroid Build Coastguard Worker//
7*ec779b8eSAndroid Build Coastguard Worker//      http://www.apache.org/licenses/LICENSE-2.0
8*ec779b8eSAndroid Build Coastguard Worker//
9*ec779b8eSAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software
10*ec779b8eSAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS,
11*ec779b8eSAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*ec779b8eSAndroid Build Coastguard Worker// See the License for the specific language governing permissions and
13*ec779b8eSAndroid Build Coastguard Worker// limitations under the License.
14*ec779b8eSAndroid Build Coastguard Worker
15*ec779b8eSAndroid Build Coastguard Workerpackage {
16*ec779b8eSAndroid Build Coastguard Worker    // See: http://go/android-license-faq
17*ec779b8eSAndroid Build Coastguard Worker    // A large-scale-change added 'default_applicable_licenses' to import
18*ec779b8eSAndroid Build Coastguard Worker    // all of the 'license_kinds' from "frameworks_av_license"
19*ec779b8eSAndroid Build Coastguard Worker    // to get the below license kinds:
20*ec779b8eSAndroid Build Coastguard Worker    //   SPDX-license-identifier-Apache-2.0
21*ec779b8eSAndroid Build Coastguard Worker    default_applicable_licenses: ["frameworks_av_license"],
22*ec779b8eSAndroid Build Coastguard Worker}
23*ec779b8eSAndroid Build Coastguard Worker
24*ec779b8eSAndroid Build Coastguard Workercc_defaults {
25*ec779b8eSAndroid Build Coastguard Worker    name: "libmediautils_defaults",
26*ec779b8eSAndroid Build Coastguard Worker    cflags: [
27*ec779b8eSAndroid Build Coastguard Worker        "-Wall",
28*ec779b8eSAndroid Build Coastguard Worker        "-Werror",
29*ec779b8eSAndroid Build Coastguard Worker        "-Wextra",
30*ec779b8eSAndroid Build Coastguard Worker    ],
31*ec779b8eSAndroid Build Coastguard Worker    sanitize: {
32*ec779b8eSAndroid Build Coastguard Worker        cfi: true,
33*ec779b8eSAndroid Build Coastguard Worker        integer_overflow: true,
34*ec779b8eSAndroid Build Coastguard Worker    },
35*ec779b8eSAndroid Build Coastguard Worker    target: {
36*ec779b8eSAndroid Build Coastguard Worker        host: {
37*ec779b8eSAndroid Build Coastguard Worker            sanitize: {
38*ec779b8eSAndroid Build Coastguard Worker                cfi: false,
39*ec779b8eSAndroid Build Coastguard Worker            },
40*ec779b8eSAndroid Build Coastguard Worker        },
41*ec779b8eSAndroid Build Coastguard Worker    },
42*ec779b8eSAndroid Build Coastguard Worker}
43*ec779b8eSAndroid Build Coastguard Worker
44*ec779b8eSAndroid Build Coastguard Workerfilegroup {
45*ec779b8eSAndroid Build Coastguard Worker    name: "libmediautils_core_srcs",
46*ec779b8eSAndroid Build Coastguard Worker    srcs: [
47*ec779b8eSAndroid Build Coastguard Worker        "AImageReaderUtils.cpp",
48*ec779b8eSAndroid Build Coastguard Worker        "BatteryNotifier.cpp",
49*ec779b8eSAndroid Build Coastguard Worker        "ISchedulingPolicyService.cpp",
50*ec779b8eSAndroid Build Coastguard Worker        "Library.cpp",
51*ec779b8eSAndroid Build Coastguard Worker        "MediaUtilsDelayed.cpp",
52*ec779b8eSAndroid Build Coastguard Worker        "MethodStatistics.cpp",
53*ec779b8eSAndroid Build Coastguard Worker        "Process.cpp",
54*ec779b8eSAndroid Build Coastguard Worker        "ProcessInfo.cpp",
55*ec779b8eSAndroid Build Coastguard Worker        "SchedulingPolicyService.cpp",
56*ec779b8eSAndroid Build Coastguard Worker        "ServiceSingleton.cpp",
57*ec779b8eSAndroid Build Coastguard Worker        "ServiceUtilities.cpp",
58*ec779b8eSAndroid Build Coastguard Worker        "ThreadSnapshot.cpp",
59*ec779b8eSAndroid Build Coastguard Worker        "TimeCheck.cpp",
60*ec779b8eSAndroid Build Coastguard Worker        "TimerThread.cpp",
61*ec779b8eSAndroid Build Coastguard Worker    ],
62*ec779b8eSAndroid Build Coastguard Worker}
63*ec779b8eSAndroid Build Coastguard Worker
64*ec779b8eSAndroid Build Coastguard Workercc_library_headers {
65*ec779b8eSAndroid Build Coastguard Worker    name: "libmediautils_headers",
66*ec779b8eSAndroid Build Coastguard Worker    host_supported: true,
67*ec779b8eSAndroid Build Coastguard Worker    vendor_available: true, // required for platform/hardware/interfaces
68*ec779b8eSAndroid Build Coastguard Worker    shared_libs: [
69*ec779b8eSAndroid Build Coastguard Worker        "liblog",
70*ec779b8eSAndroid Build Coastguard Worker    ],
71*ec779b8eSAndroid Build Coastguard Worker    local_include_dirs: ["include"],
72*ec779b8eSAndroid Build Coastguard Worker    export_include_dirs: ["include"],
73*ec779b8eSAndroid Build Coastguard Worker}
74*ec779b8eSAndroid Build Coastguard Worker
75*ec779b8eSAndroid Build Coastguard Worker
76*ec779b8eSAndroid Build Coastguard Workercc_library {
77*ec779b8eSAndroid Build Coastguard Worker    name: "libmediautils",
78*ec779b8eSAndroid Build Coastguard Worker    host_supported: true,
79*ec779b8eSAndroid Build Coastguard Worker    defaults: ["libmediautils_defaults"],
80*ec779b8eSAndroid Build Coastguard Worker    srcs: [
81*ec779b8eSAndroid Build Coastguard Worker        ":libmediautils_core_srcs",
82*ec779b8eSAndroid Build Coastguard Worker    ],
83*ec779b8eSAndroid Build Coastguard Worker    static_libs: [
84*ec779b8eSAndroid Build Coastguard Worker        "libbatterystats_aidl",
85*ec779b8eSAndroid Build Coastguard Worker        "libprocessinfoservice_aidl",
86*ec779b8eSAndroid Build Coastguard Worker    ],
87*ec779b8eSAndroid Build Coastguard Worker    shared_libs: [
88*ec779b8eSAndroid Build Coastguard Worker        "com.android.media.audio-aconfig-cc",
89*ec779b8eSAndroid Build Coastguard Worker        "libaudioclient_aidl_conversion",
90*ec779b8eSAndroid Build Coastguard Worker        "libaudioutils", // for clock.h, Statistics.h
91*ec779b8eSAndroid Build Coastguard Worker        "libbase",
92*ec779b8eSAndroid Build Coastguard Worker        "libbinder",
93*ec779b8eSAndroid Build Coastguard Worker        "libbinder_ndk",
94*ec779b8eSAndroid Build Coastguard Worker        "libcutils",
95*ec779b8eSAndroid Build Coastguard Worker        "libhidlbase",
96*ec779b8eSAndroid Build Coastguard Worker        "liblog",
97*ec779b8eSAndroid Build Coastguard Worker        "libpermission",
98*ec779b8eSAndroid Build Coastguard Worker        "libutils",
99*ec779b8eSAndroid Build Coastguard Worker        "[email protected]",
100*ec779b8eSAndroid Build Coastguard Worker        "[email protected]",
101*ec779b8eSAndroid Build Coastguard Worker        "packagemanager_aidl-cpp",
102*ec779b8eSAndroid Build Coastguard Worker    ],
103*ec779b8eSAndroid Build Coastguard Worker    export_static_lib_headers: [
104*ec779b8eSAndroid Build Coastguard Worker        "libbatterystats_aidl",
105*ec779b8eSAndroid Build Coastguard Worker    ],
106*ec779b8eSAndroid Build Coastguard Worker
107*ec779b8eSAndroid Build Coastguard Worker    logtags: ["EventLogTags.logtags"],
108*ec779b8eSAndroid Build Coastguard Worker
109*ec779b8eSAndroid Build Coastguard Worker    cflags: [
110*ec779b8eSAndroid Build Coastguard Worker        "-Wall",
111*ec779b8eSAndroid Build Coastguard Worker        "-Wextra",
112*ec779b8eSAndroid Build Coastguard Worker        "-Werror",
113*ec779b8eSAndroid Build Coastguard Worker        "-Wthread-safety",
114*ec779b8eSAndroid Build Coastguard Worker    ],
115*ec779b8eSAndroid Build Coastguard Worker
116*ec779b8eSAndroid Build Coastguard Worker    export_shared_lib_headers: [
117*ec779b8eSAndroid Build Coastguard Worker        "libaudioutils",
118*ec779b8eSAndroid Build Coastguard Worker        "libbinder_ndk",
119*ec779b8eSAndroid Build Coastguard Worker        "libpermission",
120*ec779b8eSAndroid Build Coastguard Worker        "packagemanager_aidl-cpp",
121*ec779b8eSAndroid Build Coastguard Worker    ],
122*ec779b8eSAndroid Build Coastguard Worker
123*ec779b8eSAndroid Build Coastguard Worker    required: [
124*ec779b8eSAndroid Build Coastguard Worker        "libmediautils_delayed", // lazy loaded
125*ec779b8eSAndroid Build Coastguard Worker    ],
126*ec779b8eSAndroid Build Coastguard Worker
127*ec779b8eSAndroid Build Coastguard Worker    target: {
128*ec779b8eSAndroid Build Coastguard Worker        android: {
129*ec779b8eSAndroid Build Coastguard Worker            srcs: [
130*ec779b8eSAndroid Build Coastguard Worker                "LimitProcessMemory.cpp",
131*ec779b8eSAndroid Build Coastguard Worker                "MemoryLeakTrackUtil.cpp",
132*ec779b8eSAndroid Build Coastguard Worker            ],
133*ec779b8eSAndroid Build Coastguard Worker            static_libs: [
134*ec779b8eSAndroid Build Coastguard Worker                "libc_malloc_debug_backtrace",
135*ec779b8eSAndroid Build Coastguard Worker            ],
136*ec779b8eSAndroid Build Coastguard Worker            include_dirs: [
137*ec779b8eSAndroid Build Coastguard Worker                // For DEBUGGER_SIGNAL
138*ec779b8eSAndroid Build Coastguard Worker                "system/core/debuggerd/include",
139*ec779b8eSAndroid Build Coastguard Worker            ],
140*ec779b8eSAndroid Build Coastguard Worker            header_libs: [
141*ec779b8eSAndroid Build Coastguard Worker                "bionic_libc_platform_headers",
142*ec779b8eSAndroid Build Coastguard Worker            ],
143*ec779b8eSAndroid Build Coastguard Worker        },
144*ec779b8eSAndroid Build Coastguard Worker    },
145*ec779b8eSAndroid Build Coastguard Worker
146*ec779b8eSAndroid Build Coastguard Worker    local_include_dirs: ["include"],
147*ec779b8eSAndroid Build Coastguard Worker    export_include_dirs: ["include"],
148*ec779b8eSAndroid Build Coastguard Worker}
149*ec779b8eSAndroid Build Coastguard Worker
150*ec779b8eSAndroid Build Coastguard Workercc_library {
151*ec779b8eSAndroid Build Coastguard Worker    name: "libmediautils_delayed", // match with MEDIAUTILS_DELAYED_LIBRARY_NAME
152*ec779b8eSAndroid Build Coastguard Worker    host_supported: true,
153*ec779b8eSAndroid Build Coastguard Worker    defaults: ["libmediautils_defaults"],
154*ec779b8eSAndroid Build Coastguard Worker    srcs: [
155*ec779b8eSAndroid Build Coastguard Worker        "MediaUtilsDelayedLibrary.cpp",
156*ec779b8eSAndroid Build Coastguard Worker    ],
157*ec779b8eSAndroid Build Coastguard Worker    shared_libs: [
158*ec779b8eSAndroid Build Coastguard Worker        "liblog",
159*ec779b8eSAndroid Build Coastguard Worker        "libutils",
160*ec779b8eSAndroid Build Coastguard Worker        "libutilscallstack",
161*ec779b8eSAndroid Build Coastguard Worker    ],
162*ec779b8eSAndroid Build Coastguard Worker}
163*ec779b8eSAndroid Build Coastguard Worker
164*ec779b8eSAndroid Build Coastguard Workercc_library {
165*ec779b8eSAndroid Build Coastguard Worker    name: "libmediautils_vendor",
166*ec779b8eSAndroid Build Coastguard Worker    defaults: ["libmediautils_defaults"],
167*ec779b8eSAndroid Build Coastguard Worker    vendor_available: true, // required for platform/hardware/interfaces
168*ec779b8eSAndroid Build Coastguard Worker    srcs: [
169*ec779b8eSAndroid Build Coastguard Worker        "MemoryLeakTrackUtil.cpp",
170*ec779b8eSAndroid Build Coastguard Worker    ],
171*ec779b8eSAndroid Build Coastguard Worker
172*ec779b8eSAndroid Build Coastguard Worker    shared_libs: [
173*ec779b8eSAndroid Build Coastguard Worker        "liblog",
174*ec779b8eSAndroid Build Coastguard Worker        "libutils",
175*ec779b8eSAndroid Build Coastguard Worker    ],
176*ec779b8eSAndroid Build Coastguard Worker
177*ec779b8eSAndroid Build Coastguard Worker    static_libs: [
178*ec779b8eSAndroid Build Coastguard Worker        "libc_malloc_debug_backtrace",
179*ec779b8eSAndroid Build Coastguard Worker    ],
180*ec779b8eSAndroid Build Coastguard Worker
181*ec779b8eSAndroid Build Coastguard Worker    header_libs: [
182*ec779b8eSAndroid Build Coastguard Worker        "bionic_libc_platform_headers",
183*ec779b8eSAndroid Build Coastguard Worker    ],
184*ec779b8eSAndroid Build Coastguard Worker
185*ec779b8eSAndroid Build Coastguard Worker    local_include_dirs: ["include"],
186*ec779b8eSAndroid Build Coastguard Worker    export_include_dirs: ["include"],
187*ec779b8eSAndroid Build Coastguard Worker}
188*ec779b8eSAndroid Build Coastguard Worker
189*ec779b8eSAndroid Build Coastguard Workercc_library_headers {
190*ec779b8eSAndroid Build Coastguard Worker    name: "mediautils_headers",
191*ec779b8eSAndroid Build Coastguard Worker    export_include_dirs: ["include", "."],
192*ec779b8eSAndroid Build Coastguard Worker}
193