Skip to content

Commit f757b3f

Browse files
committed
.github: Switch from hand-built llvm for arm/aarch64 to ARM toolchain
Use the LLVM embedded toolchain for Arm released compiler for testing clang on arm and aarch64 targets. Use the native Debian LLVM toolchain for other targets. Signed-off-by: Keith Packard <[email protected]>
1 parent ddf6909 commit f757b3f

File tree

3 files changed

+63
-19
lines changed

3 files changed

+63
-19
lines changed

.github/do-linux

Lines changed: 13 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,36 +2,31 @@
22
set -e
33
HERE=`dirname "$0"`
44
"$HERE"/do-test arm "$@"
5-
"$HERE"/do-test clang-thumbv7-a "$@"
6-
"$HERE"/do-test clang-thumb "$@"
75
"$HERE"/do-test cortex-a9 "$@"
8-
"$HERE"/do-test clang-thumbv7e+fp "$@"
9-
"$HERE"/do-test clang-thumbv7e+dp "$@"
10-
"$HERE"/do-test clang-thumbv7m "$@"
11-
"$HERE"/do-test clang-thumbv6m "$@"
12-
"$HERE"/do-test clang-aarch64 "$@"
13-
"$HERE"/do-test clang-x86_64 "$@"
14-
"$HERE"/do-test clang-x86 "$@"
156
"$HERE"/do-build mips "$@"
167
"$HERE"/do-build mips64 "$@"
178
"$HERE"/do-build mipsel "$@"
18-
"$HERE"/do-test native "$@"
19-
"$HERE"/do-test native-m32 "$@"
9+
"$HERE"/do-test-noopt native "$@"
10+
"$HERE"/do-test-noopt native-m32 "$@"
2011
"$HERE"/do-test aarch64 "$@"
2112
"$HERE"/do-build lx106 "$@"
22-
"$HERE"/do-test i386 "$@"
13+
"$HERE"/do-test-noopt i386 "$@"
2314
"$HERE"/do-test m68k-unknown-elf "$@"
2415
"$HERE"/do-test msp430-unknown-elf "$@"
2516
"$HERE"/do-test sh-unknown-elf "$@"
2617
"$HERE"/do-build sparc64 "$@"
27-
"$HERE"/do-test x86_64 "$@"
28-
"$HERE"/do-test x86 "$@"
18+
"$HERE"/do-test-noopt x86_64 "$@"
19+
"$HERE"/do-test-noopt x86 "$@"
2920
"$HERE"/do-avr-build avr "$@"
3021
"$HERE"/do-build powerpc64 "$@"
3122
"$HERE"/do-build powerpc64le "$@"
3223
"$HERE"/do-test power9 "$@"
3324
"$HERE"/do-test power9-fp128 "$@"
34-
"$HERE"/do-test riscv "$@"
35-
"$HERE"/do-test rv32imac "$@"
36-
"$HERE"/do-test clang-riscv "$@"
37-
"$HERE"/do-test clang-rv32imafdc "$@"
25+
"$HERE"/do-test-noopt riscv "$@"
26+
"$HERE"/do-test-noopt rv32imac "$@"
27+
"$HERE"/do-test clang-aarch64 "$@"
28+
"$HERE"/do-test clang-arm "$@"
29+
"$HERE"/do-test-noopt clang-x86_64 "$@"
30+
"$HERE"/do-test-noopt clang-x86 "$@"
31+
"$HERE"/do-test-noopt clang-riscv "$@"
32+
"$HERE"/do-test-noopt clang-rv32imafdc "$@"

.github/do-test-noopt

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
#!/bin/sh
2+
TARGET=$1
3+
DIR=build-"$TARGET"
4+
CONFIGURE=do-"$TARGET"-configure
5+
shift
6+
7+
ANALYZER="-Danalyzer=true"
8+
9+
# Disable analyzer on m68k because the compiler gets very confused
10+
# about complex values
11+
12+
case "$TARGET" in
13+
*m68k*)
14+
ANALYZER=""
15+
;;
16+
esac
17+
18+
# Disable the analyser when not using tinystdio as the stdio code is
19+
# full of problems
20+
21+
case "$*" in
22+
*-Dtinystdio=false*)
23+
ANALYZER=""
24+
;;
25+
esac
26+
27+
mkdir "$DIR"
28+
trap 'rm -rf "$DIR"' 0 1 15
29+
(cd "$DIR" || exit 1
30+
echo '##################################################'
31+
echo '##########' ../scripts/"$CONFIGURE" -Dwerror=true $ANALYZER "$@"
32+
echo '##################################################'
33+
../scripts/"$CONFIGURE" -Dwerror=true $ANALYZER "$@"
34+
case $? in
35+
0)
36+
echo 'Configuration succeeded'
37+
;;
38+
77)
39+
echo 'Configuration skipped'
40+
exit 0
41+
;;
42+
*)
43+
echo 'Configuration failed with' "$?"
44+
cat meson-logs/*
45+
exit 1
46+
;;
47+
esac
48+
cat meson-logs/*
49+
ninja && meson test -t 20 -v) || exit 1

.github/linux-files.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,4 @@ https://maps.altusmetrum.org/m68k-unknown-elf.tar.xz
44
https://maps.altusmetrum.org/msp430-unknown-elf.tar.xz
55
https://maps.altusmetrum.org/sh-unknown-elf-1.tar.xz
66
https://maps.altusmetrum.org/qemu-arm.tar.xz
7-
https://maps.altusmetrum.org/aarch64-none-elf-llvm.tar.xz
7+
https://github.com/ARM-software/LLVM-embedded-toolchain-for-Arm/releases/download/release-18.1.3/LLVM-ET-Arm-18.1.3-Linux-x86_64.tar.xz

0 commit comments

Comments
 (0)