Skip to content

Commit d031d42

Browse files
Add initial build workflow for ios
1 parent d48c35d commit d031d42

File tree

1 file changed

+93
-0
lines changed

1 file changed

+93
-0
lines changed

.github/workflows/build.yml

Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
2+
3+
name: Build Flutter Engine
4+
5+
on:
6+
push:
7+
branches:
8+
- experimental
9+
10+
11+
jobs:
12+
build:
13+
runs-on: macos-latest
14+
15+
steps:
16+
17+
- name: Setup depot_tools
18+
shell: bash
19+
run: |
20+
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
21+
22+
echo "${{ github.workspace}}/depot_tools" >> $GITHUB_PATH
23+
24+
- name: Checkout source
25+
shell: bash
26+
run: |
27+
mkdir -p engine
28+
cat > engine/.gclient <<- EOF
29+
solutions = [
30+
{
31+
"managed": False,
32+
"name": "src/flutter",
33+
"url": "https://github.com/abaltatech/flutter-engine.git",
34+
"custom_deps": {},
35+
"deps_file": "DEPS",
36+
"safesync_url": "",
37+
},
38+
]
39+
EOF
40+
41+
- name: Setup environment
42+
shell: bash
43+
working-directory: engine
44+
run: |
45+
gclient sync
46+
47+
ls -la src/
48+
49+
# - name: Fetch source
50+
# shell: bash
51+
# working-directory: engine/src/flutter
52+
# run: |
53+
# git pull origin main
54+
55+
# - name: Re-fetch dependencies
56+
# shell: bash
57+
# working-directory: engine
58+
# run: |
59+
# gclient sync
60+
61+
- name: Generate build files
62+
shell: bash
63+
working-directory: engine/src
64+
run: |
65+
./flutter/tools/gn --unoptimized
66+
./flutter/tools/gn --ios --unoptimized
67+
68+
# final list:
69+
# ./flutter/tools/gn --unoptimized --runtime-mode=debug
70+
# ./flutter/tools/gn --ios --unoptimized --runtime-mode=debug
71+
# ./flutter/tools/gn --ios --unoptimized --runtime-mode=profile
72+
# ./flutter/tools/gn --ios --unoptimized --runtime-mode=release
73+
# ./flutter/tools/gn --ios --runtime-mode=debug
74+
# ./flutter/tools/gn --ios --runtime-mode=profile
75+
# ./flutter/tools/gn --ios --runtime-mode=release
76+
77+
- name: Build
78+
shell: bash
79+
working-directory: engine/src
80+
run: |
81+
ninja -C out/ios_debug_unopt
82+
ninja -C out/host_debug_unopt
83+
# find . -mindepth 1 -maxdepth 1 -type d | xargs -n 1 sh -c 'ninja -C $0 || exit 255'
84+
85+
- uses: actions/upload-artifact@v4
86+
with:
87+
name: gen_snaphot
88+
path: engine/src/out/*/gen_*
89+
90+
- uses: actions/upload-artifact@v4
91+
with:
92+
name: framework
93+
path: engine/src/out/*/*.xcframework

0 commit comments

Comments
 (0)