# Copyright 2014 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/ui.gni")

group("mojo") {
  # Meta-target, don't link into production code.
  testonly = true
  declare_args() {
    mojo_use_go = false
  }
  deps = [
    ":tests",
    "//mojo/apps/js:mojo_js",
    "//mojo/common",
    "//mojo/examples",
    "//mojo/public",
    "//mojo/services",
    "//mojo/shell:mojo_shell",
    "//mojo/tools/package_manager",
  ]

  if (is_linux) {
    deps += [
      "//mojo/python",
    ]
    if (mojo_use_go) {
      deps += [
        "//mojo/go",
      ]
    }
  }
}

group("tests") {
  testonly = true
  deps = [
    "//mojo/application_manager:mojo_application_manager_unittests",
    "//mojo/apps/js/test:mojo_apps_js_unittests",
    "//mojo/common:mojo_common_unittests",
    "//mojo/public/c/system/tests:perftests",
    "//mojo/public/cpp/application/tests:mojo_public_application_unittests",
    "//mojo/public/cpp/bindings/tests:mojo_public_bindings_unittests",
    "//mojo/public/cpp/environment/tests:mojo_public_environment_unittests",
    "//mojo/public/cpp/system/tests:mojo_public_system_unittests",
    "//mojo/public/cpp/utility/tests:mojo_public_utility_unittests",
    "//mojo/public/js/bindings/tests:mojo_js_unittests",
    "//mojo/services/clipboard:mojo_clipboard_unittests",
    "//mojo/services/public/cpp/surfaces/tests:mojo_surfaces_lib_unittests",
    "//mojo/shell:mojo_shell_tests",
    "//mojo/system:mojo_message_pipe_perftests",
    "//mojo/system:mojo_system_unittests",
    "//mojo/tools:message_generator",
  ]

  if (use_aura) {
    deps += [
      "//mojo/services/public/cpp/view_manager/tests:mojo_view_manager_lib_unittests",
      "//mojo/services/view_manager:mojo_view_manager_unittests",
      "//mojo/services/window_manager:mojo_core_window_manager_unittests",
    ]
  }
}

if (is_android) {
  import("//build/config/android/rules.gni")

  generate_jni("jni_headers") {
    sources = [
      "android/javatests/src/org/chromium/mojo/MojoTestCase.java",
      "android/javatests/src/org/chromium/mojo/bindings/ValidationTestUtil.java",
      "android/system/src/org/chromium/mojo/system/impl/CoreImpl.java",
      "services/native_viewport/android/src/org/chromium/mojo/PlatformViewportAndroid.java",
    ]

    jni_package = "mojo"
  }
}