# Copyright 2018 The Chromium 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("//build/config/android/rules.gni")

# Library groups
java_group("android_support_v4_java") {
  deps = [
    ":com_android_support_support_compat_java",
    ":com_android_support_support_core_ui_java",
    ":com_android_support_support_core_utils_java",
    ":com_android_support_support_fragment_java",
    ":com_android_support_support_media_compat_java",
    ":com_android_support_support_v4_java",
  ]
}
java_group("android_support_v7_appcompat_java") {
  deps = [
    ":android_support_v4_java",
    ":com_android_support_animated_vector_drawable_java",
    ":com_android_support_appcompat_v7_java",
    ":com_android_support_support_vector_drawable_java",
  ]
}

java_group("android_support_multidex_java") {
  deps = [
    ":com_android_support_multidex_java",
  ]
}
java_group("android_support_annotations_java") {
  deps = [
    ":com_android_support_support_annotations_java",
  ]
}
java_group("android_support_cardview_java") {
  deps = [
    ":com_android_support_cardview_v7_java",
  ]
}
java_group("android_support_compat_java") {
  deps = [
    ":com_android_support_support_compat_java",
  ]
}
java_group("android_support_core_ui_java") {
  deps = [
    ":com_android_support_support_core_ui_java",
  ]
}
java_group("android_support_core_utils_java") {
  deps = [
    ":com_android_support_support_core_utils_java",
  ]
}
java_group("android_support_design_java") {
  deps = [
    ":com_android_support_design_java",
  ]
}
java_group("android_support_fragment_java") {
  deps = [
    ":com_android_support_support_fragment_java",
  ]
}
java_group("android_support_media_compat_java") {
  deps = [
    ":com_android_support_support_media_compat_java",
  ]
}
java_group("android_support_transition_java") {
  deps = [
    ":com_android_support_transition_java",
  ]
}
java_group("android_support_v7_appcompat_java_internal") {
  deps = [
    ":com_android_support_appcompat_v7_java",
  ]
}
java_group("android_support_v7_gridlayout_java") {
  deps = [
    ":com_android_support_gridlayout_v7_java",
  ]
}
java_group("android_support_v7_mediarouter_java") {
  deps = [
    ":com_android_support_mediarouter_v7_java",
  ]
}
java_group("android_support_v7_palette_java") {
  deps = [
    ":com_android_support_palette_v7_java",
  ]
}
java_group("android_support_v7_recyclerview_java") {
  deps = [
    ":com_android_support_recyclerview_v7_java",
  ]
}
java_group("android_support_v13_java") {
  deps = [
    ":com_android_support_support_v13_java",
  ]
}
java_group("android_support_vector_drawable_java") {
  deps = [
    ":com_android_support_support_vector_drawable_java",
  ]
}
java_group("google_play_services_basement_java") {
  deps = [
    ":com_google_android_gms_play_services_basement_java",
  ]
}
java_group("google_play_services_tasks_java") {
  deps = [
    ":com_google_android_gms_play_services_tasks_java",
  ]
}
java_group("google_play_services_base_java") {
  deps = [
    ":com_google_android_gms_play_services_base_java",
  ]
}
java_group("google_play_services_auth_base_java") {
  deps = [
    ":com_google_android_gms_play_services_auth_base_java",
  ]
}
java_group("google_play_services_auth_api_phone_java") {
  deps = [
    ":com_google_android_gms_play_services_auth_api_phone_java",
  ]
}
java_group("google_play_services_auth_java") {
  deps = [
    ":com_google_android_gms_play_services_auth_java",
  ]
}
java_group("google_play_services_cast_java") {
  deps = [
    ":com_google_android_gms_play_services_cast_java",
  ]
}
java_group("google_play_services_cast_framework_java") {
  deps = [
    ":com_google_android_gms_play_services_cast_framework_java",
  ]
}
java_group("google_play_services_iid_java") {
  deps = [
    ":com_google_android_gms_play_services_iid_java",
  ]
}
java_group("google_play_services_instantapps_java") {
  deps = [
    ":com_google_android_gms_play_services_instantapps_java",
  ]
}
java_group("google_play_services_gcm_java") {
  deps = [
    ":com_google_android_gms_play_services_gcm_java",
  ]
}
java_group("google_play_services_location_java") {
  deps = [
    ":com_google_android_gms_play_services_location_java",
  ]
}
java_group("google_play_services_vision_java") {
  deps = [
    ":com_google_android_gms_play_services_vision_java",
  ]
}
java_group("google_play_services_vision_common_java") {
  deps = [
    ":com_google_android_gms_play_services_vision_common_java",
  ]
}
java_group("google_play_services_fido_java") {
  deps = [
    ":com_google_android_gms_play_services_fido_java",
  ]
}

