build both tsan and msan libc++
std::call_once() will trigger false positive races without a libc++ (specifically __call_once()) built with TSAN itself. Interestingly, there's a built-in interceptor for this use case, only on Mac: https://reviews.llvm.org/D24188. Fixes: skia:9884 Change-Id: I7b2c031c15b78ec7302c42b4e4ac365d596c2c33 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/265567 Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
This commit is contained in:
parent
b2031d4255
commit
dfec731dbf
@ -1 +1 @@
|
||||
16
|
||||
19
|
@ -59,16 +59,18 @@ def create_asset(target_dir):
|
||||
"-print-file-name=libstdc++.so.6"])
|
||||
subprocess.check_call(["cp", libstdcpp.strip(), target_dir + "/lib"])
|
||||
|
||||
# Finally, build libc++ for MSAN bots using the Clang we just built.
|
||||
os.mkdir("../msan_out")
|
||||
os.chdir("../msan_out")
|
||||
subprocess.check_call(["cmake", "..", "-G", "Ninja",
|
||||
"-DCMAKE_BUILD_TYPE=MinSizeRel",
|
||||
"-DCMAKE_C_COMPILER=" + target_dir + "/bin/clang",
|
||||
"-DCMAKE_CXX_COMPILER=" + target_dir + "/bin/clang++",
|
||||
"-DLLVM_USE_SANITIZER=MemoryWithOrigins"])
|
||||
subprocess.check_call(["ninja", "cxx"])
|
||||
subprocess.check_call(["cp", "-r", "lib", target_dir + "/msan"])
|
||||
# Finally, build libc++ for TSAN and MSAN bots using the Clang we just built.
|
||||
for (short,full) in [('tsan','Thread'), ('msan','MemoryWithOrigins')]:
|
||||
os.mkdir("../{}_out".format(short))
|
||||
os.chdir("../{}_out".format(short))
|
||||
subprocess.check_call(
|
||||
["cmake", "..", "-G", "Ninja",
|
||||
"-DCMAKE_BUILD_TYPE=MinSizeRel",
|
||||
"-DCMAKE_C_COMPILER=" + target_dir + "/bin/clang",
|
||||
"-DCMAKE_CXX_COMPILER=" + target_dir + "/bin/clang++",
|
||||
"-DLLVM_USE_SANITIZER={}".format(full)])
|
||||
subprocess.check_call(["ninja", "cxx"])
|
||||
subprocess.check_call(["cp", "-r", "lib", target_dir + "/" + short])
|
||||
|
||||
|
||||
def main():
|
||||
|
@ -50,22 +50,29 @@ def compile_swiftshader(api, extra_tokens, swiftshader_root, cc, cxx, out):
|
||||
'PATH': '%%(PATH)s:%s' % cmake_bin
|
||||
}
|
||||
|
||||
# Extra flags for MSAN, if necessary.
|
||||
# Extra flags for MSAN/TSAN, if necessary.
|
||||
san = None
|
||||
if 'MSAN' in extra_tokens:
|
||||
san = ('msan','memory')
|
||||
elif 'TSAN' in extra_tokens:
|
||||
san = ('tsan','thread')
|
||||
|
||||
if san:
|
||||
short,full = san
|
||||
clang_linux = str(api.vars.slave_dir.join('clang_linux'))
|
||||
libcxx_msan = clang_linux + '/msan'
|
||||
msan_cflags = ' '.join([
|
||||
'-fsanitize=memory',
|
||||
libcxx = clang_linux + '/' + short
|
||||
cflags = ' '.join([
|
||||
'-fsanitize=' + full,
|
||||
'-stdlib=libc++',
|
||||
'-L%s/lib' % libcxx_msan,
|
||||
'-L%s/lib' % libcxx,
|
||||
'-lc++abi',
|
||||
'-I%s/include' % libcxx_msan,
|
||||
'-I%s/include/c++/v1' % libcxx_msan,
|
||||
'-I%s/include' % libcxx,
|
||||
'-I%s/include/c++/v1' % libcxx,
|
||||
])
|
||||
swiftshader_opts.extend([
|
||||
'-DSWIFTSHADER_MSAN=ON',
|
||||
'-DCMAKE_C_FLAGS=%s' % msan_cflags,
|
||||
'-DCMAKE_CXX_FLAGS=%s' % msan_cflags,
|
||||
'-DSWIFTSHADER_{}=ON'.format(short.upper()),
|
||||
'-DCMAKE_C_FLAGS=%s' % cflags,
|
||||
'-DCMAKE_CXX_FLAGS=%s' % cflags,
|
||||
])
|
||||
|
||||
# Build SwiftShader.
|
||||
@ -195,6 +202,8 @@ def compile_fn(api, checkout_root, out_dir):
|
||||
|
||||
if 'MSAN' in extra_tokens:
|
||||
extra_ldflags.append('-L' + clang_linux + '/msan')
|
||||
elif 'TSAN' in extra_tokens:
|
||||
extra_ldflags.append('-L' + clang_linux + '/tsan')
|
||||
elif api.vars.is_linux:
|
||||
extra_ldflags.append('-L' + clang_linux + '/lib')
|
||||
|
||||
|
@ -0,0 +1,200 @@
|
||||
[
|
||||
{
|
||||
"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_linux/VERSION",
|
||||
"/path/to/tmp/"
|
||||
],
|
||||
"infra_step": true,
|
||||
"name": "Get clang_linux VERSION",
|
||||
"~followup_annotations": [
|
||||
"@@@STEP_LOG_LINE@VERSION@42@@@",
|
||||
"@@@STEP_LOG_END@VERSION@@@"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cmd": [
|
||||
"vpython",
|
||||
"-u",
|
||||
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
|
||||
"--json-output",
|
||||
"/path/to/tmp/json",
|
||||
"ensure-directory",
|
||||
"--mode",
|
||||
"0777",
|
||||
"[START_DIR]/cache/work/skia/out/Build-Debian9-Clang-x86_64-Debug-SwiftShader_TSAN/Debug/swiftshader_out"
|
||||
],
|
||||
"infra_step": true,
|
||||
"name": "makedirs swiftshader_out"
|
||||
},
|
||||
{
|
||||
"cmd": [
|
||||
"cmake",
|
||||
"-DSWIFTSHADER_BUILD_TESTS=OFF",
|
||||
"-DSWIFTSHADER_WARNINGS_AS_ERRORS=0",
|
||||
"-DSWIFTSHADER_TSAN=ON",
|
||||
"-DCMAKE_C_FLAGS=-fsanitize=thread -stdlib=libc++ -L[START_DIR]/clang_linux/tsan/lib -lc++abi -I[START_DIR]/clang_linux/tsan/include -I[START_DIR]/clang_linux/tsan/include/c++/v1",
|
||||
"-DCMAKE_CXX_FLAGS=-fsanitize=thread -stdlib=libc++ -L[START_DIR]/clang_linux/tsan/lib -lc++abi -I[START_DIR]/clang_linux/tsan/include -I[START_DIR]/clang_linux/tsan/include/c++/v1",
|
||||
"[START_DIR]/cache/work/skia/third_party/externals/swiftshader",
|
||||
"-GNinja"
|
||||
],
|
||||
"cwd": "[START_DIR]/cache/work/skia/out/Build-Debian9-Clang-x86_64-Debug-SwiftShader_TSAN/Debug/swiftshader_out",
|
||||
"env": {
|
||||
"CC": "[START_DIR]/clang_linux/bin/clang",
|
||||
"CHROME_HEADLESS": "1",
|
||||
"CXX": "[START_DIR]/clang_linux/bin/clang++",
|
||||
"PATH": "<PATH>:RECIPE_REPO[depot_tools]:[START_DIR]/cmake_linux/bin"
|
||||
},
|
||||
"name": "swiftshader cmake"
|
||||
},
|
||||
{
|
||||
"cmd": [
|
||||
"ninja",
|
||||
"-C",
|
||||
"[START_DIR]/cache/work/skia/out/Build-Debian9-Clang-x86_64-Debug-SwiftShader_TSAN/Debug/swiftshader_out",
|
||||
"libEGL.so",
|
||||
"libGLESv2.so"
|
||||
],
|
||||
"cwd": "[START_DIR]/cache/work/skia/out/Build-Debian9-Clang-x86_64-Debug-SwiftShader_TSAN/Debug/swiftshader_out",
|
||||
"env": {
|
||||
"CC": "[START_DIR]/clang_linux/bin/clang",
|
||||
"CHROME_HEADLESS": "1",
|
||||
"CXX": "[START_DIR]/clang_linux/bin/clang++",
|
||||
"PATH": "<PATH>:RECIPE_REPO[depot_tools]:[START_DIR]/cmake_linux/bin"
|
||||
},
|
||||
"name": "swiftshader ninja"
|
||||
},
|
||||
{
|
||||
"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-Debian9-Clang-x86_64-Debug-SwiftShader_TSAN/Debug",
|
||||
"--args=cc=\"[START_DIR]/clang_linux/bin/clang\" cc_wrapper=\"[START_DIR]/ccache_linux/bin/ccache\" cxx=\"[START_DIR]/clang_linux/bin/clang++\" extra_cflags=[\"-B[START_DIR]/clang_linux/bin\", \"-DDUMMY_clang_linux_version=42\", \"-O1\", \"-DGR_EGL_TRY_GLES3_THEN_GLES2\", \"-I[START_DIR]/cache/work/skia/third_party/externals/egl-registry/api\", \"-I[START_DIR]/cache/work/skia/third_party/externals/opengl-registry/api\"] extra_ldflags=[\"-B[START_DIR]/clang_linux/bin\", \"-fuse-ld=lld\", \"-L[START_DIR]/clang_linux/tsan\", \"-L[START_DIR]/cache/work/skia/out/Build-Debian9-Clang-x86_64-Debug-SwiftShader_TSAN/Debug/swiftshader_out\"] sanitize=\"TSAN\" skia_use_egl=true target_cpu=\"x86_64\" werror=true"
|
||||
],
|
||||
"cwd": "[START_DIR]/cache/work/skia",
|
||||
"env": {
|
||||
"CCACHE_COMPILERCHECK": "content",
|
||||
"CCACHE_DIR": "[START_DIR]/cache/ccache",
|
||||
"CCACHE_MAXFILES": "0",
|
||||
"CCACHE_MAXSIZE": "75G",
|
||||
"CHROME_HEADLESS": "1",
|
||||
"PATH": "<PATH>:RECIPE_REPO[depot_tools]"
|
||||
},
|
||||
"name": "gn gen"
|
||||
},
|
||||
{
|
||||
"cmd": [
|
||||
"ninja",
|
||||
"-C",
|
||||
"[START_DIR]/cache/work/skia/out/Build-Debian9-Clang-x86_64-Debug-SwiftShader_TSAN/Debug"
|
||||
],
|
||||
"cwd": "[START_DIR]/cache/work/skia",
|
||||
"env": {
|
||||
"CCACHE_COMPILERCHECK": "content",
|
||||
"CCACHE_DIR": "[START_DIR]/cache/ccache",
|
||||
"CCACHE_MAXFILES": "0",
|
||||
"CCACHE_MAXSIZE": "75G",
|
||||
"CHROME_HEADLESS": "1",
|
||||
"PATH": "<PATH>:RECIPE_REPO[depot_tools]"
|
||||
},
|
||||
"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-Debian9-Clang-x86_64-Debug-SwiftShader_TSAN/Debug",
|
||||
"[START_DIR]/[SWARM_OUT_DIR]/out/Debug"
|
||||
],
|
||||
"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@@@"
|
||||
]
|
||||
},
|
||||
{
|
||||
"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-Debian9-Clang-x86_64-Debug-SwiftShader_TSAN/Debug/swiftshader_out",
|
||||
"[START_DIR]/[SWARM_OUT_DIR]/swiftshader_out"
|
||||
],
|
||||
"infra_step": true,
|
||||
"name": "copy build products (2)",
|
||||
"~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"
|
||||
}
|
||||
]
|
@ -0,0 +1,110 @@
|
||||
[
|
||||
{
|
||||
"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_linux/VERSION",
|
||||
"/path/to/tmp/"
|
||||
],
|
||||
"infra_step": true,
|
||||
"name": "Get clang_linux 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-Debian9-Clang-x86_64-Debug-TSAN/Debug",
|
||||
"--args=cc=\"[START_DIR]/clang_linux/bin/clang\" cc_wrapper=\"[START_DIR]/ccache_linux/bin/ccache\" cxx=\"[START_DIR]/clang_linux/bin/clang++\" extra_cflags=[\"-B[START_DIR]/clang_linux/bin\", \"-DDUMMY_clang_linux_version=42\", \"-O1\"] extra_ldflags=[\"-B[START_DIR]/clang_linux/bin\", \"-fuse-ld=lld\", \"-L[START_DIR]/clang_linux/tsan\"] sanitize=\"TSAN\" target_cpu=\"x86_64\" werror=true"
|
||||
],
|
||||
"cwd": "[START_DIR]/cache/work/skia",
|
||||
"env": {
|
||||
"CCACHE_COMPILERCHECK": "content",
|
||||
"CCACHE_DIR": "[START_DIR]/cache/ccache",
|
||||
"CCACHE_MAXFILES": "0",
|
||||
"CCACHE_MAXSIZE": "75G",
|
||||
"CHROME_HEADLESS": "1",
|
||||
"PATH": "<PATH>:RECIPE_REPO[depot_tools]"
|
||||
},
|
||||
"name": "gn gen"
|
||||
},
|
||||
{
|
||||
"cmd": [
|
||||
"ninja",
|
||||
"-C",
|
||||
"[START_DIR]/cache/work/skia/out/Build-Debian9-Clang-x86_64-Debug-TSAN/Debug"
|
||||
],
|
||||
"cwd": "[START_DIR]/cache/work/skia",
|
||||
"env": {
|
||||
"CCACHE_COMPILERCHECK": "content",
|
||||
"CCACHE_DIR": "[START_DIR]/cache/ccache",
|
||||
"CCACHE_MAXFILES": "0",
|
||||
"CCACHE_MAXSIZE": "75G",
|
||||
"CHROME_HEADLESS": "1",
|
||||
"PATH": "<PATH>:RECIPE_REPO[depot_tools]"
|
||||
},
|
||||
"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-Debian9-Clang-x86_64-Debug-TSAN/Debug",
|
||||
"[START_DIR]/[SWARM_OUT_DIR]/out/Debug"
|
||||
],
|
||||
"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"
|
||||
}
|
||||
]
|
@ -41,12 +41,14 @@ TEST_BUILDERS = [
|
||||
'Build-Debian9-Clang-x86_64-Debug-Chromebook_GLES',
|
||||
'Build-Debian9-Clang-x86_64-Debug-Coverage',
|
||||
'Build-Debian9-Clang-x86_64-Debug-MSAN',
|
||||
'Build-Debian9-Clang-x86_64-Debug-TSAN',
|
||||
'Build-Debian9-Clang-x86_64-Debug-OpenCL',
|
||||
'Build-Debian9-Clang-x86_64-Debug-SK_CPU_LIMIT_SSE41',
|
||||
'Build-Debian9-Clang-x86_64-Debug-SafeStack',
|
||||
'Build-Debian9-Clang-x86_64-Debug-SkVM',
|
||||
'Build-Debian9-Clang-x86_64-Debug-SkVM_ASAN',
|
||||
'Build-Debian9-Clang-x86_64-Debug-SwiftShader_MSAN',
|
||||
'Build-Debian9-Clang-x86_64-Debug-SwiftShader_TSAN',
|
||||
'Build-Debian9-Clang-x86_64-Debug-Tidy',
|
||||
'Build-Debian9-Clang-x86_64-Debug-Wuffs',
|
||||
'Build-Debian9-Clang-x86_64-Release-ANGLE',
|
||||
|
@ -168,9 +168,11 @@ class DefaultFlavor(object):
|
||||
if 'SwiftShader' in extra_tokens:
|
||||
ld_library_path.append(self.host_dirs.bin_dir.join('swiftshader_out'))
|
||||
|
||||
# Find the MSAN/TSAN-built libc++.
|
||||
if 'MSAN' in extra_tokens:
|
||||
# Find the MSAN-built libc++.
|
||||
ld_library_path.append(clang_linux + '/msan')
|
||||
elif 'TSAN' in extra_tokens:
|
||||
ld_library_path.append(clang_linux + '/tsan')
|
||||
|
||||
if any('SAN' in t for t in extra_tokens):
|
||||
# Sanitized binaries may want to run clang_linux/bin/llvm-symbolizer.
|
||||
|
@ -205,7 +205,7 @@
|
||||
"cwd": "[START_DIR]/skia",
|
||||
"env": {
|
||||
"CHROME_HEADLESS": "1",
|
||||
"LD_LIBRARY_PATH": "[START_DIR]/clang_linux/lib",
|
||||
"LD_LIBRARY_PATH": "[START_DIR]/clang_linux/tsan:[START_DIR]/clang_linux/lib",
|
||||
"PATH": "<PATH>:RECIPE_REPO[depot_tools]:[START_DIR]/clang_linux/bin",
|
||||
"TSAN_OPTIONS": "report_signal_unsafe=0"
|
||||
},
|
||||
|
@ -222,7 +222,7 @@
|
||||
"cwd": "[START_DIR]/skia",
|
||||
"env": {
|
||||
"CHROME_HEADLESS": "1",
|
||||
"LD_LIBRARY_PATH": "[START_DIR]/clang_linux/lib",
|
||||
"LD_LIBRARY_PATH": "[START_DIR]/clang_linux/tsan:[START_DIR]/clang_linux/lib",
|
||||
"PATH": "<PATH>:RECIPE_REPO[depot_tools]:[START_DIR]/clang_linux/bin",
|
||||
"TSAN_OPTIONS": "report_signal_unsafe=0"
|
||||
},
|
||||
|
@ -4309,7 +4309,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/armhf_sysroot",
|
||||
@ -4674,7 +4674,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/armhf_sysroot",
|
||||
@ -5735,7 +5735,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -6189,7 +6189,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -6268,7 +6268,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -6347,7 +6347,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -6422,7 +6422,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/chromebook_x86_64_gles",
|
||||
@ -6501,7 +6501,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -6580,7 +6580,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/opencl_headers",
|
||||
@ -6669,7 +6669,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -6748,7 +6748,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -6827,7 +6827,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -6906,7 +6906,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -6985,7 +6985,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -7064,7 +7064,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -7143,7 +7143,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/cmake_linux",
|
||||
@ -7227,7 +7227,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/cmake_linux",
|
||||
@ -7311,7 +7311,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -7390,7 +7390,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -7469,7 +7469,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -7548,7 +7548,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -7627,7 +7627,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -7706,7 +7706,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -7816,7 +7816,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -7891,7 +7891,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/chromebook_x86_64_gles",
|
||||
@ -7970,7 +7970,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -8072,7 +8072,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -8150,7 +8150,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -8229,7 +8229,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -8308,7 +8308,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -8387,7 +8387,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -8466,7 +8466,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -8545,7 +8545,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -8624,7 +8624,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/cmake_linux",
|
||||
@ -8708,7 +8708,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -8787,7 +8787,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -8866,7 +8866,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -8945,7 +8945,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -14727,7 +14727,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/ccache_linux",
|
||||
@ -18834,7 +18834,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
}
|
||||
],
|
||||
"command": [
|
||||
@ -18918,7 +18918,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
}
|
||||
],
|
||||
"command": [
|
||||
@ -19730,7 +19730,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/linux_vulkan_sdk",
|
||||
@ -21700,7 +21700,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
}
|
||||
],
|
||||
"command": [
|
||||
@ -21861,7 +21861,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
}
|
||||
],
|
||||
"command": [
|
||||
@ -32394,7 +32394,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
}
|
||||
],
|
||||
"command": [
|
||||
@ -32478,7 +32478,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
}
|
||||
],
|
||||
"command": [
|
||||
@ -32641,7 +32641,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
}
|
||||
],
|
||||
"command": [
|
||||
@ -32725,7 +32725,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
}
|
||||
],
|
||||
"command": [
|
||||
@ -33125,7 +33125,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
}
|
||||
],
|
||||
"command": [
|
||||
@ -33209,7 +33209,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
}
|
||||
],
|
||||
"command": [
|
||||
@ -34004,7 +34004,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
}
|
||||
],
|
||||
"command": [
|
||||
@ -34088,7 +34088,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
}
|
||||
],
|
||||
"command": [
|
||||
@ -34407,7 +34407,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
}
|
||||
],
|
||||
"command": [
|
||||
@ -35075,7 +35075,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/linux_vulkan_sdk",
|
||||
@ -35339,7 +35339,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/mesa_intel_driver_linux",
|
||||
@ -35427,7 +35427,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/linux_vulkan_sdk",
|
||||
@ -35696,7 +35696,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/mesa_intel_driver_linux",
|
||||
@ -35784,7 +35784,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/linux_vulkan_sdk",
|
||||
@ -35877,7 +35877,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/mesa_intel_driver_linux",
|
||||
@ -39539,7 +39539,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
}
|
||||
],
|
||||
"command": [
|
||||
@ -39783,7 +39783,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
}
|
||||
],
|
||||
"command": [
|
||||
@ -40188,7 +40188,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
}
|
||||
],
|
||||
"command": [
|
||||
@ -40271,7 +40271,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/linux_vulkan_sdk",
|
||||
@ -40437,7 +40437,7 @@
|
||||
{
|
||||
"name": "skia/bots/clang_linux",
|
||||
"path": "clang_linux",
|
||||
"version": "version:16"
|
||||
"version": "version:19"
|
||||
},
|
||||
{
|
||||
"name": "skia/bots/linux_vulkan_sdk",
|
||||
|
Loading…
Reference in New Issue
Block a user