Add armv7 build

This commit is contained in:
Igor Katson 2023-11-26 10:26:49 +00:00
parent 7292522139
commit f33346adfb
No known key found for this signature in database
GPG key ID: B4EC22B66D61A3F5
3 changed files with 24 additions and 4 deletions

View file

@ -1,2 +1,6 @@
[target.arm-unknown-linux-gnueabihf]
rustflags = ["-l", "atomic"]
rustflags = ["-l", "atomic"]
[target.armv7-unknown-linux-gnueabihf]
# Workaround for: https://github.com/rust-lang/compiler-builtins/issues/420
rustflags = ["-C", "link-arg=-Wl,--allow-multiple-definition"]

View file

@ -29,7 +29,7 @@ jobs:
- name: install linux cross compiler
run:
brew tap messense/macos-cross-toolchains &&
brew install x86_64-unknown-linux-gnu aarch64-unknown-linux-gnu arm-unknown-linux-gnueabihf
brew install x86_64-unknown-linux-gnu aarch64-unknown-linux-gnu arm-unknown-linux-gnueabihf armv7-unknown-linux-gnueabihf
- name: Make a directory for output artifacts
run:
@ -41,12 +41,18 @@ jobs:
make release-linux-x86_64 &&
mv target/x86_64-unknown-linux-gnu/release-github/rqbit target/artifacts/rqbit-linux-static-x86_64
- name: Build release linux arm32bit binary
- name: Build release linux armv6 binary
run:
rustup target install arm-unknown-linux-gnueabihf &&
make release-linux-armv6 &&
mv target/arm-unknown-linux-gnueabihf/release-github/rqbit target/artifacts/rqbit-linux-static-arm32
- name: Build release linux armv7 binary
run:
rustup target install armv7-unknown-linux-gnueabihf &&
make release-linux-armv7 &&
mv target/armv7-unknown-linux-gnueabihf/release-github/rqbit target/artifacts/rqbit-linux-static-arm32
- name: Build release linux aarch64 binary
run:
rustup target install aarch64-unknown-linux-gnu &&

View file

@ -75,7 +75,7 @@ release-linux-current-target: target/openssl-linux/$(TARGET)/lib/libssl.a
cargo build --profile release-github --target=$(TARGET)
@PHONY: release-linux
release-linux: release-linux-x86_64 release-linux-aarch64 release-linux-armv6
release-linux: release-linux-x86_64 release-linux-aarch64 release-linux-armv6 release-linux-armv7
@PHONY: release-linux-x86_64
release-linux-x86_64:
@ -105,6 +105,16 @@ release-linux-armv6:
LDFLAGS=-latomic \
$(MAKE) release-linux-current-target
# armv7-unknown-linux-gnueabihf
@PHONY: release-linux-armv7
release-linux-armv7:
TARGET=armv7-unknown-linux-gnueabihf \
TARGET_SNAKE_CASE=armv7_unknown_linux_gnueabihf \
TARGET_SNAKE_UPPER_CASE=ARMV7_UNKNOWN_LINUX_GNUEABIHF \
CROSS_COMPILE_PREFIX=armv7-linux-gnueabihf \
OPENSSL_CONFIGURE_NAME=linux-generic32 \
$(MAKE) release-linux-current-target
@PHONY: release-all
release-all: release-windows release-linux release-macos-universal