Skip to content

Commit 1efe7f7

Browse files
authored
feat: add support for 32-bit ARM architectures (Raspberry Pis, etc.) (#230)
1 parent f63e414 commit 1efe7f7

File tree

2 files changed

+51
-1
lines changed

2 files changed

+51
-1
lines changed

.github/workflows/release.yml

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -165,3 +165,51 @@ jobs:
165165
helios_linux_amd64.tar.gz
166166
env:
167167
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
168+
169+
build-linux-armv7:
170+
runs-on: ubuntu-20.04
171+
steps:
172+
- name: checkout
173+
uses: actions/checkout@v1
174+
175+
- name: install rust nightly
176+
uses: actions-rs/toolchain@v1
177+
with:
178+
toolchain: nightly
179+
default: true
180+
override: true
181+
182+
- name: install target
183+
run: rustup target add armv7-unknown-linux-gnueabihf
184+
185+
- name: install dependencies
186+
run: |
187+
sudo apt-get update -y
188+
sudo apt-get install -y gcc-arm-linux-gnueabihf
189+
echo "CARGO_TARGET_ARMV7_UNKNOWN_LINUX_GNUEABIHF_LINKER=arm-linux-gnueabihf-gcc" >> $GITHUB_ENV
190+
ldd --version
191+
192+
- uses: Swatinem/rust-cache@v2
193+
with:
194+
prefix-key: "fresh2"
195+
196+
- name: build
197+
run: cargo build --package cli --release --target armv7-unknown-linux-gnueabihf
198+
199+
- name: archive
200+
run: tar -czvf "helios_linux_armv7.tar.gz" -C ./target/armv7-unknown-linux-gnueabihf/release helios
201+
202+
- name: generate tag name
203+
id: tag
204+
run: |
205+
echo "::set-output name=release_tag::nightly-${GITHUB_SHA}"
206+
207+
- name: release
208+
uses: softprops/action-gh-release@v1
209+
with:
210+
tag_name: ${{ steps.tag.outputs.release_tag }}
211+
prerelease: true
212+
files: |
213+
helios_linux_armv7.tar.gz
214+
env:
215+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

heliosup/heliosup

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,9 @@ if [ "${ARCHITECTURE}" = "x86_64" ]; then
3636
ARCHITECTURE="amd64" # Intel.
3737
fi
3838
elif [ "${ARCHITECTURE}" = "arm64" ] ||[ "${ARCHITECTURE}" = "aarch64" ] ; then
39-
ARCHITECTURE="arm64" # Arm.
39+
ARCHITECTURE="arm64" # 64-bit Arm.
40+
elif [ "${ARCHITECTURE}" = "armv7l" ]; then
41+
ARCHITECTURE="armv7l" # 32-bit Arm.
4042
else
4143
ARCHITECTURE="amd64" # Amd.
4244
fi

0 commit comments

Comments
 (0)