.test:linux: extends: .common:linux:cross stage: test script: - . ci/scripts/test.linux.script.sh after_script: - . ci/scripts/test.linux.after_script.sh rules: - if: $CI_PIPELINE_SOURCE == "schedule" && $CI_PROJECT_NAMESPACE == "libeigen" - if: $CI_PIPELINE_SOURCE == "web" && $CI_PROJECT_NAMESPACE == "libeigen" ##### x86-64 ################################################################### .test:linux:x86-64: extends: .test:linux variables: EIGEN_CI_TARGET_ARCH: x86_64 EIGEN_CI_CROSS_TARGET_TRIPLE: x86_64-linux-gnu tags: - eigen-runner - linux - x86-64 # GCC-6 (minimum on Ubuntu 18.04) .test:linux:x86-64:gcc-6:default: extends: .test:linux:x86-64 image: ubuntu:18.04 needs: [ build:linux:cross:x86-64:gcc-6:default ] variables: EIGEN_CI_INSTALL: g++-6 test:linux:x86-64:gcc-6:default:official: extends: .test:linux:x86-64:gcc-6:default variables: EIGEN_CI_TEST_LABEL: Official test:linux:x86-64:gcc-6:default:unsupported: extends: .test:linux:x86-64:gcc-6:default variables: EIGEN_CI_TEST_LABEL: Unsupported # GCC-10 (modern stable) .test:linux:x86-64:gcc-10:default: extends: .test:linux:x86-64 needs: [ build:linux:cross:x86-64:gcc-10:default ] variables: EIGEN_CI_INSTALL: g++-10 test:linux:x86-64:gcc-10:default:official: extends: .test:linux:x86-64:gcc-10:default variables: EIGEN_CI_TEST_LABEL: Official test:linux:x86-64:gcc-10:default:unsupported: extends: .test:linux:x86-64:gcc-10:default variables: EIGEN_CI_TEST_LABEL: Unsupported .test:linux:x86-64:gcc-10:avx2: extends: .test:linux:x86-64 needs: [ build:linux:cross:x86-64:gcc-10:avx2 ] variables: EIGEN_CI_INSTALL: g++-10 test:linux:x86-64:gcc-10:avx2:official: extends: .test:linux:x86-64:gcc-10:avx2 variables: EIGEN_CI_TEST_LABEL: Official test:linux:x86-64:gcc-10:avx2:unsupported: extends: .test:linux:x86-64:gcc-10:avx2 variables: EIGEN_CI_TEST_LABEL: Unsupported .test:linux:x86-64:gcc-10:avx512dq: extends: .test:linux:x86-64 needs: [ build:linux:cross:x86-64:gcc-10:avx512dq ] variables: EIGEN_CI_INSTALL: g++-10 tags: - eigen-runner - linux - x86-64 - avx512 test:linux:x86-64:gcc-10:avx512dq:official: extends: .test:linux:x86-64:gcc-10:avx512dq variables: EIGEN_CI_TEST_LABEL: Official test:linux:x86-64:gcc-10:avx512dq:unsupported: extends: .test:linux:x86-64:gcc-10:avx512dq variables: EIGEN_CI_TEST_LABEL: Unsupported # Clang-6 (minimum on Ubuntu 20.04) .test:linux:x86-64:clang-6:default: extends: .test:linux:x86-64 image: ubuntu:20.04 needs: [ build:linux:cross:x86-64:clang-6:default ] variables: EIGEN_CI_INSTALL: g++-8 clang-6.0 lld-6.0 test:linux:x86-64:clang-6:default:official: extends: .test:linux:x86-64:clang-6:default variables: EIGEN_CI_TEST_LABEL: Official test:linux:x86-64:clang-6:default:unsupported: extends: .test:linux:x86-64:clang-6:default variables: EIGEN_CI_TEST_LABEL: Unsupported # Clang-12 (modern stable) .test:linux:x86-64:clang-12:default: extends: .test:linux:x86-64 needs: [ build:linux:cross:x86-64:clang-12:default ] variables: EIGEN_CI_INSTALL: clang-12 test:linux:x86-64:clang-12:default:official: extends: .test:linux:x86-64:clang-12:default variables: EIGEN_CI_TEST_LABEL: Official test:linux:x86-64:clang-12:default:unsupported: extends: .test:linux:x86-64:clang-12:default variables: EIGEN_CI_TEST_LABEL: Unsupported .test:linux:x86-64:clang-12:avx2: extends: .test:linux:x86-64 needs: [ build:linux:cross:x86-64:clang-12:avx2 ] variables: EIGEN_CI_INSTALL: clang-12 test:linux:x86-64:clang-12:avx2:official: extends: .test:linux:x86-64:clang-12:avx2 variables: EIGEN_CI_TEST_LABEL: Official test:linux:x86-64:clang-12:avx2:unsupported: extends: .test:linux:x86-64:clang-12:avx2 variables: EIGEN_CI_TEST_LABEL: Unsupported .test:linux:x86-64:clang-12:avx512dq: extends: .test:linux:x86-64 needs: [ build:linux:cross:x86-64:clang-12:avx512dq ] variables: EIGEN_CI_INSTALL: clang-12 tags: - eigen-runner - linux - x86-64 - avx512 test:linux:x86-64:clang-12:avx512dq:official: extends: .test:linux:x86-64:clang-12:avx512dq variables: EIGEN_CI_TEST_LABEL: Official test:linux:x86-64:clang-12:avx512dq:unsupported: extends: .test:linux:x86-64:clang-12:avx512dq variables: EIGEN_CI_TEST_LABEL: Unsupported ##### CUDA ##################################################################### .test:linux:cuda: extends: .test:linux allow_failure: true variables: EIGEN_CI_TEST_LABEL: gpu tags: - eigen-runner - linux - x86-64 - cuda # NVidia no longer provides docker images < CUDA 11.0.3. # # GCC-7, CUDA-9.2 # test:linux:cuda-9.2:gcc-7: # extends: .test:linux:cuda # image: nvidia/cuda:9.2-devel-ubuntu18.04 # needs: [ build:linux:cuda-9.2:gcc-7 ] # variables: # EIGEN_CI_CXX_COMPILER: g++-7 # EIGEN_CI_CC_COMPILER: gcc-7 # # Clang-10, CUDA-9.2 # test:linux:cuda-9.2:clang-10: # extends: .test:linux:cuda # image: nvidia/cuda:9.2-devel-ubuntu18.04 # needs: [ build:linux:cuda-9.2:clang-10 ] # variables: # EIGEN_CI_CXX_COMPILER: clang++-10 # EIGEN_CI_CC_COMPILER: clang-10 # # GCC-8, CUDA-10.2 # test:linux:cuda-10.2:gcc-8: # extends: .test:linux:cuda # image: nvidia/cuda:10.2-devel-ubuntu18.04 # needs: [ build:linux:cuda-10.2:gcc-8 ] # variables: # EIGEN_CI_CXX_COMPILER: g++-8 # EIGEN_CI_CC_COMPILER: gcc-8 # # Clang-10, CUDA-10.2 # test:linux:cuda-10.2:clang-10: # extends: .test:linux:cuda # image: nvidia/cuda:10.2-devel-ubuntu18.04 # needs: [ build:linux:cuda-10.2:clang-10 ] # variables: # EIGEN_CI_CXX_COMPILER: clang++-10 # EIGEN_CI_CC_COMPILER: clang-10 # GCC-10, CUDA-11.4 test:linux:cuda-11.4:gcc-10: extends: .test:linux:cuda image: nvidia/cuda:11.4.3-devel-ubuntu20.04 needs: [ build:linux:cuda-11.4:gcc-10 ] variables: EIGEN_CI_CXX_COMPILER: g++-10 EIGEN_CI_CC_COMPILER: gcc-10 # Clang-12, CUDA-11.4 test:linux:cuda-11.4:clang-12: extends: .test:linux:cuda image: nvidia/cuda:11.4.3-devel-ubuntu20.04 needs: [ build:linux:cuda-11.4:clang-12 ] variables: EIGEN_CI_CXX_COMPILER: clang++-12 EIGEN_CI_CC_COMPILER: clang-12 # GCC-10, CUDA-12.2 test:linux:cuda-12.2:gcc-10: extends: .test:linux:cuda image: nvidia/cuda:12.2.0-devel-ubuntu20.04 needs: [ build:linux:cuda-12.2:gcc-10 ] variables: EIGEN_CI_CXX_COMPILER: g++-10 EIGEN_CI_CC_COMPILER: gcc-10 # Clang-12, CUDA-12.2 test:linux:cuda-12.2:clang-12: extends: .test:linux:cuda image: nvidia/cuda:12.2.0-devel-ubuntu20.04 needs: [ build:linux:cuda-12.2:clang-12 ] variables: EIGEN_CI_CXX_COMPILER: clang++-12 EIGEN_CI_CC_COMPILER: clang-12 ##### arm ###################################################################### .test:linux:arm: extends: .test:linux variables: EIGEN_CI_TARGET_ARCH: arm EIGEN_CI_CROSS_TARGET_TRIPLE: arm-linux-gnueabihf # Enable cross-compiled arm binary to run on aarch64. EIGEN_CI_BEFORE_SCRIPT: "ln -s /usr/arm-linux-gnueabihf/lib/ld-linux-armhf.so.3 /lib/ && export LD_LIBRARY_PATH=/usr/arm-linux-gnueabihf/lib/" tags: - eigen-runner - linux - aarch64 .test:linux:arm:gcc-10:default: extends: .test:linux:arm needs: [ build:linux:cross:arm:gcc-10:default ] variables: EIGEN_CI_CROSS_INSTALL: g++-10-arm-linux-gnueabihf test:linux:arm:gcc-10:default:official: extends: .test:linux:arm:gcc-10:default variables: EIGEN_CI_TEST_LABEL: Official test:linux:arm:gcc-10:default:unsupported: extends: .test:linux:arm:gcc-10:default variables: EIGEN_CI_TEST_LABEL: Unsupported .test:linux:arm:clang-12:default: extends: .test:linux:arm needs: [ build:linux:cross:arm:clang-12:default ] variables: EIGEN_CI_CROSS_INSTALL: g++-10-arm-linux-gnueabihf clang-12 test:linux:arm:clang-12:default:official: extends: .test:linux:arm:clang-12:default variables: EIGEN_CI_TEST_LABEL: Official test:linux:arm:clang-12:default:unsupported: extends: .test:linux:arm:clang-12:default variables: EIGEN_CI_TEST_LABEL: Unsupported ##### aarch64 ################################################################## .test:linux:aarch64: extends: .test:linux variables: EIGEN_CI_TARGET_ARCH: aarch64 EIGEN_CI_CROSS_TARGET_TRIPLE: aarch64-linux-gnu tags: - eigen-runner - linux - aarch64 .test:linux:aarch64:gcc-10:default: extends: .test:linux:aarch64 needs: [ build:linux:cross:aarch64:gcc-10:default ] variables: EIGEN_CI_INSTALL: g++-10 test:linux:aarch64:gcc-10:default:official: extends: .test:linux:aarch64:gcc-10:default variables: EIGEN_CI_TEST_LABEL: Official test:linux:aarch64:gcc-10:default:unsupported: extends: .test:linux:aarch64:gcc-10:default variables: EIGEN_CI_TEST_LABEL: Unsupported .test:linux:aarch64:clang-12:default: extends: .test:linux:aarch64 needs: [ build:linux:cross:aarch64:clang-12:default ] variables: EIGEN_CI_INSTALL: clang-12 test:linux:aarch64:clang-12:default:official: extends: .test:linux:aarch64:clang-12:default variables: EIGEN_CI_TEST_LABEL: Official test:linux:aarch64:clang-12:default:unsupported: extends: .test:linux:aarch64:clang-12:default variables: EIGEN_CI_TEST_LABEL: Unsupported ##### ppc64le ################################################################## .test:linux:ppc64le: extends: .test:linux variables: EIGEN_CI_TARGET_ARCH: ppc64le EIGEN_CI_CROSS_TARGET_TRIPLE: powerpc64le-linux-gnu tags: - eigen-runner - linux - ppc64le .test:linux:ppc64le:gcc-10:default: extends: .test:linux:ppc64le needs: [ build:linux:cross:ppc64le:gcc-10:default ] variables: EIGEN_CI_INSTALL: g++-10 test:linux:ppc64le:gcc-10:default:official: extends: .test:linux:ppc64le:gcc-10:default variables: EIGEN_CI_TEST_LABEL: Official test:linux:ppc64le:gcc-10:default:unsupported: extends: .test:linux:ppc64le:gcc-10:default variables: EIGEN_CI_TEST_LABEL: Unsupported .test:linux:ppc64le:clang-12:default: extends: .test:linux:ppc64le needs: [ build:linux:cross:ppc64le:clang-12:default ] variables: EIGEN_CI_INSTALL: clang-12 test:linux:ppc64le:clang-12:default:official: extends: .test:linux:ppc64le:clang-12:default variables: EIGEN_CI_TEST_LABEL: Official test:linux:ppc64le:clang-12:default:unsupported: extends: .test:linux:ppc64le:clang-12:default variables: EIGEN_CI_TEST_LABEL: Unsupported ##### MR Smoke Tests ########################################################### test:linux:x86-64:gcc-10:default:smoketest: extends: .test:linux:x86-64:gcc-10:default needs: [ build:linux:cross:x86-64:gcc-10:default:smoketest ] variables: EIGEN_CI_TEST_LABEL: smoketest rules: - if: $CI_PIPELINE_SOURCE == "merge_request_event" test:linux:x86-64:clang-12:default:smoketest: extends: .test:linux:x86-64:clang-12:default needs: [ build:linux:cross:x86-64:clang-12:default:smoketest ] variables: EIGEN_CI_TEST_LABEL: smoketest rules: - if: $CI_PIPELINE_SOURCE == "merge_request_event"