| .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 |