# Copyright (c) 2013 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.
{
  'includes': [
    'telemetry.isolate',
  ],
  'conditions': [
    ['OS=="android" or OS=="linux" or OS=="mac" or OS=="win"', {
      # This isolate allows any of the GPU tests, including the WebGL
      # conformance tests, to be run. However, extra command line arguments
      # must be supplied in order to run any one of them.
      'variables': {
        'files': [
          '../content/test/gpu/',
          '../content/test/data/gpu/',
          # For GpuProcess.video
          '../content/test/data/media/bear.ogv',
          # For webgl_conformance
          '../third_party/webgl/',
        ],
        'command': [
          '../content/test/gpu/run_gpu_test.py',
        ],
      },
    }],
    # These PDBs are needed in order to get reasonable stack traces if
    # an assertion fires or a crash occurs. Add more as necessary.
    ['OS=="win" and (fastbuild==0 or fastbuild==1)', {
      'variables': {
        'files': [
          '<(PRODUCT_DIR)/chrome.exe.pdb',
        ],
      },
    }],
    ['OS=="win" and component=="shared_library" and (fastbuild==0 or fastbuild==1)', {
      'variables': {
        'files': [
          '<(PRODUCT_DIR)/base.dll.pdb',
          '<(PRODUCT_DIR)/blink_platform.dll.pdb',
          '<(PRODUCT_DIR)/blink_web.dll.pdb',
          '<(PRODUCT_DIR)/content.dll.pdb',
        ],
      },
    }],
  ]
}
