1cb93a386Sopenharmony_ciclean: 2cb93a386Sopenharmony_ci - rm -rf ../../out/canvaskit_wasm 3cb93a386Sopenharmony_ci - rm -rf ./npm_build/bin 4cb93a386Sopenharmony_ci - rm -rf ./build/ 5cb93a386Sopenharmony_ci $(MAKE) release 6cb93a386Sopenharmony_ci 7cb93a386Sopenharmony_cirelease: 8cb93a386Sopenharmony_ci # Does an incremental build where possible. 9cb93a386Sopenharmony_ci ./compile.sh 10cb93a386Sopenharmony_ci - rm -rf build/ 11cb93a386Sopenharmony_ci mkdir build 12cb93a386Sopenharmony_ci cp ../../out/canvaskit_wasm/canvaskit.js ./build/ 13cb93a386Sopenharmony_ci cp ../../out/canvaskit_wasm/canvaskit.wasm ./build/ 14cb93a386Sopenharmony_ci 15cb93a386Sopenharmony_cirelease_cpu: 16cb93a386Sopenharmony_ci # Does an incremental build where possible. 17cb93a386Sopenharmony_ci ./compile.sh cpu_only 18cb93a386Sopenharmony_ci - rm -rf build/ 19cb93a386Sopenharmony_ci mkdir build 20cb93a386Sopenharmony_ci cp ../../out/canvaskit_wasm/canvaskit.js ./build/ 21cb93a386Sopenharmony_ci cp ../../out/canvaskit_wasm/canvaskit.wasm ./build/ 22cb93a386Sopenharmony_ci 23cb93a386Sopenharmony_cirelease_viewer: 24cb93a386Sopenharmony_ci # Does an incremental build where possible. 25cb93a386Sopenharmony_ci ./compile.sh viewer 26cb93a386Sopenharmony_ci - rm -rf build/ 27cb93a386Sopenharmony_ci mkdir build 28cb93a386Sopenharmony_ci cp ../../out/canvaskit_wasm/canvaskit.js ./build/ 29cb93a386Sopenharmony_ci cp ../../out/canvaskit_wasm/canvaskit.wasm ./build/ 30cb93a386Sopenharmony_ci 31cb93a386Sopenharmony_cidebug: 32cb93a386Sopenharmony_ci # Does an incremental build where possible. 33cb93a386Sopenharmony_ci ./compile.sh debug 34cb93a386Sopenharmony_ci - rm -rf build/ 35cb93a386Sopenharmony_ci mkdir build 36cb93a386Sopenharmony_ci cp ../../out/canvaskit_wasm_debug/canvaskit.js ./build/ 37cb93a386Sopenharmony_ci cp ../../out/canvaskit_wasm_debug/canvaskit.wasm ./build/ 38cb93a386Sopenharmony_ci 39cb93a386Sopenharmony_cidebug_cpu: 40cb93a386Sopenharmony_ci # Does an incremental build where possible. 41cb93a386Sopenharmony_ci ./compile.sh debug cpu_only 42cb93a386Sopenharmony_ci - rm -rf build/ 43cb93a386Sopenharmony_ci mkdir build 44cb93a386Sopenharmony_ci cp ../../out/canvaskit_wasm_debug/canvaskit.js ./build/ 45cb93a386Sopenharmony_ci cp ../../out/canvaskit_wasm_debug/canvaskit.wasm ./build/ 46cb93a386Sopenharmony_ci 47cb93a386Sopenharmony_cidebug_viewer: 48cb93a386Sopenharmony_ci # Does an incremental build where possible. 49cb93a386Sopenharmony_ci ./compile.sh debug viewer 50cb93a386Sopenharmony_ci - rm -rf build/ 51cb93a386Sopenharmony_ci mkdir build 52cb93a386Sopenharmony_ci cp ../../out/canvaskit_wasm_debug/canvaskit.js ./build/ 53cb93a386Sopenharmony_ci cp ../../out/canvaskit_wasm_debug/canvaskit.wasm ./build/ 54cb93a386Sopenharmony_ci 55cb93a386Sopenharmony_ciprofile: 56cb93a386Sopenharmony_ci ./compile.sh profiling 57cb93a386Sopenharmony_ci - rm -rf build/ 58cb93a386Sopenharmony_ci mkdir build 59cb93a386Sopenharmony_ci cp ../../out/canvaskit_wasm_profile/canvaskit.js ./build/ 60cb93a386Sopenharmony_ci cp ../../out/canvaskit_wasm_profile/canvaskit.wasm ./build/ 61cb93a386Sopenharmony_ci 62cb93a386Sopenharmony_cinpm: 63cb93a386Sopenharmony_ci rm -rf ./npm_build/bin 64cb93a386Sopenharmony_ci mkdir -p ./npm_build/bin 65cb93a386Sopenharmony_ci cp ./CHANGELOG.md ./npm_build/ 66cb93a386Sopenharmony_ci 67cb93a386Sopenharmony_ci mkdir -p ./npm_build/bin/full 68cb93a386Sopenharmony_ci ./compile.sh release 69cb93a386Sopenharmony_ci cp ../../out/canvaskit_wasm/canvaskit.js ./npm_build/bin/full 70cb93a386Sopenharmony_ci cp ../../out/canvaskit_wasm/canvaskit.wasm ./npm_build/bin/full 71cb93a386Sopenharmony_ci 72cb93a386Sopenharmony_ci # These features are turned off to keep code size smaller for the 73cb93a386Sopenharmony_ci # general use case. 74cb93a386Sopenharmony_ci ./compile.sh release no_skottie no_particles no_rt_shader no_alias_font no_effects_deserialization 75cb93a386Sopenharmony_ci cp ../../out/canvaskit_wasm/canvaskit.js ./npm_build/bin 76cb93a386Sopenharmony_ci cp ../../out/canvaskit_wasm/canvaskit.wasm ./npm_build/bin 77cb93a386Sopenharmony_ci 78cb93a386Sopenharmony_ci mkdir -p ./npm_build/bin/profiling 79cb93a386Sopenharmony_ci ./compile.sh profiling 80cb93a386Sopenharmony_ci cp ../../out/canvaskit_wasm_profile/canvaskit.js ./npm_build/bin/profiling 81cb93a386Sopenharmony_ci cp ../../out/canvaskit_wasm_profile/canvaskit.wasm ./npm_build/bin/profiling 82cb93a386Sopenharmony_ci 83cb93a386Sopenharmony_cigm_tests_debug: 84cb93a386Sopenharmony_ci ./compile_gm.sh debug 85cb93a386Sopenharmony_ci mkdir -p ./out 86cb93a386Sopenharmony_ci cp ../../out/wasm_gm_tests_debug/wasm_gm_tests.js ./out 87cb93a386Sopenharmony_ci cp ../../out/wasm_gm_tests_debug/wasm_gm_tests.wasm ./out 88cb93a386Sopenharmony_ci 89cb93a386Sopenharmony_cigm_tests: 90cb93a386Sopenharmony_ci ./compile_gm.sh 91cb93a386Sopenharmony_ci mkdir -p ./out 92cb93a386Sopenharmony_ci cp ../../out/wasm_gm_tests/wasm_gm_tests.js ./out 93cb93a386Sopenharmony_ci cp ../../out/wasm_gm_tests/wasm_gm_tests.wasm ./out 94cb93a386Sopenharmony_ci 95cb93a386Sopenharmony_cilocal-example: 96cb93a386Sopenharmony_ci rm -rf node_modules/canvaskit 97cb93a386Sopenharmony_ci mkdir -p node_modules 98cb93a386Sopenharmony_ci ln -s ../npm_build node_modules/canvaskit 99cb93a386Sopenharmony_ci echo "Go check out http://localhost:8000/npm_build/example.html" 100cb93a386Sopenharmony_ci python3 ../../tools/serve_wasm.py 101cb93a386Sopenharmony_ci 102cb93a386Sopenharmony_citest-continuous: 103cb93a386Sopenharmony_ci echo "Assuming npm ci has been run by user" 104cb93a386Sopenharmony_ci echo "Also assuming make debug or release has also been run by a user (if needed)" 105cb93a386Sopenharmony_ci npx karma start ./karma.conf.js --no-single-run --watch-poll 106cb93a386Sopenharmony_ci 107cb93a386Sopenharmony_citest-continuous-headless: 108cb93a386Sopenharmony_ci npx karma start ./karma.conf.js --no-single-run --watch-poll --headless 109cb93a386Sopenharmony_ci 110cb93a386Sopenharmony_cinode-example: 111cb93a386Sopenharmony_ci node ./npm_build/node.example.js --expose-wasm 112cb93a386Sopenharmony_ci 113cb93a386Sopenharmony_cidocker-compile: 114cb93a386Sopenharmony_ci mkdir -p ${SKIA_ROOT}/out/canvaskit_wasm_docker 115cb93a386Sopenharmony_ci docker run --rm --volume ${SKIA_ROOT}:/SRC \ 116cb93a386Sopenharmony_ci --volume ${SKIA_ROOT}/out/canvaskit_wasm_docker:/OUT \ 117cb93a386Sopenharmony_ci gcr.io/skia-public/canvaskit-emsdk:2.0.0_v1 \ 118cb93a386Sopenharmony_ci /SRC/infra/canvaskit/build_canvaskit.sh 119cb93a386Sopenharmony_ci 120cb93a386Sopenharmony_citypecheck: 121cb93a386Sopenharmony_ci echo "Make sure you've run cd npm_build && npm ci recently" 122cb93a386Sopenharmony_ci cd npm_build && npm run dtslint 123cb93a386Sopenharmony_ci 124cb93a386Sopenharmony_cibazel_gms_release: 125cb93a386Sopenharmony_ci # We use spawn_strategy=local for "everyday" builds because emscripten assumes there 126cb93a386Sopenharmony_ci # is a cache in the home directory that it needs to fill with compiled versions of libc etc. 127cb93a386Sopenharmony_ci # https://emscripten.org/docs/tools_reference/emcc.html 128cb93a386Sopenharmony_ci # By setting spawn_strategy=local, we can avoid recompiling all of this for every compilation 129cb93a386Sopenharmony_ci # unit, by letting the cache be used (and not dropped from the sandbox), which gets expensive. 130cb93a386Sopenharmony_ci # Local testing showed using the local strategy sped up a clean build from 9.5 minutes 131cb93a386Sopenharmony_ci # to 1 minute. https://docs.bazel.build/versions/main/user-manual.html#strategy-options 132cb93a386Sopenharmony_ci bazelisk build :gm-bindings-wasm --compilation_mode opt --spawn_strategy=local \ 133cb93a386Sopenharmony_ci --gpu_backend=gl_backend --with_gl_standard=webgl_standard \ 134cb93a386Sopenharmony_ci --included_codec=jpeg_codec --included_codec=png_codec --include_codec=webp_codec \ 135cb93a386Sopenharmony_ci --include_codec=gif_codec 136cb93a386Sopenharmony_ci - rm -rf build/ 137cb93a386Sopenharmony_ci mkdir build 138cb93a386Sopenharmony_ci cp ../../bazel-bin/modules/canvaskit/gm-bindings-wasm/gm-bindings.js build/gm-bindings.js 139cb93a386Sopenharmony_ci cp ../../bazel-bin/modules/canvaskit/gm-bindings-wasm/gm-bindings.wasm build/gm-bindings.wasm 140cb93a386Sopenharmony_ci 141cb93a386Sopenharmony_cibazel_gms_debug: 142cb93a386Sopenharmony_ci # See above note about spawn_strategy 143cb93a386Sopenharmony_ci bazelisk build :gm-bindings-wasm --compilation_mode dbg --spawn_strategy=local \ 144cb93a386Sopenharmony_ci --gpu_backend=gl_backend --with_gl_standard=webgl_standard \ 145cb93a386Sopenharmony_ci --include_codec=jpeg_codec --include_codec=png_codec --include_codec=webp_codec \ 146cb93a386Sopenharmony_ci --include_codec=gif_codec 147cb93a386Sopenharmony_ci - rm -rf build/ 148cb93a386Sopenharmony_ci mkdir build 149cb93a386Sopenharmony_ci cp ../../bazel-bin/modules/canvaskit/gm-bindings-wasm/gm-bindings.js build/gm-bindings.js 150cb93a386Sopenharmony_ci cp ../../bazel-bin/modules/canvaskit/gm-bindings-wasm/gm-bindings.wasm build/gm-bindings.wasm 151cb93a386Sopenharmony_ci 152cb93a386Sopenharmony_cibazel_canvaskit_debug: 153cb93a386Sopenharmony_ci # See above note about spawn_strategy 154cb93a386Sopenharmony_ci bazelisk build :canvaskit-wasm --compilation_mode dbg --spawn_strategy=local \ 155cb93a386Sopenharmony_ci --gpu_backend=gl_backend --with_gl_standard=webgl_standard \ 156cb93a386Sopenharmony_ci --include_codec=jpeg_codec --include_codec=png_codec --include_codec=webp_codec \ 157cb93a386Sopenharmony_ci --include_codec=gif_codec 158cb93a386Sopenharmony_ci - rm -rf build/ 159cb93a386Sopenharmony_ci mkdir build 160cb93a386Sopenharmony_ci cp ../../bazel-bin/modules/canvaskit/canvaskit-wasm/canvaskit.js build/canvaskit.js 161cb93a386Sopenharmony_ci cp ../../bazel-bin/modules/canvaskit/canvaskit-wasm/canvaskit.wasm build/canvaskit.wasm 162