# 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("//mojo/public/dart/rules.gni")

dart_pkg("world") {
  apps = [ [
        "dart_world",
        "lib/main.dart",
      ] ]
  sources = [
    "pubspec.yaml",
  ]
  deps = [
    "//mojo/dart/packages",
    "//mojo/public/dart",
  ]

  # This exercises the ability of the Dart content handler to run isolates in
  # either strict or non-strict mode at the same time. In a Debug build, the
  # content handler always runs code in strict mode, so we run in different
  # modes only in a Release build.
  if (!is_debug) {
    strict = true
  }
}
