1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
|
.build-tests-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}
- echo "CXX=${EIGEN_CI_CXX_COMPILER} CC=${EIGEN_CI_CC_COMPILER} cmake -G ${EIGEN_CI_CMAKE_GENEATOR} -DEIGEN_SPLIT_TESTSUITE=${EIGEN_CI_TESTSUITE_SIZE} -DEIGEN_TEST_CXX11=${EIGEN_TEST_CXX11} ${EIGEN_CI_ADDITIONAL_ARGS} .."
- CXX=${EIGEN_CI_CXX_COMPILER} CC=${EIGEN_CI_CC_COMPILER} cmake -G ${EIGEN_CI_CMAKE_GENEATOR} -DEIGEN_SPLIT_TESTSUITE=${EIGEN_CI_TESTSUITE_SIZE} -DEIGEN_TEST_CXX11=${EIGEN_TEST_CXX11} ${EIGEN_CI_ADDITIONAL_ARGS} ..
- echo "cmake --build . --target buildtestspart${EIGEN_CI_TESTSUITE_PART}"
- cmake --build . --target buildtestspart${EIGEN_CI_TESTSUITE_PART}
artifacts:
name: "$CI_JOB_NAME-$CI_COMMIT_REF_NAME"
paths:
- ${BUILDDIR}/
expire_in: 5 days
# Base for all build jobs building the whole testsuite in one job. Note that
# this cannot be run on GitLab's shared runners due to their timeout.
.build-tests-single-base:
extends: .build-tests-base
script:
- mkdir -p ${BUILDDIR} && cd ${BUILDDIR}
- echo "CXX=${EIGEN_CI_CXX_COMPILER} CC=${EIGEN_CI_CC_COMPILER} cmake -G ${EIGEN_CI_CMAKE_GENEATOR} -DEIGEN_TEST_CXX11=${EIGEN_TEST_CXX11} ${EIGEN_CI_CXX_FLAGS} ${EIGEN_CI_ADDITIONAL_ARGS} .."
- 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} ..
- echo "cmake --build . --target buildtests"
- cmake --build . --target buildtests
tags:
- eigen-runner
- x86
- linux
only:
- schedules
# Base for all build jobs using a splitted testsuite such that the job can be
# run on GitLab's own shared runners
.build-tests-split-base:
extends: .build-tests-base
script:
- mkdir -p ${BUILDDIR} && cd ${BUILDDIR}
- echo "CXX=${EIGEN_CI_CXX_COMPILER} CC=${EIGEN_CI_CC_COMPILER} cmake -G ${EIGEN_CI_CMAKE_GENEATOR} -DEIGEN_SPLIT_TESTSUITE=${EIGEN_CI_TESTSUITE_SIZE} -DEIGEN_TEST_CXX11=${EIGEN_TEST_CXX11} ${EIGEN_CI_CXX_FLAGS} -DEIGEN_TEST_AVX=On -DEIGEN_TEST_AVX2=On .."
- CXX=${EIGEN_CI_CXX_COMPILER} CC=${EIGEN_CI_CC_COMPILER} cmake -G ${EIGEN_CI_CMAKE_GENEATOR} -DEIGEN_SPLIT_TESTSUITE=${EIGEN_CI_TESTSUITE_SIZE} -DEIGEN_TEST_CXX11=${EIGEN_TEST_CXX11} -DEIGEN_TEST_AVX=On -DEIGEN_TEST_AVX2=On ..
- echo "cmake --build . --target buildtestspart${EIGEN_CI_TESTSUITE_PART}"
- cmake --build . --target buildtestspart${EIGEN_CI_TESTSUITE_PART}
only:
- merge_requests
########################## Nightly running jobs ################################
# GCC 4.8
# This is the oldest GCC version we support
build-tests-g++-4.8-cxx11-on:
extends: .build-tests-single-base
variables:
EIGEN_CI_CXX_COMPILER: "g++-4.8"
EIGEN_CI_CC_COMPILER: "gcc-4.8"
EIGEN_TEST_CXX11: "on"
build-tests-g++-4.8-cxx11-off:
extends: .build-tests-single-base
variables:
EIGEN_CI_CXX_COMPILER: "g++-4.8"
EIGEN_CI_CC_COMPILER: "gcc-4.8"
EIGEN_TEST_CXX11: "off"
# Clang 10
build-tests-clang++-10-cxx11-on:
extends: .build-tests-single-base
variables:
EIGEN_CI_CXX_COMPILER: "clang++-10"
EIGEN_CI_CC_COMPILER: "clang-10"
EIGEN_TEST_CXX11: "on"
EIGEN_CI_ADDITIONAL_ARGS: "-DEIGEN_TEST_AVX=On -DEIGEN_TEST_AVX2=On"
build-tests-clang++-10-cxx11-off:
extends: .build-tests-single-base
variables:
EIGEN_CI_CXX_COMPILER: "clang++-10"
EIGEN_CI_CC_COMPILER: "clang-10"
EIGEN_TEST_CXX11: "off"
EIGEN_CI_ADDITIONAL_ARGS: "-DEIGEN_TEST_AVX=On -DEIGEN_TEST_AVX2=On"
# GCC 10
build-tests-g++-10-cxx11-off:
extends: .build-tests-single-base
variables:
EIGEN_CI_CXX_COMPILER: "g++-10"
EIGEN_CI_CC_COMPILER: "gcc-10"
EIGEN_TEST_CXX11: "off"
EIGEN_CI_ADDITIONAL_ARGS: "-DEIGEN_TEST_AVX=On -DEIGEN_TEST_AVX2=On"
build-tests-g++-10-cxx11-on:
extends: .build-tests-single-base
variables:
EIGEN_CI_CXX_COMPILER: "g++-10"
EIGEN_CI_CC_COMPILER: "gcc-10"
EIGEN_TEST_CXX11: "on"
EIGEN_CI_ADDITIONAL_ARGS: "-DEIGEN_TEST_AVX=On -DEIGEN_TEST_AVX2=On"
########################### Merge request jobs #################################
# GCC 10
build-tests-g++-9-cxx11-on-mr:
only:
- merge_requests
extends: .build-tests-split-base
variables:
EIGEN_CI_CXX_COMPILER: "g++-9"
EIGEN_CI_CC_COMPILER: "gcc-9"
EIGEN_CI_ADDITIONAL_ARGS: "-DEIGEN_TEST_AVX=On -DEIGEN_TEST_AVX2=On"
parallel:
matrix:
- EIGEN_CI_TESTSUITE_PART: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
EIGEN_TEST_CXX11: "on"
build-tests-g++-9-cxx11-off-mr:
only:
- merge_requests
extends: .build-tests-split-base
variables:
EIGEN_CI_CXX_COMPILER: "g++-9"
EIGEN_CI_CC_COMPILER: "gcc-9"
EIGEN_CI_ADDITIONAL_ARGS: "-DEIGEN_TEST_AVX=On -DEIGEN_TEST_AVX2=On"
parallel:
matrix:
- EIGEN_CI_TESTSUITE_PART: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
EIGEN_TEST_CXX11: "off"
|