Skip to content

Commit 9aacb77

Browse files
committed
Travis to cross-build on arm
Ignoring arm failures
1 parent e7f2ed0 commit 9aacb77

2 files changed

Lines changed: 81 additions & 5 deletions

File tree

.travis.yml

Lines changed: 71 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,17 +27,39 @@ before_install:
2727
- cd ..
2828
- eval "${MATRIX_EVAL}"
2929
install:
30+
- if [[ "$CROSS_COMPILE" == 1 ]] ; then
31+
if [[ "$ARM_ARCH_DIR" == "aarch64-linux-gnu" ]] ; then
32+
mkdir $HOME/linker_bin ;
33+
ln -s /usr/bin/aarch64-linux-gnu-ld $HOME/linker_bin/ld ;
34+
echo "SETTING GNU LINKER DIR" ;
35+
ls -al $HOME/linker_bin/ld ;
36+
fi
37+
fi
3038
- ./bootstrap
3139
- mkdir build
3240
- cd build
33-
- if [ $LINKING = "static" ]; then ../configure --enable-static --disable-fastopen; elif [ $DEBUG = "debug" ]; then ../configure --enable-debug --disable-shared --disable-fastopen; else ../configure --disable-fastopen; fi
41+
- if [ $LINKING = "static" ]; then
42+
../configure --enable-static --disable-fastopen;
43+
elif [ $DEBUG = "debug" ]; then
44+
../configure --enable-debug --disable-shared --disable-fastopen;
45+
else ../configure --disable-fastopen;
46+
fi
3447
- make
3548
- make check TESTS=
3649
script:
37-
- make check
38-
- cat test/test-suite.log
39-
- ls -l /usr/local/lib/
40-
- ls -l /usr/lib/
50+
- if [[ "$CROSS_COMPILE" == 1 ]]; then
51+
cd test ;
52+
if [[ "$ARM_ARCH_DIR" == "aarch64-linux-gnu" ]]; then
53+
qemu-aarch64 -L /usr/aarch64-linux-gnu/ ./run_tests ;
54+
else
55+
qemu-arm -L /usr/arm-linux-gnueabi/ ./run_tests ;
56+
fi
57+
else
58+
make check ;
59+
cat test/test-suite.log ;
60+
ls -l /usr/local/lib/ ;
61+
ls -l /usr/lib/ ;
62+
fi
4163
after_success:
4264
- if [ $DEBUG = "debug" ] && [ "$TRAVIS_OS_NAME" = "linux" ]; then ../ci-report-coverage; fi
4365
matrix:
@@ -74,3 +96,47 @@ matrix:
7496
- g++-7
7597
env:
7698
- MATRIX_EVAL="CC=gcc-7 && CXX=g++-7"
99+
- os: linux
100+
addons:
101+
apt:
102+
sources:
103+
- ubuntu-toolchain-r-test
104+
packages:
105+
- clang-3.9
106+
- g++-arm-linux-gnueabi
107+
- g++-multilib
108+
- gcc-multilib
109+
- qemu
110+
- qemu-system-arm
111+
env: CXX="clang++ -B$HOME/linker_bin/" CC="clang -B$HOME/linker_bin/" CROSS_COMPILE=1 ARM_ARCH_DIR=arm-linux-gnueabi ARM_GCC_VER=4.7.3 ARM_SETTINGS="armv7-a -mfpu=neon -mfloat-abi=softfp -target arm-linux-gnueabi"
112+
- os: linux
113+
addons:
114+
apt:
115+
sources:
116+
- ubuntu-toolchain-r-test
117+
packages:
118+
- clang-3.9
119+
- g++-arm-linux-gnueabi
120+
- g++-multilib
121+
- gcc-multilib
122+
- qemu
123+
- qemu-system-arm
124+
env: CXX="clang++ -B$HOME/linker_bin/" CC="clang -B$HOME/linker_bin/" CROSS_COMPILE=1 ARM_ARCH_DIR=arm-linux-gnueabi ARM_GCC_VER=4.7.3 ARM_SETTINGS="armv8-a -mfpu=neon -mfloat-abi=softfp -target arm-linux-gnueabi"
125+
- os: linux
126+
addons:
127+
apt:
128+
sources:
129+
- ubuntu-toolchain-r-test
130+
packages:
131+
- clang-3.9
132+
- g++-4.8-aarch64-linux-gnu
133+
- gcc-4.8-aarch64-linux-gnu
134+
- g++-4.8-multilib
135+
- gcc-4.8-multilib
136+
- qemu
137+
- qemu-system-arm
138+
env: CXX="clang++ -B$HOME/linker_bin/" CC="clang -B$HOME/linker_bin/" CROSS_COMPILE=1 ARM_ARCH_DIR=aarch64-linux-gnu ARM_GCC_VER=4.8.4 ARM_SETTINGS="armv8-a -target aarch64-linux-gnueabi"
139+
allow_failures:
140+
- env: CXX="clang++ -B$HOME/linker_bin/" CC="clang -B$HOME/linker_bin/" CROSS_COMPILE=1 ARM_ARCH_DIR=arm-linux-gnueabi ARM_GCC_VER=4.7.3 ARM_SETTINGS="armv7-a -mfpu=neon -mfloat-abi=softfp -target arm-linux-gnueabi"
141+
- env: CXX="clang++ -B$HOME/linker_bin/" CC="clang -B$HOME/linker_bin/" CROSS_COMPILE=1 ARM_ARCH_DIR=arm-linux-gnueabi ARM_GCC_VER=4.7.3 ARM_SETTINGS="armv8-a -mfpu=neon -mfloat-abi=softfp -target arm-linux-gnueabi"
142+
- env: CXX="clang++ -B$HOME/linker_bin/" CC="clang -B$HOME/linker_bin/" CROSS_COMPILE=1 ARM_ARCH_DIR=aarch64-linux-gnu ARM_GCC_VER=4.8.4 ARM_SETTINGS="armv8-a -target aarch64-linux-gnueabi"

configure.ac

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -266,6 +266,16 @@ else
266266
AM_CFLAGS="$AM_CXXFLAGS -O3"
267267
fi
268268

269+
if test "$ARM_SETTINGS" != ""; then
270+
AM_CXXFLAGS="$AM_CXXFLAGS -march=$ARM_SETTINGS"
271+
AM_CFLAGS="$AM_CFLAGS -march=$ARM_SETTINGS"
272+
fi
273+
274+
if test "$CROSS_COMPILE" == "1"; then
275+
AM_CXXFLAGS="$AM_CXXFLAGS -I/usr/${ARM_ARCH_DIR}/include/c++/${ARM_GCC_VER}/${ARM_ARCH_DIR}/ -I/usr/${ARM_ARCH_DIR}/include/c++/${ARM_GCC_VER}/ -I/usr/${ARM_ARCH_DIR}/include/"
276+
AM_CFLAGS="$AM_CFLAGS -I/usr/${ARM_ARCH_DIR}/include/c++/${ARM_GCC_VER}/${ARM_ARCH_DIR}/ -I/usr/${ARM_ARCH_DIR}/include/c++/${ARM_GCC_VER}/ -I/usr/${ARM_ARCH_DIR}/include/"
277+
fi
278+
269279
AM_CONDITIONAL([COND_GCOV],[test x"$cond_gcov" = x"yes"])
270280
AC_SUBST(COND_GCOV)
271281

0 commit comments

Comments
 (0)