# This file is part of Eigen, a lightweight C++ template library # for linear algebra. # # Copyright (c) 2020, Arm Limited and Contributors # # This Source Code Form is subject to the terms of the Mozilla # Public License v. 2.0. If a copy of the MPL was not distributed # with this file, You can obtain one at http://mozilla.org/MPL/2.0/. stages: - build - test - doc variables: CMAKE_GENERATOR: "Ninja" BUILDDIR: builddir .build-tests: stage: build image: fedora:31 before_script: - dnf -y install gcc-c++-9.2.1 cmake make ninja-build script: - cmake -B ${BUILDDIR} -DEIGEN_TEST_CXX11=${EIGEN_TEST_CXX11} - cmake --build ${BUILDDIR} --target buildtests cache: key: "build-cache-cxx11-${EIGEN_TEST_CXX11}" paths: - ${BUILDDIR}/ policy: push artifacts: name: "$CI_JOB_NAME-$CI_COMMIT_REF_NAME" paths: - ${BUILDDIR}/ expire_in: 5 days .run_tests: allow_failure: true stage: test image: fedora:31 before_script: - dnf -y install gcc-c++-9.2.1 cmake make ninja-build script: - cd ${BUILDDIR} && ctest --output-on-failure cache: key: "build-cache-cxx11-${EIGEN_TEST_CXX11}" paths: - ${BUILDDIR}/ policy: pull build-test-cxx11-on: extends: .build-tests variables: EIGEN_TEST_CXX11: "ON" build-test-cxx11-off: extends: .build-tests variables: EIGEN_TEST_CXX11: "OFF" run-tests-cxx11-on: extends: .run_tests variables: EIGEN_TEST_CXX11: "ON" needs: ["build-test-cxx11-on"] run-tests-cxx11-off: extends: .run_tests variables: EIGEN_TEST_CXX11: "OFF" needs: ["build-test-cxx11-off"] build-doc: image: fedora:31 only: - schedules stage: doc before_script: - dnf -y install gcc-c++-9.2.1 cmake make doxygen doxygen-latex script: - cmake -G "Unix Makefiles" -B ${BUILDDIR} -DCMAKE_BUILD_TYPE=Release - cmake --build ${BUILDDIR} --target doc artifacts: name: "$CI_JOB_NAME-$CI_JOB_ID" paths: - ${BUILDDIR}/doc/html expire_in: 2 days needs: []