# The dependencies below don't seem to be used but break downstream builds
# when not defined.
java_group("android_support_v7_preference_java") {
  deps = [
    ":com_android_support_preference_v7_java",
  ]
}
java_group("android_support_v14_preference_java") {
  deps = [
    ":com_android_support_preference_v14_java",
  ]
}
java_group("android_support_v17_leanback_java") {
  deps = [
    ":com_android_support_leanback_v17_java",
  ]
}
java_group("android_support_v17_preference_java") {
  deps = [
    ":com_android_support_preference_leanback_v17_java",
  ]
}

# Annotation processors for Dagger2.
java_annotation_processor("dagger_processor") {
  main_class = "dagger.internal.codegen.ComponentProcessor"
  deps = [
    ":com_google_dagger_dagger_compiler_java",
  ]
}

# The section below is generated by running
# `//tools/android/roll/android_deps/fetch_all.sh`

# === Generated Code Start ===
java_prebuilt("android_arch_lifecycle_common_java") {
  jar_path = "libs/android_arch_lifecycle_common/common-1.0.0.jar"
  output_name = "android_arch_lifecycle_common"
  supports_android = true
  deps = [
    ":com_android_support_support_annotations_java",
  ]
}

android_aar_prebuilt("android_arch_lifecycle_runtime_java") {
  aar_path = "libs/android_arch_lifecycle_runtime/runtime-1.0.0.aar"
  info_path =
      "libs/android_arch_lifecycle_runtime/android_arch_lifecycle_runtime.info"
  deps = [
    ":android_arch_core_common_java",
    ":android_arch_lifecycle_common_java",
  ]
}

android_aar_prebuilt("com_android_support_appcompat_v7_java") {
  aar_path = "libs/com_android_support_appcompat_v7/appcompat-v7-27.0.0.aar"
  info_path = "libs/com_android_support_appcompat_v7/com_android_support_appcompat_v7.info"
  deps = [
    ":com_android_support_animated_vector_drawable_java",
    ":com_android_support_support_annotations_java",
    ":com_android_support_support_core_utils_java",
    ":com_android_support_support_fragment_java",
    ":com_android_support_support_vector_drawable_java",
  ]
}

android_aar_prebuilt("com_android_support_cardview_v7_java") {
  aar_path = "libs/com_android_support_cardview_v7/cardview-v7-27.0.0.aar"
  info_path = "libs/com_android_support_cardview_v7/com_android_support_cardview_v7.info"
  deps = [
    ":com_android_support_support_annotations_java",
  ]
}

android_aar_prebuilt("com_android_support_design_java") {
  aar_path = "libs/com_android_support_design/design-27.0.0.aar"
  info_path = "libs/com_android_support_design/com_android_support_design.info"
  deps = [
    ":com_android_support_appcompat_v7_java",
    ":com_android_support_recyclerview_v7_java",
    ":com_android_support_support_v4_java",
    ":com_android_support_transition_java",
  ]
}

android_aar_prebuilt("com_android_support_gridlayout_v7_java") {
  aar_path = "libs/com_android_support_gridlayout_v7/gridlayout-v7-27.0.0.aar"
  info_path = "libs/com_android_support_gridlayout_v7/com_android_support_gridlayout_v7.info"
  deps = [
    ":com_android_support_support_compat_java",
    ":com_android_support_support_core_ui_java",
  ]
}

