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 15package { 16 // See: http://go/android-license-faq 17 // A large-scale-change added 'default_applicable_licenses' to import 18 // all of the 'license_kinds' from "bootable_recovery_license" 19 // to get the below license kinds: 20 // SPDX-license-identifier-Apache-2.0 21 default_applicable_licenses: ["bootable_recovery_license"], 22} 23 24cc_defaults { 25 name: "update_verifier_defaults", 26 27 defaults: [ 28 "recovery_defaults", 29 ], 30 31 local_include_dirs: [ 32 "include", 33 ], 34} 35 36python_library_host { 37 name: "care_map_proto_py", 38 srcs: [ 39 "care_map.proto", 40 ], 41 proto: {type: "lite", canonical_path_from_root: false}, 42 visibility: [ 43 "//build/make/tools/releasetools:__subpackages__", 44 ], 45} 46 47cc_library_static { 48 name: "libupdate_verifier", 49 50 defaults: [ 51 "update_verifier_defaults", 52 ], 53 54 srcs: [ 55 "care_map.proto", 56 "update_verifier.cpp", 57 ], 58 59 export_include_dirs: [ 60 "include", 61 ], 62 63 static_libs: [ 64 "libotautil", 65 "libvold_binder", 66 ], 67 68 whole_static_libs: [ 69 "libsnapuserd_client", 70 ], 71 72 shared_libs: [ 73 "[email protected]", 74 "libboot_control_client", 75 "libbase", 76 "libcutils", 77 "libbinder", 78 "libutils", 79 ], 80 81 proto: { 82 type: "lite", 83 export_proto_headers: true, 84 }, 85} 86 87cc_binary { 88 name: "update_verifier", 89 90 defaults: [ 91 "update_verifier_defaults", 92 ], 93 94 srcs: [ 95 "update_verifier_main.cpp", 96 ], 97 98 static_libs: [ 99 "libupdate_verifier", 100 "libotautil", 101 "libvold_binder", 102 ], 103 104 shared_libs: [ 105 "[email protected]", 106 "libbase", 107 "libcutils", 108 "libhardware", 109 "libhidlbase", 110 "liblog", 111 "libprotobuf-cpp-lite", 112 "libbinder", 113 "libutils", 114 "libboot_control_client", 115 ], 116 117 init_rc: [ 118 "update_verifier.rc", 119 ], 120} 121 122python_binary_host { 123 name: "care_map_generator", 124 125 srcs: [ 126 "care_map_generator.py", 127 "care_map.proto", 128 ], 129 libs: [ 130 "python-symbol", 131 // Soong won't add "libprotobuf-python" to the dependencies if 132 // filegroup contains .proto files. So add it here explicitly. 133 "libprotobuf-python", 134 ], 135 proto: { 136 canonical_path_from_root: false, 137 }, 138 139 version: { 140 py3: { 141 embedded_launcher: true, 142 }, 143 }, 144} 145