Skip to content

Commit

Permalink
Merge pull request torvalds#196 from TheSven73/rust-for-linux-arm-32bit
Browse files Browse the repository at this point in the history
Support for 32-bit arm
  • Loading branch information
ojeda authored Apr 16, 2021
2 parents e34bcb9 + 7e0815b commit 30d13c6
Show file tree
Hide file tree
Showing 9 changed files with 3,445 additions and 7 deletions.
19 changes: 16 additions & 3 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,16 +10,19 @@ jobs:

strategy:
matrix:
arch: [arm64, ppc64le, x86_64]
arch: [arm, arm64, ppc64le, x86_64]
toolchain: [gcc, clang, llvm]
config: [debug, release]
rustc: [2021-02-20]
output: [src] # [src, build]
install: [rustup] # [rustup, standalone]
sysroot: [common] # [common, custom]

# Exclude `LLVM=1` where not supported.
exclude:
# arm 32-bit gcc not yet supported
- arch: arm
toolchain: gcc
# Exclude `LLVM=1` where not supported.
- arch: ppc64le
toolchain: llvm

Expand Down Expand Up @@ -81,6 +84,14 @@ jobs:
echo 'QEMU_ARCH=ppc64' >> $GITHUB_ENV
echo 'QEMU_MACHINE=pseries' >> $GITHUB_ENV
echo 'QEMU_CPU=POWER9' >> $GITHUB_ENV
- if: matrix.arch == 'arm'
run: |
echo 'MAKE_ARCH=ARCH=arm' >> $GITHUB_ENV
echo 'MAKE_CROSS_COMPILE=CROSS_COMPILE=arm-linux-gnueabi-' >> $GITHUB_ENV
echo 'IMAGE_PATH=arch/arm/boot/zImage' >> $GITHUB_ENV
echo 'QEMU_ARCH=arm' >> $GITHUB_ENV
echo 'QEMU_MACHINE=virt' >> $GITHUB_ENV
echo 'QEMU_CPU=cortex-a7' >> $GITHUB_ENV
- if: matrix.toolchain == 'clang'
run: echo 'MAKE_TOOLCHAIN=CC=clang-11' >> $GITHUB_ENV
Expand All @@ -105,6 +116,8 @@ jobs:
- run: echo $(llvm-config-11 --bindir) >> $GITHUB_PATH

# Setup: GCC
- if: matrix.arch == 'arm'
run: sudo apt-get install -y gcc-arm-linux-gnueabi lzop
- if: matrix.arch == 'arm64'
run: sudo apt-get install -y gcc-aarch64-linux-gnu
- if: matrix.arch == 'ppc64le'
Expand All @@ -116,7 +129,7 @@ jobs:
# Setup: QEMU
- if: matrix.arch == 'x86_64'
run: sudo apt-get install -y qemu-system-x86
- if: matrix.arch == 'arm64'
- if: matrix.arch == 'arm' || matrix.arch == 'arm64'
run: sudo apt-get install -y qemu-system-arm
- if: matrix.arch == 'ppc64le'
run: sudo apt-get install -y qemu-system-ppc
Expand Down
Loading

0 comments on commit 30d13c6

Please sign in to comment.