# 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("examples") {
  testonly = true

  deps = [
    "//examples/apptest",
    "//examples/browser",
    "//examples/content_handler_demo",
    "//examples/dart",
    "//examples/echo",
    "//examples/echo_terminal",
    "//examples/embedded_app",
    "//examples/forwarding_content_handler",
    "//examples/ganesh_app",
    "//examples/http_handler",
    "//examples/indirect_service",
    "//examples/keyboard_client",
    "//examples/moterm_example_app",
    "//examples/native_run_app",
    "//examples/nesting_app",
    "//examples/nfc_sender",
    "//examples/notification_generator",
    "//examples/png_viewer",
    "//examples/recursive_content_handler",
    "//examples/spinning_cube",
    "//examples/tiny",
    "//examples/trace_me",
    "//examples/wget",
  ]

  if (!is_android) {
    deps += [ "//examples/pdf_viewer" ]
  }

  if (is_android) {
    deps += [
      "//examples/device_name",
      "//examples/java_android/example_service",
      "//examples/java_android/echo",
    ]
  }

  if (is_linux || is_android) {
    deps += [
      "//examples/surfaces_app",
      "//examples/window_manager",
      "//examples/wm_flow",
    ]
  }

  if (defined(go_build_tool) && go_build_tool != "") {
    deps += [ "//examples/go" ]
    if (is_android) {
      deps += [ "//examples/bank_app" ]
    }
  }

  if (is_linux && !is_fnl) {
    deps += [ "//examples/python" ]
  }
}
