1*8975f5c5SAndroid Build Coastguard Worker# Copyright 2022 The Chromium Authors 2*8975f5c5SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be 3*8975f5c5SAndroid Build Coastguard Worker# found in the LICENSE file. 4*8975f5c5SAndroid Build Coastguard Worker 5*8975f5c5SAndroid Build Coastguard Workerimport("//build/config/android/rules.gni") 6*8975f5c5SAndroid Build Coastguard Worker 7*8975f5c5SAndroid Build Coastguard Worker# Creates a stub .apk suitable for use with compressed system APKs. 8*8975f5c5SAndroid Build Coastguard Worker# 9*8975f5c5SAndroid Build Coastguard Worker# Variables: 10*8975f5c5SAndroid Build Coastguard Worker# package_name: Package name to use for the stub. 11*8975f5c5SAndroid Build Coastguard Worker# version_code: Version code for the stub. 12*8975f5c5SAndroid Build Coastguard Worker# version_name: Version name for the stub. 13*8975f5c5SAndroid Build Coastguard Worker# package_info_from_target: Use the package name and version_code from this 14*8975f5c5SAndroid Build Coastguard Worker# apk/bundle target. 15*8975f5c5SAndroid Build Coastguard Worker# static_library_name: For static library apks, name for the <static-library>. 16*8975f5c5SAndroid Build Coastguard Worker# static_library_version: For static library apks, version for the 17*8975f5c5SAndroid Build Coastguard Worker# <static-library> tag (for TrichromeLibrary, we set this to be the same 18*8975f5c5SAndroid Build Coastguard Worker# as the package's version_code) 19*8975f5c5SAndroid Build Coastguard Worker# stub_output: Path to output stub apk (default: do not create a stub). 20*8975f5c5SAndroid Build Coastguard Worker# 21*8975f5c5SAndroid Build Coastguard Worker# package_name and package_info_from_target are mutually exclusive. 22*8975f5c5SAndroid Build Coastguard Workertemplate("system_image_stub_apk") { 23*8975f5c5SAndroid Build Coastguard Worker # Android requires stubs end with -Stub.apk. 24*8975f5c5SAndroid Build Coastguard Worker assert(filter_exclude([ invoker.stub_output ], [ "*-Stub.apk" ]) == [], 25*8975f5c5SAndroid Build Coastguard Worker "stub_output \"${invoker.stub_output}\" must end with \"-Stub.apk\"") 26*8975f5c5SAndroid Build Coastguard Worker 27*8975f5c5SAndroid Build Coastguard Worker _resource_apk_path = "${target_out_dir}/$target_name.ap_" 28*8975f5c5SAndroid Build Coastguard Worker _resource_apk_target_name = "${target_name}__compile_resources" 29*8975f5c5SAndroid Build Coastguard Worker 30*8975f5c5SAndroid Build Coastguard Worker _manifest_target_name = "${target_name}__manifest" 31*8975f5c5SAndroid Build Coastguard Worker _manifest_path = "$target_gen_dir/$_manifest_target_name.xml" 32*8975f5c5SAndroid Build Coastguard Worker action("$_manifest_target_name") { 33*8975f5c5SAndroid Build Coastguard Worker outputs = [ _manifest_path ] 34*8975f5c5SAndroid Build Coastguard Worker script = "//build/android/gyp/create_stub_manifest.py" 35*8975f5c5SAndroid Build Coastguard Worker args = [ 36*8975f5c5SAndroid Build Coastguard Worker "--output", 37*8975f5c5SAndroid Build Coastguard Worker rebase_path(_manifest_path, root_build_dir), 38*8975f5c5SAndroid Build Coastguard Worker ] 39*8975f5c5SAndroid Build Coastguard Worker if (defined(invoker.static_library_name)) { 40*8975f5c5SAndroid Build Coastguard Worker args += [ 41*8975f5c5SAndroid Build Coastguard Worker "--static-library-name", 42*8975f5c5SAndroid Build Coastguard Worker invoker.static_library_name, 43*8975f5c5SAndroid Build Coastguard Worker ] 44*8975f5c5SAndroid Build Coastguard Worker 45*8975f5c5SAndroid Build Coastguard Worker # TODO(crbug.com/40253411): Make static_library_version mandatory. 46*8975f5c5SAndroid Build Coastguard Worker if (defined(invoker.static_library_version)) { 47*8975f5c5SAndroid Build Coastguard Worker args += [ 48*8975f5c5SAndroid Build Coastguard Worker "--static-library-version", 49*8975f5c5SAndroid Build Coastguard Worker invoker.static_library_version, 50*8975f5c5SAndroid Build Coastguard Worker ] 51*8975f5c5SAndroid Build Coastguard Worker } else { 52*8975f5c5SAndroid Build Coastguard Worker args += [ "--static-library-version=1" ] 53*8975f5c5SAndroid Build Coastguard Worker } 54*8975f5c5SAndroid Build Coastguard Worker } 55*8975f5c5SAndroid Build Coastguard Worker } 56*8975f5c5SAndroid Build Coastguard Worker 57*8975f5c5SAndroid Build Coastguard Worker _target_sdk_version = default_target_sdk_version 58*8975f5c5SAndroid Build Coastguard Worker if (defined(invoker.override_target_sdk)) { 59*8975f5c5SAndroid Build Coastguard Worker _target_sdk_version = invoker.override_target_sdk 60*8975f5c5SAndroid Build Coastguard Worker } 61*8975f5c5SAndroid Build Coastguard Worker 62*8975f5c5SAndroid Build Coastguard Worker action_with_pydeps(_resource_apk_target_name) { 63*8975f5c5SAndroid Build Coastguard Worker script = "//build/android/gyp/compile_resources.py" 64*8975f5c5SAndroid Build Coastguard Worker inputs = [ 65*8975f5c5SAndroid Build Coastguard Worker _manifest_path, 66*8975f5c5SAndroid Build Coastguard Worker android_sdk_tools_bundle_aapt2, 67*8975f5c5SAndroid Build Coastguard Worker android_sdk_jar, 68*8975f5c5SAndroid Build Coastguard Worker 69*8975f5c5SAndroid Build Coastguard Worker # TODO(b/315080809#comment4): remove these files after fixing 70*8975f5c5SAndroid Build Coastguard Worker # build/print_python_deps.py. 71*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/__init__.py", 72*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/__init__.py", 73*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/compiler/__init__.py", 74*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/compiler/plugin_pb2.py", 75*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/descriptor.py", 76*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/descriptor_database.py", 77*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/descriptor_pb2.py", 78*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/descriptor_pool.py", 79*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/__init__.py", 80*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/_parameterized.py", 81*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/api_implementation.py", 82*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/builder.py", 83*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/containers.py", 84*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/decoder.py", 85*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/descriptor_database_test.py", 86*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/descriptor_pool_test.py", 87*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/descriptor_test.py", 88*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/encoder.py", 89*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/enum_type_wrapper.py", 90*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/extension_dict.py", 91*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/generator_test.py", 92*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/import_test.py", 93*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/import_test_package/__init__.py", 94*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/json_format_test.py", 95*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/keywords_test.py", 96*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/message_factory_test.py", 97*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/message_listener.py", 98*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/message_test.py", 99*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/proto_builder_test.py", 100*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/python_message.py", 101*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/reflection_test.py", 102*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/service_reflection_test.py", 103*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/symbol_database_test.py", 104*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/test_util.py", 105*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/testing_refleaks.py", 106*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/text_encoding_test.py", 107*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/text_format_test.py", 108*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/type_checkers.py", 109*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/unknown_fields_test.py", 110*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/well_known_types.py", 111*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/well_known_types_test.py", 112*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/wire_format.py", 113*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/internal/wire_format_test.py", 114*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/json_format.py", 115*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/message.py", 116*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/message_factory.py", 117*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/proto_builder.py", 118*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/pyext/__init__.py", 119*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/pyext/cpp_message.py", 120*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/reflection.py", 121*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/service.py", 122*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/service_reflection.py", 123*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/symbol_database.py", 124*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/text_encoding.py", 125*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/text_format.py", 126*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/unknown_fields.py", 127*8975f5c5SAndroid Build Coastguard Worker "//third_party/protobuf/python/google/protobuf/util/__init__.py", 128*8975f5c5SAndroid Build Coastguard Worker ] 129*8975f5c5SAndroid Build Coastguard Worker outputs = [ _resource_apk_path ] 130*8975f5c5SAndroid Build Coastguard Worker args = [ 131*8975f5c5SAndroid Build Coastguard Worker "--aapt2-path", 132*8975f5c5SAndroid Build Coastguard Worker rebase_path(android_sdk_tools_bundle_aapt2, root_build_dir), 133*8975f5c5SAndroid Build Coastguard Worker "--min-sdk-version=$default_min_sdk_version", 134*8975f5c5SAndroid Build Coastguard Worker "--target-sdk-version=$_target_sdk_version", 135*8975f5c5SAndroid Build Coastguard Worker "--android-manifest", 136*8975f5c5SAndroid Build Coastguard Worker rebase_path(_manifest_path, root_build_dir), 137*8975f5c5SAndroid Build Coastguard Worker "--arsc-path", 138*8975f5c5SAndroid Build Coastguard Worker rebase_path(_resource_apk_path, root_build_dir), 139*8975f5c5SAndroid Build Coastguard Worker ] 140*8975f5c5SAndroid Build Coastguard Worker deps = [ ":$_manifest_target_name" ] 141*8975f5c5SAndroid Build Coastguard Worker if (defined(invoker.package_name)) { 142*8975f5c5SAndroid Build Coastguard Worker _package_name = invoker.package_name 143*8975f5c5SAndroid Build Coastguard Worker _version_code = invoker.version_code 144*8975f5c5SAndroid Build Coastguard Worker _version_name = invoker.version_name 145*8975f5c5SAndroid Build Coastguard Worker 146*8975f5c5SAndroid Build Coastguard Worker # TODO(crbug.com/40253411): Make static_library_version mandatory. 147*8975f5c5SAndroid Build Coastguard Worker if (defined(invoker.static_library_version)) { 148*8975f5c5SAndroid Build Coastguard Worker assert(invoker.static_library_version == _version_code, 149*8975f5c5SAndroid Build Coastguard Worker "$invoker.static_library_version must equal $_version_code.") 150*8975f5c5SAndroid Build Coastguard Worker } 151*8975f5c5SAndroid Build Coastguard Worker } else { 152*8975f5c5SAndroid Build Coastguard Worker _target = invoker.package_info_from_target 153*8975f5c5SAndroid Build Coastguard Worker deps += [ "${_target}$build_config_target_suffix" ] 154*8975f5c5SAndroid Build Coastguard Worker _build_config = get_label_info(_target, "target_gen_dir") + "/" + 155*8975f5c5SAndroid Build Coastguard Worker get_label_info(_target, "name") + ".build_config.json" 156*8975f5c5SAndroid Build Coastguard Worker inputs += [ _build_config ] 157*8975f5c5SAndroid Build Coastguard Worker _rebased_build_config = rebase_path(_build_config, root_build_dir) 158*8975f5c5SAndroid Build Coastguard Worker _package_name = "@FileArg($_rebased_build_config:deps_info:package_name)" 159*8975f5c5SAndroid Build Coastguard Worker _version_code = "@FileArg($_rebased_build_config:deps_info:version_code)" 160*8975f5c5SAndroid Build Coastguard Worker _version_name = "@FileArg($_rebased_build_config:deps_info:version_name)" 161*8975f5c5SAndroid Build Coastguard Worker 162*8975f5c5SAndroid Build Coastguard Worker # TODO(crbug.com/40253411): Make static_library_version mandatory. 163*8975f5c5SAndroid Build Coastguard Worker # Pass this through to ensure that the version code in the build config is 164*8975f5c5SAndroid Build Coastguard Worker # the same as the static library version. 165*8975f5c5SAndroid Build Coastguard Worker if (defined(invoker.static_library_version)) { 166*8975f5c5SAndroid Build Coastguard Worker args += [ 167*8975f5c5SAndroid Build Coastguard Worker "--static-library-version", 168*8975f5c5SAndroid Build Coastguard Worker invoker.static_library_version, 169*8975f5c5SAndroid Build Coastguard Worker ] 170*8975f5c5SAndroid Build Coastguard Worker } 171*8975f5c5SAndroid Build Coastguard Worker } 172*8975f5c5SAndroid Build Coastguard Worker 173*8975f5c5SAndroid Build Coastguard Worker args += [ 174*8975f5c5SAndroid Build Coastguard Worker "--rename-manifest-package=$_package_name", 175*8975f5c5SAndroid Build Coastguard Worker "--arsc-package-name=$_package_name", 176*8975f5c5SAndroid Build Coastguard Worker "--version-code=$_version_code", 177*8975f5c5SAndroid Build Coastguard Worker "--version-name=$_version_name", 178*8975f5c5SAndroid Build Coastguard Worker "--include-resources", 179*8975f5c5SAndroid Build Coastguard Worker rebase_path(android_sdk_jar, root_build_dir), 180*8975f5c5SAndroid Build Coastguard Worker ] 181*8975f5c5SAndroid Build Coastguard Worker } 182*8975f5c5SAndroid Build Coastguard Worker 183*8975f5c5SAndroid Build Coastguard Worker package_apk(target_name) { 184*8975f5c5SAndroid Build Coastguard Worker forward_variables_from(invoker, 185*8975f5c5SAndroid Build Coastguard Worker [ 186*8975f5c5SAndroid Build Coastguard Worker "keystore_name", 187*8975f5c5SAndroid Build Coastguard Worker "keystore_path", 188*8975f5c5SAndroid Build Coastguard Worker "keystore_password", 189*8975f5c5SAndroid Build Coastguard Worker ]) 190*8975f5c5SAndroid Build Coastguard Worker min_sdk_version = default_min_sdk_version 191*8975f5c5SAndroid Build Coastguard Worker deps = [ ":$_resource_apk_target_name" ] 192*8975f5c5SAndroid Build Coastguard Worker 193*8975f5c5SAndroid Build Coastguard Worker packaged_resources_path = _resource_apk_path 194*8975f5c5SAndroid Build Coastguard Worker output_apk_path = invoker.stub_output 195*8975f5c5SAndroid Build Coastguard Worker } 196*8975f5c5SAndroid Build Coastguard Worker} 197*8975f5c5SAndroid Build Coastguard Worker 198*8975f5c5SAndroid Build Coastguard Worker# Generates artifacts for system APKs. 199*8975f5c5SAndroid Build Coastguard Worker# 200*8975f5c5SAndroid Build Coastguard Worker# Variables: 201*8975f5c5SAndroid Build Coastguard Worker# apk_or_bundle_target: Target that creates input bundle or apk. 202*8975f5c5SAndroid Build Coastguard Worker# input_apk_or_bundle: Path to input .apk or .aab. 203*8975f5c5SAndroid Build Coastguard Worker# static_library_name: For static library apks, name for the <static-library>. 204*8975f5c5SAndroid Build Coastguard Worker# static_library_version: For static library apks, version for the 205*8975f5c5SAndroid Build Coastguard Worker# <static-library> tag (for TrichromeLibrary, we set this to be the same 206*8975f5c5SAndroid Build Coastguard Worker# as the package's version_code) 207*8975f5c5SAndroid Build Coastguard Worker# output: Path to the output system .apk or .zip. 208*8975f5c5SAndroid Build Coastguard Worker# fuse_apk: Fuse all apk splits into a single .apk (default: false). 209*8975f5c5SAndroid Build Coastguard Worker# stub_output: Path to output stub apk (default: do not create a stub). 210*8975f5c5SAndroid Build Coastguard Worker# 211*8975f5c5SAndroid Build Coastguard Workertemplate("system_image_apks") { 212*8975f5c5SAndroid Build Coastguard Worker if (defined(invoker.stub_output)) { 213*8975f5c5SAndroid Build Coastguard Worker _stub_apk_target_name = "${target_name}__stub" 214*8975f5c5SAndroid Build Coastguard Worker system_image_stub_apk(_stub_apk_target_name) { 215*8975f5c5SAndroid Build Coastguard Worker forward_variables_from(invoker, 216*8975f5c5SAndroid Build Coastguard Worker [ 217*8975f5c5SAndroid Build Coastguard Worker "static_library_name", 218*8975f5c5SAndroid Build Coastguard Worker "static_library_version", 219*8975f5c5SAndroid Build Coastguard Worker "override_target_sdk", 220*8975f5c5SAndroid Build Coastguard Worker ]) 221*8975f5c5SAndroid Build Coastguard Worker package_info_from_target = invoker.apk_or_bundle_target 222*8975f5c5SAndroid Build Coastguard Worker stub_output = invoker.stub_output 223*8975f5c5SAndroid Build Coastguard Worker } 224*8975f5c5SAndroid Build Coastguard Worker } 225*8975f5c5SAndroid Build Coastguard Worker 226*8975f5c5SAndroid Build Coastguard Worker action_with_pydeps(target_name) { 227*8975f5c5SAndroid Build Coastguard Worker script = "//build/android/gyp/system_image_apks.py" 228*8975f5c5SAndroid Build Coastguard Worker deps = [ invoker.apk_or_bundle_target ] 229*8975f5c5SAndroid Build Coastguard Worker inputs = [ invoker.input_apk_or_bundle ] 230*8975f5c5SAndroid Build Coastguard Worker if (defined(invoker.stub_output)) { 231*8975f5c5SAndroid Build Coastguard Worker public_deps = [ ":$_stub_apk_target_name" ] 232*8975f5c5SAndroid Build Coastguard Worker } 233*8975f5c5SAndroid Build Coastguard Worker outputs = [ invoker.output ] 234*8975f5c5SAndroid Build Coastguard Worker args = [ 235*8975f5c5SAndroid Build Coastguard Worker "--input", 236*8975f5c5SAndroid Build Coastguard Worker rebase_path(invoker.input_apk_or_bundle, root_out_dir), 237*8975f5c5SAndroid Build Coastguard Worker "--output", 238*8975f5c5SAndroid Build Coastguard Worker rebase_path(invoker.output, root_out_dir), 239*8975f5c5SAndroid Build Coastguard Worker ] 240*8975f5c5SAndroid Build Coastguard Worker 241*8975f5c5SAndroid Build Coastguard Worker _is_bundle = 242*8975f5c5SAndroid Build Coastguard Worker filter_exclude([ invoker.input_apk_or_bundle ], [ "*.aab" ]) == [] 243*8975f5c5SAndroid Build Coastguard Worker 244*8975f5c5SAndroid Build Coastguard Worker if (_is_bundle) { 245*8975f5c5SAndroid Build Coastguard Worker _wrapper_path = "$root_out_dir/bin/" + 246*8975f5c5SAndroid Build Coastguard Worker get_label_info(invoker.apk_or_bundle_target, "name") 247*8975f5c5SAndroid Build Coastguard Worker args += [ 248*8975f5c5SAndroid Build Coastguard Worker "--bundle-wrapper", 249*8975f5c5SAndroid Build Coastguard Worker rebase_path(_wrapper_path, root_out_dir), 250*8975f5c5SAndroid Build Coastguard Worker ] 251*8975f5c5SAndroid Build Coastguard Worker inputs += [ _wrapper_path ] 252*8975f5c5SAndroid Build Coastguard Worker deps += [ "//build/android:apk_operations_py" ] 253*8975f5c5SAndroid Build Coastguard Worker if (defined(invoker.fuse_apk) && invoker.fuse_apk) { 254*8975f5c5SAndroid Build Coastguard Worker args += [ "--fuse-apk" ] 255*8975f5c5SAndroid Build Coastguard Worker } 256*8975f5c5SAndroid Build Coastguard Worker } 257*8975f5c5SAndroid Build Coastguard Worker } 258*8975f5c5SAndroid Build Coastguard Worker} 259