1package { 2 // See: http://go/android-license-faq 3 // A large-scale-change added 'default_applicable_licenses' to import 4 // all of the 'license_kinds' from "frameworks_native_license" 5 // to get the below license kinds: 6 // SPDX-license-identifier-Apache-2.0 7 default_applicable_licenses: ["frameworks_native_license"], 8} 9 10aidl_interface { 11 name: "binderReadParcelIface", 12 host_supported: true, 13 unstable: true, 14 srcs: [ 15 "parcelables/EmptyParcelable.aidl", 16 "parcelables/SingleDataParcelable.aidl", 17 "parcelables/GenericDataParcelable.aidl", 18 ], 19 flags: [ 20 "-Werror", 21 ], 22 backend: { 23 java: { 24 enabled: true, 25 platform_apis: true, 26 }, 27 rust: { 28 enabled: true, 29 }, 30 }, 31} 32 33cc_fuzz { 34 name: "binder_parcel_fuzzer", 35 host_supported: true, 36 37 fuzz_config: { 38 cc: [ 39 "[email protected]", 40 "[email protected]", 41 ], 42 triage_assignee: "[email protected]", 43 use_for_presubmit: true, 44 }, 45 46 srcs: [ 47 "binder.cpp", 48 "binder_ndk.cpp", 49 "hwbinder.cpp", 50 "main.cpp", 51 "random_fd.cpp", 52 "random_parcel.cpp", 53 ], 54 static_libs: [ 55 "libbase", 56 "libbinder_random_parcel", 57 "libcutils", 58 "libhidlbase", 59 "liblog", 60 "binderReadParcelIface-cpp", 61 "binderReadParcelIface-ndk", 62 ], 63 64 target: { 65 android: { 66 shared_libs: [ 67 "libbinder_ndk", 68 "libbinder", 69 "libutils", 70 ], 71 }, 72 host: { 73 static_libs: [ 74 "libbinder_ndk", 75 "libbinder", 76 "libutils", 77 ], 78 }, 79 darwin: { 80 enabled: false, 81 }, 82 }, 83 // This flag enables verbose output in the fuzz target, and is very useful 84 // for debugging a failure. If you are trying to diagnose how a crash was 85 // produced, you may find uncommenting the below line very useful. 86 // cflags: ["-DENABLE_LOG_FUZZ"], 87} 88 89cc_library_static { 90 name: "libbinder_random_parcel", 91 host_supported: true, 92 vendor_available: true, 93 target: { 94 darwin: { 95 enabled: false, 96 }, 97 }, 98 srcs: [ 99 "random_binder.cpp", 100 "random_fd.cpp", 101 "random_parcel.cpp", 102 "libbinder_driver.cpp", 103 "libbinder_ndk_driver.cpp", 104 ], 105 shared_libs: [ 106 "libbase", 107 "libbinder", 108 "libbinder_ndk", 109 "libcutils", 110 "libutils", 111 ], 112 local_include_dirs: ["include_random_parcel"], 113 export_include_dirs: ["include_random_parcel"], 114} 115 116cc_library { 117 name: "libbinder_random_parcel_seeds", 118 host_supported: true, 119 vendor_available: true, 120 target: { 121 darwin: { 122 enabled: false, 123 }, 124 }, 125 srcs: [ 126 "random_parcel_seeds.cpp", 127 ], 128 shared_libs: [ 129 "libbase", 130 "libbinder", 131 "libbinder_ndk", 132 "libcutils", 133 "libutils", 134 ], 135 static_libs: [ 136 "libbinder_random_parcel", 137 ], 138 include_dirs: [ 139 "bionic/libc/kernel/android/uapi/", 140 "bionic/libc/kernel/uapi/", 141 ], 142 local_include_dirs: [ 143 "include_random_parcel_seeds", 144 ], 145 export_include_dirs: ["include_random_parcel_seeds"], 146} 147 148cc_binary_host { 149 name: "binder2corpus", 150 static_libs: [ 151 "libbinder_random_parcel", 152 "libbinder_random_parcel_seeds", 153 ], 154 cflags: [ 155 "-DBINDER_WITH_KERNEL_IPC", 156 ], 157 srcs: [ 158 "binder2corpus/binder2corpus.cpp", 159 ], 160 shared_libs: [ 161 "libbase", 162 "libbinder", 163 "libutils", 164 "libcutils", 165 ], 166} 167