Skip to content

Commit 20adf69

Browse files
authored
chore(🪨): Add workflow to build Skia Graphite (#3161)
1 parent 52ed82e commit 20adf69

File tree

1 file changed

+123
-0
lines changed

1 file changed

+123
-0
lines changed
Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,123 @@
1+
name: Build SKIA Graphite
2+
on: workflow_dispatch
3+
jobs:
4+
build:
5+
runs-on: macos-latest-xlarge
6+
steps:
7+
- name: checkout
8+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
9+
with:
10+
submodules: recursive
11+
12+
- name: Setup Android NDK
13+
id: setup-ndk
14+
uses: nttld/setup-ndk@afb4c9964b521afb97c864b7d40b11e6911bd410 # v1.5.0
15+
with:
16+
ndk-version: r22b
17+
18+
- name: Setup Ninja
19+
uses: seanmiddleditch/gha-setup-ninja@master
20+
21+
- name: Setup
22+
uses: ./.github/actions/setup
23+
with:
24+
download_skia: 'false'
25+
github_token: ${{ secrets.GITHUB_TOKEN }}
26+
27+
- name: Build Skia with Graphite
28+
working-directory: ./packages/skia
29+
env:
30+
ANDROID_NDK: ${{ steps.setup-ndk.outputs.ndk-path }}
31+
GIT_SYNC_DEPS_SKIP_EMSDK: 'true'
32+
ZERO_AR_DATE: 1
33+
SK_GRAPHITE: 1
34+
run: yarn build-skia
35+
36+
- name: Upload artifacts - Android arm (Graphite)
37+
if: github.ref == 'refs/heads/main'
38+
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
39+
with:
40+
name: skia-graphite-android-arm
41+
path: |
42+
./externals/skia/out/android/arm/libskia.a
43+
./externals/skia/out/android/arm/libskshaper.a
44+
./externals/skia/out/android/arm/libsvg.a
45+
./externals/skia/out/android/arm/libskottie.a
46+
./externals/skia/out/android/arm/libsksg.a
47+
./externals/skia/out/android/arm/libskparagraph.a
48+
./externals/skia/out/android/arm/libskunicode_core.a
49+
./externals/skia/out/android/arm/libskunicode_icu.a
50+
./externals/skia/out/android/arm/libdawn_native_static.a
51+
./externals/skia/out/android/arm/libdawn_platform_static.a
52+
./externals/skia/out/android/arm/libdawn_proc_static.a
53+
54+
- name: Upload artifacts - Android arm64 (Graphite)
55+
if: github.ref == 'refs/heads/main'
56+
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
57+
with:
58+
name: skia-graphite-android-arm-64
59+
path: |
60+
./externals/skia/out/android/arm64/libskia.a
61+
./externals/skia/out/android/arm64/libskshaper.a
62+
./externals/skia/out/android/arm64/libsvg.a
63+
./externals/skia/out/android/arm64/libskottie.a
64+
./externals/skia/out/android/arm64/libsksg.a
65+
./externals/skia/out/android/arm64/libskparagraph.a
66+
./externals/skia/out/android/arm64/libskunicode_core.a
67+
./externals/skia/out/android/arm64/libskunicode_icu.a
68+
./externals/skia/out/android/arm64/libdawn_native_static.a
69+
./externals/skia/out/android/arm64/libdawn_platform_static.a
70+
./externals/skia/out/android/arm64/libdawn_proc_static.a
71+
72+
- name: Upload artifacts - Android x86 (Graphite)
73+
if: github.ref == 'refs/heads/main'
74+
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
75+
with:
76+
name: skia-graphite-android-arm-x86
77+
path: |
78+
./externals/skia/out/android/x86/libskia.a
79+
./externals/skia/out/android/x86/libskshaper.a
80+
./externals/skia/out/android/x86/libsvg.a
81+
./externals/skia/out/android/x86/libskottie.a
82+
./externals/skia/out/android/x86/libsksg.a
83+
./externals/skia/out/android/x86/libskparagraph.a
84+
./externals/skia/out/android/x86/libskunicode_core.a
85+
./externals/skia/out/android/x86/libskunicode_icu.a
86+
./externals/skia/out/android/x86/libdawn_native_static.a
87+
./externals/skia/out/android/x86/libdawn_platform_static.a
88+
./externals/skia/out/android/x86/libdawn_proc_static.a
89+
90+
- name: Upload artifacts - Android x64 (Graphite)
91+
if: github.ref == 'refs/heads/main'
92+
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
93+
with:
94+
name: skia-graphite-android-arm-x64
95+
path: |
96+
./externals/skia/out/android/x64/libskia.a
97+
./externals/skia/out/android/x64/libskshaper.a
98+
./externals/skia/out/android/x64/libsvg.a
99+
./externals/skia/out/android/x64/libskottie.a
100+
./externals/skia/out/android/x64/libsksg.a
101+
./externals/skia/out/android/x64/libskparagraph.a
102+
./externals/skia/out/android/x64/libskunicode_core.a
103+
./externals/skia/out/android/x64/libskunicode_icu.a
104+
./externals/skia/out/android/x64/libdawn_native_static.a
105+
./externals/skia/out/android/x64/libdawn_platform_static.a
106+
./externals/skia/out/android/x64/libdawn_proc_static.a
107+
108+
- name: Upload artifacts - Apple xcframeworks (Graphite)
109+
if: github.ref == 'refs/heads/main'
110+
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
111+
with:
112+
name: skia-graphite-apple-xcframeworks
113+
path: |
114+
./packages/skia/libs/apple/*.xcframework
115+
116+
- name: Upload artifacts - Graphite Headers
117+
if: github.ref == 'refs/heads/main'
118+
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
119+
with:
120+
name: skia-graphite-headers
121+
path: |
122+
./packages/skia/cpp/dawn/include/
123+
./packages/skia/cpp/skia/src/gpu/graphite/

0 commit comments

Comments
 (0)