a77f30c7db
This reverts commit 9d4b788807
.
Copyright issue has been fixed in
https://skia-review.googlesource.com/c/skia/+/275998.
Original description:
Bug: skia:9756
In CanvasKit, a large part of the binary is for encoding. Clients
would be happier with a smaller binary and no webp/jpeg encoding. Make
this an option by splitting up the GN arguments.
Split SK_HAS_WEBP_LIBRARY into SK_CODEC_DECODES_WEBP (to match the
existing SK_CODEC_DECODES_RAW) and SK_ENCODE_WEBP. Same for JPEG and
PNG.
Update CanvasKit compile script to disable webp and jpeg encoding.
Update debugger compile script to disable all encoding.
Change IsPng signature to match other SkCodecs.
TBR=djsollen@google.com
Change-Id: Ic847bae0154e0a2922100b3f2ee14a077ee5635a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/276007
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
232 lines
9.1 KiB
JSON
232 lines
9.1 KiB
JSON
[
|
|
{
|
|
"cmd": [
|
|
"python",
|
|
"-u",
|
|
"\nimport subprocess\nimport sys\n\nwhich = 'where' if sys.platform == 'win32' else 'which'\ngit = subprocess.check_output([which, 'git'])\nprint 'git was found at %s' % git\nif 'cipd_bin_packages' not in git:\n print >> sys.stderr, 'Git must be obtained through CIPD.'\n sys.exit(1)\n"
|
|
],
|
|
"env": {
|
|
"CHROME_HEADLESS": "1",
|
|
"PATH": "<PATH>;RECIPE_REPO[depot_tools]"
|
|
},
|
|
"name": "Assert that Git is from CIPD",
|
|
"~followup_annotations": [
|
|
"@@@STEP_LOG_LINE@python.inline@@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@which = 'where' if sys.platform == 'win32' else 'which'@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@git = subprocess.check_output([which, 'git'])@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@print 'git was found at %s' % git@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@if 'cipd_bin_packages' not in git:@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@ print >> sys.stderr, 'Git must be obtained through CIPD.'@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
|
|
"@@@STEP_LOG_END@python.inline@@@"
|
|
]
|
|
},
|
|
{
|
|
"cmd": [
|
|
"python",
|
|
"-u",
|
|
"RECIPE_MODULE[depot_tools::git]\\resources\\git_setup.py",
|
|
"--path",
|
|
"[START_DIR]\\skia",
|
|
"--url",
|
|
"https://skia.googlesource.com/skia.git"
|
|
],
|
|
"name": "git setup"
|
|
},
|
|
{
|
|
"cmd": [
|
|
"git",
|
|
"fetch",
|
|
"origin",
|
|
"abc123",
|
|
"--progress"
|
|
],
|
|
"cwd": "[START_DIR]\\skia",
|
|
"env": {
|
|
"PATH": "RECIPE_REPO[depot_tools];<PATH>"
|
|
},
|
|
"infra_step": true,
|
|
"name": "git fetch"
|
|
},
|
|
{
|
|
"cmd": [
|
|
"git",
|
|
"checkout",
|
|
"-f",
|
|
"FETCH_HEAD"
|
|
],
|
|
"cwd": "[START_DIR]\\skia",
|
|
"infra_step": true,
|
|
"name": "git checkout"
|
|
},
|
|
{
|
|
"cmd": [
|
|
"git",
|
|
"rev-parse",
|
|
"HEAD"
|
|
],
|
|
"cwd": "[START_DIR]\\skia",
|
|
"infra_step": true,
|
|
"name": "read revision",
|
|
"~followup_annotations": [
|
|
"@@@STEP_TEXT@<br/>checked out 'deadbeef'<br/>@@@"
|
|
]
|
|
},
|
|
{
|
|
"cmd": [
|
|
"git",
|
|
"clean",
|
|
"-f",
|
|
"-d",
|
|
"-x"
|
|
],
|
|
"cwd": "[START_DIR]\\skia",
|
|
"infra_step": true,
|
|
"name": "git clean"
|
|
},
|
|
{
|
|
"cmd": [
|
|
"vpython",
|
|
"-u",
|
|
"RECIPE_MODULE[recipe_engine::file]\\resources\\fileutil.py",
|
|
"--json-output",
|
|
"/path/to/tmp/json",
|
|
"ensure-directory",
|
|
"--mode",
|
|
"0777",
|
|
"[START_DIR]\\tmp"
|
|
],
|
|
"infra_step": true,
|
|
"name": "makedirs tmp_dir"
|
|
},
|
|
{
|
|
"cmd": [
|
|
"vpython",
|
|
"-u",
|
|
"RECIPE_MODULE[recipe_engine::file]\\resources\\fileutil.py",
|
|
"--json-output",
|
|
"/path/to/tmp/json",
|
|
"copy",
|
|
"[START_DIR]\\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]\\skia\\bin\\fetch-gn"
|
|
],
|
|
"cwd": "[START_DIR]\\skia",
|
|
"env": {
|
|
"CHROME_HEADLESS": "1",
|
|
"PATH": "<PATH>;RECIPE_REPO[depot_tools]"
|
|
},
|
|
"infra_step": true,
|
|
"name": "fetch-gn"
|
|
},
|
|
{
|
|
"cmd": [
|
|
"[START_DIR]\\skia\\bin\\gn",
|
|
"gen",
|
|
"[START_DIR]\\skia\\out\\Build-Win10-Clang-x86_64-Release-NoDEPS\\Release_x64",
|
|
"--args=cc=\"clang\" clang_win=\"[START_DIR]\\clang_win\" cxx=\"clang++\" extra_cflags=[\"-DDUMMY_clang_win_version=42\"] is_debug=false is_official_build=true skia_enable_fontmgr_empty=true skia_enable_gpu=true skia_enable_pdf=false skia_use_expat=false skia_use_freetype=false skia_use_harfbuzz=false skia_use_libjpeg_turbo_decode=false skia_use_libjpeg_turbo_encode=false skia_use_libpng_decode=false skia_use_libpng_encode=false skia_use_libwebp_decode=false skia_use_libwebp_encode=false skia_use_vulkan=false skia_use_zlib=false target_cpu=\"x86_64\" werror=true win_sdk=\"[START_DIR]\\win_toolchain/win_sdk\" win_vc=\"[START_DIR]\\win_toolchain/VC\""
|
|
],
|
|
"cwd": "[START_DIR]\\skia",
|
|
"env": {
|
|
"CHROME_HEADLESS": "1",
|
|
"PATH": "<PATH>;RECIPE_REPO[depot_tools]"
|
|
},
|
|
"name": "gn gen"
|
|
},
|
|
{
|
|
"cmd": [
|
|
"ninja",
|
|
"-C",
|
|
"[START_DIR]\\skia\\out\\Build-Win10-Clang-x86_64-Release-NoDEPS\\Release_x64"
|
|
],
|
|
"cwd": "[START_DIR]\\skia",
|
|
"env": {
|
|
"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]\\skia\\out\\Build-Win10-Clang-x86_64-Release-NoDEPS\\Release_x64",
|
|
"[START_DIR]\\[SWARM_OUT_DIR]"
|
|
],
|
|
"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": [
|
|
"vpython",
|
|
"-u",
|
|
"\n# [VPYTHON:BEGIN]\n# wheel: <\n# name: \"infra/python/wheels/psutil/${vpython_platform}\"\n# version: \"version:5.4.7\"\n# >\n# [VPYTHON:END]\n\nimport psutil\nfor p in psutil.process_iter():\n try:\n if p.name in ('mspdbsrv.exe', 'vctip.exe', 'cl.exe', 'link.exe'):\n p.kill()\n except psutil._error.AccessDenied:\n pass\n"
|
|
],
|
|
"infra_step": true,
|
|
"name": "cleanup",
|
|
"~followup_annotations": [
|
|
"@@@STEP_LOG_LINE@python.inline@@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@# [VPYTHON:BEGIN]@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@# wheel: <@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@# name: \"infra/python/wheels/psutil/${vpython_platform}\"@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@# version: \"version:5.4.7\"@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@# >@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@# [VPYTHON:END]@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@import psutil@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@for p in psutil.process_iter():@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@ try:@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@ if p.name in ('mspdbsrv.exe', 'vctip.exe', 'cl.exe', 'link.exe'):@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@ p.kill()@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@ except psutil._error.AccessDenied:@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@ pass@@@",
|
|
"@@@STEP_LOG_END@python.inline@@@"
|
|
]
|
|
},
|
|
{
|
|
"name": "$result"
|
|
}
|
|
] |