-
Notifications
You must be signed in to change notification settings - Fork 0
139 lines (139 loc) · 5.26 KB
/
ci.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
name: ne-s3-actions
on: [push, pull_request]
jobs:
x86_64-pc-windows-msvc:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable
targets: x86_64-pc-windows-msvc
- run: cargo build --release --target x86_64-pc-windows-msvc
- uses: actions/upload-artifact@v4
with:
name: x86_64-pc-windows-msvc
path: |
target/x86_64-pc-windows-msvc/release/ne_s3.dll
target/x86_64-pc-windows-msvc/release/ne_s3.dll.lib
target/x86_64-pc-windows-msvc/release/ne_s3.pdb
target/x86_64-pc-windows-msvc/release/ne-s3-client.exe
i686-pc-windows-msvc:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable
targets: i686-pc-windows-msvc
- run: cargo build --release --target i686-pc-windows-msvc
- uses: actions/upload-artifact@v4
with:
name: i686-pc-windows-msvc
path: |
resources/cacert.pem
resources/ne_s3.h
target/i686-pc-windows-msvc/release/ne_s3.dll
target/i686-pc-windows-msvc/release/ne_s3.dll.lib
target/i686-pc-windows-msvc/release/ne_s3.pdb
target/i686-pc-windows-msvc/release/ne-s3-client.exe
x86_64-unknown-linux-gnu:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable
targets: x86_64-unknown-linux-gnu
- run: cargo build --release --target x86_64-unknown-linux-gnu
- uses: actions/upload-artifact@v4
with:
name: x86_64-unknown-linux-gnu
path: |
resources/cacert.pem
resources/ne_s3.h
target/x86_64-unknown-linux-gnu/release/libne_s3.so
target/x86_64-unknown-linux-gnu/release/ne-s3-client
x86_64-apple-darwin:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable
targets: x86_64-apple-darwin
- run: cargo build --release --target x86_64-apple-darwin
- uses: actions/upload-artifact@v4
with:
name: x86_64-apple-darwin
path: |
resources/cacert.pem
resources/ne_s3.h
target/x86_64-apple-darwin/release/libne_s3.dylib
target/x86_64-apple-darwin/release/ne-s3-client
aarch64-apple-darwin:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable
targets: aarch64-apple-darwin
- run: cargo build --release --target aarch64-apple-darwin
- uses: actions/upload-artifact@v4
with:
name: aarch64-apple-darwin
path: |
resources/cacert.pem
resources/ne_s3.h
target/aarch64-apple-darwin/release/libne_s3.dylib
target/aarch64-apple-darwin/release/ne-s3-client
android-universal:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable
targets: aarch64-linux-android
- run: cargo install cargo-ndk
- run: curl -L https://github.com/217heidai/openssl_for_android/releases/download/3.2.0/OpenSSL_3.2.0_arm64-v8a.tar.gz -o OpenSSL_3.2.0_arm64-v8a.tar.gz
- run: curl -L https://github.com/217heidai/openssl_for_android/releases/download/3.2.0/OpenSSL_3.2.0_armeabi-v7a.tar.gz -o OpenSSL_3.2.0_armeabi-v7a.tar.gz
- run: tar -xzf OpenSSL_3.2.0_arm64-v8a.tar.gz
- run: tar -xzf OpenSSL_3.2.0_armeabi-v7a.tar.gz
- run: cargo ndk -t arm64-v8a -o ./jniLibs build --release
env:
OPENSSL_LIB_DIR: ${{ github.workspace }}/OpenSSL_3.2.0_arm64-v8a/lib
OPENSSL_INCLUDE_DIR: ${{ github.workspace }}/OpenSSL_3.2.0_arm64-v8a/include
- run: cargo ndk -t armeabi-v7a -o ./jniLibs build --release
env:
OPENSSL_LIB_DIR: ${{ github.workspace }}/OpenSSL_3.2.0_armeabi-v7a/lib
OPENSSL_INCLUDE_DIR: ${{ github.workspace }}/OpenSSL_3.2.0_armeabi-v7a/include
- uses: actions/upload-artifact@v4
with:
name: android-universal
path: |
resources/cacert.pem
resources/ne_s3.h
jniLibs
ios-universal:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable
targets: aarch64-apple-ios, x86_64-apple-ios
- run: cargo build --release --target aarch64-apple-ios --target x86_64-apple-ios
- uses: actions/upload-artifact@v4
with:
name: ios-universal
path: |
resources/cacert.pem
resources/ne_s3.h
target/aarch64-apple-ios/release/libne_s3.dylib
target/aarch64-apple-ios/release/ne-s3-client
target/aarch64-apple-ios-sim/release/libne_s3.dylib
target/aarch64-apple-ios-sim/release/ne-s3-client
target/x86_64-apple-ios/release/libne_s3.dylib
target/x86_64-apple-ios/release/ne-s3-client