# Copyright 2015 the V8 project authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
{
  'variables': {
    'files': [
      './',
      '../../tools/codemap.js',
      '../../tools/consarray.js',
      '../../tools/csvparser.js',
      '../../tools/logreader.js',
      '../../tools/arguments.js',
      '../../tools/profile.js',
      '../../tools/profile_view.js',
      '../../tools/profviz/composer.js',
      '../../tools/splaytree.js',
      '../../tools/tickprocessor.js',
      '../../tools/dumpcpp.js',
      '../wasm-js/test/harness/wasm-constants.js',
      '../wasm-js/test/harness/wasm-module-builder.js',
      '../wasm-js/test/js-api/jsapi.js',
    ],
  },
  'includes': [
    '../../src/d8.isolate',
    '../../tools/testrunner/testrunner.isolate',
  ],
}
