1// Copyright (C) 2018 The Android Open Source Project 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15// Defaults shared between real and test versions of the APEX. 16package { 17 // See: http://go/android-license-faq 18 // A large-scale-change added 'default_applicable_licenses' to import 19 // all of the 'license_kinds' from "external_conscrypt_license" 20 // to get the below license kinds: 21 // SPDX-license-identifier-Apache-2.0 22 default_applicable_licenses: ["external_conscrypt_license"], 23} 24 25apex_defaults { 26 name: "com.android.conscrypt-defaults", 27 androidManifest: ":com.android.conscrypt-androidManifest", 28 compile_multilib: "both", 29 bootclasspath_fragments: ["com.android.conscrypt-bootclasspath-fragment"], 30 jni_libs: ["libjavacrypto"], 31 prebuilts: ["current_sdkinfo"], 32 multilib: { 33 both: { 34 binaries: ["boringssl_self_test"], 35 }, 36 }, 37 key: "apex.conscrypt.key", 38 certificate: ":com.android.conscrypt.certificate", 39 // Indicates that pre-installed version of this apex can be compressed. 40 // Whether it actually will be compressed is controlled on per-device basis. 41 compressible: true, 42 43 // IMPORTANT: q-launched-dcla-enabled-apex-module enables the build system to make 44 // sure the package compatible to Android 10 in two ways: 45 // - build the APEX package compatible to Android 10 46 // so that the package can be installed. 47 // - build artifacts (lib/javalib/bin) against Android 10 SDK 48 // so that the artifacts can run. 49 defaults: ["q-launched-dcla-enabled-apex-module"], 50} 51 52filegroup { 53 name: "com.android.conscrypt-androidManifest", 54 srcs: ["AndroidManifest.xml"], 55} 56 57apex_key { 58 name: "apex.conscrypt.key", 59 public_key: "com.android.conscrypt.avbpubkey", 60 private_key: "com.android.conscrypt.pem", 61} 62 63android_app_certificate { 64 name: "com.android.conscrypt.certificate", 65 certificate: "com.android.conscrypt", 66} 67 68prebuilt_etc { 69 name: "com.android.conscrypt.ld.config.txt", 70 src: "ld.config.txt", 71 filename: "ld.config.txt", 72 installable: false, 73} 74 75// Production APEX 76apex { 77 name: "com.android.conscrypt", 78 visibility: [ 79 "//external/conscrypt", 80 "//vendor:__subpackages__", 81 ], 82 defaults: ["com.android.conscrypt-defaults"], 83 manifest: "apex_manifest.json", 84 binaries: ["boringssl_self_test"], 85 prebuilts: [ 86 "com.android.conscrypt.ld.config.txt", 87 "target-cacert-apex-01419da9.0", 88 "target-cacert-apex-04f60c28.0", 89 "target-cacert-apex-0d69c7e1.0", 90 "target-cacert-apex-10531352.0", 91 "target-cacert-apex-1ae85e5e.0", 92 "target-cacert-apex-1b0f7e5c.0", 93 "target-cacert-apex-1df5a75f.0", 94 "target-cacert-apex-1e1eab7c.0", 95 "target-cacert-apex-1e8e7201.0", 96 "target-cacert-apex-1ec40989.0", 97 "target-cacert-apex-1f58a078.0", 98 "target-cacert-apex-219d9499.0", 99 "target-cacert-apex-23f4c490.0", 100 "target-cacert-apex-252252d2.0", 101 "target-cacert-apex-2add47b6.0", 102 "target-cacert-apex-2d9dafe4.0", 103 "target-cacert-apex-302904dd.0", 104 "target-cacert-apex-304d27c3.0", 105 "target-cacert-apex-31188b5e.0", 106 "target-cacert-apex-33ee480d.0", 107 "target-cacert-apex-35105088.0", 108 "target-cacert-apex-399e7759.0", 109 "target-cacert-apex-3ad48a91.0", 110 "target-cacert-apex-3c860d51.0", 111 "target-cacert-apex-3c899c73.0", 112 "target-cacert-apex-3c9a4d3b.0", 113 "target-cacert-apex-3e7271e8.0", 114 "target-cacert-apex-41a3f684.0", 115 "target-cacert-apex-455f1b52.0", 116 "target-cacert-apex-48a195d8.0", 117 "target-cacert-apex-4be590e0.0", 118 "target-cacert-apex-4c3982f2.0", 119 "target-cacert-apex-5046c355.0", 120 "target-cacert-apex-52b525c7.0", 121 "target-cacert-apex-53a1b57a.0", 122 "target-cacert-apex-583d0756.0", 123 "target-cacert-apex-5a3f0ff8.0", 124 "target-cacert-apex-5acf816d.0", 125 "target-cacert-apex-5f47b495.0", 126 "target-cacert-apex-5f9a69fa.0", 127 "target-cacert-apex-5fdd185d.0", 128 "target-cacert-apex-60afe812.0", 129 "target-cacert-apex-6187b673.0", 130 "target-cacert-apex-63a2c897.0", 131 "target-cacert-apex-69105f4f.0", 132 "target-cacert-apex-6b03dec0.0", 133 "target-cacert-apex-6f7454b3.0", 134 "target-cacert-apex-75680d2e.0", 135 "target-cacert-apex-76579174.0", 136 "target-cacert-apex-7892ad52.0", 137 "target-cacert-apex-7a7c655d.0", 138 "target-cacert-apex-7a819ef2.0", 139 "target-cacert-apex-81b9768f.0", 140 "target-cacert-apex-82223c44.0", 141 "target-cacert-apex-83e9984f.0", 142 "target-cacert-apex-85cde254.0", 143 "target-cacert-apex-86212b19.0", 144 "target-cacert-apex-869fbf79.0", 145 "target-cacert-apex-8794b4e3.0", 146 "target-cacert-apex-882de061.0", 147 "target-cacert-apex-88950faa.0", 148 "target-cacert-apex-89c02a45.0", 149 "target-cacert-apex-8d6437c3.0", 150 "target-cacert-apex-9282e51c.0", 151 "target-cacert-apex-9339512a.0", 152 "target-cacert-apex-93851c9e.0", 153 "target-cacert-apex-9479c8c3.0", 154 "target-cacert-apex-9576d26b.0", 155 "target-cacert-apex-9591a472.0", 156 "target-cacert-apex-95aff9e3.0", 157 "target-cacert-apex-9685a493.0", 158 "target-cacert-apex-985c1f52.0", 159 "target-cacert-apex-99e1b953.0", 160 "target-cacert-apex-9aef356c.0", 161 "target-cacert-apex-9d6523ce.0", 162 "target-cacert-apex-a2c66da8.0", 163 "target-cacert-apex-a3896b44.0", 164 "target-cacert-apex-a716d4ed.0", 165 "target-cacert-apex-a81e292b.0", 166 "target-cacert-apex-a9d40e02.0", 167 "target-cacert-apex-ab5346f4.0", 168 "target-cacert-apex-ab59055e.0", 169 "target-cacert-apex-b0ed035a.0", 170 "target-cacert-apex-b0f3e76e.0", 171 "target-cacert-apex-b30d5fda.0", 172 "target-cacert-apex-b3fb433b.0", 173 "target-cacert-apex-b74d2bd5.0", 174 "target-cacert-apex-b7db1890.0", 175 "target-cacert-apex-b872f2b4.0", 176 "target-cacert-apex-b92fd57f.0", 177 "target-cacert-apex-b936d1c6.0", 178 "target-cacert-apex-bc3f2570.0", 179 "target-cacert-apex-bd43e1dd.0", 180 "target-cacert-apex-bdacca6f.0", 181 "target-cacert-apex-bf64f35b.0", 182 "target-cacert-apex-c44cc0c0.0", 183 "target-cacert-apex-c491639e.0", 184 "target-cacert-apex-c559d742.0", 185 "target-cacert-apex-c7f1359b.0", 186 "target-cacert-apex-c90bc37d.0", 187 "target-cacert-apex-cb1c3204.0", 188 "target-cacert-apex-ccc52f49.0", 189 "target-cacert-apex-cf701eeb.0", 190 "target-cacert-apex-d06393bb.0", 191 "target-cacert-apex-d16a5865.0", 192 "target-cacert-apex-d16a5865.1", 193 "target-cacert-apex-d18e9066.0", 194 "target-cacert-apex-d39b0a2c.0", 195 "target-cacert-apex-d41b5e2a.0", 196 "target-cacert-apex-d4c339cb.0", 197 "target-cacert-apex-d59297b8.0", 198 "target-cacert-apex-d7746a63.0", 199 "target-cacert-apex-d96b65e2.0", 200 "target-cacert-apex-da7377f6.0", 201 "target-cacert-apex-dbc54cab.0", 202 "target-cacert-apex-dbff3a01.0", 203 "target-cacert-apex-dc99f41e.0", 204 "target-cacert-apex-dfc0fe80.0", 205 "target-cacert-apex-e13665f9.0", 206 "target-cacert-apex-e442e424.0", 207 "target-cacert-apex-e48193cf.0", 208 "target-cacert-apex-e7c037b4.0", 209 "target-cacert-apex-e8651083.0", 210 "target-cacert-apex-ed39abd0.0", 211 "target-cacert-apex-edcbddb5.0", 212 "target-cacert-apex-ee532fd5.0", 213 "target-cacert-apex-f013ecaf.0", 214 "target-cacert-apex-f058632f.0", 215 "target-cacert-apex-f0cd152c.0", 216 "target-cacert-apex-f459871d.0", 217 "target-cacert-apex-f8fc53da.0", 218 "target-cacert-apex-fb5fa911.0", 219 "target-cacert-apex-fd08c599.0", 220 "target-cacert-apex-fde84897.0", 221 ], 222} 223 224// Encapsulate the contributions made by the com.android.conscrypt to the bootclasspath. 225bootclasspath_fragment { 226 name: "com.android.conscrypt-bootclasspath-fragment", 227 contents: ["conscrypt"], 228 apex_available: ["com.android.conscrypt"], 229 // The bootclasspath_fragments that provide APIs on which this depends. 230 fragments: [ 231 { 232 apex: "com.android.art", 233 module: "art-bootclasspath-fragment", 234 }, 235 ], 236 // The APIs provided by this fragment. 237 api: { 238 stub_libs: [ 239 "conscrypt.module.public.api", 240 ], 241 }, 242 // The core platform APIs provided by this fragment. 243 core_platform_api: { 244 stub_libs: [ 245 "conscrypt.module.platform.api", 246 ], 247 }, 248 // Additional hidden API flags that override the default flags derived 249 // from the api stub libraries. 250 hidden_api: { 251 max_target_o_low_priority: ["hiddenapi/hiddenapi-max-target-o-low-priority.txt"], 252 253 // This module does not contain any split packages. 254 split_packages: [], 255 256 // The following packages and all their subpackages currently only 257 // contain classes from this bootclasspath_fragment. Listing a package 258 // here won't prevent other bootclasspath modules from adding classes in 259 // any of those packages but it will prevent them from adding those 260 // classes into an API surface, e.g. public, system, etc.. Doing so will 261 // result in a build failure due to inconsistent flags. 262 package_prefixes: [ 263 "android.net.ssl", 264 "com.android.org.conscrypt", 265 ], 266 }, 267} 268