Add Dawn on Windows job.
This job currently does not build. Once fixed it will be added to the CQ. Bug: skia:9939 Change-Id: I0f29292670554b43ba4518ba0d2d7593ef4beddf Reviewed-on: https://skia-review.googlesource.com/c/skia/+/273481 Commit-Queue: Weston Tracey <westont@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com> Reviewed-by: Eric Boren <borenet@google.com>
This commit is contained in:
parent
76ae22e558
commit
2d6261557e
1
BUILD.gn
1
BUILD.gn
@ -1393,6 +1393,7 @@ if (skia_enable_tools) {
|
||||
if (skia_use_dawn) {
|
||||
public_deps += [ "//third_party/dawn:dawn_headers" ]
|
||||
sources += [ "tools/gpu/dawn/DawnTestContext.cpp" ]
|
||||
cflags_cc = [ "-Wno-microsoft-cast" ]
|
||||
}
|
||||
} # test_lib("gpu_tool_utils")
|
||||
|
||||
|
4
DEPS
4
DEPS
@ -8,7 +8,11 @@ deps = {
|
||||
"buildtools" : "https://chromium.googlesource.com/chromium/buildtools.git@505de88083136eefd056e5ee4ca0f01fe9b33de8",
|
||||
"common" : "https://skia.googlesource.com/common.git@9737551d7a52c3db3262db5856e6bcd62c462b92",
|
||||
"third_party/externals/angle2" : "https://chromium.googlesource.com/angle/angle.git@4dc19c38c0c5e307350ecd8b9f80d59573161df9",
|
||||
# Dawn requires jinja2 and markupsafe for the code generator.
|
||||
# When the Dawn revision is updated these should be updated from the Dawn DEPS as well.
|
||||
"third_party/externals/dawn" : "https://dawn.googlesource.com/dawn.git@604072bc2ed01018eb03bcbbf9d94042f679af63",
|
||||
"third_party/externals/jinja2" : "https://chromium.googlesource.com/chromium/src/third_party/jinja2@b41863e42637544c2941b574c7877d3e1f663e25",
|
||||
"third_party/externals/markupsafe" : "https://chromium.googlesource.com/chromium/src/third_party/markupsafe@8f45f5cfa0009d2a70589bcda0349b8cb2b72783",
|
||||
"third_party/externals/dng_sdk" : "https://android.googlesource.com/platform/external/dng_sdk.git@c8d0c9b1d16bfda56f15165d39e0ffa360a11123",
|
||||
"third_party/externals/egl-registry" : "https://skia.googlesource.com/external/github.com/KhronosGroup/EGL-Registry@a0bca08de07c7d7651047bedc0b653cfaaa4f2ae",
|
||||
"third_party/externals/expat" : "https://android.googlesource.com/platform/external/expat.git@e5aa0a2cb0a5f759ef31c0819dc67d9b14246a4a",
|
||||
|
@ -10,7 +10,8 @@
|
||||
# many of these as possible. This will require updating Skia's
|
||||
# SPIRV-Tools and Shaderc at a minimum.
|
||||
|
||||
# dawn_jinja2_dir = "//third_party/jinja2"
|
||||
# skia/third_party/externals/jinja2 relative to skia/third_party/dawn/BUILD.gn
|
||||
dawn_jinja2_dir = "../externals/jinja2"
|
||||
# dawn_glfw_dir = "//third_party/glfw"
|
||||
# dawn_googletest_dir = "//third_party/googletest"
|
||||
# dawn_shaderc_dir = "//third_party/shaderc"
|
||||
|
@ -117,6 +117,7 @@
|
||||
"Build-Win-Clang-x86_64-Release",
|
||||
"Build-Win-Clang-x86_64-Release-ANGLE",
|
||||
"Build-Win-Clang-x86_64-Release-Shared",
|
||||
"Build-Win-Clang-x86_64-Release-Dawn",
|
||||
"Build-Win-Clang-x86_64-Release-Vulkan",
|
||||
"Build-Win-MSVC-arm64-Debug",
|
||||
"Build-Win-MSVC-arm64-Debug-ANGLE",
|
||||
|
@ -211,6 +211,12 @@ def compile_fn(api, checkout_root, out_dir):
|
||||
|
||||
if configuration != 'Debug':
|
||||
args['is_debug'] = 'false'
|
||||
if 'Dawn' in extra_tokens:
|
||||
args['skia_use_dawn'] = 'true'
|
||||
# Dawn imports jinja2, which imports markupsafe. Along with DEPS, make it
|
||||
# importable.
|
||||
env['PYTHONPATH'] = api.path.pathsep.join([
|
||||
str(skia_dir.join('third_party', 'externals')), '%%(PYTHONPATH)s'])
|
||||
if 'ANGLE' in extra_tokens:
|
||||
args['skia_use_angle'] = 'true'
|
||||
if 'SwiftShader' in extra_tokens:
|
||||
|
@ -0,0 +1,104 @@
|
||||
[
|
||||
{
|
||||
"cmd": [
|
||||
"vpython",
|
||||
"-u",
|
||||
"RECIPE_MODULE[recipe_engine::file]\\resources\\fileutil.py",
|
||||
"--json-output",
|
||||
"/path/to/tmp/json",
|
||||
"copy",
|
||||
"[START_DIR]\\cache\\work\\skia\\infra\\bots\\assets\\clang_win\\VERSION",
|
||||
"/path/to/tmp/"
|
||||
],
|
||||
"infra_step": true,
|
||||
"name": "Get clang_win VERSION",
|
||||
"~followup_annotations": [
|
||||
"@@@STEP_LOG_LINE@VERSION@42@@@",
|
||||
"@@@STEP_LOG_END@VERSION@@@"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cmd": [
|
||||
"python",
|
||||
"-u",
|
||||
"[START_DIR]\\cache\\work\\skia\\bin\\fetch-gn"
|
||||
],
|
||||
"cwd": "[START_DIR]\\cache\\work\\skia",
|
||||
"env": {
|
||||
"CHROME_HEADLESS": "1",
|
||||
"PATH": "<PATH>;RECIPE_REPO[depot_tools]"
|
||||
},
|
||||
"infra_step": true,
|
||||
"name": "fetch-gn"
|
||||
},
|
||||
{
|
||||
"cmd": [
|
||||
"[START_DIR]\\cache\\work\\skia\\bin\\gn",
|
||||
"gen",
|
||||
"[START_DIR]\\cache\\work\\skia\\out\\Build-Win-Clang-x86_64-Release-Dawn\\Release_x64",
|
||||
"--args=cc=\"clang\" clang_win=\"[START_DIR]\\clang_win\" cxx=\"clang++\" extra_cflags=[\"-DDUMMY_clang_win_version=42\"] is_debug=false skia_use_dawn=true target_cpu=\"x86_64\" werror=true win_sdk=\"[START_DIR]\\win_toolchain/win_sdk\" win_vc=\"[START_DIR]\\win_toolchain/VC\""
|
||||
],
|
||||
"cwd": "[START_DIR]\\cache\\work\\skia",
|
||||
"env": {
|
||||
"CHROME_HEADLESS": "1",
|
||||
"PATH": "<PATH>;RECIPE_REPO[depot_tools]",
|
||||
"PYTHONPATH": "[START_DIR]\\cache\\work\\skia\\third_party\\externals;%(PYTHONPATH)s"
|
||||
},
|
||||
"name": "gn gen"
|
||||
},
|
||||
{
|
||||
"cmd": [
|
||||
"ninja",
|
||||
"-C",
|
||||
"[START_DIR]\\cache\\work\\skia\\out\\Build-Win-Clang-x86_64-Release-Dawn\\Release_x64"
|
||||
],
|
||||
"cwd": "[START_DIR]\\cache\\work\\skia",
|
||||
"env": {
|
||||
"CHROME_HEADLESS": "1",
|
||||
"PATH": "<PATH>;RECIPE_REPO[depot_tools]",
|
||||
"PYTHONPATH": "[START_DIR]\\cache\\work\\skia\\third_party\\externals;%(PYTHONPATH)s"
|
||||
},
|
||||
"name": "ninja"
|
||||
},
|
||||
{
|
||||
"cmd": [
|
||||
"python",
|
||||
"-u",
|
||||
"import errno\nimport glob\nimport os\nimport shutil\nimport sys\n\nsrc = sys.argv[1]\ndst = sys.argv[2]\nbuild_products = ['dm', 'dm.exe', 'dm.app', 'nanobench.app', 'get_images_from_skps', 'get_images_from_skps.exe', 'hello-opencl', 'hello-opencl.exe', 'nanobench', 'nanobench.exe', 'skpbench', 'skpbench.exe', '*.so', '*.dll', '*.dylib', 'skia_launcher', 'skottie_tool', 'lib/*.so', 'run_testlab', 'skqp-universal-debug.apk', 'whitelist_devices.json']\n\ntry:\n os.makedirs(dst)\nexcept OSError as e:\n if e.errno != errno.EEXIST:\n raise\n\nfor pattern in build_products:\n path = os.path.join(src, pattern)\n for f in glob.glob(path):\n dst_path = os.path.join(dst, os.path.relpath(f, src))\n if not os.path.isdir(os.path.dirname(dst_path)):\n os.makedirs(os.path.dirname(dst_path))\n print 'Copying build product %s to %s' % (f, dst_path)\n shutil.move(f, dst_path)\n",
|
||||
"[START_DIR]\\cache\\work\\skia\\out\\Build-Win-Clang-x86_64-Release-Dawn\\Release_x64",
|
||||
"[START_DIR]\\[SWARM_OUT_DIR]\\out\\Release_x64"
|
||||
],
|
||||
"infra_step": true,
|
||||
"name": "copy build products",
|
||||
"~followup_annotations": [
|
||||
"@@@STEP_LOG_LINE@python.inline@import errno@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@import glob@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@import os@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@import shutil@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@src = sys.argv[1]@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@dst = sys.argv[2]@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@build_products = ['dm', 'dm.exe', 'dm.app', 'nanobench.app', 'get_images_from_skps', 'get_images_from_skps.exe', 'hello-opencl', 'hello-opencl.exe', 'nanobench', 'nanobench.exe', 'skpbench', 'skpbench.exe', '*.so', '*.dll', '*.dylib', 'skia_launcher', 'skottie_tool', 'lib/*.so', 'run_testlab', 'skqp-universal-debug.apk', 'whitelist_devices.json']@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@try:@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(dst)@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@except OSError as e:@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@ if e.errno != errno.EEXIST:@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@for pattern in build_products:@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@ path = os.path.join(src, pattern)@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@ for f in glob.glob(path):@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@ dst_path = os.path.join(dst, os.path.relpath(f, src))@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@ if not os.path.isdir(os.path.dirname(dst_path)):@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(os.path.dirname(dst_path))@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@ print 'Copying build product %s to %s' % (f, dst_path)@@@",
|
||||
"@@@STEP_LOG_LINE@python.inline@ shutil.move(f, dst_path)@@@",
|
||||
"@@@STEP_LOG_END@python.inline@@@"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "$result"
|
||||
}
|
||||
]
|
@ -76,6 +76,7 @@ TEST_BUILDERS = [
|
||||
'Build-Win-Clang-x86_64-Debug-ANGLE',
|
||||
'Build-Win-Clang-x86_64-Debug-OpenCL',
|
||||
'Build-Win-Clang-x86_64-Release-Shared',
|
||||
"Build-Win-Clang-x86_64-Release-Dawn",
|
||||
'Build-Win-Clang-x86_64-Release-Vulkan',
|
||||
'Test-Debian9-Clang-GCE-CPU-AVX2-universal-devrel-All-Android_SKQP',
|
||||
'Housekeeper-PerCommit-CheckGeneratedFiles',
|
||||
|
@ -591,6 +591,11 @@
|
||||
"Build-Win-Clang-x86_64-Release-ANGLE"
|
||||
]
|
||||
},
|
||||
"Build-Win-Clang-x86_64-Release-Dawn": {
|
||||
"tasks": [
|
||||
"Build-Win-Clang-x86_64-Release-Dawn"
|
||||
]
|
||||
},
|
||||
"Build-Win-Clang-x86_64-Release-Shared": {
|
||||
"tasks": [
|
||||
"Build-Win-Clang-x86_64-Release-Shared"
|
||||
@ -12288,6 +12293,82 @@
|
||||
],
|
||||
"service_account": "skia-external-compile-tasks@skia-swarming-bots.iam.gserviceaccount.com"
|
||||
},
|
||||
"Build-Win-Clang-x86_64-Release-Dawn": {
|
||||
"caches": [
|
||||
{
|
||||
"name": "vpython",
|
||||
"path": "cache/vpython"
|
||||
}
|
||||
],
|
||||
"cipd_packages": [
|
||||
{
|
||||
"name": "infra/tools/luci/kitchen/${platform}",
|
||||
"path": ".",
|
||||
"version": "git_revision:27f8448ba7ae1dd64574aefa41b762c3d22a42f4"
|
||||
},
|
||||
{
|
||||
"name": "infra/tools/luci-auth/${platform}",
|
||||
"path": "cipd_bin_packages",
|
||||
"version": "git_revision:27f8448ba7ae1dd64574aefa41b762c3d22a42f4"
|
||||
},
|
||||
{
|
||||
"name": "infra/tools/luci/vpython/${platform}",
|
||||
"path": "cipd_bin_packages",
|
||||
"version": "git_revision:27f8448ba7ae1dd64574aefa41b762c3d22a42f4"
|
||||
},
|
||||
{
|
||||
"name": "infra/3pp/tools/cpython/${platform}",
|
||||
"path": "cipd_bin_packages",
|
||||
"version": "version:2.7.17.chromium.24"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/clang_win",
|
||||
"path": "clang_win",
|
||||
"version": "version:14"
|
||||
}
|
||||
],
|
||||
"command": [
|
||||
"cipd_bin_packages/vpython${EXECUTABLE_SUFFIX}",
|
||||
"-u",
|
||||
"skia/infra/bots/run_recipe.py",
|
||||
"${ISOLATED_OUTDIR}",
|
||||
"compile",
|
||||
"{\"$kitchen\":{\"devshell\":true,\"git_auth\":true},\"buildername\":\"Build-Win-Clang-x86_64-Release-Dawn\",\"swarm_out_dir\":\"build\"}",
|
||||
"skia"
|
||||
],
|
||||
"dependencies": [
|
||||
"Housekeeper-PerCommit-BundleRecipes",
|
||||
"Housekeeper-PerCommit-IsolateWinToolchain"
|
||||
],
|
||||
"dimensions": [
|
||||
"cpu:x86-64-Haswell_GCE",
|
||||
"gpu:none",
|
||||
"machine_type:n1-highcpu-64",
|
||||
"os:Windows-Server-17763",
|
||||
"pool:Skia"
|
||||
],
|
||||
"env_prefixes": {
|
||||
"PATH": [
|
||||
"cipd_bin_packages",
|
||||
"cipd_bin_packages/bin"
|
||||
],
|
||||
"VPYTHON_VIRTUALENV_ROOT": [
|
||||
"cache/vpython"
|
||||
]
|
||||
},
|
||||
"execution_timeout_ns": 3600000000000,
|
||||
"extra_tags": {
|
||||
"log_location": "logdog://logs.chromium.org/skia/${SWARMING_TASK_ID}/+/annotations"
|
||||
},
|
||||
"idempotent": true,
|
||||
"io_timeout_ns": 3600000000000,
|
||||
"isolate": "compile.isolate",
|
||||
"max_attempts": 2,
|
||||
"outputs": [
|
||||
"build"
|
||||
],
|
||||
"service_account": "skia-external-compile-tasks@skia-swarming-bots.iam.gserviceaccount.com"
|
||||
},
|
||||
"Build-Win-Clang-x86_64-Release-Shared": {
|
||||
"caches": [
|
||||
{
|
||||
|
2
third_party/dawn/BUILD.gn
vendored
2
third_party/dawn/BUILD.gn
vendored
@ -48,6 +48,7 @@ config("libdawn_native_internal") {
|
||||
if (is_mac) {
|
||||
cflags_objcc = [ "-Wno-unguarded-availability" ]
|
||||
}
|
||||
cflags_cc = [ "-Wno-deprecated-declarations" ]
|
||||
}
|
||||
|
||||
dawn_json_generator("libdawn_native_utils_gen") {
|
||||
@ -652,4 +653,5 @@ static_library("libdawn_proc") {
|
||||
]
|
||||
sources = get_target_outputs(":libdawn_proc_gen")
|
||||
sources += [ "${dawn_root}/src/include/dawn/dawn_proc.h" ]
|
||||
cflags = ["-Wno-strict-prototypes"]
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user