package(default_visibility = ["//visibility:public"])

filegroup(
    name = "sdk",
    srcs = ["//external:android/sdk"],
)

android_library(
    name = "incremental_stub_application",
    deps = ["//src/tools/android/java/com/google/devtools/build/android/incrementaldeployment:incremental_stub_application"],
)

android_library(
    name = "incremental_split_stub_application",
    deps = ["//src/tools/android/java/com/google/devtools/build/android/incrementaldeployment:incremental_split_stub_application"],
)

sh_binary(
    name = "aar_generator",
    srcs = ["aar_generator.sh"],
    data = ["//src/tools/android/java/com/google/devtools/build/android:AarGeneratorAction"],
)

sh_binary(
    name = "resources_processor",
    srcs = ["resources_processor.sh"],
    data = ["//src/tools/android/java/com/google/devtools/build/android:AndroidResourceProcessingAction"],
)

sh_binary(
    name = "resource_shrinker",
    srcs = ["resource_shrinker.sh"],
    data = ["//src/tools/android/java/com/google/devtools/build/android:ResourceShrinkerAction"],
)

sh_binary(
    name = "merge_dexzips",
    srcs = ["merge_dexzips.sh"],
    data = ["//src/tools/android/java/com/google/devtools/build/android/ziputils:reducer"],
)

sh_binary(
    name = "shuffle_jars",
    srcs = ["shuffle_jars.sh"],
    data = ["//src/tools/android/java/com/google/devtools/build/android/ziputils:mapper"],
)

sh_binary(
    name = "dexbuilder",
    srcs = ["fail.sh"],
)

sh_binary(
    name = "dexmerger",
    srcs = ["fail.sh"],
)

sh_binary(
    name = "IdlClass",
    srcs = ["idlclass.sh"],
    data = ["//src/tools/android/java/com/google/devtools/build/android/idlclass:IdlClass"],
)

filegroup(
    name = "package_parser",
    srcs = ["//src/tools/android/java/com/google/devtools/build/android/ideinfo:PackageParser_deploy.jar"],
)

java_binary(
    name = "PackageParser",
    main_class = "com.google.devtools.build.android.ideinfo.PackageParser",
    visibility = ["//visibility:public"],
    runtime_deps = [":package_parser_import"],
)

java_import(
    name = "package_parser_import",
    jars = [":package_parser"],
)

py_binary(
    name = "merge_manifests",
    srcs = [
        "android_permissions.py",
        "merge_manifests.py",
    ],
    deps = [
        "//third_party/py/gflags",
    ],
)

py_test(
    name = "merge_manifests_test",
    srcs = ["merge_manifests_test.py"],
    deps = [":merge_manifests"],
)

py_binary(
    name = "build_incremental_dexmanifest",
    srcs = [":build_incremental_dexmanifest.py"],
    deps = [],
)

py_binary(
    name = "build_split_manifest",
    srcs = ["build_split_manifest.py"],
    deps = [
        "//third_party/py/gflags",
    ],
)

py_test(
    name = "build_split_manifest_test",
    srcs = ["build_split_manifest_test.py"],
    deps = [
        ":build_split_manifest",
    ],
)

py_binary(
    name = "incremental_install",
    srcs = ["incremental_install.py"],
    deps = [
        "//third_party/py/concurrent:futures",
        "//third_party/py/gflags",
    ],
)

py_test(
    name = "incremental_install_test",
    srcs = ["incremental_install_test.py"],
    deps = [
        ":incremental_install",
        "//third_party/py/mock",
    ],
)

py_binary(
    name = "strip_resources",
    srcs = ["strip_resources.py"],
    deps = [
        "//third_party/py/gflags",
    ],
)

py_binary(
    name = "stubify_manifest",
    srcs = ["stubify_manifest.py"],
    deps = [
        "//third_party/py/gflags",
    ],
)

py_test(
    name = "stubify_manifest_test",
    srcs = ["stubify_manifest_test.py"],
    deps = [
        ":stubify_manifest",
    ],
)

# If needed, this file can be regenerated by (validity is 30 * 365 days):
# keytool -genkeypair \
#    -alias androiddebugkey \
#    -dname "CN=Android Debug, O=Android, C=US" \
#    -keystore cica \
#    -sigalg SHA256withDSA \
#    -validity 10950
filegroup(
    name = "debug_keystore",
    srcs = ["bazel_debug.keystore"],
)

filegroup(
    name = "srcs",
    srcs = glob(["**"]),
)
