# 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")
import("//tools/grit/grit_rule.gni")

group("sky") {
  testonly = true

  deps = [
    "//sky/engine/platform:platform_unittests",
    "//sky/engine/web:sky_unittests",
    "//sky/engine/wtf:unittests",
    "//sky/tools/debugger",
    "//sky/tools/imagediff",
    "//sky/tools/tester",
    "//sky/viewer",
  ]

  if (is_android) {
    deps += [
      "//sky/apk/demo",
      "//sky/apk/stocks",
    ]
  }

  if (!is_android) {
    deps += [ "//third_party/mesa:osmesa" ]
  }
}
