# Copyright (c) 2013 The WebRTC 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 in the root of the source
# tree. An additional intellectual property rights grant can be found
# in the file PATENTS.  All contributing project authors may
# be found in the AUTHORS file in the root of the source tree.
{
  'conditions': [
    ['OS=="android"', {
      'variables': {
        'files': [
          '<(DEPTH)/data/',
          '<(DEPTH)/resources/',
        ],
      },
    }],
    ['OS=="linux" or OS=="mac" or OS=="win"', {
      'variables': {
        'command': [
          '<(PRODUCT_DIR)/video_engine_tests<(EXECUTABLE_SUFFIX)',
        ],
        'files': [
          '<(DEPTH)/DEPS',
          '<(DEPTH)/resources/foreman_cif_short.yuv',
          '<(PRODUCT_DIR)/video_engine_tests<(EXECUTABLE_SUFFIX)',
        ],
      },
    }],
  ],
}
