1// Copyright 2006 The Android Open Source Project
2
3package {
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
33cc_library_headers {
34    name: "libhardware_headers",
35    header_libs: [
36        "libaudio_system_headers",
37        "libsystem_headers",
38        "libcutils_headers",
39        "libbluetooth-types-header",
40    ],
41    export_header_lib_headers: [
42        "libaudio_system_headers",
43        "libsystem_headers",
44        "libcutils_headers",
45        "libbluetooth-types-header",
46    ],
47
48    export_include_dirs: ["include"],
49    recovery_available: true,
50    vendor_available: true,
51    // TODO(b/153609531): remove when no longer needed.
52    native_bridge_supported: true,
53    target: {
54        recovery: {
55            exclude_header_libs: [
56                "libaudio_system_headers",
57                "libbluetooth-types-header",
58            ],
59        },
60    },
61    min_sdk_version: "29",
62    host_supported: true,
63
64}
65
66cc_library_shared {
67    name: "libhardware",
68
69    srcs: ["hardware.c"],
70    shared_libs: [
71        "libcutils",
72        "liblog",
73        "libdl",
74        "libvndksupport",
75    ],
76    cflags: [
77        "-DQEMU_HARDWARE",
78        "-Wall",
79        "-Werror",
80    ],
81
82    header_libs: ["libhardware_headers"],
83    export_header_lib_headers: ["libhardware_headers"],
84
85    recovery_available: true,
86    vendor_available: true,
87    vndk: {
88        enabled: true,
89        support_system_process: true,
90    },
91    target: {
92        recovery: {
93            exclude_shared_libs: ["libvndksupport"],
94        },
95    },
96    min_sdk_version: "29",
97}
98