android_aar_prebuilt("com_android_support_mediarouter_v7_java") {
  aar_path = "libs/com_android_support_mediarouter_v7/mediarouter-v7-27.0.0.aar"
  info_path = "libs/com_android_support_mediarouter_v7/com_android_support_mediarouter_v7.info"
  deps = [
    ":com_android_support_appcompat_v7_java",
    ":com_android_support_palette_v7_java",
    ":com_android_support_support_media_compat_java",
  ]
}

android_aar_prebuilt("com_android_support_multidex_java") {
  aar_path = "libs/com_android_support_multidex/multidex-1.0.0.aar"
  info_path =
      "libs/com_android_support_multidex/com_android_support_multidex.info"
}

android_aar_prebuilt("com_android_support_preference_leanback_v17_java") {
  aar_path = "libs/com_android_support_preference_leanback_v17/preference-leanback-v17-27.0.0.aar"
  info_path = "libs/com_android_support_preference_leanback_v17/com_android_support_preference_leanback_v17.info"
  deps = [
    ":com_android_support_appcompat_v7_java",
    ":com_android_support_leanback_v17_java",
    ":com_android_support_preference_v14_java",
    ":com_android_support_preference_v7_java",
    ":com_android_support_recyclerview_v7_java",
    ":com_android_support_support_v4_java",
  ]
}

android_aar_prebuilt("com_android_support_recyclerview_v7_java") {
  aar_path =
      "libs/com_android_support_recyclerview_v7/recyclerview-v7-27.0.0.aar"
  info_path = "libs/com_android_support_recyclerview_v7/com_android_support_recyclerview_v7.info"
  deps = [
    ":com_android_support_support_annotations_java",
    ":com_android_support_support_compat_java",
    ":com_android_support_support_core_ui_java",
  ]
}

java_prebuilt("com_android_support_support_annotations_java") {
  jar_path = "libs/com_android_support_support_annotations/support-annotations-27.0.0.jar"
  output_name = "com_android_support_support_annotations"
  supports_android = true
}

android_aar_prebuilt("com_android_support_support_compat_java") {
  aar_path = "libs/com_android_support_support_compat/support-compat-27.0.0.aar"
  info_path = "libs/com_android_support_support_compat/com_android_support_support_compat.info"
  deps = [
    ":android_arch_lifecycle_runtime_java",
    ":com_android_support_support_annotations_java",
  ]
  ignore_aidl = true
}

android_aar_prebuilt("com_android_support_support_core_ui_java") {
  aar_path =
      "libs/com_android_support_support_core_ui/support-core-ui-27.0.0.aar"
  info_path = "libs/com_android_support_support_core_ui/com_android_support_support_core_ui.info"
  deps = [
    ":com_android_support_support_annotations_java",
    ":com_android_support_support_compat_java",
  ]
}

android_aar_prebuilt("com_android_support_support_core_utils_java") {
  aar_path = "libs/com_android_support_support_core_utils/support-core-utils-27.0.0.aar"
  info_path = "libs/com_android_support_support_core_utils/com_android_support_support_core_utils.info"
  deps = [
    ":com_android_support_support_annotations_java",
    ":com_android_support_support_compat_java",
  ]
}

android_aar_prebuilt("com_android_support_support_v13_java") {
  aar_path = "libs/com_android_support_support_v13/support-v13-27.0.0.aar"
  info_path = "libs/com_android_support_support_v13/com_android_support_support_v13.info"
  deps = [
    ":com_android_support_support_annotations_java",
    ":com_android_support_support_v4_java",
  ]
}

android_aar_prebuilt("com_android_support_support_v4_java") {
  aar_path = "libs/com_android_support_support_v4/support-v4-27.0.0.aar"
  info_path =
      "libs/com_android_support_support_v4/com_android_support_support_v4.info"
  deps = [
    ":com_android_support_support_compat_java",
    ":com_android_support_support_core_ui_java",
    ":com_android_support_support_core_utils_java",
    ":com_android_support_support_fragment_java",
    ":com_android_support_support_media_compat_java",
  ]
}

