1919
2020jobs :
2121 build :
22- name : build-${{ matrix.target }}-${{ matrix.arch }}
23- runs-on : ${{ matrix.os }}
22+ name : build-${{ matrix.config. target }}-${{ matrix.arch }}
23+ runs-on : ${{ matrix.config. os }}
2424 env :
25- identifier : ${{ matrix.target }}-${{ matrix.arch }}
25+ identifier : ${{ matrix.config. target }}-${{ matrix.arch }}
2626 strategy :
2727 matrix :
2828 harfbuzz_ver : ['10.1.0']
29- target : [win, linux-musl, osx]
30- arch : [x64, arm64]
31- include :
29+ dotnet_version : ['9.x']
30+ config :
3231 - os : windows-latest
3332 target : win
33+ framework : net9.0
3434 - os : windows-latest
3535 target : linux-musl
36+ framework : net8.0 # need zig fix? https://github.com/ziglang/zig/pull/20081
3637 - os : macos-latest
3738 target : osx
38- dotnet_version : ['9.x']
39+ framework : net9.0
40+ arch : [x64, arm64]
3941
4042 steps :
4143
4749 - name : Checkout
4850 uses : actions/checkout@v4
4951
50- # - name: Update submodule
51- # run: git submodule update --init --recursive
52-
5352 - name : Test
53+ if : matrix.config.target != 'osx'
5454 run : |
5555 dotnet --version
5656 cd ./AssFontSubset.CoreTests
@@ -59,47 +59,21 @@ jobs:
5959 cd ..
6060
6161 - name : Setup Zig Compiler (target linux)
62- if : matrix.target == 'linux-musl'
62+ if : matrix.config. target == 'linux-musl'
6363 uses : mlugg/setup-zig@v1
6464 with :
6565 version : " master"
6666
6767 - name : Add llvm-objcopy (target linux)
68- if : matrix.target == 'linux-musl'
68+ if : matrix.config. target == 'linux-musl'
6969 run : |
70- Invoke-WebRequest -Uri https://github.com/MIRIMIRIM/FontFlat/releases/download/harfbuzz-libs/llvm-objcopy.exe -OutFile ./AssFontSubset.Console/llvm-objcopy.exe
71-
72- - name : Use prebuilt harfbuzz subset
73- uses : actions/cache/restore@v4
74- with :
75- path : ./HarfBuzzBinding/target
76- key : hb-subset-${{ matrix.harfbuzz_ver }}-${{ env.identifier }}-static
77- fail-on-cache-miss : true
70+ Invoke-WebRequest -Uri https://github.com/MIRIMIRIM/build-harfbuzz/releases/download/utils/llvm-objcopy.exe -OutFile ./AssFontSubset.Console/llvm-objcopy.exe
7871
7972 - name : Change to afs.cmd and Publish
80- if : matrix.target != 'linux-musl'
8173 run : |
82- mkdir native
83- mv ./HarfBuzzBinding/target/* ./native/
84-
8574 cd ./AssFontSubset.Console
8675 dotnet restore
87- dotnet publish -c Release -r ${{ env.identifier }} -f net9.0
88-
89- cd ..
90-
91- # need zig fix? https://github.com/ziglang/zig/pull/20081
92- - name : Change to afs.cmd and Publish (target linux)
93- if : matrix.target == 'linux-musl'
94- run : |
95- mkdir native
96- mv ./HarfBuzzBinding/target/* ./native/
97-
98- cd ./AssFontSubset.Console
99- dotnet restore
100- dotnet publish -c Release -r ${{ env.identifier }} -f net8.0
101-
102- cd ..
76+ dotnet publish -c Release -r ${{ env.identifier }} -f ${{ matrix.config.framework }}
10377
10478 - name : Set short version
10579 shell : bash
@@ -108,25 +82,13 @@ jobs:
10882 echo "VERSION=$ver_short" >> $GITHUB_ENV
10983
11084 - name : Upload exe files
111- if : matrix.target != 'linux-musl'
112- uses : actions/upload-artifact@v4
113- with :
114- name : AssFontSubset.Console_g${{ env.VERSION }}_${{ env.identifier }}
115- path : |
116- AssFontSubset.Console/bin/Release/net9.0/${{ env.identifier }}/publish/
117- !AssFontSubset.Console/bin/Release/net9.0/${{ env.identifier }}/publish/*.pdb
118- !AssFontSubset.Console/bin/Release/net9.0/${{ env.identifier }}/publish/*.dbg
119- !AssFontSubset.Console/bin/Release/net9.0/${{ env.identifier }}/publish/*.dwarf
120- !AssFontSubset.Console/bin/Release/net9.0/${{ env.identifier }}/publish/*.dsym
121-
122- - name : Upload exe files
123- if : matrix.target == 'linux-musl'
12485 uses : actions/upload-artifact@v4
12586 with :
12687 name : AssFontSubset.Console_g${{ env.VERSION }}_${{ env.identifier }}
12788 path : |
128- AssFontSubset.Console/bin/Release/net8.0/${{ env.identifier }}/publish/
129- !AssFontSubset.Console/bin/Release/net8.0/${{ env.identifier }}/publish/*.pdb
130- !AssFontSubset.Console/bin/Release/net8.0/${{ env.identifier }}/publish/*.dbg
131- !AssFontSubset.Console/bin/Release/net8.0/${{ env.identifier }}/publish/*.dwarf
132- !AssFontSubset.Console/bin/Release/net8.0/${{ env.identifier }}/publish/*.dsym
89+ AssFontSubset.Console/bin/Release/${{ matrix.config.framework }}/${{ env.identifier }}/publish/
90+ !AssFontSubset.Console/bin/Release/${{ matrix.config.framework }}/${{ env.identifier }}/publish/*.a
91+ !AssFontSubset.Console/bin/Release/${{ matrix.config.framework }}/${{ env.identifier }}/publish/*.pdb
92+ !AssFontSubset.Console/bin/Release/${{ matrix.config.framework }}/${{ env.identifier }}/publish/*.dbg
93+ !AssFontSubset.Console/bin/Release/${{ matrix.config.framework }}/${{ env.identifier }}/publish/*.dwarf
94+ !AssFontSubset.Console/bin/Release/${{ matrix.config.framework }}/${{ env.identifier }}/publish/*.dSYM
0 commit comments