xref: /aosp_15_r20/system/apex/proto/Android.bp (revision 33f3758387333dbd2962d7edbd98681940d895da)
1*33f37583SAndroid Build Coastguard Worker/*
2*33f37583SAndroid Build Coastguard Worker * Copyright (C) 2018 The Android Open Source Project
3*33f37583SAndroid Build Coastguard Worker *
4*33f37583SAndroid Build Coastguard Worker * Licensed under the Apache License, Version 2.0 (the "License");
5*33f37583SAndroid Build Coastguard Worker * you may not use this file except in compliance with the License.
6*33f37583SAndroid Build Coastguard Worker * You may obtain a copy of the License at
7*33f37583SAndroid Build Coastguard Worker *
8*33f37583SAndroid Build Coastguard Worker *      http://www.apache.org/licenses/LICENSE-2.0
9*33f37583SAndroid Build Coastguard Worker *
10*33f37583SAndroid Build Coastguard Worker * Unless required by applicable law or agreed to in writing, software
11*33f37583SAndroid Build Coastguard Worker * distributed under the License is distributed on an "AS IS" BASIS,
12*33f37583SAndroid Build Coastguard Worker * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13*33f37583SAndroid Build Coastguard Worker * See the License for the specific language governing permissions and
14*33f37583SAndroid Build Coastguard Worker * limitations under the License.
15*33f37583SAndroid Build Coastguard Worker */
16*33f37583SAndroid Build Coastguard Worker
17*33f37583SAndroid Build Coastguard Workerpackage {
18*33f37583SAndroid Build Coastguard Worker    default_applicable_licenses: ["Android-Apache-2.0"],
19*33f37583SAndroid Build Coastguard Worker}
20*33f37583SAndroid Build Coastguard Worker
21*33f37583SAndroid Build Coastguard Workercc_library_static {
22*33f37583SAndroid Build Coastguard Worker    name: "lib_apex_manifest_proto",
23*33f37583SAndroid Build Coastguard Worker    host_supported: true,
24*33f37583SAndroid Build Coastguard Worker    proto: {
25*33f37583SAndroid Build Coastguard Worker        export_proto_headers: true,
26*33f37583SAndroid Build Coastguard Worker        type: "full",
27*33f37583SAndroid Build Coastguard Worker    },
28*33f37583SAndroid Build Coastguard Worker    srcs: ["apex_manifest.proto"],
29*33f37583SAndroid Build Coastguard Worker}
30*33f37583SAndroid Build Coastguard Worker
31*33f37583SAndroid Build Coastguard Workercc_library_static {
32*33f37583SAndroid Build Coastguard Worker    name: "lib_apex_manifest_proto_lite",
33*33f37583SAndroid Build Coastguard Worker    host_supported: true,
34*33f37583SAndroid Build Coastguard Worker    recovery_available: true,
35*33f37583SAndroid Build Coastguard Worker    proto: {
36*33f37583SAndroid Build Coastguard Worker        export_proto_headers: true,
37*33f37583SAndroid Build Coastguard Worker        type: "lite",
38*33f37583SAndroid Build Coastguard Worker    },
39*33f37583SAndroid Build Coastguard Worker    srcs: ["apex_manifest.proto"],
40*33f37583SAndroid Build Coastguard Worker    apex_available: [
41*33f37583SAndroid Build Coastguard Worker        "//apex_available:platform",
42*33f37583SAndroid Build Coastguard Worker        "com.android.runtime",
43*33f37583SAndroid Build Coastguard Worker    ],
44*33f37583SAndroid Build Coastguard Worker}
45*33f37583SAndroid Build Coastguard Worker
46*33f37583SAndroid Build Coastguard Workerrust_protobuf {
47*33f37583SAndroid Build Coastguard Worker    name: "libapex_manifest_rs",
48*33f37583SAndroid Build Coastguard Worker    protos: ["apex_manifest.proto"],
49*33f37583SAndroid Build Coastguard Worker    crate_name: "apex_manifest",
50*33f37583SAndroid Build Coastguard Worker    source_stem: "apex_manifest",
51*33f37583SAndroid Build Coastguard Worker}
52*33f37583SAndroid Build Coastguard Worker
53*33f37583SAndroid Build Coastguard Workerpython_library_host {
54*33f37583SAndroid Build Coastguard Worker    name: "apex_manifest_proto",
55*33f37583SAndroid Build Coastguard Worker    srcs: [
56*33f37583SAndroid Build Coastguard Worker        "apex_manifest.proto",
57*33f37583SAndroid Build Coastguard Worker    ],
58*33f37583SAndroid Build Coastguard Worker    proto: {
59*33f37583SAndroid Build Coastguard Worker        canonical_path_from_root: false,
60*33f37583SAndroid Build Coastguard Worker    },
61*33f37583SAndroid Build Coastguard Worker}
62*33f37583SAndroid Build Coastguard Worker
63*33f37583SAndroid Build Coastguard Workerpython_library_host {
64*33f37583SAndroid Build Coastguard Worker    name: "apex_build_info_proto",
65*33f37583SAndroid Build Coastguard Worker    srcs: [
66*33f37583SAndroid Build Coastguard Worker        "apex_build_info.proto",
67*33f37583SAndroid Build Coastguard Worker    ],
68*33f37583SAndroid Build Coastguard Worker    proto: {
69*33f37583SAndroid Build Coastguard Worker        canonical_path_from_root: false,
70*33f37583SAndroid Build Coastguard Worker    },
71*33f37583SAndroid Build Coastguard Worker}
72*33f37583SAndroid Build Coastguard Worker
73*33f37583SAndroid Build Coastguard Workerjava_library_static {
74*33f37583SAndroid Build Coastguard Worker    name: "apex_manifest_proto_java",
75*33f37583SAndroid Build Coastguard Worker    host_supported: true,
76*33f37583SAndroid Build Coastguard Worker    device_supported: false,
77*33f37583SAndroid Build Coastguard Worker    proto: {
78*33f37583SAndroid Build Coastguard Worker        type: "full",
79*33f37583SAndroid Build Coastguard Worker    },
80*33f37583SAndroid Build Coastguard Worker    srcs: ["apex_manifest.proto"],
81*33f37583SAndroid Build Coastguard Worker}
82*33f37583SAndroid Build Coastguard Worker
83*33f37583SAndroid Build Coastguard Workercc_library_static {
84*33f37583SAndroid Build Coastguard Worker    name: "lib_apex_session_state_proto",
85*33f37583SAndroid Build Coastguard Worker    host_supported: true,
86*33f37583SAndroid Build Coastguard Worker    proto: {
87*33f37583SAndroid Build Coastguard Worker        export_proto_headers: true,
88*33f37583SAndroid Build Coastguard Worker        type: "full",
89*33f37583SAndroid Build Coastguard Worker    },
90*33f37583SAndroid Build Coastguard Worker    srcs: ["session_state.proto"],
91*33f37583SAndroid Build Coastguard Worker}
92*33f37583SAndroid Build Coastguard Worker
93*33f37583SAndroid Build Coastguard Workercc_library_static {
94*33f37583SAndroid Build Coastguard Worker    name: "lib_apex_blocklist_proto",
95*33f37583SAndroid Build Coastguard Worker    host_supported: true,
96*33f37583SAndroid Build Coastguard Worker    proto: {
97*33f37583SAndroid Build Coastguard Worker        export_proto_headers: true,
98*33f37583SAndroid Build Coastguard Worker    },
99*33f37583SAndroid Build Coastguard Worker    srcs: ["apex_blocklist.proto"],
100*33f37583SAndroid Build Coastguard Worker}
101*33f37583SAndroid Build Coastguard Worker
102*33f37583SAndroid Build Coastguard Workergenrule {
103*33f37583SAndroid Build Coastguard Worker    name: "apex-protos",
104*33f37583SAndroid Build Coastguard Worker    tools: ["soong_zip"],
105*33f37583SAndroid Build Coastguard Worker    dist: {
106*33f37583SAndroid Build Coastguard Worker        targets: ["apexer_tools"],
107*33f37583SAndroid Build Coastguard Worker    },
108*33f37583SAndroid Build Coastguard Worker    srcs: [
109*33f37583SAndroid Build Coastguard Worker        "apex_manifest.proto",
110*33f37583SAndroid Build Coastguard Worker        "apex_build_info.proto",
111*33f37583SAndroid Build Coastguard Worker    ],
112*33f37583SAndroid Build Coastguard Worker    out: ["apex-protos.zip"],
113*33f37583SAndroid Build Coastguard Worker    cmd: "mkdir $(genDir)/protos && " +
114*33f37583SAndroid Build Coastguard Worker        "cp $(in) $(genDir)/protos && " +
115*33f37583SAndroid Build Coastguard Worker        "$(location soong_zip) -o $(out) -C $(genDir)/protos -D $(genDir)/protos",
116*33f37583SAndroid Build Coastguard Worker}
117