• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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