1// Copyright (C) 2021 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.
14package {
15    default_applicable_licenses: ["Android-Apache-2.0"],
16}
17
18apex_key {
19    name: "com.android.compos.key",
20    public_key: "com.android.compos.avbpubkey",
21    private_key: "com.android.compos.pem",
22}
23
24android_app_certificate {
25    name: "com.android.compos.certificate",
26    certificate: "com.android.compos",
27}
28
29apex {
30    name: "com.android.compos",
31    manifest: "manifest.json",
32    file_contexts: ":com.android.compos-file_contexts",
33    key: "com.android.compos.key",
34    certificate: ":com.android.compos.certificate",
35
36    // TODO(b/206618706): make it updatable
37    updatable: false,
38    future_updatable: false,
39    platform_apis: true,
40
41    system_ext_specific: true,
42
43    binaries: [
44        // Used in Android
45        "compos_verify",
46        "composd",
47        "composd_cmd",
48
49        // Used in VM
50        "compos_key_helper",
51        "compsvc",
52    ],
53
54    native_shared_libs: [
55        // b/334192594: compsvc has a transitive dependency to libminijail.
56        // Adding it explicitly here is required because the existence of
57        // it in Microdroid cannot be guaranteed.
58        "libminijail",
59    ],
60
61    systemserverclasspath_fragments: ["com.android.compos-systemserverclasspath-fragment"],
62
63    apps: [
64        "CompOSPayloadApp",
65    ],
66
67    prebuilts: [
68        "com.android.compos.init.rc",
69    ],
70}
71
72systemserverclasspath_fragment {
73    name: "com.android.compos-systemserverclasspath-fragment",
74    contents: ["service-compos"],
75    apex_available: ["com.android.compos"],
76}
77
78prebuilt_etc {
79    name: "com.android.compos.init.rc",
80    src: "composd.rc",
81    filename: "init.rc",
82    installable: false,
83}
84