# Copyright 2015 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("//services/android/rules.gni")

group("location") {
  deps = [
    ":location_service",
  ]
}

mojo_android_java_application("location_service") {
  sources = [
    "src/org/chromium/services/location/LocationServiceApp.java",
    "src/org/chromium/services/location/LocationServiceImpl.java",
    "src/org/chromium/services/location/LocationUtil.java",
  ]

  mojo_main = "org.chromium.services.location.LocationServiceApp"

  deps = [
    "//mojo/public/interfaces/application:application_java",
    "//mojo/public/java:application",
    "//mojo/services/location/public/interfaces:interfaces_java",
    "//third_party/android_tools:google_play_services_default_java",
  ]
}
