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 36 header_libs: [ 37 "libaudio_system_headers", 38 "libsystem_headers", 39 "libcutils_headers", 40 ], 41 export_header_lib_headers: [ 42 "libaudio_system_headers", 43 "libsystem_headers", 44 "libcutils_headers", 45 ], 46 47 recovery_available: true, 48 vendor_available: true, 49 // TODO(b/153609531): remove when no longer needed. 50 native_bridge_supported: true, 51 52 // There are three include directories currently: 53 // - include: this directory is the original location of libhardware headers. It is globally 54 // available (even if you do not depend on libhardware). Many locations also use 55 // LOCAL_C_INCLUDES or include_dirs to access these from a global namespace. These processes 56 // should replace this dependency with a direct dependency on libhardware(_headers)?. 57 // - include_all: this directory is for system and vendor include files. Gradually, the number of 58 // files here should be reduced to 0 by moving them to vendor as old code is phased out. 59 // - include_vendor: this directory is the current designated resting place for these headers. 60 // They are kept around to try to help insure existing codebases can function. 61 export_include_dirs: ["include_all"], 62 63 target: { 64 recovery: { 65 exclude_header_libs: [ 66 "libaudio_system_headers", 67 ], 68 }, 69 windows: { 70 enabled: true, 71 }, 72 vendor: { 73 override_export_include_dirs: [ 74 "include_all", 75 "include_vendor", 76 ], 77 }, 78 host: { 79 export_include_dirs: [ 80 "include_vendor", // for tests 81 ], 82 }, 83 }, 84 apex_available: [ 85 "//apex_available:platform", 86 "com.android.bt", 87 "com.android.media", 88 "com.android.media.swcodec", 89 ], 90 min_sdk_version: "29", 91 host_supported: true, 92 93} 94 95cc_library_shared { 96 name: "libhardware", 97 98 srcs: ["hardware.c"], 99 shared_libs: [ 100 "libapexsupport", 101 "libcutils", 102 "liblog", 103 "libvndksupport", 104 ], 105 cflags: [ 106 "-DQEMU_HARDWARE", 107 "-Wall", 108 "-Werror", 109 ], 110 111 header_libs: ["libhardware_headers"], 112 export_header_lib_headers: ["libhardware_headers"], 113 114 host_supported: true, 115 recovery_available: true, 116 vendor_available: true, 117 double_loadable: true, 118 target: { 119 host: { 120 exclude_shared_libs: [ 121 "libapexsupport", 122 "libvndksupport", 123 ], 124 }, 125 recovery: { 126 exclude_shared_libs: [ 127 "libapexsupport", 128 "libvndksupport", 129 ], 130 }, 131 non_apex: { 132 exclude_shared_libs: [ 133 "libapexsupport", 134 ], 135 }, 136 }, 137 min_sdk_version: "29", 138} 139 140dirgroup { 141 name: "trusty_dirgroup_hardware_libhardware", 142 dirs: ["."], 143 visibility: ["//trusty/vendor/google/aosp/scripts"], 144} 145