summaryrefslogtreecommitdiff
path: root/tools/otatools_package/Android.bp
blob: ef8c867228f09070c559cf9017d4ca8204dd0e88 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
// Copyright (C) 2025 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//      http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

package {
    // See: http://go/android-license-faq
    default_applicable_licenses: ["Android-Apache-2.0"],
}

java_genrule_host {
    name: "otatools_package_dep_jars",
    tools: ["soong_zip"],
    compile_multilib: "first",
    cmd: "mkdir -p $(genDir)/framework && " +
        "cp $(in) $(genDir)/framework && " +
        "$(location soong_zip) -o $(out) -C $(genDir) -D $(genDir)/framework",
    srcs: [
        ":apksigner",
        ":boot_signer",
        ":signapk",
        ":verity_signer",
    ],
    out: ["otatools_package_dep_jars.zip"],
}

genrule {
    name: "otatools_package_cert_files",
    tools: ["soong_zip"],
    cmd: "mkdir -p $(genDir)/tmp/ && " +
        "echo $(in) > $(genDir)/tmp/zip_files.list && " +
        "$(location soong_zip) -o $(out) -l $(genDir)/tmp/zip_files.list ",
    srcs: [
        ":soong_generated_otatools_package_filegroup",
    ],
    out: ["otatools_package_cert_files.zip"],
}

cc_genrule {
    name: "otatools_package_dep_libs",
    host_supported: true,
    device_supported: false,
    compile_multilib: "first",
    tools: ["soong_zip"],
    cmd: "mkdir -p $(genDir)/$$CC_MULTILIB &&" +
        "cp $(in) $(genDir)/$$CC_MULTILIB && " +
        "$(location soong_zip) -o $(out) -C $(genDir) -D $(genDir)/$$CC_MULTILIB",
    srcs: [
        ":libbase",
        ":libbrillo",
        ":libbrillo-stream",
        ":libc++",
        "//external/libchrome:libchrome",
        ":libconscrypt_openjdk_jni",
        ":libcrypto",
        ":libcrypto_utils",
        ":libcutils",
        ":libevent",
        ":libext2_blkid",
        ":libext2_com_err",
        ":libext2_e2p",
        ":libext2_quota",
        ":libext2_uuid",
        ":libext2fs",
        ":libext4_utils",
        ":libfec",
        ":libhidl-gen-utils",
        ":libhidlmetadata",
        ":libicui18n",
        ":libicuuc",
        ":liblog",
        ":liblp",
        ":liblz4",
        ":libpcre2",
        ":libprocessgroup",
        ":libprotobuf-cpp-lite",
        ":libselinux",
        ":libsparse",
        ":libsqlite",
        ":libsquashfs_utils",
        ":libssl",
        ":libz",
        ":libziparchive",
    ],
    out: ["otatools_package_dep_libs.zip"],
}

java_genrule_host {
    name: "otatools_package",
    tools: ["merge_zips"],
    compile_multilib: "first",
    cmd: "$(location merge_zips) $(out) $(in)",
    srcs: [
        ":otatools_package_cert_files",
        ":otatools_package_dep_jars",
        ":otatools_package_dep_libs",
        ":otatools_package_releasetools",
    ],
    // TODO: Rename as "otatools.zip" when the rest files are ready.
    out: ["otatools_temp.zip"],
    dist: {
        targets: [
            "otatools-package-temp",
        ],
    },
}