travis: enable libiscsi and cuda ioengines
authorSitsofe Wheeler <sitsofe@yahoo.com>
Sun, 26 Jul 2020 04:21:34 +0000 (05:21 +0100)
committerSitsofe Wheeler <sitsofe@yahoo.com>
Sun, 26 Jul 2020 10:55:10 +0000 (11:55 +0100)
...but only specific Linux setups. We have to avoid enabling cuda on
i386/arm64 as we don't have the dependency in those environments so
introduce a CI_TARGET_ARCH variable and do some refactoring.

Signed-off-by: Sitsofe Wheeler <sitsofe@yahoo.com>
ci/travis-build.sh
ci/travis-install.sh

index 06012e8903d7ab2e8a96daab6e4dc1bf6dfdac46..231417e21a1458f581b27db0ec8eb4992a7f83da 100755 (executable)
@@ -1,16 +1,29 @@
 #!/bin/bash
 
+CI_TARGET_ARCH="${BUILD_ARCH:-$TRAVIS_CPU_ARCH}"
 EXTRA_CFLAGS="-Werror"
 PYTHONUNBUFFERED=TRUE
+CONFIGURE_FLAGS=()
 
-if [[ "$BUILD_ARCH" == "x86" ]]; then
-    EXTRA_CFLAGS="${EXTRA_CFLAGS} -m32"
-fi
+case "$TRAVIS_OS_NAME" in
+    "linux")
+        CONFIGURE_FLAGS+=(--enable-libiscsi)
+        case "$CI_TARGET_ARCH" in
+            "x86")
+                EXTRA_CFLAGS="${EXTRA_CFLAGS} -m32"
+                ;;
+            "amd64")
+                CONFIGURE_FLAGS+=(--enable-cuda)
+                ;;
+        esac
+    ;;
+esac
+CONFIGURE_FLAGS+=(--extra-cflags="${EXTRA_CFLAGS}")
 
-./configure --extra-cflags="${EXTRA_CFLAGS}" &&
+./configure "${CONFIGURE_FLAGS[@]}" &&
     make &&
     make test &&
-    if [[ "$TRAVIS_CPU_ARCH" == "arm64" ]]; then
+    if [[ "$CI_TARGET_ARCH" == "arm64" ]]; then
        sudo python3 t/run-fio-tests.py --skip 6 1007 1008 --debug -p 1010:"--skip 15 16 17 18 19 20"
     else
        sudo python3 t/run-fio-tests.py --skip 6 1007 1008 --debug
index 1bb1063fdb1bd9eca52afe18abebe9d02ea02963..36661ddde1e2a1839d322857da4469162a832688 100755 (executable)
@@ -1,5 +1,6 @@
 #!/bin/bash
 
+CI_TARGET_ARCH="${BUILD_ARCH:-$TRAVIS_CPU_ARCH}"
 case "$TRAVIS_OS_NAME" in
     "linux")
        # Architecture-dependent packages.
@@ -16,14 +17,17 @@ case "$TRAVIS_OS_NAME" in
            librdmacm-dev
            libz-dev
        )
-       if [[ "$BUILD_ARCH" == "x86" ]]; then
-           pkgs=("${pkgs[@]/%/:i386}")
-           pkgs+=(gcc-multilib)
-       else
-           pkgs+=(
-               glusterfs-common
-               nvidia-cuda-dev
-           )
+       case "$CI_TARGET_ARCH" in
+           "x86")
+               pkgs=("${pkgs[@]/%/:i386}")
+               pkgs+=(gcc-multilib)
+               ;;
+           "amd64")
+               pkgs+=(nvidia-cuda-dev)
+               ;;
+       esac
+       if [[ $CI_TARGET_ARCH != "x86" ]]; then
+               pkgs+=(glusterfs-common)
        fi
        # Architecture-independent packages and packages for which we don't
        # care about the architecture.