# 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 } } }