/*
 * Copyright (C) 2020 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.
 */

// This file contains all the build target that we expect tests writers
// to need to build tests.

package {
    default_applicable_licenses: ["Android-Apache-2.0"],
}

java_import_host {
    name: "tradefed",
    jars: [
        ":platformprotos", // Should be first to force using protos from the branch
        ":tradefed-prebuilt",
    ],
    installable: true,
}

// Target used for backward compatibility with suites
java_import_host {
    name: "tradefed-no-fwk",
    jars: [":tradefed-prebuilt"],
    installable: true,
}

java_import_host {
    name: "loganalysis",
    jars: [":loganalysis-prebuilt"],
    installable: true,
}

// Targets for test suites
java_import_host {
    name: "compatibility-tradefed",
    jars: [":compatibility-tradefed-prebuilt"],
    installable: true,
}

java_import_host {
    name: "compatibility-host-util",
    jars: [":compatibility-host-util-prebuilt"],
    installable: true,
}

java_genrule_host {
    name: "prebuilt_tradefed_zip",
    tools: ["soong_zip"],
    srcs: [
        ":tradefed",
        ":tradefed_dist_artifacts",
        ":compatibility-tradefed-prebuilt",
        ":compatibility-host-util-prebuilt",
    ],
    out: ["tradefed.zip"],
    cmd: "mkdir -p $(genDir)/tmp && " +
        "cp -f $(in) $(genDir)/tmp && " +
        "$(location soong_zip) -o $(out) -C $(genDir)/tmp -D $(genDir)/tmp",
    dist: {
        targets: ["tradefed"],
    },
    enabled: select(soong_config_variable("tradefed", "use_prebuilt"), {
        true: true,
        default: false,
    }),
}

phony_rule {
    name: "tradefed-core",
    phony_deps: select(soong_config_variable("tradefed", "use_prebuilt"), {
        true: [
            "tradefed",
            "atest_tradefed.sh",
        ],
        default: ["tradefed-core-src"],
    }),
}

phony_rule {
    name: "tradefed-all",
    phony_deps: select(soong_config_variable("tradefed", "use_prebuilt"), {
        true: [
            "tradefed",
            "atest_tradefed.sh",
        ],
        default: ["tradefed-all-src"],
    }),
}
