blob: 2e34aead1eab784a060536b6d0311b712af239a5 [file] [log] [blame] [edit]
# Copyright 2013 The Flutter Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//flutter/testing/rules/runtime_mode.gni")
template("gradle_task") {
action(target_name) {
assert(defined(invoker.task), "task is a required parmaeter")
assert(defined(invoker.outputs), "outputs is a required parameter")
assert(defined(invoker.sources), "sources is a required parameter")
assert(defined(invoker.gradle_project_dir),
"gradle_project_dir is required (normally: rebase_path(\".\"")
assert(defined(invoker.app_name), "app_name is a required parameter")
script = "//flutter/testing/rules/run_gradle.py"
inputs = [ "$root_out_dir/flutter.jar" ]
sources = invoker.sources
outputs = invoker.outputs
out_dir = rebase_path("$root_out_dir/${invoker.app_name}")
args = [
invoker.gradle_project_dir,
invoker.task,
"--no-daemon",
"-Pflutter_jar=" + rebase_path("$root_out_dir/flutter.jar"),
"-Pout_dir=$out_dir",
"--project-cache-dir=$out_dir/.gradle",
"--gradle-user-home=$out_dir/.gradle",
]
if (is_aot) {
args += [ "-Plibapp=" + rebase_path("$target_gen_dir/libs") ]
inputs += [ "$target_gen_dir/libs/$android_app_abi/libapp.so" ]
}
deps = [ "//flutter/shell/platform/android:android_jar" ]
if (defined(invoker.deps)) {
deps += invoker.deps
}
}
}