android_aar_prebuilt("com_google_android_gms_play_services_auth_java") {
  aar_path = "libs/com_google_android_gms_play_services_auth/play-services-auth-15.0.1.aar"
  info_path = "libs/com_google_android_gms_play_services_auth/com_google_android_gms_play_services_auth.info"
  deps = [
    ":com_google_android_gms_play_services_auth_api_phone_java",
    ":com_google_android_gms_play_services_auth_base_java",
    ":com_google_android_gms_play_services_base_java",
    ":com_google_android_gms_play_services_basement_java",
    ":com_google_android_gms_play_services_tasks_java",
  ]
}

android_aar_prebuilt(
    "com_google_android_gms_play_services_auth_api_phone_java") {
  aar_path = "libs/com_google_android_gms_play_services_auth_api_phone/play-services-auth-api-phone-15.0.1.aar"
  info_path = "libs/com_google_android_gms_play_services_auth_api_phone/com_google_android_gms_play_services_auth_api_phone.info"
  deps = [
    ":com_google_android_gms_play_services_base_java",
    ":com_google_android_gms_play_services_basement_java",
    ":com_google_android_gms_play_services_tasks_java",
  ]
}

android_aar_prebuilt("com_google_android_gms_play_services_auth_base_java") {
  aar_path = "libs/com_google_android_gms_play_services_auth_base/play-services-auth-base-15.0.1.aar"
  info_path = "libs/com_google_android_gms_play_services_auth_base/com_google_android_gms_play_services_auth_base.info"
  deps = [
    ":com_google_android_gms_play_services_base_java",
    ":com_google_android_gms_play_services_basement_java",
    ":com_google_android_gms_play_services_tasks_java",
  ]
}

android_aar_prebuilt("com_google_android_gms_play_services_base_java") {
  aar_path = "libs/com_google_android_gms_play_services_base/play-services-base-15.0.1.aar"
  info_path = "libs/com_google_android_gms_play_services_base/com_google_android_gms_play_services_base.info"
  deps = [
    ":com_google_android_gms_play_services_basement_java",
    ":com_google_android_gms_play_services_tasks_java",
  ]
}

android_aar_prebuilt("com_google_android_gms_play_services_basement_java") {
  aar_path = "libs/com_google_android_gms_play_services_basement/play-services-basement-15.0.1.aar"
  info_path = "libs/com_google_android_gms_play_services_basement/com_google_android_gms_play_services_basement.info"
  deps = [
    ":com_android_support_support_v4_java",
  ]
  input_jars_paths = [ "$android_sdk/optional/org.apache.http.legacy.jar" ]
}

android_aar_prebuilt("com_google_android_gms_play_services_cast_java") {
  aar_path = "libs/com_google_android_gms_play_services_cast/play-services-cast-16.0.1.aar"
  info_path = "libs/com_google_android_gms_play_services_cast/com_google_android_gms_play_services_cast.info"
  deps = [
    ":com_android_support_mediarouter_v7_java",
    ":com_google_android_gms_play_services_base_java",
    ":com_google_android_gms_play_services_basement_java",
    ":com_google_android_gms_play_services_flags_java",
    ":com_google_android_gms_play_services_tasks_java",
  ]
}

android_aar_prebuilt(
    "com_google_android_gms_play_services_cast_framework_java") {
  aar_path = "libs/com_google_android_gms_play_services_cast_framework/play-services-cast-framework-16.0.1.aar"
  info_path = "libs/com_google_android_gms_play_services_cast_framework/com_google_android_gms_play_services_cast_framework.info"
  deps = [
    ":com_android_support_mediarouter_v7_java",
    ":com_android_support_recyclerview_v7_java",
    ":com_google_android_gms_play_services_base_java",
    ":com_google_android_gms_play_services_basement_java",
    ":com_google_android_gms_play_services_cast_java",
  ]
}

android_aar_prebuilt("com_google_android_gms_play_services_fido_java") {
  aar_path = "libs/com_google_android_gms_play_services_fido/play-services-fido-15.0.1.aar"
  info_path = "libs/com_google_android_gms_play_services_fido/com_google_android_gms_play_services_fido.info"
  deps = [
    ":com_google_android_gms_play_services_base_java",
    ":com_google_android_gms_play_services_basement_java",
    ":com_google_android_gms_play_services_tasks_java",
  ]
}

