blob: 70d76fa256e275b37e8c475d8dffac54d1fa4978 [file] [log] [blame]
Dan Willemsenf51bf922016-07-12 22:29:13 -07001// Copyright 2006 The Android Open Source Project
2
Bob Badourd7984cc2021-02-12 20:51:13 -08003package {
4 default_applicable_licenses: ["hardware_libhardware_license"],
5}
6
7// Added automatically by a large-scale-change that took the approach of
8// 'apply every license found to every target'. While this makes sure we respect
9// every license restriction, it may not be entirely correct.
10//
11// e.g. GPL in an MIT project might only apply to the contrib/ directory.
12//
13// Please consider splitting the single license below into multiple licenses,
14// taking care not to lose any license_kind information, and overriding the
15// default license using the 'licenses: [...]' property on targets as needed.
16//
17// For unused files, consider creating a 'fileGroup' with "//visibility:private"
18// to attach the license to, and including a comment whether the files may be
19// used in the current project.
20// See: http://go/android-license-faq
21license {
22 name: "hardware_libhardware_license",
23 visibility: [":__subpackages__"],
24 license_kinds: [
25 "SPDX-license-identifier-Apache-2.0",
26 "SPDX-license-identifier-BSD",
27 ],
28 license_text: [
29 "NOTICE",
30 ],
31}
32
Vijay Venkatraman2ca3ee02017-04-04 14:25:43 -070033cc_library_headers {
34 name: "libhardware_headers",
Steven Morelandd783cab2019-01-14 17:40:45 -080035
Steven Morelandd2487902017-04-17 16:56:41 -070036 header_libs: [
37 "libaudio_system_headers",
38 "libsystem_headers",
Jiyong Park9bd43bd2017-06-26 13:28:51 +090039 "libcutils_headers",
Yichun Lif8028b32023-05-19 00:33:13 +000040 "libbluetooth-types-header",
Steven Morelandd2487902017-04-17 16:56:41 -070041 ],
42 export_header_lib_headers: [
43 "libaudio_system_headers",
Jiyong Park9bd43bd2017-06-26 13:28:51 +090044 "libsystem_headers",
45 "libcutils_headers",
Yichun Lif8028b32023-05-19 00:33:13 +000046 "libbluetooth-types-header",
Steven Morelandd2487902017-04-17 16:56:41 -070047 ],
Steven Morelandd3933522017-04-13 19:14:57 -070048
Jerry Zhang551e1f72018-06-20 17:04:52 -070049 recovery_available: true,
Dan Willemsen5466d2e2017-04-07 14:15:17 -070050 vendor_available: true,
Victor Khimenkoe22d90c2020-06-30 22:54:24 +020051 // TODO(b/153609531): remove when no longer needed.
52 native_bridge_supported: true,
Steven Morelandd783cab2019-01-14 17:40:45 -080053
54 // There are three include directories currently:
55 // - include: this directory is the original location of libhardware headers. It is globally
56 // available (even if you do not depend on libhardware). Many locations also use
57 // LOCAL_C_INCLUDES or include_dirs to access these from a global namespace. These processes
58 // should replace this dependency with a direct dependency on libhardware(_headers)?.
59 // - include_all: this directory is for system and vendor include files. Gradually, the number of
60 // files here should be reduced to 0 by moving them to vendor as old code is phased out.
61 // - include_vendor: this directory is the current designated resting place for these headers.
62 // They are kept around to try to help insure existing codebases can function.
63 export_include_dirs: ["include_all"],
64
Jerry Zhang551e1f72018-06-20 17:04:52 -070065 target: {
66 recovery: {
67 exclude_header_libs: [
68 "libaudio_system_headers",
Yichun Lif8028b32023-05-19 00:33:13 +000069 "libbluetooth-types-header",
Jerry Zhang551e1f72018-06-20 17:04:52 -070070 ],
71 },
Oystein Eftevaag2007fd12023-02-01 23:53:41 +000072 windows: {
73 enabled: true,
74 },
Steven Morelandd783cab2019-01-14 17:40:45 -080075 vendor: {
76 override_export_include_dirs: [
77 "include_all",
78 "include_vendor",
79 ],
80 },
Jerry Zhang551e1f72018-06-20 17:04:52 -070081 },
Roopa Sattirajuda4e70b2021-12-22 18:05:30 -080082 apex_available: [
83 "//apex_available:platform",
Yichun Lif8028b32023-05-19 00:33:13 +000084 "com.android.btservices",
Mikhail Naganovc7bb2112023-04-28 15:47:54 -070085 "com.android.media",
Ray Essick0a0dd5f2022-02-09 10:14:29 -080086 "com.android.media.swcodec",
Roopa Sattirajuda4e70b2021-12-22 18:05:30 -080087 ],
Jooyung Hanb1e43a92020-04-16 18:48:32 +090088 min_sdk_version: "29",
A. Cody Schuffelene8ee2fc2020-04-29 14:46:38 -070089 host_supported: true,
Jerry Zhang551e1f72018-06-20 17:04:52 -070090
Vijay Venkatraman2ca3ee02017-04-04 14:25:43 -070091}
92
Dan Willemsenf51bf922016-07-12 22:29:13 -070093cc_library_shared {
94 name: "libhardware",
95
96 srcs: ["hardware.c"],
97 shared_libs: [
98 "libcutils",
99 "liblog",
Jiyong Park375f1a42017-05-11 02:15:07 +0900100 "libvndksupport",
Dan Willemsenf51bf922016-07-12 22:29:13 -0700101 ],
Chih-Hung Hsieh23594232017-09-29 15:41:15 -0700102 cflags: [
103 "-DQEMU_HARDWARE",
104 "-Wall",
105 "-Werror",
106 ],
Steven Morelandd3933522017-04-13 19:14:57 -0700107
108 header_libs: ["libhardware_headers"],
109 export_header_lib_headers: ["libhardware_headers"],
110
Devin Moore690e02a2022-11-14 19:13:56 +0000111 host_supported: true,
Jerry Zhang551e1f72018-06-20 17:04:52 -0700112 recovery_available: true,
Dan Willemsen5466d2e2017-04-07 14:15:17 -0700113 vendor_available: true,
Justin Yund49aeee2017-07-24 15:19:45 +0900114 vndk: {
115 enabled: true,
116 support_system_process: true,
117 },
Jerry Zhang551e1f72018-06-20 17:04:52 -0700118 target: {
Devin Moore690e02a2022-11-14 19:13:56 +0000119 host: {
120 exclude_shared_libs: ["libvndksupport"],
121 },
Jerry Zhang551e1f72018-06-20 17:04:52 -0700122 recovery: {
123 exclude_shared_libs: ["libvndksupport"],
124 },
125 },
Jooyung Hanb1e43a92020-04-16 18:48:32 +0900126 min_sdk_version: "29",
Dan Willemsenf51bf922016-07-12 22:29:13 -0700127}