Skip to content

Commit 9d16661

Browse files
committed
add linux and macos arm64 release build
1 parent 778590a commit 9d16661

File tree

1 file changed

+33
-10
lines changed

1 file changed

+33
-10
lines changed

.github/workflows/release.yaml

Lines changed: 33 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -34,20 +34,26 @@ jobs:
3434
runs-on: ${{ matrix.os }}
3535
strategy:
3636
matrix:
37-
os: [ ubuntu-22.04, ubuntu-24.04, macos-15-intel, macos-14, windows-2022 ]
37+
os: [ ubuntu-22.04, ubuntu-24.04, ubuntu-22.04-arm, ubuntu-24.04-arm, macos-15-intel, macos-15, windows-2022 ]
3838
include:
3939
- os: ubuntu-22.04
4040
bin_suffix:
4141
pkg_suffix: x86_64-linux-portable
4242
- os: ubuntu-24.04
4343
bin_suffix:
4444
pkg_suffix: x86_64-linux
45+
- os: ubuntu-22.04-arm
46+
bin_suffix:
47+
pkg_suffix: aarch64-linux-portable
48+
- os: ubuntu-24.04-arm
49+
bin_suffix:
50+
pkg_suffix: aarch64-linux
4551
- os: macos-15-intel
4652
bin_suffix:
4753
pkg_suffix: x86_64-darwin-portable
48-
- os: macos-14
54+
- os: macos-15
4955
bin_suffix:
50-
pkg_suffix: x86_64-darwin
56+
pkg_suffix: aarch64-darwin
5157
- os: windows-2022
5258
bin_suffix: .exe
5359
pkg_suffix: x86_64-windows
@@ -67,7 +73,7 @@ jobs:
6773
echo "$env:USERPROFILE\scoop\shims" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
6874
scoop install llvm yasm
6975
- if: matrix.os == 'ubuntu-22.04'
70-
name: Build linux portable
76+
name: Build linux portable (x86_64)
7177
run: |
7278
export PWD_DIR=$(pwd)
7379
curl -LO https://www.openssl.org/source/openssl-1.1.1s.tar.gz
@@ -80,21 +86,38 @@ jobs:
8086
export OPENSSL_INCLUDE_DIR=${PWD_DIR}/openssl-1.1.1s/include
8187
export OPENSSL_STATIC=1
8288
cargo build --release --features portable
89+
- if: matrix.os == 'ubuntu-22.04-arm'
90+
name: Build linux portable (aarch64)
91+
run: |
92+
export PWD_DIR=$(pwd)
93+
curl -LO https://www.openssl.org/source/openssl-1.1.1s.tar.gz
94+
tar -xzf openssl-1.1.1s.tar.gz
95+
cd openssl-1.1.1s
96+
./Configure linux-aarch64 shared
97+
make
98+
cd ..
99+
export OPENSSL_LIB_DIR=${PWD_DIR}/openssl-1.1.1s
100+
export OPENSSL_INCLUDE_DIR=${PWD_DIR}/openssl-1.1.1s/include
101+
export OPENSSL_STATIC=1
102+
cargo build --release --features portable
83103
- if: matrix.os == 'ubuntu-24.04'
84-
name: Build linux
104+
name: Build linux (x86_64)
105+
run: cargo build --release
106+
- if: matrix.os == 'ubuntu-24.04-arm'
107+
name: Build linux (aarch64)
85108
run: cargo build --release
86109
- if: matrix.os == 'macos-15-intel'
87-
name: Build macos portable
110+
name: Build macos portable (x86_64)
88111
run: |
89112
export OPENSSL_LIB_DIR=/usr/local/opt/openssl@1.1/lib
90113
export OPENSSL_INCLUDE_DIR=/usr/local/opt/openssl@1.1/include
91114
export OPENSSL_STATIC=1
92115
cargo build --release --features portable
93-
- if: matrix.os == 'macos-14'
94-
name: Build macos
116+
- if: matrix.os == 'macos-15'
117+
name: Build macos (aarch64)
95118
run: |
96-
export OPENSSL_LIB_DIR=/usr/local/opt/openssl@1.1/lib
97-
export OPENSSL_INCLUDE_DIR=/usr/local/opt/openssl@1.1/include
119+
export OPENSSL_LIB_DIR=/opt/homebrew/opt/openssl@1.1/lib
120+
export OPENSSL_INCLUDE_DIR=/opt/homebrew/opt/openssl@1.1/include
98121
export OPENSSL_STATIC=1
99122
cargo build --release
100123
- if: matrix.os == 'windows-2022'

0 commit comments

Comments
 (0)