Skip to content

ci: download prebuilt openssl instead of vendored #15

ci: download prebuilt openssl instead of vendored

ci: download prebuilt openssl instead of vendored #15

Workflow file for this run

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
aarch64-unknown-linux-gnu:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable
targets: aarch64-unknown-linux-gnu
# install openssl for aarch64
- run: sudo dpkg --add-architecture arm64
- run: sudo apt-get update
- run: sudo apt-get install -y libssl-dev:arm64
- run: export OPENSSL_LIB_DIR=/usr/lib/aarch64-linux-gnu
- run: export OPENSSL_INCLUDE_DIR=/usr/include/aarch64-linux-gnu
- run: cargo install cross
- run: cross build --release --target aarch64-unknown-linux-gnu
- uses: actions/upload-artifact@v4
with:
name: aarch64-unknown-linux-gnu
path: |
resources/cacert.pem
resources/ne_s3.h
target/aarch64-unknown-linux-gnu/release/libne_s3.so
target/aarch64-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: export OPENSSL_LIB_DIR=$PWD/OpenSSL_3.2.0_arm64-v8a/lib
- run: export OPENSSL_INCLUDE_DIR=$PWD/OpenSSL_3.2.0_arm64-v8a/include
- run: cargo ndk -t arm64-v8a -o ./jniLibs build --release
- run: export OPENSSL_LIB_DIR=$PWD/OpenSSL_3.2.0_armeabi-v7a/lib
- run: export OPENSSL_INCLUDE_DIR=$PWD/OpenSSL_3.2.0_armeabi-v7a/include
- run: cargo ndk -t armeabi-v7a -o ./jniLibs build --release
- 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