# Copyright 2016 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")

android_aar_prebuilt("gvr_common_java") {
  aar_path = "common_library.aar"
  proguard_configs = [ "src/proguard-gvr.txt" ]
  ignore_manifest = true  # Ignored because manifest merging is not supported (http://crbug.com/643967)
  ignore_native_libraries = true
}

android_aar_prebuilt("gvr_controller_java") {
  aar_path = "src/libraries/sdk-controller-1.10.0.aar"
}

config("libgvr_config") {
  include_dirs = [ "src/libraries/headers/" ]
}
