From d78bdfeb6c6da5153284786654fdd0f35b637cf9 Mon Sep 17 00:00:00 2001 From: Yorkie Makoto Date: Tue, 4 Jun 2024 16:00:36 +0800 Subject: [PATCH 01/11] Add GitHub workflow for building Skia on Android and macOS --- .github/workflows/build_skia.yml | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 .github/workflows/build_skia.yml diff --git a/.github/workflows/build_skia.yml b/.github/workflows/build_skia.yml new file mode 100644 index 000000000000..ad8cf4dc1b61 --- /dev/null +++ b/.github/workflows/build_skia.yml @@ -0,0 +1,28 @@ +name: Build Skia for Android and macOS + +on: + push: + branches: + - main + pull_request: + +jobs: + build-android: + name: Build Skia for Android + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Set up Bazel + uses: bazelbuild/setup-bazelisk@v1 + - name: Build Skia for Android + run: bazel build //:skia_public --config=android_arm64 --toolchain=//:ndk_linux_arm64_toolchain_config + + build-macos: + name: Build Skia for macOS + runs-on: macos-latest + steps: + - uses: actions/checkout@v2 + - name: Set up Bazel + uses: bazelbuild/setup-bazelisk@v1 + - name: Build Skia for macOS + run: bazel build //:skia_public --config=macos_x86_64 --toolchain=//:mac_toolchain_config From 850b554206a8c40c5b012d23bd74af00ca35d8f4 Mon Sep 17 00:00:00 2001 From: Yorkie Makoto Date: Tue, 4 Jun 2024 16:05:12 +0800 Subject: [PATCH 02/11] Update build_skia.yml --- .github/workflows/build_skia.yml | 34 ++++++++++++++++++++------------ 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/.github/workflows/build_skia.yml b/.github/workflows/build_skia.yml index ad8cf4dc1b61..85a09797d0a1 100644 --- a/.github/workflows/build_skia.yml +++ b/.github/workflows/build_skia.yml @@ -7,22 +7,30 @@ on: pull_request: jobs: - build-android: - name: Build Skia for Android - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - - name: Set up Bazel - uses: bazelbuild/setup-bazelisk@v1 - - name: Build Skia for Android - run: bazel build //:skia_public --config=android_arm64 --toolchain=//:ndk_linux_arm64_toolchain_config + # build-android: + # name: Build Skia for Android + # runs-on: ubuntu-latest + # steps: + # - uses: actions/checkout@v2 + # - name: Set up Bazel + # uses: bazelbuild/setup-bazelisk@v1 + # - name: Build Skia for Android + # run: bazel build //:skia_public --config=android_arm64 --toolchain=//:ndk_linux_arm64_toolchain_config build-macos: name: Build Skia for macOS runs-on: macos-latest steps: - uses: actions/checkout@v2 - - name: Set up Bazel - uses: bazelbuild/setup-bazelisk@v1 - - name: Build Skia for macOS - run: bazel build //:skia_public --config=macos_x86_64 --toolchain=//:mac_toolchain_config + - name: Install Python + uses: actions/setup-python@v2 + with: + python-version: '3.x' + - name: Set up deptool + run: | + git clone 'https://chromium.googlesource.com/chromium/tools/depot_tools.git' + echo "export PATH=\${PWD}/depot_tools:\${PATH}" >> $GITHUB_ENV + - name: Run git-sync-deps + run: python3 tools/git-sync-deps + - name: Fetch Ninja + run: bin/fetch-ninja From e16b8eb6d7e229a08da5ec0e3fe2aff2daf3c925 Mon Sep 17 00:00:00 2001 From: Yorkie Makoto Date: Tue, 4 Jun 2024 16:06:49 +0800 Subject: [PATCH 03/11] Update build_skia.yml --- .github/workflows/build_skia.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/build_skia.yml b/.github/workflows/build_skia.yml index 85a09797d0a1..e26f55812be1 100644 --- a/.github/workflows/build_skia.yml +++ b/.github/workflows/build_skia.yml @@ -28,6 +28,7 @@ jobs: python-version: '3.x' - name: Set up deptool run: | + git config --global init.defaultBranch main git clone 'https://chromium.googlesource.com/chromium/tools/depot_tools.git' echo "export PATH=\${PWD}/depot_tools:\${PATH}" >> $GITHUB_ENV - name: Run git-sync-deps From 73b40e0e74d58ba673aa97fa150dbfc9b6bcace0 Mon Sep 17 00:00:00 2001 From: Yorkie Makoto Date: Tue, 4 Jun 2024 16:11:55 +0800 Subject: [PATCH 04/11] Update build_skia.yml --- .github/workflows/build_skia.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/build_skia.yml b/.github/workflows/build_skia.yml index e26f55812be1..019fe5365bd1 100644 --- a/.github/workflows/build_skia.yml +++ b/.github/workflows/build_skia.yml @@ -35,3 +35,8 @@ jobs: run: python3 tools/git-sync-deps - name: Fetch Ninja run: bin/fetch-ninja + - name: Build Skia + run: | + bin/gn gen out/release-darwin-arm64 --args='target_cpu="arm64" is_official_build=true is_debug=false' + ninja -C out/release-darwin-arm64 + ls -lh out/release-darwin-arm64 From 6e42091b27d55559aa373bbe16c2ca6f83664508 Mon Sep 17 00:00:00 2001 From: Yorkie Makoto Date: Tue, 4 Jun 2024 16:18:44 +0800 Subject: [PATCH 05/11] Update build_skia.yml --- .github/workflows/build_skia.yml | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build_skia.yml b/.github/workflows/build_skia.yml index 019fe5365bd1..f1812402d74c 100644 --- a/.github/workflows/build_skia.yml +++ b/.github/workflows/build_skia.yml @@ -31,12 +31,10 @@ jobs: git config --global init.defaultBranch main git clone 'https://chromium.googlesource.com/chromium/tools/depot_tools.git' echo "export PATH=\${PWD}/depot_tools:\${PATH}" >> $GITHUB_ENV - - name: Run git-sync-deps - run: python3 tools/git-sync-deps - - name: Fetch Ninja - run: bin/fetch-ninja - - name: Build Skia + - name: Setup deps and build skia library run: | + python3 tools/git-sync-deps + bin/fetch-ninja bin/gn gen out/release-darwin-arm64 --args='target_cpu="arm64" is_official_build=true is_debug=false' ninja -C out/release-darwin-arm64 ls -lh out/release-darwin-arm64 From a4b474e6de3b3a4fb6c9085285e62ef1db58a4f2 Mon Sep 17 00:00:00 2001 From: Yorkie Makoto Date: Tue, 4 Jun 2024 18:50:09 +0800 Subject: [PATCH 06/11] Update build_skia.yml --- .github/workflows/build_skia.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/build_skia.yml b/.github/workflows/build_skia.yml index f1812402d74c..2d432fad3971 100644 --- a/.github/workflows/build_skia.yml +++ b/.github/workflows/build_skia.yml @@ -30,9 +30,7 @@ jobs: run: | git config --global init.defaultBranch main git clone 'https://chromium.googlesource.com/chromium/tools/depot_tools.git' - echo "export PATH=\${PWD}/depot_tools:\${PATH}" >> $GITHUB_ENV - - name: Setup deps and build skia library - run: | + export PATH=${PWD}/depot_tools:${PATH} python3 tools/git-sync-deps bin/fetch-ninja bin/gn gen out/release-darwin-arm64 --args='target_cpu="arm64" is_official_build=true is_debug=false' From e385e5e924d64bd7f3f5f9f7fb4ec2dbb4f82293 Mon Sep 17 00:00:00 2001 From: Yorkie Makoto Date: Tue, 4 Jun 2024 19:09:58 +0800 Subject: [PATCH 07/11] Update build_skia.yml --- .github/workflows/build_skia.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build_skia.yml b/.github/workflows/build_skia.yml index 2d432fad3971..4a9aa5b0f506 100644 --- a/.github/workflows/build_skia.yml +++ b/.github/workflows/build_skia.yml @@ -33,6 +33,7 @@ jobs: export PATH=${PWD}/depot_tools:${PATH} python3 tools/git-sync-deps bin/fetch-ninja - bin/gn gen out/release-darwin-arm64 --args='target_cpu="arm64" is_official_build=true is_debug=false' + bin/gn gen out/release-darwin-arm64 --args='target_cpu="arm64" is_official_build=true is_debug=false skia_use_libwebp=false' + bin/gn args out/release-darwin-arm64 --list ninja -C out/release-darwin-arm64 ls -lh out/release-darwin-arm64 From e1a981b337f703c38888162252e595e3d5fb60ca Mon Sep 17 00:00:00 2001 From: Yorkie Makoto Date: Tue, 4 Jun 2024 19:17:50 +0800 Subject: [PATCH 08/11] Update build_skia.yml --- .github/workflows/build_skia.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/build_skia.yml b/.github/workflows/build_skia.yml index 4a9aa5b0f506..34d071a92c97 100644 --- a/.github/workflows/build_skia.yml +++ b/.github/workflows/build_skia.yml @@ -35,5 +35,6 @@ jobs: bin/fetch-ninja bin/gn gen out/release-darwin-arm64 --args='target_cpu="arm64" is_official_build=true is_debug=false skia_use_libwebp=false' bin/gn args out/release-darwin-arm64 --list + tools/install_dependencies.sh ninja -C out/release-darwin-arm64 ls -lh out/release-darwin-arm64 From bff6a7dd7cf6e57295918429599c991fc005b6c6 Mon Sep 17 00:00:00 2001 From: Yorkie Makoto Date: Tue, 4 Jun 2024 22:25:03 +0800 Subject: [PATCH 09/11] Update build_skia.yml --- .github/workflows/build_skia.yml | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build_skia.yml b/.github/workflows/build_skia.yml index 34d071a92c97..3b18e781ede2 100644 --- a/.github/workflows/build_skia.yml +++ b/.github/workflows/build_skia.yml @@ -33,8 +33,18 @@ jobs: export PATH=${PWD}/depot_tools:${PATH} python3 tools/git-sync-deps bin/fetch-ninja - bin/gn gen out/release-darwin-arm64 --args='target_cpu="arm64" is_official_build=true is_debug=false skia_use_libwebp=false' + bin/gn gen out/release-darwin-arm64 \ + --args=' \ + target_cpu="arm64" \ + is_official_build=true \ + is_debug=false \ + skia_use_libwebp_decode=true \ + skia_use_libwebp_encode=true \ + skia_use_libwebp=false \ + skia_use_system_libjpeg_turbo=false \ + skia_use_system_libpng=false \ + skia_use_system_libwebp=false \ + ' bin/gn args out/release-darwin-arm64 --list - tools/install_dependencies.sh ninja -C out/release-darwin-arm64 ls -lh out/release-darwin-arm64 From 4b575a3f3fd24b132c38df6f5f389c0ca757547d Mon Sep 17 00:00:00 2001 From: Yorkie Makoto Date: Tue, 4 Jun 2024 22:30:21 +0800 Subject: [PATCH 10/11] Update build_skia.yml --- .github/workflows/build_skia.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build_skia.yml b/.github/workflows/build_skia.yml index 3b18e781ede2..058d279892f6 100644 --- a/.github/workflows/build_skia.yml +++ b/.github/workflows/build_skia.yml @@ -33,8 +33,7 @@ jobs: export PATH=${PWD}/depot_tools:${PATH} python3 tools/git-sync-deps bin/fetch-ninja - bin/gn gen out/release-darwin-arm64 \ - --args=' \ + export BUILD_ARGS=\ target_cpu="arm64" \ is_official_build=true \ is_debug=false \ @@ -43,8 +42,8 @@ jobs: skia_use_libwebp=false \ skia_use_system_libjpeg_turbo=false \ skia_use_system_libpng=false \ - skia_use_system_libwebp=false \ - ' + skia_use_system_libwebp=false + bin/gn gen out/release-darwin-arm64 --args='$BUILD_ARGS' bin/gn args out/release-darwin-arm64 --list ninja -C out/release-darwin-arm64 ls -lh out/release-darwin-arm64 From c7f420a680d17fe8434cbb57707a4db9e1513ac6 Mon Sep 17 00:00:00 2001 From: Yorkie Makoto Date: Tue, 4 Jun 2024 22:48:42 +0800 Subject: [PATCH 11/11] Update build_skia.yml --- .github/workflows/build_skia.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build_skia.yml b/.github/workflows/build_skia.yml index 058d279892f6..42262ac222e4 100644 --- a/.github/workflows/build_skia.yml +++ b/.github/workflows/build_skia.yml @@ -34,7 +34,7 @@ jobs: python3 tools/git-sync-deps bin/fetch-ninja export BUILD_ARGS=\ - target_cpu="arm64" \ + target_cpu=\"arm64\" \ is_official_build=true \ is_debug=false \ skia_use_libwebp_decode=true \ @@ -43,7 +43,7 @@ jobs: skia_use_system_libjpeg_turbo=false \ skia_use_system_libpng=false \ skia_use_system_libwebp=false - bin/gn gen out/release-darwin-arm64 --args='$BUILD_ARGS' + bin/gn gen out/release-darwin-arm64 --args="$BUILD_ARGS" bin/gn args out/release-darwin-arm64 --list ninja -C out/release-darwin-arm64 ls -lh out/release-darwin-arm64