android_aar_prebuilt("com_google_android_gms_play_services_gcm_java") {
  aar_path = "libs/com_google_android_gms_play_services_gcm/play-services-gcm-15.0.1.aar"
  info_path = "libs/com_google_android_gms_play_services_gcm/com_google_android_gms_play_services_gcm.info"
  deps = [
    ":com_google_android_gms_play_services_base_java",
    ":com_google_android_gms_play_services_basement_java",
    ":com_google_android_gms_play_services_iid_java",
    ":com_google_android_gms_play_services_stats_java",
  ]
}

android_aar_prebuilt("com_google_android_gms_play_services_iid_java") {
  aar_path = "libs/com_google_android_gms_play_services_iid/play-services-iid-15.0.1.aar"
  info_path = "libs/com_google_android_gms_play_services_iid/com_google_android_gms_play_services_iid.info"
  deps = [
    ":com_google_android_gms_play_services_base_java",
    ":com_google_android_gms_play_services_basement_java",
    ":com_google_android_gms_play_services_stats_java",
    ":com_google_android_gms_play_services_tasks_java",
  ]
}

android_aar_prebuilt("com_google_android_gms_play_services_instantapps_java") {
  aar_path = "libs/com_google_android_gms_play_services_instantapps/play-services-instantapps-16.0.0.aar"
  info_path = "libs/com_google_android_gms_play_services_instantapps/com_google_android_gms_play_services_instantapps.info"
  deps = [
    ":com_google_android_gms_play_services_base_java",
    ":com_google_android_gms_play_services_basement_java",
    ":com_google_android_gms_play_services_tasks_java",
  ]
}

android_aar_prebuilt("com_google_android_gms_play_services_location_java") {
  aar_path = "libs/com_google_android_gms_play_services_location/play-services-location-15.0.1.aar"
  info_path = "libs/com_google_android_gms_play_services_location/com_google_android_gms_play_services_location.info"
  deps = [
    ":com_google_android_gms_play_services_base_java",
    ":com_google_android_gms_play_services_basement_java",
    ":com_google_android_gms_play_services_places_placereport_java",
    ":com_google_android_gms_play_services_tasks_java",
  ]
}

android_aar_prebuilt("com_google_android_gms_play_services_tasks_java") {
  aar_path = "libs/com_google_android_gms_play_services_tasks/play-services-tasks-15.0.1.aar"
  info_path = "libs/com_google_android_gms_play_services_tasks/com_google_android_gms_play_services_tasks.info"
  deps = [
    ":com_google_android_gms_play_services_basement_java",
  ]
}

android_aar_prebuilt("com_google_android_gms_play_services_vision_java") {
  aar_path = "libs/com_google_android_gms_play_services_vision/play-services-vision-15.0.1.aar"
  info_path = "libs/com_google_android_gms_play_services_vision/com_google_android_gms_play_services_vision.info"
  deps = [
    ":com_google_android_gms_play_services_base_java",
    ":com_google_android_gms_play_services_basement_java",
    ":com_google_android_gms_play_services_vision_common_java",
  ]
}

android_aar_prebuilt(
    "com_google_android_gms_play_services_vision_common_java") {
  aar_path = "libs/com_google_android_gms_play_services_vision_common/play-services-vision-common-15.0.1.aar"
  info_path = "libs/com_google_android_gms_play_services_vision_common/com_google_android_gms_play_services_vision_common.info"
  deps = [
    ":com_google_android_gms_play_services_base_java",
    ":com_google_android_gms_play_services_basement_java",
    ":com_google_android_gms_play_services_clearcut_java",
    ":com_google_android_gms_play_services_flags_java",
  ]
}

android_aar_prebuilt("com_google_ar_core_java") {
  aar_path = "libs/com_google_ar_core/core-1.6.0.aar"
  info_path = "libs/com_google_ar_core/com_google_ar_core.info"
  extract_native_libraries = true
}

java_prebuilt("com_google_dagger_dagger_java") {
  jar_path = "libs/com_google_dagger_dagger/dagger-2.17.jar"
  output_name = "com_google_dagger_dagger"
  supports_android = true
  deps = [
    ":javax_inject_javax_inject_java",
  ]
}

