# Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
# for details. All rights reserved. Use of this source code is governed by a
# BSD-style license that can be found in the LICENSE file.

_core_library_names = [
  "async",
  "core",
  "collection",
  "convert",
  "developer",
  "internal",
  "isolate",
  "math",
  "mirrors",
  "profiler",
  "typed_data",
  "vmservice",
]

_core_library_gypis = [
  "../platform/platform_headers.gypi",
  "../platform/platform_sources.gypi",
  "../vm/vm_sources.gypi",
  "../lib/async_sources.gypi",
  "../lib/core_sources.gypi",
  "../lib/collection_sources.gypi",
  "../lib/convert_sources.gypi",
  "../lib/developer_sources.gypi",
  "../lib/internal_sources.gypi",
  "../lib/isolate_sources.gypi",
  "../lib/math_sources.gypi",
  "../lib/mirrors_sources.gypi",
  "../lib/typed_data_sources.gypi",
  "../lib/vmservice_sources.gypi",
  "../../sdk/lib/async/async_sources.gypi",
  "../../sdk/lib/collection/collection_sources.gypi",
  "../../sdk/lib/convert/convert_sources.gypi",
  "../../sdk/lib/core/core_sources.gypi",
  "../../sdk/lib/developer/developer_sources.gypi",
  "../../sdk/lib/internal/internal_sources.gypi",
  "../../sdk/lib/isolate/isolate_sources.gypi",
  "../../sdk/lib/math/math_sources.gypi",
  "../../sdk/lib/mirrors/mirrors_sources.gypi",
  "../../sdk/lib/profiler/profiler_sources.gypi",
  "../../sdk/lib/vmservice/vmservice_sources.gypi",
  "../bin/io_sources.gypi",
]

processed_gypis = exec_script("../../tools/process_gypis.py",
                              _core_library_names,
                              "scope",
                              _core_library_gypis)
