[ovs-dev] [PATCH v1 4/4] travis: Enable OVS Travis CI for arm

Lance Yang Lance.Yang at arm.com
Wed Nov 20 08:15:26 UTC 2019


Enable part of travis jobs with gcc compiler for arm64 architecture

1. Add arm jobs into the matrix in .travis.yml and define dpdk cache
directory for arm64 architecture.
2. Temporarily disable sparse checker because of static code checking
failure on arm64

Successful travis build jobs report:
https://travis-ci.org/yzyuestc/ovs/builds/614299933

Reviewed-by: Yanqin Wei <Yanqin.Wei at arm.com>
Reviewed-by: Jieqiang Wang <Jieqiang.Wang at arm.com>
Reviewed-by: Gavin Hu <Gavin.Hu at arm.com>
Signed-off-by: Lance Yang <Lance.Yang at arm.com>
---
 .travis.yml            | 18 ++++++++++++++++++
 .travis/linux-build.sh |  6 +++++-
 2 files changed, 23 insertions(+), 1 deletion(-)

diff --git a/.travis.yml b/.travis.yml
index 2dc4d43..f82e484 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -50,6 +50,24 @@ 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.0 4.20 4.19 4.18 4.17 4.16"
+    - arch: arm64
+      compiler: gcc
+      env: KERNEL_LIST="4.15 4.14 4.9 4.4 3.16"
+    - arch: arm64
+      compiler: gcc
+      env: DPDK=1 OPTS="--enable-shared"
+    - arch: arm64
+      compiler: gcc
+      env: DPDK_SHARED=1
+    - arch: arm64
+      compiler: gcc
+      env: DPDK_SHARED=1 OPTS="--enable-shared"
 
 script: ./.travis/${TRAVIS_OS_NAME}-build.sh $OPTS
 
diff --git a/.travis/linux-build.sh b/.travis/linux-build.sh
index 557f397..ab8c621 100755
--- a/.travis/linux-build.sh
+++ b/.travis/linux-build.sh
@@ -88,6 +88,8 @@ function install_dpdk()
     if [ -z "$TARGET" -a -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
@@ -194,7 +196,9 @@ elif [ "$M32" ]; then
     # difference on 'configure' and 'make' stages.
     export CC="$CC -m32"
 else
-    OPTS="--enable-sparse"
+    if [ "$TRAVIS_ARCH" != "aarch64" ]; then
+        OPTS="--enable-sparse"
+    fi
     if [ "$AFXDP" ]; then
         # netdev-afxdp uses memset for 64M for umem initialization.
         SPARSE_FLAGS="${SPARSE_FLAGS} -Wno-memcpy-max-count"
-- 
2.7.4



More information about the dev mailing list