@@ -84,13 +84,23 @@ jobs:
8484 # Exclude i386 on darwin.
8585 - goarch : 386
8686 goos : darwin
87+ include :
88+ # BEGIN Linux ARM 5 6 7
89+ - goos : linux
90+ goarch : arm
91+ goarm : 7
92+ - goos : linux
93+ goarch : arm
94+ goarm : 6
95+ - goos : linux
96+ goarch : arm
97+ goarm : 5
98+ # END Linux ARM 5 6 7
8799 env :
88100 CGO_ENABLED : 1
89101 GOOS : ${{ matrix.goos }}
90102 GOARCH : ${{ matrix.goarch }}
91- DIST : nginx-ui-${{ matrix.GOOS }}-${{ matrix.GOARCH }}
92- outputs :
93- dist : ${{ env.DIST }}
103+ GOARM : ${{ matrix.goarm }}
94104 steps :
95105 - name : Checkout
96106 uses : actions/checkout@v2
@@ -106,29 +116,34 @@ jobs:
106116 path : |
107117 ~/.cache/go-build
108118 ~/go/pkg/mod
109- key : ${{ runner.os }}-${{ env.GOOS }}-${{ env.GOARCH }}-go-${{ hashFiles('**/go.sum') }}
119+ key : ${{ runner.os }}-${{ env.GOOS }}-${{ env.GOARCH }}${{ env.GOARM }} -go-${{ hashFiles('**/go.sum') }}
110120 restore-keys : |
111- ${{ runner.os }}-${{ env.GOOS }}-${{ env.GOARCH }}-go-
121+ ${{ runner.os }}-${{ env.GOOS }}-${{ env.GOARCH }}${{ env.GOARM }} -go-
112122
113123 - name : Setup compiler environment
114124 id : info
115125 run : |
116- export _ARCH=$(jq ".[\"$GOARCH\"].$GOOS" -r < .github/build/compiler_arch.json)
117- echo "::set-output name=ARCH_NAME::$_ARCH"
126+ export _NAME=nginx-ui-$(jq ".$GOOS[\"$GOARCH$GOARM\"].name" -r < .github/build/build_info.json)
127+ export _ARCH=$(jq ".$GOOS[\"$GOARCH$GOARM\"].arch" -r < .github/build/build_info.json)
128+ export _ABI=$(jq ".$GOOS[\"$GOARCH$GOARM\"].abi // \"\"" -r < .github/build/build_info.json)
129+ echo "GOOS: $GOOS, GOARCH: $GOARCH, GOARM: $GOARM, ABI: $_ABI, RELEASE_NAME: $_NAME"
130+ echo "ARCH_NAME=$_ARCH" >> $GITHUB_ENV
131+ echo "ABI=$_ABI" >> $GITHUB_ENV
132+ echo "DIST=$_NAME" >> $GITHUB_ENV
118133
119134 - name : Install musl cross compiler
120135 if : env.GOOS == 'linux'
121136 uses :
Lesmiscore/[email protected] 122137 id : musl
123138 with :
124- target : ${{ steps.info.outputs. ARCH_NAME }}-linux-musl
139+ target : ${{ env. ARCH_NAME }}-linux-musl${{ env.ABI }}
125140
126141 - name : Post install musl cross compiler
127142 if : env.GOOS == 'linux'
128143 run : |
129144 echo "PATH=${{ steps.musl.outputs.path }}:$PATH" >> $GITHUB_ENV
130- echo "CC=${{ steps.info.outputs. ARCH_NAME }}-linux-musl-gcc" >> $GITHUB_ENV
131- echo "CXX=${{ steps.info.outputs. ARCH_NAME }}-linux-musl-g++" >> $GITHUB_ENV
145+ echo "CC=${{ env. ARCH_NAME }}-linux-musl${{ env.ABI }} -gcc" >> $GITHUB_ENV
146+ echo "CXX=${{ env. ARCH_NAME }}-linux-musl${{ env.ABI }} -g++" >> $GITHUB_ENV
132147 echo "LD_FLAGS=--extldflags '-static'" >> $GITHUB_ENV
133148
134149 - name : Install darwin cross compiler
@@ -138,8 +153,8 @@ jobs:
138153 tar xvaf crossosx.tar.zst
139154 echo "LD_LIBRARY_PATH=$(pwd)/crossosx/lib/" >> $GITHUB_ENV
140155 echo "PATH=$(pwd)/crossosx/bin/:$PATH" >> $GITHUB_ENV
141- echo "CC=${{ steps.info.outputs .ARCH_NAME }}-clang" >> $GITHUB_ENV
142- echo "CXX=${{ steps.info.outputs .ARCH_NAME }}-clang++" >> $GITHUB_ENV
156+ echo "CC=${{ env .ARCH_NAME }}-clang" >> $GITHUB_ENV
157+ echo "CXX=${{ env .ARCH_NAME }}-clang++" >> $GITHUB_ENV
143158 echo "LD_FLAGS=-s -w" >> $GITHUB_ENV
144159
145160 - name : Download frontend artifacts
0 commit comments