java_prebuilt("com_google_dagger_dagger_compiler_java") {
  jar_path = "libs/com_google_dagger_dagger_compiler/dagger-compiler-2.17.jar"
  output_name = "com_google_dagger_dagger_compiler"
  deps = [
    ":com_google_dagger_dagger_java",
    ":com_google_dagger_dagger_producers_java",
    ":com_google_dagger_dagger_spi_java",
    ":com_google_googlejavaformat_google_java_format_java",
    ":com_google_guava_guava_java",
    ":com_squareup_javapoet_java",
    ":javax_annotation_jsr250_api_java",
    ":javax_inject_javax_inject_java",
  ]
}

java_prebuilt("com_google_protobuf_protobuf_lite_java") {
  jar_path = "libs/com_google_protobuf_protobuf_lite/protobuf-lite-3.0.1.jar"
  output_name = "com_google_protobuf_protobuf_lite"
  supports_android = true
}

java_prebuilt("com_squareup_javapoet_java") {
  jar_path = "libs/com_squareup_javapoet/javapoet-1.11.0.jar"
  output_name = "com_squareup_javapoet"
}

java_prebuilt("javax_inject_javax_inject_java") {
  jar_path = "libs/javax_inject_javax_inject/javax.inject-1.jar"
  output_name = "javax_inject_javax_inject"
  supports_android = true
}

java_prebuilt("android_arch_core_common_java") {
  jar_path = "libs/android_arch_core_common/common-1.0.0.jar"
  output_name = "android_arch_core_common"
  supports_android = true
  visibility = [ ":*" ]
  deps = [
    ":com_android_support_support_annotations_java",
  ]
}

android_aar_prebuilt("com_android_support_animated_vector_drawable_java") {
  aar_path = "libs/com_android_support_animated_vector_drawable/animated-vector-drawable-27.0.0.aar"
  info_path = "libs/com_android_support_animated_vector_drawable/com_android_support_animated_vector_drawable.info"
  visibility = [ ":*" ]
  deps = [
    ":com_android_support_support_core_ui_java",
    ":com_android_support_support_vector_drawable_java",
  ]
}

android_aar_prebuilt("com_android_support_leanback_v17_java") {
  aar_path = "libs/com_android_support_leanback_v17/leanback-v17-27.0.0.aar"
  info_path = "libs/com_android_support_leanback_v17/com_android_support_leanback_v17.info"
  visibility = [ ":*" ]
  deps = [
    ":com_android_support_recyclerview_v7_java",
    ":com_android_support_support_compat_java",
    ":com_android_support_support_core_ui_java",
    ":com_android_support_support_fragment_java",
    ":com_android_support_support_media_compat_java",
  ]
}

android_aar_prebuilt("com_android_support_palette_v7_java") {
  aar_path = "libs/com_android_support_palette_v7/palette-v7-27.0.0.aar"
  info_path =
      "libs/com_android_support_palette_v7/com_android_support_palette_v7.info"
  visibility = [ ":*" ]
  deps = [
    ":com_android_support_support_compat_java",
    ":com_android_support_support_core_utils_java",
  ]
}

android_aar_prebuilt("com_android_support_preference_v14_java") {
  aar_path = "libs/com_android_support_preference_v14/preference-v14-27.0.0.aar"
  info_path = "libs/com_android_support_preference_v14/com_android_support_preference_v14.info"
  visibility = [ ":*" ]
  deps = [
    ":com_android_support_appcompat_v7_java",
    ":com_android_support_preference_v7_java",
    ":com_android_support_recyclerview_v7_java",
    ":com_android_support_support_v4_java",
  ]
}

android_aar_prebuilt("com_android_support_preference_v7_java") {
  aar_path = "libs/com_android_support_preference_v7/preference-v7-27.0.0.aar"
  info_path = "libs/com_android_support_preference_v7/com_android_support_preference_v7.info"
  visibility = [ ":*" ]
  deps = [
    ":com_android_support_appcompat_v7_java",
    ":com_android_support_recyclerview_v7_java",
    ":com_android_support_support_v4_java",
  ]
}

