This commit is contained in:
enforcer007 2023-05-07 15:00:32 +00:00
parent d3dbc60b90
commit 2b9909c1cb
2 changed files with 24 additions and 1 deletions

View file

@ -29,13 +29,19 @@ jobs:
- name: install linux cross compiler
run:
brew tap messense/macos-cross-toolchains &&
brew install x86_64-unknown-linux-gnu aarch64-unknown-linux-gnu
brew install x86_64-unknown-linux-gnu aarch64-unknown-linux-gnu arm-unknown-linux-gnueabi
- name: Build release linux x86_64 binary
run:
rustup target install x86_64-unknown-linux-gnu &&
make release-linux-x86_64 &&
mv target/x86_64-unknown-linux-gnu/release/rqbit target/release/rqbit-linux-static-x86_64
- name: Build release linux arm32bit binary
run:
rustup target install arm-unknown-linux-gnueabi &&
make release-linux-armv6 &&
mv target/arm-unknown-linux-gnueabihf/release/rqbit target/release/rqbit-linux-static-arm32
- name: Build release linux aarch64 binary
run:
@ -57,4 +63,5 @@ jobs:
target/release/rqbit-osx-universal
target/release/rqbit-linux-static-x86_64
target/release/rqbit-linux-static-aarch64
target/release/rqbit-linux-static-arm32

View file

@ -64,6 +64,16 @@ target/openssl-linux/aarch64/lib/libssl.a: target/openssl-linux/openssl-$(OPENSS
make -j && \
make install_sw
target/openssl-linux/armv6/lib/libssl.a: target/openssl-linux/openssl-$(OPENSSL_VERSION).tar.gz
export OPENSSL_ROOT=$(PWD)/target/openssl-linux/armv6/ && \
mkdir -p $${OPENSSL_ROOT}/src && \
cd $${OPENSSL_ROOT}/src/ && \
tar xf ../../openssl-$(OPENSSL_VERSION).tar.gz && \
cd openssl-$(OPENSSL_VERSION) && \
LDFLAGS=-latomic ./Configure linux-generic32 --prefix="$${OPENSSL_ROOT}" --openssldir="$${OPENSSL_ROOT}" no-shared --cross-compile-prefix=arm-linux-gnueabihf- && \
make -j && \
make install_sw
@PHONY: release-linux
release-linux: release-linux-x86_64 release-linux-aarch64
@ -89,6 +99,12 @@ release-linux-aarch64: target/openssl-linux/aarch64/lib/libssl.a
OPENSSL_DIR=$(PWD)/target/openssl-linux/aarch64/ \
cargo build --release --target=aarch64-unknown-linux-gnu
@PHONY: release-linux-armv6
release-linux-armv6: target/openssl-linux/armv6/lib/libssl.a
CARGO_TARGET_ARM_UNKNOWN_LINUX_GNUEABIHF_LINKER=arm-linux-gnueabihf-gcc \
OPENSSL_DIR=$(PWD)/target/openssl-linux/armv6/ \
cargo build --release --target=arm-unknown-linux-gnueabihf
@PHONY: release-all
release-all: release-windows release-linux release-macos-universal