summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.travis.yml15
-rwxr-xr-x.travis/linux-build.sh13
2 files changed, 26 insertions, 2 deletions
diff --git a/.travis.yml b/.travis.yml
index ef9f86755..11497588b 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -51,6 +51,21 @@ matrix:
- os: osx
compiler: clang
env: OPTS="--disable-ssl"
+ - arch: arm64
+ compiler: gcc
+ env: OPTS="--disable-ssl"
+ - arch: arm64
+ compiler: gcc
+ env: KERNEL_LIST="5.5 4.19"
+ - arch: arm64
+ compiler: gcc
+ env: KERNEL_LIST="4.9 3.16"
+ - arch: arm64
+ compiler: gcc
+ env: DPDK=1 OPTS="--enable-shared"
+ - arch: arm64
+ compiler: gcc
+ env: DPDK_SHARED=1
script: ./.travis/${TRAVIS_OS_NAME}-build.sh $OPTS
diff --git a/.travis/linux-build.sh b/.travis/linux-build.sh
index 359f7773b..02615a8ec 100755
--- a/.travis/linux-build.sh
+++ b/.travis/linux-build.sh
@@ -6,7 +6,6 @@ set -x
CFLAGS_FOR_OVS="-g -O2"
SPARSE_FLAGS=""
EXTRA_OPTS="--enable-Werror"
-TARGET="x86_64-native-linuxapp-gcc"
function install_kernel()
{
@@ -87,6 +86,16 @@ function install_dpdk()
local DPDK_VER=$1
local VERSION_FILE="dpdk-dir/travis-dpdk-cache-version"
+ if [ -z "$TRAVIS_ARCH" ] ||
+ [ "$TRAVIS_ARCH" == "amd64" ]; then
+ TARGET="x86_64-native-linuxapp-gcc"
+ elif [ "$TRAVIS_ARCH" == "aarch64" ]; then
+ TARGET="arm64-armv8a-linuxapp-gcc"
+ else
+ echo "Target is unknown"
+ exit 1
+ fi
+
if [ "${DPDK_VER##refs/*/}" != "${DPDK_VER}" ]; then
# Avoid using cache for git tree build.
rm -rf dpdk-dir
@@ -177,7 +186,7 @@ elif [ "$M32" ]; then
# Adding m32 flag directly to CC to avoid any posiible issues with API/ABI
# difference on 'configure' and 'make' stages.
export CC="$CC -m32"
-else
+elif [ "$TRAVIS_ARCH" != "aarch64" ]; then
OPTS="--enable-sparse"
if [ "$AFXDP" ]; then
# netdev-afxdp uses memset for 64M for umem initialization.