1*38e8c45fSAndroid Build Coastguard Worker// Copyright (C) 2009 The Android Open Source Project 2*38e8c45fSAndroid Build Coastguard Worker// 3*38e8c45fSAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*38e8c45fSAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*38e8c45fSAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*38e8c45fSAndroid Build Coastguard Worker// 7*38e8c45fSAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*38e8c45fSAndroid Build Coastguard Worker// 9*38e8c45fSAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*38e8c45fSAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*38e8c45fSAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*38e8c45fSAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*38e8c45fSAndroid Build Coastguard Worker// limitations under the License. 14*38e8c45fSAndroid Build Coastguard Worker 15*38e8c45fSAndroid Build Coastguard Workerpackage { 16*38e8c45fSAndroid Build Coastguard Worker // See: http://go/android-license-faq 17*38e8c45fSAndroid Build Coastguard Worker // A large-scale-change added 'default_applicable_licenses' to import 18*38e8c45fSAndroid Build Coastguard Worker // all of the 'license_kinds' from "frameworks_native_license" 19*38e8c45fSAndroid Build Coastguard Worker // to get the below license kinds: 20*38e8c45fSAndroid Build Coastguard Worker // SPDX-license-identifier-Apache-2.0 21*38e8c45fSAndroid Build Coastguard Worker default_applicable_licenses: ["frameworks_native_license"], 22*38e8c45fSAndroid Build Coastguard Worker default_team: "trendy_team_virtualization", 23*38e8c45fSAndroid Build Coastguard Worker} 24*38e8c45fSAndroid Build Coastguard Worker 25*38e8c45fSAndroid Build Coastguard Workercc_library_headers { 26*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_headers_base", 27*38e8c45fSAndroid Build Coastguard Worker export_include_dirs: ["include"], 28*38e8c45fSAndroid Build Coastguard Worker vendor_available: true, 29*38e8c45fSAndroid Build Coastguard Worker recovery_available: true, 30*38e8c45fSAndroid Build Coastguard Worker host_supported: true, 31*38e8c45fSAndroid Build Coastguard Worker native_bridge_supported: true, 32*38e8c45fSAndroid Build Coastguard Worker cmake_snapshot_supported: true, 33*38e8c45fSAndroid Build Coastguard Worker 34*38e8c45fSAndroid Build Coastguard Worker header_libs: [ 35*38e8c45fSAndroid Build Coastguard Worker "libbinder_headers_platform_shared", 36*38e8c45fSAndroid Build Coastguard Worker ], 37*38e8c45fSAndroid Build Coastguard Worker export_header_lib_headers: [ 38*38e8c45fSAndroid Build Coastguard Worker "libbinder_headers_platform_shared", 39*38e8c45fSAndroid Build Coastguard Worker ], 40*38e8c45fSAndroid Build Coastguard Worker apex_available: [ 41*38e8c45fSAndroid Build Coastguard Worker "//apex_available:platform", 42*38e8c45fSAndroid Build Coastguard Worker "com.android.media", 43*38e8c45fSAndroid Build Coastguard Worker "com.android.media.swcodec", 44*38e8c45fSAndroid Build Coastguard Worker ], 45*38e8c45fSAndroid Build Coastguard Worker min_sdk_version: "29", 46*38e8c45fSAndroid Build Coastguard Worker target: { 47*38e8c45fSAndroid Build Coastguard Worker darwin: { 48*38e8c45fSAndroid Build Coastguard Worker enabled: false, 49*38e8c45fSAndroid Build Coastguard Worker }, 50*38e8c45fSAndroid Build Coastguard Worker }, 51*38e8c45fSAndroid Build Coastguard Worker visibility: [ 52*38e8c45fSAndroid Build Coastguard Worker ":__subpackages__", 53*38e8c45fSAndroid Build Coastguard Worker ], 54*38e8c45fSAndroid Build Coastguard Worker} 55*38e8c45fSAndroid Build Coastguard Worker 56*38e8c45fSAndroid Build Coastguard Workercc_library_headers { 57*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_headers", 58*38e8c45fSAndroid Build Coastguard Worker vendor_available: true, 59*38e8c45fSAndroid Build Coastguard Worker recovery_available: true, 60*38e8c45fSAndroid Build Coastguard Worker host_supported: true, 61*38e8c45fSAndroid Build Coastguard Worker native_bridge_supported: true, 62*38e8c45fSAndroid Build Coastguard Worker 63*38e8c45fSAndroid Build Coastguard Worker header_libs: [ 64*38e8c45fSAndroid Build Coastguard Worker "libbase_headers", 65*38e8c45fSAndroid Build Coastguard Worker "libbinder_headers_base", 66*38e8c45fSAndroid Build Coastguard Worker "libcutils_headers", 67*38e8c45fSAndroid Build Coastguard Worker "libutils_headers", 68*38e8c45fSAndroid Build Coastguard Worker ], 69*38e8c45fSAndroid Build Coastguard Worker export_header_lib_headers: [ 70*38e8c45fSAndroid Build Coastguard Worker "libbase_headers", 71*38e8c45fSAndroid Build Coastguard Worker "libbinder_headers_base", 72*38e8c45fSAndroid Build Coastguard Worker "libcutils_headers", 73*38e8c45fSAndroid Build Coastguard Worker "libutils_headers", 74*38e8c45fSAndroid Build Coastguard Worker ], 75*38e8c45fSAndroid Build Coastguard Worker apex_available: [ 76*38e8c45fSAndroid Build Coastguard Worker "//apex_available:platform", 77*38e8c45fSAndroid Build Coastguard Worker "com.android.media", 78*38e8c45fSAndroid Build Coastguard Worker "com.android.media.swcodec", 79*38e8c45fSAndroid Build Coastguard Worker ], 80*38e8c45fSAndroid Build Coastguard Worker min_sdk_version: "29", 81*38e8c45fSAndroid Build Coastguard Worker target: { 82*38e8c45fSAndroid Build Coastguard Worker darwin: { 83*38e8c45fSAndroid Build Coastguard Worker enabled: false, 84*38e8c45fSAndroid Build Coastguard Worker }, 85*38e8c45fSAndroid Build Coastguard Worker }, 86*38e8c45fSAndroid Build Coastguard Worker} 87*38e8c45fSAndroid Build Coastguard Worker 88*38e8c45fSAndroid Build Coastguard Workercc_cmake_snapshot { 89*38e8c45fSAndroid Build Coastguard Worker name: "binder_sdk", 90*38e8c45fSAndroid Build Coastguard Worker dist: { 91*38e8c45fSAndroid Build Coastguard Worker targets: ["binder_sdk"], 92*38e8c45fSAndroid Build Coastguard Worker dest: "binder_sdk.zip", 93*38e8c45fSAndroid Build Coastguard Worker }, 94*38e8c45fSAndroid Build Coastguard Worker 95*38e8c45fSAndroid Build Coastguard Worker modules_host: [ 96*38e8c45fSAndroid Build Coastguard Worker "libbinder_sdk", 97*38e8c45fSAndroid Build Coastguard Worker "libbinder_sdk_single_threaded", 98*38e8c45fSAndroid Build Coastguard Worker "libbinder_ndk_sdk", 99*38e8c45fSAndroid Build Coastguard Worker "googletest_cmake", 100*38e8c45fSAndroid Build Coastguard Worker 101*38e8c45fSAndroid Build Coastguard Worker "binderRpcTestNoKernel", 102*38e8c45fSAndroid Build Coastguard Worker "binderRpcTestSingleThreadedNoKernel", 103*38e8c45fSAndroid Build Coastguard Worker "binderRpcWireProtocolTest", 104*38e8c45fSAndroid Build Coastguard Worker ], 105*38e8c45fSAndroid Build Coastguard Worker prebuilts: [ 106*38e8c45fSAndroid Build Coastguard Worker // to enable arm64 host support, build with musl - e.g. on aosp_cf_arm64_phone 107*38e8c45fSAndroid Build Coastguard Worker "aidl", 108*38e8c45fSAndroid Build Coastguard Worker ], 109*38e8c45fSAndroid Build Coastguard Worker include_sources: true, 110*38e8c45fSAndroid Build Coastguard Worker cflags: [ 111*38e8c45fSAndroid Build Coastguard Worker "-DNDEBUG", 112*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_ENABLE_LIBLOG_ASSERT", 113*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_DISABLE_NATIVE_HANDLE", 114*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_DISABLE_BLOB", 115*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_NO_LIBBASE", 116*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_NO_KERNEL_IPC_TESTING", 117*38e8c45fSAndroid Build Coastguard Worker 118*38e8c45fSAndroid Build Coastguard Worker // from Soong's global.go commonGlobalCflags and noOverrideGlobalCflags 119*38e8c45fSAndroid Build Coastguard Worker "-Wno-c99-designator", 120*38e8c45fSAndroid Build Coastguard Worker "-Wno-missing-field-initializers", 121*38e8c45fSAndroid Build Coastguard Worker 122*38e8c45fSAndroid Build Coastguard Worker // warnings that only pop up on gcc 123*38e8c45fSAndroid Build Coastguard Worker "-Wno-unknown-pragmas", // "pragma clang" 124*38e8c45fSAndroid Build Coastguard Worker "-Wno-attributes", // attributes on compound-statements 125*38e8c45fSAndroid Build Coastguard Worker "-Wno-psabi", // reminders about old ABI changes 126*38e8c45fSAndroid Build Coastguard Worker ], 127*38e8c45fSAndroid Build Coastguard Worker cflags_ignored: [ 128*38e8c45fSAndroid Build Coastguard Worker // gcc requires all header constexprs to be used in all dependent compilatinon units 129*38e8c45fSAndroid Build Coastguard Worker "-Wunused-const-variable", 130*38e8c45fSAndroid Build Coastguard Worker ], 131*38e8c45fSAndroid Build Coastguard Worker library_mapping: [ 132*38e8c45fSAndroid Build Coastguard Worker { 133*38e8c45fSAndroid Build Coastguard Worker android_name: "libssl", 134*38e8c45fSAndroid Build Coastguard Worker mapped_name: "ssl", 135*38e8c45fSAndroid Build Coastguard Worker package_pregenerated: "external/boringssl", 136*38e8c45fSAndroid Build Coastguard Worker }, 137*38e8c45fSAndroid Build Coastguard Worker { 138*38e8c45fSAndroid Build Coastguard Worker android_name: "libcrypto", 139*38e8c45fSAndroid Build Coastguard Worker mapped_name: "crypto", 140*38e8c45fSAndroid Build Coastguard Worker package_pregenerated: "external/boringssl", 141*38e8c45fSAndroid Build Coastguard Worker }, 142*38e8c45fSAndroid Build Coastguard Worker { 143*38e8c45fSAndroid Build Coastguard Worker android_name: "libgtest", 144*38e8c45fSAndroid Build Coastguard Worker mapped_name: "GTest::gtest", 145*38e8c45fSAndroid Build Coastguard Worker package_pregenerated: "external/googletest", 146*38e8c45fSAndroid Build Coastguard Worker }, 147*38e8c45fSAndroid Build Coastguard Worker { 148*38e8c45fSAndroid Build Coastguard Worker android_name: "libgtest_main", 149*38e8c45fSAndroid Build Coastguard Worker mapped_name: "GTest::gtest_main", 150*38e8c45fSAndroid Build Coastguard Worker package_pregenerated: "external/googletest", 151*38e8c45fSAndroid Build Coastguard Worker }, 152*38e8c45fSAndroid Build Coastguard Worker { 153*38e8c45fSAndroid Build Coastguard Worker android_name: "googletest_cmake", 154*38e8c45fSAndroid Build Coastguard Worker package_pregenerated: "external/googletest", 155*38e8c45fSAndroid Build Coastguard Worker }, 156*38e8c45fSAndroid Build Coastguard Worker 157*38e8c45fSAndroid Build Coastguard Worker // use libbinder_sdk and friends instead of full Android's libbinder 158*38e8c45fSAndroid Build Coastguard Worker { 159*38e8c45fSAndroid Build Coastguard Worker android_name: "libbinder_rpc_no_kernel", 160*38e8c45fSAndroid Build Coastguard Worker mapped_name: "android::libbinder_sdk", 161*38e8c45fSAndroid Build Coastguard Worker }, 162*38e8c45fSAndroid Build Coastguard Worker { 163*38e8c45fSAndroid Build Coastguard Worker android_name: "libbinder_rpc_single_threaded_no_kernel", 164*38e8c45fSAndroid Build Coastguard Worker mapped_name: "android::libbinder_sdk_single_threaded", 165*38e8c45fSAndroid Build Coastguard Worker }, 166*38e8c45fSAndroid Build Coastguard Worker { 167*38e8c45fSAndroid Build Coastguard Worker android_name: "libbinder_headers", 168*38e8c45fSAndroid Build Coastguard Worker mapped_name: "android::libbinder_headers_base", 169*38e8c45fSAndroid Build Coastguard Worker }, 170*38e8c45fSAndroid Build Coastguard Worker { 171*38e8c45fSAndroid Build Coastguard Worker android_name: "libbinder", 172*38e8c45fSAndroid Build Coastguard Worker mapped_name: "android::libbinder_sdk", 173*38e8c45fSAndroid Build Coastguard Worker }, 174*38e8c45fSAndroid Build Coastguard Worker { 175*38e8c45fSAndroid Build Coastguard Worker android_name: "libbinder_ndk", 176*38e8c45fSAndroid Build Coastguard Worker mapped_name: "android::libbinder_ndk_sdk", 177*38e8c45fSAndroid Build Coastguard Worker }, 178*38e8c45fSAndroid Build Coastguard Worker { 179*38e8c45fSAndroid Build Coastguard Worker android_name: "liblog", 180*38e8c45fSAndroid Build Coastguard Worker mapped_name: "android::liblog_stub", 181*38e8c45fSAndroid Build Coastguard Worker }, 182*38e8c45fSAndroid Build Coastguard Worker 183*38e8c45fSAndroid Build Coastguard Worker // explicitly included by Binder tests, but not needed outside of Android 184*38e8c45fSAndroid Build Coastguard Worker { 185*38e8c45fSAndroid Build Coastguard Worker android_name: "libbase", 186*38e8c45fSAndroid Build Coastguard Worker }, 187*38e8c45fSAndroid Build Coastguard Worker { 188*38e8c45fSAndroid Build Coastguard Worker android_name: "libcutils", 189*38e8c45fSAndroid Build Coastguard Worker }, 190*38e8c45fSAndroid Build Coastguard Worker { 191*38e8c45fSAndroid Build Coastguard Worker android_name: "libutils", 192*38e8c45fSAndroid Build Coastguard Worker }, 193*38e8c45fSAndroid Build Coastguard Worker 194*38e8c45fSAndroid Build Coastguard Worker // disable tests that don't work outside of Android yet 195*38e8c45fSAndroid Build Coastguard Worker { 196*38e8c45fSAndroid Build Coastguard Worker android_name: "binder_rpc_test_service", 197*38e8c45fSAndroid Build Coastguard Worker }, 198*38e8c45fSAndroid Build Coastguard Worker { 199*38e8c45fSAndroid Build Coastguard Worker android_name: "binder_rpc_test_service_single_threaded", 200*38e8c45fSAndroid Build Coastguard Worker }, 201*38e8c45fSAndroid Build Coastguard Worker 202*38e8c45fSAndroid Build Coastguard Worker // trusty mocks are artificially triggered and not needed outside of Android build 203*38e8c45fSAndroid Build Coastguard Worker { 204*38e8c45fSAndroid Build Coastguard Worker android_name: "libbinder_on_trusty_mock", 205*38e8c45fSAndroid Build Coastguard Worker }, 206*38e8c45fSAndroid Build Coastguard Worker { 207*38e8c45fSAndroid Build Coastguard Worker android_name: "libbinder_ndk_on_trusty_mock", 208*38e8c45fSAndroid Build Coastguard Worker }, 209*38e8c45fSAndroid Build Coastguard Worker { 210*38e8c45fSAndroid Build Coastguard Worker android_name: "binderRpcTestService_on_trusty_mock", 211*38e8c45fSAndroid Build Coastguard Worker }, 212*38e8c45fSAndroid Build Coastguard Worker { 213*38e8c45fSAndroid Build Coastguard Worker android_name: "binderRpcTest_on_trusty_mock", 214*38e8c45fSAndroid Build Coastguard Worker }, 215*38e8c45fSAndroid Build Coastguard Worker ], 216*38e8c45fSAndroid Build Coastguard Worker} 217*38e8c45fSAndroid Build Coastguard Worker 218*38e8c45fSAndroid Build Coastguard Worker// These interfaces are android-specific implementation unrelated to binder 219*38e8c45fSAndroid Build Coastguard Worker// transport itself and should be moved to AIDL or in domain-specific libs. 220*38e8c45fSAndroid Build Coastguard Worker// 221*38e8c45fSAndroid Build Coastguard Worker// Currently, these are only on system android (not vendor, not host) 222*38e8c45fSAndroid Build Coastguard Worker// TODO(b/183654927) - move these into separate libraries 223*38e8c45fSAndroid Build Coastguard Worker 224*38e8c45fSAndroid Build Coastguard Workerfilegroup { 225*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_device_interface_sources", 226*38e8c45fSAndroid Build Coastguard Worker srcs: [ 227*38e8c45fSAndroid Build Coastguard Worker "IPermissionController.cpp", 228*38e8c45fSAndroid Build Coastguard Worker "PermissionCache.cpp", 229*38e8c45fSAndroid Build Coastguard Worker "PermissionController.cpp", 230*38e8c45fSAndroid Build Coastguard Worker ], 231*38e8c45fSAndroid Build Coastguard Worker} 232*38e8c45fSAndroid Build Coastguard Worker 233*38e8c45fSAndroid Build Coastguard Workercc_defaults { 234*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_common_defaults", 235*38e8c45fSAndroid Build Coastguard Worker host_supported: true, 236*38e8c45fSAndroid Build Coastguard Worker 237*38e8c45fSAndroid Build Coastguard Worker srcs: [ 238*38e8c45fSAndroid Build Coastguard Worker "Binder.cpp", 239*38e8c45fSAndroid Build Coastguard Worker "BpBinder.cpp", 240*38e8c45fSAndroid Build Coastguard Worker "Debug.cpp", 241*38e8c45fSAndroid Build Coastguard Worker "FdTrigger.cpp", 242*38e8c45fSAndroid Build Coastguard Worker "IInterface.cpp", 243*38e8c45fSAndroid Build Coastguard Worker "IResultReceiver.cpp", 244*38e8c45fSAndroid Build Coastguard Worker "Parcel.cpp", 245*38e8c45fSAndroid Build Coastguard Worker "ParcelFileDescriptor.cpp", 246*38e8c45fSAndroid Build Coastguard Worker "RecordedTransaction.cpp", 247*38e8c45fSAndroid Build Coastguard Worker "RpcSession.cpp", 248*38e8c45fSAndroid Build Coastguard Worker "RpcServer.cpp", 249*38e8c45fSAndroid Build Coastguard Worker "RpcState.cpp", 250*38e8c45fSAndroid Build Coastguard Worker "RpcTransportRaw.cpp", 251*38e8c45fSAndroid Build Coastguard Worker "Stability.cpp", 252*38e8c45fSAndroid Build Coastguard Worker "Status.cpp", 253*38e8c45fSAndroid Build Coastguard Worker "TextOutput.cpp", 254*38e8c45fSAndroid Build Coastguard Worker "Utils.cpp", 255*38e8c45fSAndroid Build Coastguard Worker "file.cpp", 256*38e8c45fSAndroid Build Coastguard Worker ], 257*38e8c45fSAndroid Build Coastguard Worker 258*38e8c45fSAndroid Build Coastguard Worker header_libs: [ 259*38e8c45fSAndroid Build Coastguard Worker "libbinder_headers_base", 260*38e8c45fSAndroid Build Coastguard Worker ], 261*38e8c45fSAndroid Build Coastguard Worker export_header_lib_headers: [ 262*38e8c45fSAndroid Build Coastguard Worker "libbinder_headers_base", 263*38e8c45fSAndroid Build Coastguard Worker ], 264*38e8c45fSAndroid Build Coastguard Worker 265*38e8c45fSAndroid Build Coastguard Worker cflags: [ 266*38e8c45fSAndroid Build Coastguard Worker "-Wextra", 267*38e8c45fSAndroid Build Coastguard Worker "-Wextra-semi", 268*38e8c45fSAndroid Build Coastguard Worker "-Werror", 269*38e8c45fSAndroid Build Coastguard Worker "-Wzero-as-null-pointer-constant", 270*38e8c45fSAndroid Build Coastguard Worker "-Wreorder-init-list", 271*38e8c45fSAndroid Build Coastguard Worker "-Wunused-const-variable", 272*38e8c45fSAndroid Build Coastguard Worker "-DANDROID_BASE_UNIQUE_FD_DISABLE_IMPLICIT_CONVERSION", 273*38e8c45fSAndroid Build Coastguard Worker "-DANDROID_UTILS_REF_BASE_DISABLE_IMPLICIT_CONSTRUCTION", 274*38e8c45fSAndroid Build Coastguard Worker // Hide symbols by default and set the BUILDING_LIBBINDER macro so that 275*38e8c45fSAndroid Build Coastguard Worker // the code knows to export them. 276*38e8c45fSAndroid Build Coastguard Worker "-fvisibility=hidden", 277*38e8c45fSAndroid Build Coastguard Worker "-DBUILDING_LIBBINDER", 278*38e8c45fSAndroid Build Coastguard Worker ], 279*38e8c45fSAndroid Build Coastguard Worker 280*38e8c45fSAndroid Build Coastguard Worker target: { 281*38e8c45fSAndroid Build Coastguard Worker vendor: { 282*38e8c45fSAndroid Build Coastguard Worker // Trimming the exported symbols reveals a bug in vendor code, so 283*38e8c45fSAndroid Build Coastguard Worker // disable it for the vendor variant for now. http://b/349657329 284*38e8c45fSAndroid Build Coastguard Worker // TODO: Fix the issue and remove this override. 285*38e8c45fSAndroid Build Coastguard Worker cflags: ["-fvisibility=default"], 286*38e8c45fSAndroid Build Coastguard Worker }, 287*38e8c45fSAndroid Build Coastguard Worker }, 288*38e8c45fSAndroid Build Coastguard Worker} 289*38e8c45fSAndroid Build Coastguard Worker 290*38e8c45fSAndroid Build Coastguard Workercc_defaults { 291*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_android_defaults", 292*38e8c45fSAndroid Build Coastguard Worker 293*38e8c45fSAndroid Build Coastguard Worker // TODO(b/31559095): get headers from bionic on host 294*38e8c45fSAndroid Build Coastguard Worker include_dirs: [ 295*38e8c45fSAndroid Build Coastguard Worker "bionic/libc/kernel/android/uapi/", 296*38e8c45fSAndroid Build Coastguard Worker "bionic/libc/kernel/uapi/", 297*38e8c45fSAndroid Build Coastguard Worker ], 298*38e8c45fSAndroid Build Coastguard Worker 299*38e8c45fSAndroid Build Coastguard Worker srcs: [ 300*38e8c45fSAndroid Build Coastguard Worker "OS_android.cpp", 301*38e8c45fSAndroid Build Coastguard Worker "OS_unix_base.cpp", 302*38e8c45fSAndroid Build Coastguard Worker ], 303*38e8c45fSAndroid Build Coastguard Worker 304*38e8c45fSAndroid Build Coastguard Worker target: { 305*38e8c45fSAndroid Build Coastguard Worker host: { 306*38e8c45fSAndroid Build Coastguard Worker srcs: [ 307*38e8c45fSAndroid Build Coastguard Worker "UtilsHost.cpp", 308*38e8c45fSAndroid Build Coastguard Worker ], 309*38e8c45fSAndroid Build Coastguard Worker }, 310*38e8c45fSAndroid Build Coastguard Worker android: { 311*38e8c45fSAndroid Build Coastguard Worker lto: { 312*38e8c45fSAndroid Build Coastguard Worker thin: true, 313*38e8c45fSAndroid Build Coastguard Worker }, 314*38e8c45fSAndroid Build Coastguard Worker }, 315*38e8c45fSAndroid Build Coastguard Worker }, 316*38e8c45fSAndroid Build Coastguard Worker 317*38e8c45fSAndroid Build Coastguard Worker aidl: { 318*38e8c45fSAndroid Build Coastguard Worker export_aidl_headers: true, 319*38e8c45fSAndroid Build Coastguard Worker }, 320*38e8c45fSAndroid Build Coastguard Worker 321*38e8c45fSAndroid Build Coastguard Worker product_variables: { 322*38e8c45fSAndroid Build Coastguard Worker debuggable: { 323*38e8c45fSAndroid Build Coastguard Worker cflags: [ 324*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_RPC_DEV_SERVERS", 325*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_ENABLE_RECORDING", 326*38e8c45fSAndroid Build Coastguard Worker ], 327*38e8c45fSAndroid Build Coastguard Worker }, 328*38e8c45fSAndroid Build Coastguard Worker }, 329*38e8c45fSAndroid Build Coastguard Worker 330*38e8c45fSAndroid Build Coastguard Worker shared_libs: [ 331*38e8c45fSAndroid Build Coastguard Worker "libcutils", 332*38e8c45fSAndroid Build Coastguard Worker "liblog", 333*38e8c45fSAndroid Build Coastguard Worker "libutils", 334*38e8c45fSAndroid Build Coastguard Worker ], 335*38e8c45fSAndroid Build Coastguard Worker 336*38e8c45fSAndroid Build Coastguard Worker static_libs: [ 337*38e8c45fSAndroid Build Coastguard Worker "libbase", 338*38e8c45fSAndroid Build Coastguard Worker ], 339*38e8c45fSAndroid Build Coastguard Worker 340*38e8c45fSAndroid Build Coastguard Worker header_libs: [ 341*38e8c45fSAndroid Build Coastguard Worker "jni_headers", 342*38e8c45fSAndroid Build Coastguard Worker "libbinder_headers", 343*38e8c45fSAndroid Build Coastguard Worker ], 344*38e8c45fSAndroid Build Coastguard Worker 345*38e8c45fSAndroid Build Coastguard Worker export_header_lib_headers: [ 346*38e8c45fSAndroid Build Coastguard Worker "libbinder_headers", 347*38e8c45fSAndroid Build Coastguard Worker ], 348*38e8c45fSAndroid Build Coastguard Worker 349*38e8c45fSAndroid Build Coastguard Worker sanitize: { 350*38e8c45fSAndroid Build Coastguard Worker misc_undefined: ["integer"], 351*38e8c45fSAndroid Build Coastguard Worker }, 352*38e8c45fSAndroid Build Coastguard Worker 353*38e8c45fSAndroid Build Coastguard Worker tidy: true, 354*38e8c45fSAndroid Build Coastguard Worker tidy_flags: [ 355*38e8c45fSAndroid Build Coastguard Worker // Only check our headers 356*38e8c45fSAndroid Build Coastguard Worker "--header-filter=^.*frameworks/native/libs/binder/.*.h$", 357*38e8c45fSAndroid Build Coastguard Worker ], 358*38e8c45fSAndroid Build Coastguard Worker tidy_checks: [ 359*38e8c45fSAndroid Build Coastguard Worker "-performance-no-int-to-ptr", 360*38e8c45fSAndroid Build Coastguard Worker ], 361*38e8c45fSAndroid Build Coastguard Worker tidy_checks_as_errors: [ 362*38e8c45fSAndroid Build Coastguard Worker // Explicitly list the checks that should not occur in this module. 363*38e8c45fSAndroid Build Coastguard Worker "abseil-*", 364*38e8c45fSAndroid Build Coastguard Worker "android-*", 365*38e8c45fSAndroid Build Coastguard Worker "bugprone-*", 366*38e8c45fSAndroid Build Coastguard Worker "-bugprone-branch-clone", // b/155034972 367*38e8c45fSAndroid Build Coastguard Worker "cert-*", 368*38e8c45fSAndroid Build Coastguard Worker "clang-analyzer-*", 369*38e8c45fSAndroid Build Coastguard Worker "google-*", 370*38e8c45fSAndroid Build Coastguard Worker "misc-*", 371*38e8c45fSAndroid Build Coastguard Worker "performance*", 372*38e8c45fSAndroid Build Coastguard Worker "-performance-move-const-arg", // b/273486801 373*38e8c45fSAndroid Build Coastguard Worker "portability*", 374*38e8c45fSAndroid Build Coastguard Worker ], 375*38e8c45fSAndroid Build Coastguard Worker} 376*38e8c45fSAndroid Build Coastguard Worker 377*38e8c45fSAndroid Build Coastguard Workercc_library_headers { 378*38e8c45fSAndroid Build Coastguard Worker name: "trusty_mock_headers", 379*38e8c45fSAndroid Build Coastguard Worker host_supported: true, 380*38e8c45fSAndroid Build Coastguard Worker vendor_available: true, 381*38e8c45fSAndroid Build Coastguard Worker 382*38e8c45fSAndroid Build Coastguard Worker export_include_dirs: [ 383*38e8c45fSAndroid Build Coastguard Worker "trusty/include", 384*38e8c45fSAndroid Build Coastguard Worker "trusty/include_mock", 385*38e8c45fSAndroid Build Coastguard Worker ], 386*38e8c45fSAndroid Build Coastguard Worker 387*38e8c45fSAndroid Build Coastguard Worker visibility: [ 388*38e8c45fSAndroid Build Coastguard Worker ":__subpackages__", 389*38e8c45fSAndroid Build Coastguard Worker ], 390*38e8c45fSAndroid Build Coastguard Worker} 391*38e8c45fSAndroid Build Coastguard Worker 392*38e8c45fSAndroid Build Coastguard Workercc_defaults { 393*38e8c45fSAndroid Build Coastguard Worker name: "trusty_mock_defaults", 394*38e8c45fSAndroid Build Coastguard Worker host_supported: true, 395*38e8c45fSAndroid Build Coastguard Worker vendor_available: true, 396*38e8c45fSAndroid Build Coastguard Worker 397*38e8c45fSAndroid Build Coastguard Worker header_libs: [ 398*38e8c45fSAndroid Build Coastguard Worker "libbinder_headers_base", 399*38e8c45fSAndroid Build Coastguard Worker "liblog_stub", 400*38e8c45fSAndroid Build Coastguard Worker "trusty_mock_headers", 401*38e8c45fSAndroid Build Coastguard Worker ], 402*38e8c45fSAndroid Build Coastguard Worker export_header_lib_headers: [ 403*38e8c45fSAndroid Build Coastguard Worker "libbinder_headers_base", 404*38e8c45fSAndroid Build Coastguard Worker "liblog_stub", 405*38e8c45fSAndroid Build Coastguard Worker "trusty_mock_headers", 406*38e8c45fSAndroid Build Coastguard Worker ], 407*38e8c45fSAndroid Build Coastguard Worker 408*38e8c45fSAndroid Build Coastguard Worker shared_libs: [ 409*38e8c45fSAndroid Build Coastguard Worker "libutils_binder_sdk", 410*38e8c45fSAndroid Build Coastguard Worker ], 411*38e8c45fSAndroid Build Coastguard Worker 412*38e8c45fSAndroid Build Coastguard Worker cflags: [ 413*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_RPC_SINGLE_THREADED", 414*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_ENABLE_LIBLOG_ASSERT", 415*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_DISABLE_NATIVE_HANDLE", 416*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_DISABLE_BLOB", 417*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_NO_LIBBASE", 418*38e8c45fSAndroid Build Coastguard Worker // TODO: switch to "vendor: true" rather than copying this 419*38e8c45fSAndroid Build Coastguard Worker // Trusty libbinder uses vendor stability for its binders 420*38e8c45fSAndroid Build Coastguard Worker "-D__ANDROID_VENDOR__", 421*38e8c45fSAndroid Build Coastguard Worker "-D__ANDROID_VNDK__", 422*38e8c45fSAndroid Build Coastguard Worker "-U__ANDROID__", 423*38e8c45fSAndroid Build Coastguard Worker "-D__TRUSTY__", 424*38e8c45fSAndroid Build Coastguard Worker "-DTRUSTY_USERSPACE", 425*38e8c45fSAndroid Build Coastguard Worker // Flags from the Trusty build system 426*38e8c45fSAndroid Build Coastguard Worker "-Werror", 427*38e8c45fSAndroid Build Coastguard Worker "-Wsign-compare", 428*38e8c45fSAndroid Build Coastguard Worker "-Wno-unused-function", 429*38e8c45fSAndroid Build Coastguard Worker "-Wno-unused-label", 430*38e8c45fSAndroid Build Coastguard Worker "-fno-common", 431*38e8c45fSAndroid Build Coastguard Worker "-fno-omit-frame-pointer", 432*38e8c45fSAndroid Build Coastguard Worker "-fno-threadsafe-statics", 433*38e8c45fSAndroid Build Coastguard Worker ], 434*38e8c45fSAndroid Build Coastguard Worker rtti: false, 435*38e8c45fSAndroid Build Coastguard Worker 436*38e8c45fSAndroid Build Coastguard Worker visibility: [ 437*38e8c45fSAndroid Build Coastguard Worker ":__subpackages__", 438*38e8c45fSAndroid Build Coastguard Worker ], 439*38e8c45fSAndroid Build Coastguard Worker} 440*38e8c45fSAndroid Build Coastguard Worker 441*38e8c45fSAndroid Build Coastguard Workercc_library_shared { 442*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_on_trusty_mock", 443*38e8c45fSAndroid Build Coastguard Worker defaults: [ 444*38e8c45fSAndroid Build Coastguard Worker "libbinder_common_defaults", 445*38e8c45fSAndroid Build Coastguard Worker "trusty_mock_defaults", 446*38e8c45fSAndroid Build Coastguard Worker ], 447*38e8c45fSAndroid Build Coastguard Worker 448*38e8c45fSAndroid Build Coastguard Worker srcs: [ 449*38e8c45fSAndroid Build Coastguard Worker // Trusty-specific files 450*38e8c45fSAndroid Build Coastguard Worker "trusty/OS.cpp", 451*38e8c45fSAndroid Build Coastguard Worker "trusty/RpcServerTrusty.cpp", 452*38e8c45fSAndroid Build Coastguard Worker "trusty/RpcTransportTipcTrusty.cpp", 453*38e8c45fSAndroid Build Coastguard Worker "trusty/TrustyStatus.cpp", 454*38e8c45fSAndroid Build Coastguard Worker "trusty/socket.cpp", 455*38e8c45fSAndroid Build Coastguard Worker ], 456*38e8c45fSAndroid Build Coastguard Worker} 457*38e8c45fSAndroid Build Coastguard Worker 458*38e8c45fSAndroid Build Coastguard Workersoong_config_module_type { 459*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_remove_cache_static_list_config", 460*38e8c45fSAndroid Build Coastguard Worker module_type: "cc_defaults", 461*38e8c45fSAndroid Build Coastguard Worker config_namespace: "libbinder", 462*38e8c45fSAndroid Build Coastguard Worker bool_variables: ["release_libbinder_remove_cache_static_list"], 463*38e8c45fSAndroid Build Coastguard Worker properties: [ 464*38e8c45fSAndroid Build Coastguard Worker "cflags", 465*38e8c45fSAndroid Build Coastguard Worker ], 466*38e8c45fSAndroid Build Coastguard Worker} 467*38e8c45fSAndroid Build Coastguard Worker 468*38e8c45fSAndroid Build Coastguard Workerlibbinder_remove_cache_static_list_config { 469*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_remove_cache_static_list_flag", 470*38e8c45fSAndroid Build Coastguard Worker soong_config_variables: { 471*38e8c45fSAndroid Build Coastguard Worker release_libbinder_remove_cache_static_list: { 472*38e8c45fSAndroid Build Coastguard Worker cflags: ["-DLIBBINDER_REMOVE_CACHE_STATIC_LIST"], 473*38e8c45fSAndroid Build Coastguard Worker conditions_default: { 474*38e8c45fSAndroid Build Coastguard Worker cflags: ["-DNO_LIBBINDER_REMOVE_CACHE_STATIC_LIST"], 475*38e8c45fSAndroid Build Coastguard Worker }, 476*38e8c45fSAndroid Build Coastguard Worker }, 477*38e8c45fSAndroid Build Coastguard Worker }, 478*38e8c45fSAndroid Build Coastguard Worker} 479*38e8c45fSAndroid Build Coastguard Worker 480*38e8c45fSAndroid Build Coastguard Workersoong_config_module_type { 481*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_client_cache_config", 482*38e8c45fSAndroid Build Coastguard Worker module_type: "cc_defaults", 483*38e8c45fSAndroid Build Coastguard Worker config_namespace: "libbinder", 484*38e8c45fSAndroid Build Coastguard Worker bool_variables: ["release_libbinder_client_cache"], 485*38e8c45fSAndroid Build Coastguard Worker properties: [ 486*38e8c45fSAndroid Build Coastguard Worker "cflags", 487*38e8c45fSAndroid Build Coastguard Worker ], 488*38e8c45fSAndroid Build Coastguard Worker} 489*38e8c45fSAndroid Build Coastguard Worker 490*38e8c45fSAndroid Build Coastguard Workerlibbinder_client_cache_config { 491*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_client_cache_flag", 492*38e8c45fSAndroid Build Coastguard Worker soong_config_variables: { 493*38e8c45fSAndroid Build Coastguard Worker release_libbinder_client_cache: { 494*38e8c45fSAndroid Build Coastguard Worker cflags: ["-DLIBBINDER_CLIENT_CACHE"], 495*38e8c45fSAndroid Build Coastguard Worker conditions_default: { 496*38e8c45fSAndroid Build Coastguard Worker cflags: ["-DNO_LIBBINDER_CLIENT_CACHE"], 497*38e8c45fSAndroid Build Coastguard Worker }, 498*38e8c45fSAndroid Build Coastguard Worker }, 499*38e8c45fSAndroid Build Coastguard Worker }, 500*38e8c45fSAndroid Build Coastguard Worker} 501*38e8c45fSAndroid Build Coastguard Worker 502*38e8c45fSAndroid Build Coastguard Workersoong_config_module_type { 503*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_addservice_cache_config", 504*38e8c45fSAndroid Build Coastguard Worker module_type: "cc_defaults", 505*38e8c45fSAndroid Build Coastguard Worker config_namespace: "libbinder", 506*38e8c45fSAndroid Build Coastguard Worker bool_variables: ["release_libbinder_addservice_cache"], 507*38e8c45fSAndroid Build Coastguard Worker properties: [ 508*38e8c45fSAndroid Build Coastguard Worker "cflags", 509*38e8c45fSAndroid Build Coastguard Worker ], 510*38e8c45fSAndroid Build Coastguard Worker} 511*38e8c45fSAndroid Build Coastguard Worker 512*38e8c45fSAndroid Build Coastguard Workerlibbinder_addservice_cache_config { 513*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_addservice_cache_flag", 514*38e8c45fSAndroid Build Coastguard Worker soong_config_variables: { 515*38e8c45fSAndroid Build Coastguard Worker release_libbinder_addservice_cache: { 516*38e8c45fSAndroid Build Coastguard Worker cflags: ["-DLIBBINDER_ADDSERVICE_CACHE"], 517*38e8c45fSAndroid Build Coastguard Worker conditions_default: { 518*38e8c45fSAndroid Build Coastguard Worker cflags: ["-DNO_LIBBINDER_ADDSERVICE_CACHE"], 519*38e8c45fSAndroid Build Coastguard Worker }, 520*38e8c45fSAndroid Build Coastguard Worker }, 521*38e8c45fSAndroid Build Coastguard Worker }, 522*38e8c45fSAndroid Build Coastguard Worker} 523*38e8c45fSAndroid Build Coastguard Worker 524*38e8c45fSAndroid Build Coastguard Workercc_defaults { 525*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_kernel_defaults", 526*38e8c45fSAndroid Build Coastguard Worker defaults: [ 527*38e8c45fSAndroid Build Coastguard Worker "libbinder_client_cache_flag", 528*38e8c45fSAndroid Build Coastguard Worker "libbinder_addservice_cache_flag", 529*38e8c45fSAndroid Build Coastguard Worker "libbinder_remove_cache_static_list_flag", 530*38e8c45fSAndroid Build Coastguard Worker ], 531*38e8c45fSAndroid Build Coastguard Worker srcs: [ 532*38e8c45fSAndroid Build Coastguard Worker "BufferedTextOutput.cpp", 533*38e8c45fSAndroid Build Coastguard Worker "BackendUnifiedServiceManager.cpp", 534*38e8c45fSAndroid Build Coastguard Worker "IPCThreadState.cpp", 535*38e8c45fSAndroid Build Coastguard Worker "IServiceManager.cpp", 536*38e8c45fSAndroid Build Coastguard Worker "IServiceManagerFFI.cpp", 537*38e8c45fSAndroid Build Coastguard Worker "ProcessState.cpp", 538*38e8c45fSAndroid Build Coastguard Worker "Static.cpp", 539*38e8c45fSAndroid Build Coastguard Worker ":libbinder_aidl", 540*38e8c45fSAndroid Build Coastguard Worker ":libbinder_accessor_aidl", 541*38e8c45fSAndroid Build Coastguard Worker ":libbinder_device_interface_sources", 542*38e8c45fSAndroid Build Coastguard Worker ], 543*38e8c45fSAndroid Build Coastguard Worker target: { 544*38e8c45fSAndroid Build Coastguard Worker vendor: { 545*38e8c45fSAndroid Build Coastguard Worker exclude_srcs: [ 546*38e8c45fSAndroid Build Coastguard Worker ":libbinder_device_interface_sources", 547*38e8c45fSAndroid Build Coastguard Worker ], 548*38e8c45fSAndroid Build Coastguard Worker }, 549*38e8c45fSAndroid Build Coastguard Worker host: { 550*38e8c45fSAndroid Build Coastguard Worker srcs: [ 551*38e8c45fSAndroid Build Coastguard Worker "ServiceManagerHost.cpp", 552*38e8c45fSAndroid Build Coastguard Worker ], 553*38e8c45fSAndroid Build Coastguard Worker }, 554*38e8c45fSAndroid Build Coastguard Worker android: { 555*38e8c45fSAndroid Build Coastguard Worker shared_libs: [ 556*38e8c45fSAndroid Build Coastguard Worker "libapexsupport", 557*38e8c45fSAndroid Build Coastguard Worker "libvndksupport", 558*38e8c45fSAndroid Build Coastguard Worker ], 559*38e8c45fSAndroid Build Coastguard Worker }, 560*38e8c45fSAndroid Build Coastguard Worker recovery: { 561*38e8c45fSAndroid Build Coastguard Worker exclude_shared_libs: [ 562*38e8c45fSAndroid Build Coastguard Worker "libapexsupport", 563*38e8c45fSAndroid Build Coastguard Worker "libvndksupport", 564*38e8c45fSAndroid Build Coastguard Worker ], 565*38e8c45fSAndroid Build Coastguard Worker }, 566*38e8c45fSAndroid Build Coastguard Worker native_bridge: { 567*38e8c45fSAndroid Build Coastguard Worker exclude_shared_libs: [ 568*38e8c45fSAndroid Build Coastguard Worker "libapexsupport", 569*38e8c45fSAndroid Build Coastguard Worker "libvndksupport", 570*38e8c45fSAndroid Build Coastguard Worker ], 571*38e8c45fSAndroid Build Coastguard Worker }, 572*38e8c45fSAndroid Build Coastguard Worker }, 573*38e8c45fSAndroid Build Coastguard Worker cflags: [ 574*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_WITH_KERNEL_IPC", 575*38e8c45fSAndroid Build Coastguard Worker ], 576*38e8c45fSAndroid Build Coastguard Worker} 577*38e8c45fSAndroid Build Coastguard Worker 578*38e8c45fSAndroid Build Coastguard Workercc_library { 579*38e8c45fSAndroid Build Coastguard Worker name: "libbinder", 580*38e8c45fSAndroid Build Coastguard Worker defaults: [ 581*38e8c45fSAndroid Build Coastguard Worker "libbinder_common_defaults", 582*38e8c45fSAndroid Build Coastguard Worker "libbinder_android_defaults", 583*38e8c45fSAndroid Build Coastguard Worker "libbinder_kernel_defaults", 584*38e8c45fSAndroid Build Coastguard Worker ], 585*38e8c45fSAndroid Build Coastguard Worker 586*38e8c45fSAndroid Build Coastguard Worker version_script: "libbinder.map", 587*38e8c45fSAndroid Build Coastguard Worker 588*38e8c45fSAndroid Build Coastguard Worker // for vndbinder 589*38e8c45fSAndroid Build Coastguard Worker vendor_available: true, 590*38e8c45fSAndroid Build Coastguard Worker recovery_available: true, 591*38e8c45fSAndroid Build Coastguard Worker double_loadable: true, 592*38e8c45fSAndroid Build Coastguard Worker // TODO(b/153609531): remove when no longer needed. 593*38e8c45fSAndroid Build Coastguard Worker native_bridge_supported: true, 594*38e8c45fSAndroid Build Coastguard Worker cmake_snapshot_supported: false, 595*38e8c45fSAndroid Build Coastguard Worker 596*38e8c45fSAndroid Build Coastguard Worker // libbinder does not offer a stable wire protocol. 597*38e8c45fSAndroid Build Coastguard Worker // if a second copy of it is installed, then it may break after security 598*38e8c45fSAndroid Build Coastguard Worker // or dessert updates. Instead, apex users should use libbinder_ndk. 599*38e8c45fSAndroid Build Coastguard Worker apex_available: [ 600*38e8c45fSAndroid Build Coastguard Worker "//apex_available:platform", 601*38e8c45fSAndroid Build Coastguard Worker ], 602*38e8c45fSAndroid Build Coastguard Worker 603*38e8c45fSAndroid Build Coastguard Worker srcs: [ 604*38e8c45fSAndroid Build Coastguard Worker "IMemory.cpp", 605*38e8c45fSAndroid Build Coastguard Worker "IShellCallback.cpp", 606*38e8c45fSAndroid Build Coastguard Worker "LazyServiceRegistrar.cpp", 607*38e8c45fSAndroid Build Coastguard Worker "MemoryBase.cpp", 608*38e8c45fSAndroid Build Coastguard Worker "MemoryDealer.cpp", 609*38e8c45fSAndroid Build Coastguard Worker "MemoryHeapBase.cpp", 610*38e8c45fSAndroid Build Coastguard Worker "ParcelableHolder.cpp", 611*38e8c45fSAndroid Build Coastguard Worker "PersistableBundle.cpp", 612*38e8c45fSAndroid Build Coastguard Worker ], 613*38e8c45fSAndroid Build Coastguard Worker target: { 614*38e8c45fSAndroid Build Coastguard Worker android: { 615*38e8c45fSAndroid Build Coastguard Worker // NOT static to keep the wire protocol unfrozen 616*38e8c45fSAndroid Build Coastguard Worker static: { 617*38e8c45fSAndroid Build Coastguard Worker enabled: false, 618*38e8c45fSAndroid Build Coastguard Worker }, 619*38e8c45fSAndroid Build Coastguard Worker }, 620*38e8c45fSAndroid Build Coastguard Worker darwin: { 621*38e8c45fSAndroid Build Coastguard Worker enabled: false, 622*38e8c45fSAndroid Build Coastguard Worker }, 623*38e8c45fSAndroid Build Coastguard Worker recovery: { 624*38e8c45fSAndroid Build Coastguard Worker exclude_header_libs: [ 625*38e8c45fSAndroid Build Coastguard Worker "jni_headers", 626*38e8c45fSAndroid Build Coastguard Worker ], 627*38e8c45fSAndroid Build Coastguard Worker }, 628*38e8c45fSAndroid Build Coastguard Worker }, 629*38e8c45fSAndroid Build Coastguard Worker 630*38e8c45fSAndroid Build Coastguard Worker afdo: true, 631*38e8c45fSAndroid Build Coastguard Worker} 632*38e8c45fSAndroid Build Coastguard Worker 633*38e8c45fSAndroid Build Coastguard Workercc_defaults { 634*38e8c45fSAndroid Build Coastguard Worker name: "binder_sdk_defaults", 635*38e8c45fSAndroid Build Coastguard Worker 636*38e8c45fSAndroid Build Coastguard Worker cflags: [ 637*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_ENABLE_LIBLOG_ASSERT", 638*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_DISABLE_NATIVE_HANDLE", 639*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_DISABLE_BLOB", 640*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_NO_LIBBASE", 641*38e8c45fSAndroid Build Coastguard Worker ], 642*38e8c45fSAndroid Build Coastguard Worker 643*38e8c45fSAndroid Build Coastguard Worker header_libs: [ 644*38e8c45fSAndroid Build Coastguard Worker "liblog_stub", 645*38e8c45fSAndroid Build Coastguard Worker ], 646*38e8c45fSAndroid Build Coastguard Worker} 647*38e8c45fSAndroid Build Coastguard Worker 648*38e8c45fSAndroid Build Coastguard Workercc_defaults { 649*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_sdk_defaults", 650*38e8c45fSAndroid Build Coastguard Worker 651*38e8c45fSAndroid Build Coastguard Worker cmake_snapshot_supported: true, 652*38e8c45fSAndroid Build Coastguard Worker 653*38e8c45fSAndroid Build Coastguard Worker defaults: [ 654*38e8c45fSAndroid Build Coastguard Worker "libbinder_common_defaults", 655*38e8c45fSAndroid Build Coastguard Worker "binder_sdk_defaults", 656*38e8c45fSAndroid Build Coastguard Worker ], 657*38e8c45fSAndroid Build Coastguard Worker 658*38e8c45fSAndroid Build Coastguard Worker shared_libs: [ 659*38e8c45fSAndroid Build Coastguard Worker "libutils_binder_sdk", 660*38e8c45fSAndroid Build Coastguard Worker ], 661*38e8c45fSAndroid Build Coastguard Worker 662*38e8c45fSAndroid Build Coastguard Worker srcs: [ 663*38e8c45fSAndroid Build Coastguard Worker "OS_non_android_linux.cpp", 664*38e8c45fSAndroid Build Coastguard Worker "OS_unix_base.cpp", 665*38e8c45fSAndroid Build Coastguard Worker ], 666*38e8c45fSAndroid Build Coastguard Worker 667*38e8c45fSAndroid Build Coastguard Worker visibility: [ 668*38e8c45fSAndroid Build Coastguard Worker ":__subpackages__", 669*38e8c45fSAndroid Build Coastguard Worker ], 670*38e8c45fSAndroid Build Coastguard Worker 671*38e8c45fSAndroid Build Coastguard Worker target: { 672*38e8c45fSAndroid Build Coastguard Worker windows: { 673*38e8c45fSAndroid Build Coastguard Worker enabled: false, 674*38e8c45fSAndroid Build Coastguard Worker }, 675*38e8c45fSAndroid Build Coastguard Worker }, 676*38e8c45fSAndroid Build Coastguard Worker} 677*38e8c45fSAndroid Build Coastguard Worker 678*38e8c45fSAndroid Build Coastguard Workercc_library_host_shared { 679*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_sdk", 680*38e8c45fSAndroid Build Coastguard Worker defaults: ["libbinder_sdk_defaults"], 681*38e8c45fSAndroid Build Coastguard Worker} 682*38e8c45fSAndroid Build Coastguard Worker 683*38e8c45fSAndroid Build Coastguard Workercc_library_host_shared { 684*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_sdk_single_threaded", 685*38e8c45fSAndroid Build Coastguard Worker defaults: ["libbinder_sdk_defaults"], 686*38e8c45fSAndroid Build Coastguard Worker cflags: [ 687*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_RPC_SINGLE_THREADED", 688*38e8c45fSAndroid Build Coastguard Worker ], 689*38e8c45fSAndroid Build Coastguard Worker} 690*38e8c45fSAndroid Build Coastguard Worker 691*38e8c45fSAndroid Build Coastguard Workercc_library { 692*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_rpc_no_kernel", 693*38e8c45fSAndroid Build Coastguard Worker vendor_available: true, 694*38e8c45fSAndroid Build Coastguard Worker defaults: [ 695*38e8c45fSAndroid Build Coastguard Worker "libbinder_common_defaults", 696*38e8c45fSAndroid Build Coastguard Worker "libbinder_android_defaults", 697*38e8c45fSAndroid Build Coastguard Worker ], 698*38e8c45fSAndroid Build Coastguard Worker visibility: [ 699*38e8c45fSAndroid Build Coastguard Worker ":__subpackages__", 700*38e8c45fSAndroid Build Coastguard Worker ], 701*38e8c45fSAndroid Build Coastguard Worker} 702*38e8c45fSAndroid Build Coastguard Worker 703*38e8c45fSAndroid Build Coastguard Workercc_library { 704*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_rpc_no_blob", 705*38e8c45fSAndroid Build Coastguard Worker vendor_available: true, 706*38e8c45fSAndroid Build Coastguard Worker defaults: [ 707*38e8c45fSAndroid Build Coastguard Worker "libbinder_common_defaults", 708*38e8c45fSAndroid Build Coastguard Worker "libbinder_android_defaults", 709*38e8c45fSAndroid Build Coastguard Worker "libbinder_kernel_defaults", 710*38e8c45fSAndroid Build Coastguard Worker ], 711*38e8c45fSAndroid Build Coastguard Worker cflags: [ 712*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_DISABLE_BLOB", 713*38e8c45fSAndroid Build Coastguard Worker ], 714*38e8c45fSAndroid Build Coastguard Worker visibility: [ 715*38e8c45fSAndroid Build Coastguard Worker ":__subpackages__", 716*38e8c45fSAndroid Build Coastguard Worker ], 717*38e8c45fSAndroid Build Coastguard Worker} 718*38e8c45fSAndroid Build Coastguard Worker 719*38e8c45fSAndroid Build Coastguard Workercc_library { 720*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_rpc_no_native_handle", 721*38e8c45fSAndroid Build Coastguard Worker vendor_available: true, 722*38e8c45fSAndroid Build Coastguard Worker defaults: [ 723*38e8c45fSAndroid Build Coastguard Worker "libbinder_common_defaults", 724*38e8c45fSAndroid Build Coastguard Worker "libbinder_android_defaults", 725*38e8c45fSAndroid Build Coastguard Worker "libbinder_kernel_defaults", 726*38e8c45fSAndroid Build Coastguard Worker ], 727*38e8c45fSAndroid Build Coastguard Worker cflags: [ 728*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_DISABLE_NATIVE_HANDLE", 729*38e8c45fSAndroid Build Coastguard Worker ], 730*38e8c45fSAndroid Build Coastguard Worker visibility: [ 731*38e8c45fSAndroid Build Coastguard Worker ":__subpackages__", 732*38e8c45fSAndroid Build Coastguard Worker ], 733*38e8c45fSAndroid Build Coastguard Worker} 734*38e8c45fSAndroid Build Coastguard Worker 735*38e8c45fSAndroid Build Coastguard Workercc_library { 736*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_rpc_single_threaded", 737*38e8c45fSAndroid Build Coastguard Worker defaults: [ 738*38e8c45fSAndroid Build Coastguard Worker "libbinder_common_defaults", 739*38e8c45fSAndroid Build Coastguard Worker "libbinder_android_defaults", 740*38e8c45fSAndroid Build Coastguard Worker "libbinder_kernel_defaults", 741*38e8c45fSAndroid Build Coastguard Worker ], 742*38e8c45fSAndroid Build Coastguard Worker cflags: [ 743*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_RPC_SINGLE_THREADED", 744*38e8c45fSAndroid Build Coastguard Worker ], 745*38e8c45fSAndroid Build Coastguard Worker visibility: [ 746*38e8c45fSAndroid Build Coastguard Worker ":__subpackages__", 747*38e8c45fSAndroid Build Coastguard Worker ], 748*38e8c45fSAndroid Build Coastguard Worker} 749*38e8c45fSAndroid Build Coastguard Worker 750*38e8c45fSAndroid Build Coastguard Workercc_library { 751*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_rpc_single_threaded_no_kernel", 752*38e8c45fSAndroid Build Coastguard Worker defaults: [ 753*38e8c45fSAndroid Build Coastguard Worker "libbinder_common_defaults", 754*38e8c45fSAndroid Build Coastguard Worker "libbinder_android_defaults", 755*38e8c45fSAndroid Build Coastguard Worker ], 756*38e8c45fSAndroid Build Coastguard Worker cflags: [ 757*38e8c45fSAndroid Build Coastguard Worker "-DBINDER_RPC_SINGLE_THREADED", 758*38e8c45fSAndroid Build Coastguard Worker ], 759*38e8c45fSAndroid Build Coastguard Worker visibility: [ 760*38e8c45fSAndroid Build Coastguard Worker ":__subpackages__", 761*38e8c45fSAndroid Build Coastguard Worker ], 762*38e8c45fSAndroid Build Coastguard Worker} 763*38e8c45fSAndroid Build Coastguard Worker 764*38e8c45fSAndroid Build Coastguard Workercc_defaults { 765*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_tls_shared_deps", 766*38e8c45fSAndroid Build Coastguard Worker shared_libs: [ 767*38e8c45fSAndroid Build Coastguard Worker "libbinder", 768*38e8c45fSAndroid Build Coastguard Worker "libcrypto", 769*38e8c45fSAndroid Build Coastguard Worker "liblog", 770*38e8c45fSAndroid Build Coastguard Worker "libssl", 771*38e8c45fSAndroid Build Coastguard Worker "libutils", 772*38e8c45fSAndroid Build Coastguard Worker ], 773*38e8c45fSAndroid Build Coastguard Worker} 774*38e8c45fSAndroid Build Coastguard Worker 775*38e8c45fSAndroid Build Coastguard Workercc_defaults { 776*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_tls_defaults", 777*38e8c45fSAndroid Build Coastguard Worker defaults: ["libbinder_tls_shared_deps"], 778*38e8c45fSAndroid Build Coastguard Worker vendor_available: true, 779*38e8c45fSAndroid Build Coastguard Worker host_supported: true, 780*38e8c45fSAndroid Build Coastguard Worker cmake_snapshot_supported: true, 781*38e8c45fSAndroid Build Coastguard Worker 782*38e8c45fSAndroid Build Coastguard Worker header_libs: [ 783*38e8c45fSAndroid Build Coastguard Worker "libbinder_headers", 784*38e8c45fSAndroid Build Coastguard Worker ], 785*38e8c45fSAndroid Build Coastguard Worker export_header_lib_headers: [ 786*38e8c45fSAndroid Build Coastguard Worker "libbinder_headers", 787*38e8c45fSAndroid Build Coastguard Worker ], 788*38e8c45fSAndroid Build Coastguard Worker export_shared_lib_headers: [ 789*38e8c45fSAndroid Build Coastguard Worker "libssl", 790*38e8c45fSAndroid Build Coastguard Worker ], 791*38e8c45fSAndroid Build Coastguard Worker export_include_dirs: ["include_tls"], 792*38e8c45fSAndroid Build Coastguard Worker static_libs: [ 793*38e8c45fSAndroid Build Coastguard Worker "libbase", 794*38e8c45fSAndroid Build Coastguard Worker ], 795*38e8c45fSAndroid Build Coastguard Worker srcs: [ 796*38e8c45fSAndroid Build Coastguard Worker "RpcTransportTls.cpp", 797*38e8c45fSAndroid Build Coastguard Worker "RpcTlsUtils.cpp", 798*38e8c45fSAndroid Build Coastguard Worker ], 799*38e8c45fSAndroid Build Coastguard Worker} 800*38e8c45fSAndroid Build Coastguard Worker 801*38e8c45fSAndroid Build Coastguard Workercc_library_shared { 802*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_tls", 803*38e8c45fSAndroid Build Coastguard Worker defaults: ["libbinder_tls_defaults"], 804*38e8c45fSAndroid Build Coastguard Worker} 805*38e8c45fSAndroid Build Coastguard Worker 806*38e8c45fSAndroid Build Coastguard Workercc_library { 807*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_trusty", 808*38e8c45fSAndroid Build Coastguard Worker vendor: true, 809*38e8c45fSAndroid Build Coastguard Worker srcs: [ 810*38e8c45fSAndroid Build Coastguard Worker "RpcTransportTipcAndroid.cpp", 811*38e8c45fSAndroid Build Coastguard Worker "RpcTrusty.cpp", 812*38e8c45fSAndroid Build Coastguard Worker ], 813*38e8c45fSAndroid Build Coastguard Worker 814*38e8c45fSAndroid Build Coastguard Worker shared_libs: [ 815*38e8c45fSAndroid Build Coastguard Worker "libbinder", 816*38e8c45fSAndroid Build Coastguard Worker "liblog", 817*38e8c45fSAndroid Build Coastguard Worker "libtrusty", 818*38e8c45fSAndroid Build Coastguard Worker "libutils", 819*38e8c45fSAndroid Build Coastguard Worker ], 820*38e8c45fSAndroid Build Coastguard Worker static_libs: [ 821*38e8c45fSAndroid Build Coastguard Worker "libbase", 822*38e8c45fSAndroid Build Coastguard Worker ], 823*38e8c45fSAndroid Build Coastguard Worker export_include_dirs: ["include_trusty"], 824*38e8c45fSAndroid Build Coastguard Worker 825*38e8c45fSAndroid Build Coastguard Worker // Most of Android doesn't need this library and shouldn't use it, 826*38e8c45fSAndroid Build Coastguard Worker // so we restrict its visibility to the Trusty-specific packages. 827*38e8c45fSAndroid Build Coastguard Worker visibility: [ 828*38e8c45fSAndroid Build Coastguard Worker ":__subpackages__", 829*38e8c45fSAndroid Build Coastguard Worker "//system/core/trusty:__subpackages__", 830*38e8c45fSAndroid Build Coastguard Worker "//vendor:__subpackages__", 831*38e8c45fSAndroid Build Coastguard Worker ], 832*38e8c45fSAndroid Build Coastguard Worker} 833*38e8c45fSAndroid Build Coastguard Worker 834*38e8c45fSAndroid Build Coastguard Worker// For testing 835*38e8c45fSAndroid Build Coastguard Workercc_library_static { 836*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_tls_static", 837*38e8c45fSAndroid Build Coastguard Worker defaults: ["libbinder_tls_defaults"], 838*38e8c45fSAndroid Build Coastguard Worker visibility: [ 839*38e8c45fSAndroid Build Coastguard Worker ":__subpackages__", 840*38e8c45fSAndroid Build Coastguard Worker ], 841*38e8c45fSAndroid Build Coastguard Worker} 842*38e8c45fSAndroid Build Coastguard Worker 843*38e8c45fSAndroid Build Coastguard Worker// AIDL interface between libbinder and framework.jar 844*38e8c45fSAndroid Build Coastguard Workerfilegroup { 845*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_aidl", 846*38e8c45fSAndroid Build Coastguard Worker srcs: [ 847*38e8c45fSAndroid Build Coastguard Worker "aidl/android/os/ConnectionInfo.aidl", 848*38e8c45fSAndroid Build Coastguard Worker "aidl/android/os/IClientCallback.aidl", 849*38e8c45fSAndroid Build Coastguard Worker "aidl/android/os/IServiceCallback.aidl", 850*38e8c45fSAndroid Build Coastguard Worker "aidl/android/os/IServiceManager.aidl", 851*38e8c45fSAndroid Build Coastguard Worker "aidl/android/os/Service.aidl", 852*38e8c45fSAndroid Build Coastguard Worker "aidl/android/os/ServiceWithMetadata.aidl", 853*38e8c45fSAndroid Build Coastguard Worker "aidl/android/os/ServiceDebugInfo.aidl", 854*38e8c45fSAndroid Build Coastguard Worker ], 855*38e8c45fSAndroid Build Coastguard Worker path: "aidl", 856*38e8c45fSAndroid Build Coastguard Worker} 857*38e8c45fSAndroid Build Coastguard Worker 858*38e8c45fSAndroid Build Coastguard Workerfilegroup { 859*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_accessor_aidl", 860*38e8c45fSAndroid Build Coastguard Worker srcs: [ 861*38e8c45fSAndroid Build Coastguard Worker "aidl/android/os/IAccessor.aidl", 862*38e8c45fSAndroid Build Coastguard Worker ], 863*38e8c45fSAndroid Build Coastguard Worker path: "aidl", 864*38e8c45fSAndroid Build Coastguard Worker visibility: [":__subpackages__"], 865*38e8c45fSAndroid Build Coastguard Worker} 866*38e8c45fSAndroid Build Coastguard Worker 867*38e8c45fSAndroid Build Coastguard Workeraidl_interface { 868*38e8c45fSAndroid Build Coastguard Worker name: "packagemanager_aidl", 869*38e8c45fSAndroid Build Coastguard Worker unstable: true, 870*38e8c45fSAndroid Build Coastguard Worker local_include_dir: "aidl", 871*38e8c45fSAndroid Build Coastguard Worker host_supported: true, 872*38e8c45fSAndroid Build Coastguard Worker srcs: [ 873*38e8c45fSAndroid Build Coastguard Worker "aidl/android/content/pm/IPackageManagerNative.aidl", 874*38e8c45fSAndroid Build Coastguard Worker "aidl/android/content/pm/IStagedApexObserver.aidl", 875*38e8c45fSAndroid Build Coastguard Worker "aidl/android/content/pm/ApexStagedEvent.aidl", 876*38e8c45fSAndroid Build Coastguard Worker "aidl/android/content/pm/StagedApexInfo.aidl", 877*38e8c45fSAndroid Build Coastguard Worker ], 878*38e8c45fSAndroid Build Coastguard Worker backend: { 879*38e8c45fSAndroid Build Coastguard Worker rust: { 880*38e8c45fSAndroid Build Coastguard Worker apex_available: [ 881*38e8c45fSAndroid Build Coastguard Worker "//apex_available:platform", 882*38e8c45fSAndroid Build Coastguard Worker "com.android.virt", 883*38e8c45fSAndroid Build Coastguard Worker ], 884*38e8c45fSAndroid Build Coastguard Worker enabled: true, 885*38e8c45fSAndroid Build Coastguard Worker }, 886*38e8c45fSAndroid Build Coastguard Worker }, 887*38e8c45fSAndroid Build Coastguard Worker} 888*38e8c45fSAndroid Build Coastguard Worker 889*38e8c45fSAndroid Build Coastguard Workeraidl_interface { 890*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_aidl_test_stub", 891*38e8c45fSAndroid Build Coastguard Worker unstable: true, 892*38e8c45fSAndroid Build Coastguard Worker local_include_dir: "aidl", 893*38e8c45fSAndroid Build Coastguard Worker srcs: [":libbinder_aidl"], 894*38e8c45fSAndroid Build Coastguard Worker vendor_available: true, 895*38e8c45fSAndroid Build Coastguard Worker backend: { 896*38e8c45fSAndroid Build Coastguard Worker java: { 897*38e8c45fSAndroid Build Coastguard Worker enabled: false, 898*38e8c45fSAndroid Build Coastguard Worker }, 899*38e8c45fSAndroid Build Coastguard Worker }, 900*38e8c45fSAndroid Build Coastguard Worker visibility: [ 901*38e8c45fSAndroid Build Coastguard Worker ":__subpackages__", 902*38e8c45fSAndroid Build Coastguard Worker "//system/tools/aidl:__subpackages__", 903*38e8c45fSAndroid Build Coastguard Worker ], 904*38e8c45fSAndroid Build Coastguard Worker} 905*38e8c45fSAndroid Build Coastguard Worker 906*38e8c45fSAndroid Build Coastguard Worker// TODO(b/184872979): remove once the Rust API is created. 907*38e8c45fSAndroid Build Coastguard Workercc_library { 908*38e8c45fSAndroid Build Coastguard Worker name: "libbinder_rpc_unstable", 909*38e8c45fSAndroid Build Coastguard Worker srcs: ["libbinder_rpc_unstable.cpp"], 910*38e8c45fSAndroid Build Coastguard Worker shared_libs: [ 911*38e8c45fSAndroid Build Coastguard Worker "libbase", 912*38e8c45fSAndroid Build Coastguard Worker "libbinder", 913*38e8c45fSAndroid Build Coastguard Worker "libbinder_ndk", 914*38e8c45fSAndroid Build Coastguard Worker "liblog", 915*38e8c45fSAndroid Build Coastguard Worker "libutils", 916*38e8c45fSAndroid Build Coastguard Worker ], 917*38e8c45fSAndroid Build Coastguard Worker export_include_dirs: ["include_rpc_unstable"], 918*38e8c45fSAndroid Build Coastguard Worker 919*38e8c45fSAndroid Build Coastguard Worker // enumerate stable entry points, for apex use 920*38e8c45fSAndroid Build Coastguard Worker stubs: { 921*38e8c45fSAndroid Build Coastguard Worker symbol_file: "libbinder_rpc_unstable.map.txt", 922*38e8c45fSAndroid Build Coastguard Worker }, 923*38e8c45fSAndroid Build Coastguard Worker 924*38e8c45fSAndroid Build Coastguard Worker header_abi_checker: { 925*38e8c45fSAndroid Build Coastguard Worker enabled: false, 926*38e8c45fSAndroid Build Coastguard Worker }, 927*38e8c45fSAndroid Build Coastguard Worker 928*38e8c45fSAndroid Build Coastguard Worker // This library is intentionally limited to these targets, and it will be removed later. 929*38e8c45fSAndroid Build Coastguard Worker // Do not expand the visibility. 930*38e8c45fSAndroid Build Coastguard Worker visibility: [ 931*38e8c45fSAndroid Build Coastguard Worker ":__subpackages__", 932*38e8c45fSAndroid Build Coastguard Worker "//packages/modules/Virtualization:__subpackages__", 933*38e8c45fSAndroid Build Coastguard Worker "//device/google/cuttlefish/shared/minidroid:__subpackages__", 934*38e8c45fSAndroid Build Coastguard Worker "//visibility:any_system_partition", 935*38e8c45fSAndroid Build Coastguard Worker ], 936*38e8c45fSAndroid Build Coastguard Worker} 937*38e8c45fSAndroid Build Coastguard Worker 938*38e8c45fSAndroid Build Coastguard Worker// libbinder historically contained additional interfaces that provided specific 939*38e8c45fSAndroid Build Coastguard Worker// functionality in the platform but have nothing to do with binder itself. These 940*38e8c45fSAndroid Build Coastguard Worker// are moved out of libbinder in order to avoid the overhead of their vtables. 941*38e8c45fSAndroid Build Coastguard Worker// If you are working on or own one of these interfaces, the responsible things 942*38e8c45fSAndroid Build Coastguard Worker// to would be: 943*38e8c45fSAndroid Build Coastguard Worker// - give them a new home 944*38e8c45fSAndroid Build Coastguard Worker// - convert them to AIDL instead of having manually written parceling code 945*38e8c45fSAndroid Build Coastguard Worker 946*38e8c45fSAndroid Build Coastguard Workercc_library { 947*38e8c45fSAndroid Build Coastguard Worker name: "libbatterystats_aidl", 948*38e8c45fSAndroid Build Coastguard Worker host_supported: true, 949*38e8c45fSAndroid Build Coastguard Worker srcs: [ 950*38e8c45fSAndroid Build Coastguard Worker "IBatteryStats.cpp", 951*38e8c45fSAndroid Build Coastguard Worker ], 952*38e8c45fSAndroid Build Coastguard Worker export_include_dirs: ["include_batterystats"], 953*38e8c45fSAndroid Build Coastguard Worker shared_libs: [ 954*38e8c45fSAndroid Build Coastguard Worker "libbinder", 955*38e8c45fSAndroid Build Coastguard Worker "libutils", 956*38e8c45fSAndroid Build Coastguard Worker ], 957*38e8c45fSAndroid Build Coastguard Worker} 958*38e8c45fSAndroid Build Coastguard Worker 959*38e8c45fSAndroid Build Coastguard Workercc_library { 960*38e8c45fSAndroid Build Coastguard Worker name: "libprocessinfoservice_aidl", 961*38e8c45fSAndroid Build Coastguard Worker host_supported: true, 962*38e8c45fSAndroid Build Coastguard Worker srcs: [ 963*38e8c45fSAndroid Build Coastguard Worker "IProcessInfoService.cpp", 964*38e8c45fSAndroid Build Coastguard Worker "ProcessInfoService.cpp", 965*38e8c45fSAndroid Build Coastguard Worker ], 966*38e8c45fSAndroid Build Coastguard Worker export_include_dirs: ["include_processinfo"], 967*38e8c45fSAndroid Build Coastguard Worker shared_libs: [ 968*38e8c45fSAndroid Build Coastguard Worker "libbinder", 969*38e8c45fSAndroid Build Coastguard Worker "libutils", 970*38e8c45fSAndroid Build Coastguard Worker "liblog", 971*38e8c45fSAndroid Build Coastguard Worker ], 972*38e8c45fSAndroid Build Coastguard Worker} 973*38e8c45fSAndroid Build Coastguard Worker 974*38e8c45fSAndroid Build Coastguard Workercc_library { 975*38e8c45fSAndroid Build Coastguard Worker name: "libactivitymanager_aidl", 976*38e8c45fSAndroid Build Coastguard Worker srcs: [ 977*38e8c45fSAndroid Build Coastguard Worker "ActivityManager.cpp", 978*38e8c45fSAndroid Build Coastguard Worker "IActivityManager.cpp", 979*38e8c45fSAndroid Build Coastguard Worker "IUidObserver.cpp", 980*38e8c45fSAndroid Build Coastguard Worker ":activity_manager_procstate_aidl", 981*38e8c45fSAndroid Build Coastguard Worker ], 982*38e8c45fSAndroid Build Coastguard Worker export_include_dirs: ["include_activitymanager"], 983*38e8c45fSAndroid Build Coastguard Worker shared_libs: [ 984*38e8c45fSAndroid Build Coastguard Worker "libbinder", 985*38e8c45fSAndroid Build Coastguard Worker "libutils", 986*38e8c45fSAndroid Build Coastguard Worker "liblog", 987*38e8c45fSAndroid Build Coastguard Worker ], 988*38e8c45fSAndroid Build Coastguard Worker aidl: { 989*38e8c45fSAndroid Build Coastguard Worker export_aidl_headers: true, 990*38e8c45fSAndroid Build Coastguard Worker }, 991*38e8c45fSAndroid Build Coastguard Worker} 992*38e8c45fSAndroid Build Coastguard Worker 993*38e8c45fSAndroid Build Coastguard Workercc_binary { 994*38e8c45fSAndroid Build Coastguard Worker name: "servicedispatcher", 995*38e8c45fSAndroid Build Coastguard Worker host_supported: false, 996*38e8c45fSAndroid Build Coastguard Worker srcs: [ 997*38e8c45fSAndroid Build Coastguard Worker "servicedispatcher.cpp", 998*38e8c45fSAndroid Build Coastguard Worker ], 999*38e8c45fSAndroid Build Coastguard Worker shared_libs: [ 1000*38e8c45fSAndroid Build Coastguard Worker "libbase", 1001*38e8c45fSAndroid Build Coastguard Worker "libbinder", 1002*38e8c45fSAndroid Build Coastguard Worker "liblog", 1003*38e8c45fSAndroid Build Coastguard Worker "libutils", 1004*38e8c45fSAndroid Build Coastguard Worker "android.debug_aidl-cpp", 1005*38e8c45fSAndroid Build Coastguard Worker ], 1006*38e8c45fSAndroid Build Coastguard Worker} 1007