android_aar_prebuilt("com_android_support_support_fragment_java") {
  aar_path =
      "libs/com_android_support_support_fragment/support-fragment-27.0.0.aar"
  info_path = "libs/com_android_support_support_fragment/com_android_support_support_fragment.info"
  visibility = [ ":*" ]
  deps = [
    ":com_android_support_support_annotations_java",
    ":com_android_support_support_compat_java",
    ":com_android_support_support_core_ui_java",
    ":com_android_support_support_core_utils_java",
  ]
}

android_aar_prebuilt("com_android_support_support_media_compat_java") {
  aar_path = "libs/com_android_support_support_media_compat/support-media-compat-27.0.0.aar"
  info_path = "libs/com_android_support_support_media_compat/com_android_support_support_media_compat.info"
  visibility = [ ":*" ]
  deps = [
    ":com_android_support_support_annotations_java",
    ":com_android_support_support_compat_java",
  ]
  ignore_aidl = true
}

android_aar_prebuilt("com_android_support_support_vector_drawable_java") {
  aar_path = "libs/com_android_support_support_vector_drawable/support-vector-drawable-27.0.0.aar"
  info_path = "libs/com_android_support_support_vector_drawable/com_android_support_support_vector_drawable.info"
  visibility = [ ":*" ]
  deps = [
    ":com_android_support_support_annotations_java",
    ":com_android_support_support_compat_java",
  ]
}

android_aar_prebuilt("com_android_support_transition_java") {
  aar_path = "libs/com_android_support_transition/transition-27.0.0.aar"
  info_path =
      "libs/com_android_support_transition/com_android_support_transition.info"
  visibility = [ ":*" ]
  deps = [
    ":com_android_support_support_annotations_java",
    ":com_android_support_support_compat_java",
  ]
  deps += [ ":com_android_support_support_fragment_java" ]
}

android_aar_prebuilt("com_google_android_gms_play_services_clearcut_java") {
  aar_path = "libs/com_google_android_gms_play_services_clearcut/play-services-clearcut-15.0.1.aar"
  info_path = "libs/com_google_android_gms_play_services_clearcut/com_google_android_gms_play_services_clearcut.info"
  visibility = [ ":*" ]
  deps = [
    ":com_google_android_gms_play_services_base_java",
    ":com_google_android_gms_play_services_basement_java",
    ":com_google_android_gms_play_services_phenotype_java",
    ":com_google_android_gms_play_services_tasks_java",
  ]
}

android_aar_prebuilt("com_google_android_gms_play_services_flags_java") {
  aar_path = "libs/com_google_android_gms_play_services_flags/play-services-flags-15.0.1.aar"
  info_path = "libs/com_google_android_gms_play_services_flags/com_google_android_gms_play_services_flags.info"
  visibility = [ ":*" ]
  deps = [
    ":com_google_android_gms_play_services_base_java",
    ":com_google_android_gms_play_services_basement_java",
  ]
}

android_aar_prebuilt("com_google_android_gms_play_services_phenotype_java") {
  aar_path = "libs/com_google_android_gms_play_services_phenotype/play-services-phenotype-15.0.1.aar"
  info_path = "libs/com_google_android_gms_play_services_phenotype/com_google_android_gms_play_services_phenotype.info"
  visibility = [ ":*" ]
  deps = [
    ":com_google_android_gms_play_services_base_java",
    ":com_google_android_gms_play_services_basement_java",
    ":com_google_android_gms_play_services_tasks_java",
  ]
}

android_aar_prebuilt(
    "com_google_android_gms_play_services_places_placereport_java") {
  aar_path = "libs/com_google_android_gms_play_services_places_placereport/play-services-places-placereport-15.0.1.aar"
  info_path = "libs/com_google_android_gms_play_services_places_placereport/com_google_android_gms_play_services_places_placereport.info"
  visibility = [ ":*" ]
  deps = [
    ":com_google_android_gms_play_services_basement_java",
  ]
}

android_aar_prebuilt("com_google_android_gms_play_services_stats_java") {
  aar_path = "libs/com_google_android_gms_play_services_stats/play-services-stats-15.0.1.aar"
  info_path = "libs/com_google_android_gms_play_services_stats/com_google_android_gms_play_services_stats.info"
  visibility = [ ":*" ]
  deps = [
    ":com_google_android_gms_play_services_basement_java",
  ]
}

