blob: 129d6163010e363b55c0f916ddd326a5c4a4e860 [file] [log] [blame]
Dan Albert2a8d9c22016-09-23 15:55:49 -07001// Copyright (C) 2016 The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15// The headers module is in frameworks/native/Android.bp.
Bob Badour8a6a2bc2021-02-12 17:07:05 -080016package {
17 // See: http://go/android-license-faq
18 // A large-scale-change added 'default_applicable_licenses' to import
19 // all of the 'license_kinds' from "frameworks_base_license"
20 // to get the below license kinds:
21 // SPDX-license-identifier-Apache-2.0
22 default_applicable_licenses: ["frameworks_base_license"],
23}
24
Dan Albert2a8d9c22016-09-23 15:55:49 -070025ndk_library {
Dan Willemsen3dcf0312017-04-07 15:48:45 -070026 name: "libandroid",
Dan Albert2a8d9c22016-09-23 15:55:49 -070027 symbol_file: "libandroid.map.txt",
28 first_version: "9",
Dan Albert98e462d2017-01-05 16:01:14 -080029 unversioned_until: "current",
Dan Albert2a8d9c22016-09-23 15:55:49 -070030}
Colin Cross3f8fd402017-04-20 12:20:20 -070031
32cc_defaults {
33 name: "libandroid_defaults",
Bart Van Asscheb66923a2022-11-21 15:49:17 -080034 cpp_std: "gnu++20",
Colin Cross3f8fd402017-04-20 12:20:20 -070035 cflags: [
36 "-Wall",
37 "-Werror",
Siarhei Vishniakoucf075282020-01-15 17:35:58 -080038 "-Wextra",
Colin Cross3f8fd402017-04-20 12:20:20 -070039 "-Wunused",
40 "-Wunreachable-code",
Matt Buckley053a1df2024-06-07 02:37:59 +000041 "-Wthread-safety",
Colin Cross3f8fd402017-04-20 12:20:20 -070042 ],
43}
44
45cc_library_shared {
46 name: "libandroid",
Matt Buckley423c1b32023-06-28 19:13:42 +000047 defaults: [
48 "libandroid_defaults",
49 "android.hardware.power-ndk_shared",
50 ],
Colin Cross3f8fd402017-04-20 12:20:20 -070051
52 srcs: [
Chong Zhang8af87922020-11-11 14:46:30 -080053 "activity_manager.cpp",
Colin Cross3f8fd402017-04-20 12:20:20 -070054 "asset_manager.cpp",
Chavi Weingartend57801e2024-03-04 22:49:03 +000055 "surface_control_input_receiver.cpp",
Alec Mouricf3ad872020-04-27 22:36:17 -070056 "choreographer.cpp",
Colin Cross3f8fd402017-04-20 12:20:20 -070057 "configuration.cpp",
Sally Qi176e3792024-11-04 11:45:23 -080058 "display_luts.cpp",
Matt Gilbrideae83ac22024-09-24 22:48:38 +000059 "dynamic_instrumentation_manager.cpp",
Colin Cross3f8fd402017-04-20 12:20:20 -070060 "hardware_buffer_jni.cpp",
61 "input.cpp",
Chavi Weingartenb94da302024-02-29 16:33:27 +000062 "input_transfer_token.cpp",
Colin Cross3f8fd402017-04-20 12:20:20 -070063 "looper.cpp",
64 "native_activity.cpp",
65 "native_window_jni.cpp",
66 "net.c",
67 "obb.cpp",
Chong Zhang06dbe5b2020-11-02 16:02:07 -080068 "permission_manager.cpp",
Bo Liu44267722021-07-16 17:03:20 -040069 "performance_hint.cpp",
Colin Cross3f8fd402017-04-20 12:20:20 -070070 "sensor.cpp",
71 "sharedmem.cpp",
72 "storage_manager.cpp",
Marissa Wallf6a73fa2018-12-10 10:41:08 -080073 "surface_control.cpp",
Alec Mouricf3ad872020-04-27 22:36:17 -070074 "surface_texture.cpp",
Seigo Nonaka50692ca2018-08-31 12:27:15 -070075 "system_fonts.cpp",
Xiang Wang0ab9e0a2024-11-06 15:25:06 -080076 "system_health.cpp",
Colin Cross3f8fd402017-04-20 12:20:20 -070077 "trace.cpp",
Colin Crossb16eb692021-04-22 17:22:26 -070078 "thermal.cpp",
Colin Cross3f8fd402017-04-20 12:20:20 -070079 ],
80
81 shared_libs: [
82 "liblog",
Marissa Wall1be5a102019-01-18 16:14:04 -080083 "libhidlbase",
Colin Cross3f8fd402017-04-20 12:20:20 -070084 "libcutils",
85 "libandroidfw",
86 "libinput",
87 "libutils",
88 "libbinder",
Matt Buckley58977722024-03-11 23:32:09 +000089 "libbinder_ndk",
Colin Cross3f8fd402017-04-20 12:20:20 -070090 "libui",
91 "libgui",
Colin Crossb16eb692021-04-22 17:22:26 -070092 "libharfbuzz_ng", // Only for including hb.h via minikin
Colin Cross3f8fd402017-04-20 12:20:20 -070093 "libsensor",
Steven Moreland8e6aa662021-04-05 23:19:26 +000094 "libactivitymanager_aidl",
Colin Cross3f8fd402017-04-20 12:20:20 -070095 "libandroid_runtime",
Seigo Nonaka75b841b2018-10-30 11:39:49 -070096 "libminikin",
Colin Cross3f8fd402017-04-20 12:20:20 -070097 "libnetd_client",
Stan Iliev564ca3e2018-09-04 22:00:00 +000098 "libhwui",
Seigo Nonaka50692ca2018-08-31 12:27:15 -070099 "libxml2",
Stan Iliev5af5d302020-01-13 11:29:18 -0500100 "libEGL",
101 "libGLESv2",
Chris Ye48dbcaa2020-02-10 13:29:01 -0800102 "libpowermanager",
Marissa Wall1be5a102019-01-18 16:14:04 -0800103 "android.hardware.configstore@1.0",
104 "android.hardware.configstore-utils",
Matt Buckley709a2dc2024-02-28 17:09:04 +0000105 "android.os.flags-aconfig-cc",
Matt Gilbrideae83ac22024-09-24 22:48:38 +0000106 "dynamic_instrumentation_manager_aidl-cpp",
Alec Mouricf3ad872020-04-27 22:36:17 -0700107 "libnativedisplay",
Matt Buckley58977722024-03-11 23:32:09 +0000108 "libfmq",
Colin Cross3f8fd402017-04-20 12:20:20 -0700109 ],
110
111 static_libs: [
112 "libstorage",
113 "libarect",
114 ],
115
Colin Crossb16eb692021-04-22 17:22:26 -0700116 header_libs: [
117 "libhwui_internal_headers",
118 "libandroid_headers_private",
119 ],
Derek Sollenbergeree538a32020-02-19 11:51:17 -0500120
Alec Mouricf3ad872020-04-27 22:36:17 -0700121 whole_static_libs: ["libnativewindow"],
Colin Cross3f8fd402017-04-20 12:20:20 -0700122
123 export_static_lib_headers: ["libarect"],
124
125 include_dirs: ["bionic/libc/dns/include"],
dimitry499745f2018-11-08 15:07:32 +0100126
Colin Crossb16eb692021-04-22 17:22:26 -0700127 local_include_dirs: ["include_platform"],
Chong Zhang8af87922020-11-11 14:46:30 -0800128
Colin Crossb16eb692021-04-22 17:22:26 -0700129 export_include_dirs: ["include_platform"],
Chong Zhang8af87922020-11-11 14:46:30 -0800130
dimitry499745f2018-11-08 15:07:32 +0100131 version_script: "libandroid.map.txt",
Dongwon Kangb61819e2019-01-09 16:01:01 -0800132 stubs: {
133 symbol_file: "libandroid.map.txt",
Colin Crossb16eb692021-04-22 17:22:26 -0700134 versions: [
135 "29",
136 "31",
137 ],
Dongwon Kangb61819e2019-01-09 16:01:01 -0800138 },
Colin Cross3f8fd402017-04-20 12:20:20 -0700139}
140
141// Network library.
142cc_library_shared {
143 name: "libandroid_net",
144 defaults: ["libandroid_defaults"],
Colin Cross4ff7d4e2021-04-22 16:44:24 -0700145 llndk: {
146 symbol_file: "libandroid_net.map.txt",
147 unversioned: true,
148 override_export_include_dirs: ["include"],
149 },
Colin Cross3f8fd402017-04-20 12:20:20 -0700150 srcs: ["net.c"],
151
152 shared_libs: ["libnetd_client"],
153
154 include_dirs: ["bionic/libc/dns/include"],
155}
Lorenzo Colittid15f0af2017-05-17 16:50:17 +0900156
atrost87488352019-10-10 19:27:31 +0100157// Aidl library for platform compat.
158cc_library_shared {
159 name: "lib-platform-compat-native-api",
160 cflags: [
Colin Crossb16eb692021-04-22 17:22:26 -0700161 "-Wall",
162 "-Werror",
163 "-Wno-missing-field-initializers",
164 "-Wno-unused-variable",
165 "-Wunused-parameter",
166 ],
atrost87488352019-10-10 19:27:31 +0100167 shared_libs: [
168 "libbinder",
Colin Crossb16eb692021-04-22 17:22:26 -0700169 "libutils",
atrost87488352019-10-10 19:27:31 +0100170 ],
171 aidl: {
172 local_include_dirs: ["aidl"],
173 export_aidl_headers: true,
174 },
175 srcs: [
Colin Crossb16eb692021-04-22 17:22:26 -0700176 ":platform-compat-native-aidl",
atrost87488352019-10-10 19:27:31 +0100177 ],
178 export_include_dirs: ["aidl"],
179}
180
181filegroup {
182 name: "platform-compat-native-aidl",
183 srcs: [
184 "aidl/com/android/internal/compat/IPlatformCompatNative.aidl",
185 ],
186 path: "aidl",
Alec Mouri440c5ac2019-10-22 10:30:31 -0700187}