.build:linux:base: stage: build image: ubuntu:18.04 before_script: - apt-get update -y - apt-get install -y --no-install-recommends software-properties-common - add-apt-repository -y ppa:ubuntu-toolchain-r/test - apt-get update - apt-get install --no-install-recommends -y ${EIGEN_CI_CXX_COMPILER} ${EIGEN_CI_CC_COMPILER} cmake ninja-build script: - mkdir -p ${BUILDDIR} && cd ${BUILDDIR} - CXX=${EIGEN_CI_CXX_COMPILER} CC=${EIGEN_CI_CC_COMPILER} cmake -G ${EIGEN_CI_CMAKE_GENEATOR} -DEIGEN_TEST_CXX11=${EIGEN_TEST_CXX11} ${EIGEN_CI_ADDITIONAL_ARGS} .. - cmake --build . --target buildtests artifacts: name: "$CI_JOB_NAME-$CI_COMMIT_REF_NAME" paths: - ${BUILDDIR}/ expire_in: 5 days only: - schedules ######## x86-64 ################################################################ # GCC-4.8 (the oldest compiler we support) build:x86-64:linux:gcc-4.8:cxx11-on: extends: .build:linux:base variables: EIGEN_CI_CXX_COMPILER: "g++-4.8" EIGEN_CI_CC_COMPILER: "gcc-4.8" EIGEN_TEST_CXX11: "on" tags: - eigen-runner - linux - x86-64 # GCC-9 build:x86-64:linux:gcc-9:cxx11-on: extends: .build:linux:base variables: EIGEN_CI_CXX_COMPILER: "g++-9" EIGEN_CI_CC_COMPILER: "gcc-9" EIGEN_TEST_CXX11: "on" tags: - eigen-runner - linux - x86-64 # GCC-10 build:x86-64:linux:gcc-10:cxx11-on: extends: .build:linux:base variables: EIGEN_CI_CXX_COMPILER: "g++-10" EIGEN_CI_CC_COMPILER: "gcc-10" EIGEN_TEST_CXX11: "on" tags: - eigen-runner - linux - x86-64 # Clang-10 build:x86-64:linux:clang-10:cxx11-on: extends: .build:linux:base variables: EIGEN_CI_CXX_COMPILER: "clang++-10" EIGEN_CI_CC_COMPILER: "clang-10" EIGEN_TEST_CXX11: "on" tags: - eigen-runner - linux - x86-64 # Clang-10, AVX512 build:x86-64:linux:clang-10:cxx11-on:avx512: extends: .build:linux:base variables: EIGEN_CI_CXX_COMPILER: "clang++-10" EIGEN_CI_CC_COMPILER: "clang-10" EIGEN_TEST_CXX11: "on" EIGEN_TEST_AVX512DQ: "on" tags: - eigen-runner - linux - x86-64 - avx512 ######## AArch64 ############################################################### # GCC-10 build:aarch64:linux:gcc-10:cxx11-on: extends: .build:linux:base variables: EIGEN_CI_CXX_COMPILER: "g++-10" EIGEN_CI_CC_COMPILER: "gcc-10" EIGEN_TEST_CXX11: "on" tags: - eigen-runner - linux - aarch64 # Clang-10 build:aarch64:linux:clang-10:cxx11-on: extends: .build:linux:base variables: EIGEN_CI_CXX_COMPILER: "clang++-10" EIGEN_CI_CC_COMPILER: "clang-10" EIGEN_TEST_CXX11: "on" tags: - eigen-runner - linux - aarch64 ######## ppc64le ############################################################### # Currently all ppc64le jobs are allowed to fail # GCC-10 build:ppc64le:linux:gcc-10:cxx11-on: allow_failure: true extends: .build:linux:base variables: EIGEN_CI_CXX_COMPILER: "g++-10" EIGEN_CI_CC_COMPILER: "gcc-10" EIGEN_TEST_CXX11: "on" EIGEN_CI_ADDITIONAL_ARGS: "-DCMAKE_CXX_FLAGS='-DEIGEN_ALTIVEC_DISABLE_MMA'" tags: - eigen-runner - linux - ppc64le # Clang-10 build:ppc64le:linux:clang-10:cxx11-on: allow_failure: true extends: .build:linux:base variables: EIGEN_CI_CXX_COMPILER: "clang++-10" EIGEN_CI_CC_COMPILER: "clang-10" EIGEN_TEST_CXX11: "on" tags: - eigen-runner - linux - ppc64le