diff options
author | kbr@chromium.org <kbr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-01-16 19:34:46 +0000 |
---|---|---|
committer | kbr@chromium.org <kbr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-01-16 19:34:46 +0000 |
commit | eb66d06bc0295f8ba67298feed2bffee9f89fcd2 (patch) | |
tree | 21cadeb78fcf808cb24aaed59f0a131a19ada565 | |
parent | e39bc28661717b73d7966913be7a9eec844f840e (diff) | |
download | chromium_src-eb66d06bc0295f8ba67298feed2bffee9f89fcd2.zip chromium_src-eb66d06bc0295f8ba67298feed2bffee9f89fcd2.tar.gz chromium_src-eb66d06bc0295f8ba67298feed2bffee9f89fcd2.tar.bz2 |
Fixes to make GPU tests run in isolated mode.
1) To match the gyp dependencies, move clearkeycdmadapter binaries, plugins/,
lib32/ and lib64/ from chrome.isolate to browser_tests.isolate.
2) On Windows, include <(version_full).manifest in chrome.isolate to be able
to execute chrome.exe. Add needed chrome_child.dll and chrome_elf.dll.
3) Add libEGL.dll and libGLESv2.dll dependencies to gpu.gyp:gl_tests and a
new angle.isolate; refer to it from gl_tests.isolate and
gles2_conform_test.isolate.
4) Copy run_gpu_test to run_gpu_test.py, and invoke that instead in
telemetry_gpu_test.isolate, to make this isolate work on Windows.
BUG=321878,334539
Review URL: https://codereview.chromium.org/140263002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245283 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | build/isolate.gypi | 4 | ||||
-rw-r--r-- | chrome/angle.isolate | 15 | ||||
-rw-r--r-- | chrome/browser_tests.isolate | 9 | ||||
-rw-r--r-- | chrome/chrome.isolate | 12 | ||||
-rw-r--r-- | chrome/gl_tests.isolate | 3 | ||||
-rw-r--r-- | chrome/gles2_conform_test.isolate | 3 | ||||
-rw-r--r-- | chrome/telemetry_gpu_test.isolate | 2 | ||||
-rwxr-xr-x | content/test/gpu/run_gpu_test.py | 14 | ||||
-rw-r--r-- | gpu/gpu.gyp | 6 |
9 files changed, 58 insertions, 10 deletions
diff --git a/build/isolate.gypi b/build/isolate.gypi index cecf9b2..3d23655 100644 --- a/build/isolate.gypi +++ b/build/isolate.gypi @@ -38,6 +38,9 @@ # for more information. { + 'includes': [ + '../chrome/version.gypi', + ], 'rules': [ { 'rule_name': 'isolate', @@ -77,6 +80,7 @@ '--config-variable', 'internal_gles2_conform_tests=<(internal_gles2_conform_tests)', '--config-variable', 'icu_use_data_file_flag=<(icu_use_data_file_flag)', + '--extra-variable', 'version_full=<(version_full)', '--result', '<@(_outputs)', '--isolate', '<(RULE_INPUT_PATH)', ], diff --git a/chrome/angle.isolate b/chrome/angle.isolate new file mode 100644 index 0000000..6ff0518 --- /dev/null +++ b/chrome/angle.isolate @@ -0,0 +1,15 @@ +# Copyright 2014 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. +{ + 'conditions': [ + ['OS=="win"', { + 'variables': { + 'isolate_dependency_tracked': [ + '<(PRODUCT_DIR)/libEGL.dll', + '<(PRODUCT_DIR)/libGLESv2.dll', + ], + }, + }], + ], +} diff --git a/chrome/browser_tests.isolate b/chrome/browser_tests.isolate index 50aa107..9872040 100644 --- a/chrome/browser_tests.isolate +++ b/chrome/browser_tests.isolate @@ -16,6 +16,8 @@ ], 'isolate_dependency_tracked': [ '../testing/xvfb.py', + '<(PRODUCT_DIR)/libclearkeycdm.so', + '<(PRODUCT_DIR)/libclearkeycdmadapter.so', '<(PRODUCT_DIR)/libppapi_tests.so', '<(PRODUCT_DIR)/xdisplaycheck<(EXECUTABLE_SUFFIX)', ], @@ -90,18 +92,23 @@ ], 'isolate_dependency_untracked': [ '../third_party/bidichecker/', + '<(PRODUCT_DIR)/lib64/', + '<(PRODUCT_DIR)/plugins/', ], }, }], ['OS=="mac"', { 'variables': { 'isolate_dependency_tracked': [ + '<(PRODUCT_DIR)/clearkeycdmadapter.plugin', + '<(PRODUCT_DIR)/libclearkeycdm.dylib', '<(PRODUCT_DIR)/ppapi_nacl_tests_glibc_x32.nexe', '<(PRODUCT_DIR)/ppapi_nacl_tests_newlib_x32.nexe', '<(PRODUCT_DIR)/ppapi_nacl_tests_pnacl_newlib_x32.nexe', '<(PRODUCT_DIR)/ppapi_tests.plugin/Contents/MacOS/ppapi_tests', ], 'isolate_dependency_untracked': [ + '<(PRODUCT_DIR)/lib32/', '<(PRODUCT_DIR)/plugins/TestNetscapePlugIn.plugin/', '<(PRODUCT_DIR)/plugins/npapi_test_plugin.plugin/', ], @@ -122,6 +129,8 @@ '../native_client/build/build_nexe.py', '../third_party/cygwin/bin/bash.exe', '../third_party/cygwin/setup_mount.bat', + '<(PRODUCT_DIR)/clearkeycdm.dll', + '<(PRODUCT_DIR)/clearkeycdmadapter.dll', '<(PRODUCT_DIR)/ppapi_tests.dll', '<(PRODUCT_DIR)/security_tests.dll', 'tools/build/repack_locales.py', diff --git a/chrome/chrome.isolate b/chrome/chrome.isolate index cc09a26..6a92211 100644 --- a/chrome/chrome.isolate +++ b/chrome/chrome.isolate @@ -6,8 +6,6 @@ ['OS=="linux"', { 'variables': { 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/libclearkeycdm.so', - '<(PRODUCT_DIR)/libclearkeycdmadapter.so', '<(PRODUCT_DIR)/libffmpegsumo.so', '<(PRODUCT_DIR)/libosmesa.so', '<(PRODUCT_DIR)/libppGoogleNaClPluginChrome.so', @@ -36,8 +34,6 @@ '<(PRODUCT_DIR)/nacl_irt_x86_64.nexe', ], 'isolate_dependency_untracked': [ - '<(PRODUCT_DIR)/lib64/', - '<(PRODUCT_DIR)/plugins/', '<(PRODUCT_DIR)/resources/extension/', ], }, @@ -48,25 +44,23 @@ '<(PRODUCT_DIR)/<(mac_product_name).app/Contents/MacOS/<(mac_product_name)', ], 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/clearkeycdmadapter.plugin', '<(PRODUCT_DIR)/ffmpegsumo.so', - '<(PRODUCT_DIR)/libclearkeycdm.dylib', ], 'isolate_dependency_untracked': [ '<(PRODUCT_DIR)/<(mac_product_name) Framework.framework/', '<(PRODUCT_DIR)/<(mac_product_name) Helper.app/', '<(PRODUCT_DIR)/<(mac_product_name).app/', - '<(PRODUCT_DIR)/lib32/', ], }, }], ['OS=="win"', { 'variables': { 'isolate_dependency_tracked': [ + '<(PRODUCT_DIR)/<(version_full).manifest', '<(PRODUCT_DIR)/D3DCompiler_43.dll', '<(PRODUCT_DIR)/chrome.dll', - '<(PRODUCT_DIR)/clearkeycdm.dll', - '<(PRODUCT_DIR)/clearkeycdmadapter.dll', + '<(PRODUCT_DIR)/chrome_child.dll', + '<(PRODUCT_DIR)/chrome_elf.dll', '<(PRODUCT_DIR)/d3dcompiler_46.dll', '<(PRODUCT_DIR)/ffmpegsumo.dll', '<(PRODUCT_DIR)/libEGL.dll', diff --git a/chrome/gl_tests.isolate b/chrome/gl_tests.isolate index bd96664..1afc399 100644 --- a/chrome/gl_tests.isolate +++ b/chrome/gl_tests.isolate @@ -2,6 +2,9 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. { + 'includes': [ + 'angle.isolate', + ], 'conditions': [ ['OS=="android" or OS=="linux" or OS=="mac" or OS=="win"', { 'variables': { diff --git a/chrome/gles2_conform_test.isolate b/chrome/gles2_conform_test.isolate index b2711bb..d19ca74 100644 --- a/chrome/gles2_conform_test.isolate +++ b/chrome/gles2_conform_test.isolate @@ -2,6 +2,9 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. { + 'includes': [ + 'angle.isolate', + ], 'conditions': [ # TODO(kbr): add Android when these tests are run on those bots. ['OS=="linux" or OS=="mac" or OS=="win"', { diff --git a/chrome/telemetry_gpu_test.isolate b/chrome/telemetry_gpu_test.isolate index c9e0535..647a850 100644 --- a/chrome/telemetry_gpu_test.isolate +++ b/chrome/telemetry_gpu_test.isolate @@ -20,7 +20,7 @@ '../third_party/webgl/', ], 'command': [ - '../content/test/gpu/run_gpu_test', + '../content/test/gpu/run_gpu_test.py', ], }, }], diff --git a/content/test/gpu/run_gpu_test.py b/content/test/gpu/run_gpu_test.py new file mode 100755 index 0000000..554ef9e --- /dev/null +++ b/content/test/gpu/run_gpu_test.py @@ -0,0 +1,14 @@ +#!/usr/bin/env python +# Copyright 2014 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 os +import sys + +sys.path.append(os.path.join(os.path.dirname(__file__), + os.pardir, os.pardir, os.pardir, 'tools', 'telemetry')) + +from telemetry import test_runner + +if __name__ == '__main__': + sys.exit(test_runner.Main()) diff --git a/gpu/gpu.gyp b/gpu/gpu.gyp index 3aeedfc1..a185ba5 100644 --- a/gpu/gpu.gyp +++ b/gpu/gpu.gyp @@ -335,6 +335,12 @@ '../testing/android/native_test.gyp:native_test_native_code', ], }], + ['OS == "win"', { + 'dependencies': [ + '../third_party/angle/src/build_angle.gyp:libEGL', + '../third_party/angle/src/build_angle.gyp:libGLESv2', + ], + }], ], # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. 'msvs_disabled_warnings': [ 4267, ], |