Skip to content

Commit

Permalink
added new toolchains for ARM+GCC
Browse files Browse the repository at this point in the history
New toolcnains:
- aarch64-linux-gnu-gcc-10.3
- arm-linux-gnueabihf-gcc-7.4
- arm-linux-gnueabihf-gcc-10.3
  • Loading branch information
adrianopol committed Jun 23, 2024
1 parent f93fcbd commit 1fe1e17
Show file tree
Hide file tree
Showing 8 changed files with 88 additions and 27 deletions.
9 changes: 9 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -86,9 +86,18 @@ jobs:
fail-fast: false
matrix:
include:
- script: linux-arm/aarch64-linux-gnu-gcc-10.3
image: rocstreaming/toolchain-aarch64-linux-gnu:gcc-10.3

- script: linux-arm/aarch64-linux-gnu-gcc-7.4
image: rocstreaming/toolchain-aarch64-linux-gnu:gcc-7.4

- script: linux-arm/arm-linux-gnueabihf-gcc-10.3
image: rocstreaming/toolchain-arm-linux-gnueabihf:gcc-10.3

- script: linux-arm/arm-linux-gnueabihf-gcc-7.4
image: rocstreaming/toolchain-arm-linux-gnueabihf:gcc-7.4

- script: linux-arm/arm-linux-gnueabihf-gcc-4.9
image: rocstreaming/toolchain-arm-linux-gnueabihf:gcc-4.9

Expand Down
16 changes: 16 additions & 0 deletions scripts/ci_checks/linux-arm/aarch64-linux-gnu-gcc-10.3.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
#!/usr/bin/env bash

set -eux -o pipefail

toolchain="aarch64-none-linux-gnu"
compiler="gcc-10.3.1-release"
cpu="cortex-a53" # armv8

scons -Q \
--enable-werror \
--enable-tests \
--enable-examples \
--build-3rdparty=all,pulseaudio:10.0 \
--host=${toolchain}

run-tests-in-qemu.sh "$toolchain" "$compiler" "$cpu"
11 changes: 2 additions & 9 deletions scripts/ci_checks/linux-arm/aarch64-linux-gnu-gcc-7.4.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash

set -euxo pipefail
set -eux -o pipefail

toolchain="aarch64-linux-gnu"
compiler="gcc-7.4.1-release"
Expand All @@ -13,11 +13,4 @@ scons -Q \
--build-3rdparty=all,pulseaudio:10.0 \
--host=${toolchain}

find bin/${toolchain} -name 'roc-test-*' | \
while read tst
do
LD_LIBRARY_PATH="/opt/sysroot/lib:$(echo \
"${PWD}"/build/3rdparty/${toolchain}/${compiler}/*/rpath | tr ' ' ':')" \
python3 scripts/scons_helpers/timeout-run.py 300 \
qemu-aarch64 -L "/opt/sysroot" -cpu ${cpu} ${tst}
done
run-tests-in-qemu.sh "$toolchain" "$compiler" "$cpu"
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash

set -euxo pipefail
set -eux -o pipefail

toolchain="arm-bcm2708hardfp-linux-gnueabi"
compiler="gcc-4.7.1-release"
Expand All @@ -13,11 +13,4 @@ scons -Q \
--build-3rdparty=all,pulseaudio:5.0 \
--host=${toolchain}

find bin/${toolchain} -name 'roc-test-*' | \
while read tst
do
LD_LIBRARY_PATH="/opt/sysroot/lib:$(echo \
"${PWD}"/build/3rdparty/${toolchain}/${compiler}/*/rpath | tr ' ' ':')" \
python3 scripts/scons_helpers/timeout-run.py 300 \
qemu-arm -L "/opt/sysroot" -cpu ${cpu} ${tst}
done
run-tests-in-qemu.sh "$toolchain" "$compiler" "$cpu"
16 changes: 16 additions & 0 deletions scripts/ci_checks/linux-arm/arm-linux-gnueabihf-gcc-10.3.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
#!/usr/bin/env bash

set -eux -o pipefail

toolchain="arm-none-linux-gnueabihf"
compiler="gcc-10.3.1-release"
cpu="cortex-a15" # armv7

scons -Q \
--enable-werror \
--enable-tests \
--enable-examples \
--build-3rdparty=all,pulseaudio:8.0 \
--host=${toolchain}

run-tests-in-qemu.sh "$toolchain" "$compiler" "$cpu"
11 changes: 2 additions & 9 deletions scripts/ci_checks/linux-arm/arm-linux-gnueabihf-gcc-4.9.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash

set -euxo pipefail
set -eux -o pipefail

toolchain="arm-linux-gnueabihf"
compiler="gcc-4.9.4-release"
Expand All @@ -13,11 +13,4 @@ scons -Q \
--build-3rdparty=all,pulseaudio:8.0 \
--host=${toolchain}

find bin/${toolchain} -name 'roc-test-*' | \
while read tst
do
LD_LIBRARY_PATH="/opt/sysroot/lib:$(echo \
"${PWD}"/build/3rdparty/${toolchain}/${compiler}/*/rpath | tr ' ' ':')" \
python3 scripts/scons_helpers/timeout-run.py 300 \
qemu-arm -L "/opt/sysroot" -cpu ${cpu} ${tst}
done
run-tests-in-qemu.sh "$toolchain" "$compiler" "$cpu"
16 changes: 16 additions & 0 deletions scripts/ci_checks/linux-arm/arm-linux-gnueabihf-gcc-7.4.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
#!/usr/bin/env bash

set -eux -o pipefail

toolchain="arm-linux-gnueabihf"
compiler="gcc-7.4.1-release"
cpu="cortex-a15" # armv7

scons -Q \
--enable-werror \
--enable-tests \
--enable-examples \
--build-3rdparty=all,pulseaudio:8.0 \
--host=${toolchain}

run-tests-in-qemu.sh "$toolchain" "$compiler" "$cpu"
25 changes: 25 additions & 0 deletions scripts/ci_checks/linux-arm/run-tests-in-qemu.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
#!/usr/bin/env bash

set -eux -o pipefail

toolchain="${1:?arg1 missing: toolchain}"
compiler="${2:?arg2 missing: compiler}"
cpu="${3:?arg3 missing: QEMU CPU model}"

case "$toolchain" in
(aarch64*) qemu_cmd=qemu-aarch64 ;;
(arm*) qemu_cmd=qemu-arm ;;
(*)
echo >&2 "Error: unsupported arch to run tests in QEMU; toolchain: $toolchain."
exit 1
esac
readonly qemu_cmd

find bin/"$toolchain" -name 'roc-test-*' | \
while read tst
do
LD_LIBRARY_PATH="/opt/sysroot/lib:$(echo \
"$PWD/build/3rdparty/$toolchain/$compiler"/*/rpath | tr ' ' ':')" \
python3 scripts/scons_helpers/timeout-run.py 300 \
"$qemu_cmd" -L "/opt/sysroot" -cpu "$cpu" "$tst"
done

0 comments on commit 1fe1e17

Please sign in to comment.