java_prebuilt("com_google_code_findbugs_jsr305_java") {
  jar_path = "libs/com_google_code_findbugs_jsr305/jsr305-1.3.9.jar"
  output_name = "com_google_code_findbugs_jsr305"
  visibility = [ ":*" ]
}

java_prebuilt("com_google_dagger_dagger_producers_java") {
  jar_path = "libs/com_google_dagger_dagger_producers/dagger-producers-2.17.jar"
  output_name = "com_google_dagger_dagger_producers"
  visibility = [ ":*" ]
  deps = [
    ":com_google_dagger_dagger_java",
    ":com_google_guava_guava_java",
    ":javax_inject_javax_inject_java",
    ":org_checkerframework_checker_compat_qual_java",
  ]
}

java_prebuilt("com_google_dagger_dagger_spi_java") {
  jar_path = "libs/com_google_dagger_dagger_spi/dagger-spi-2.17.jar"
  output_name = "com_google_dagger_dagger_spi"
  visibility = [ ":*" ]
  deps = [
    ":com_google_dagger_dagger_java",
    ":com_google_dagger_dagger_producers_java",
    ":com_google_guava_guava_java",
    ":javax_inject_javax_inject_java",
  ]
}

java_prebuilt("com_google_errorprone_error_prone_annotations_java") {
  jar_path = "libs/com_google_errorprone_error_prone_annotations/error_prone_annotations-2.1.3.jar"
  output_name = "com_google_errorprone_error_prone_annotations"
  visibility = [ ":*" ]
}

java_prebuilt("com_google_errorprone_javac_shaded_java") {
  jar_path =
      "libs/com_google_errorprone_javac_shaded/javac-shaded-9-dev-r4023-3.jar"
  output_name = "com_google_errorprone_javac_shaded"
  visibility = [ ":*" ]
}

java_prebuilt("com_google_googlejavaformat_google_java_format_java") {
  jar_path = "libs/com_google_googlejavaformat_google_java_format/google-java-format-1.5.jar"
  output_name = "com_google_googlejavaformat_google_java_format"
  visibility = [ ":*" ]
  deps = [
    ":com_google_errorprone_javac_shaded_java",
    ":com_google_guava_guava_java",
  ]
}

java_prebuilt("com_google_guava_guava_java") {
  jar_path = "libs/com_google_guava_guava/guava-25.0-jre.jar"
  output_name = "com_google_guava_guava"
  visibility = [ ":*" ]
  deps = [
    ":com_google_code_findbugs_jsr305_java",
    ":com_google_errorprone_error_prone_annotations_java",
    ":com_google_j2objc_j2objc_annotations_java",
    ":org_checkerframework_checker_compat_qual_java",
    ":org_codehaus_mojo_animal_sniffer_annotations_java",
  ]
}

java_prebuilt("com_google_j2objc_j2objc_annotations_java") {
  jar_path =
      "libs/com_google_j2objc_j2objc_annotations/j2objc-annotations-1.1.jar"
  output_name = "com_google_j2objc_j2objc_annotations"
  visibility = [ ":*" ]
}

java_prebuilt("javax_annotation_jsr250_api_java") {
  jar_path = "libs/javax_annotation_jsr250_api/jsr250-api-1.0.jar"
  output_name = "javax_annotation_jsr250_api"
  visibility = [ ":*" ]
}

java_prebuilt("org_checkerframework_checker_compat_qual_java") {
  jar_path = "libs/org_checkerframework_checker_compat_qual/checker-compat-qual-2.3.0.jar"
  output_name = "org_checkerframework_checker_compat_qual"
  visibility = [ ":*" ]
}

java_prebuilt("org_codehaus_mojo_animal_sniffer_annotations_java") {
  jar_path = "libs/org_codehaus_mojo_animal_sniffer_annotations/animal-sniffer-annotations-1.14.jar"
  output_name = "org_codehaus_mojo_animal_sniffer_annotations"
  visibility = [ ":*" ]
}
# === Generated Code End ===
