Skip to content

Commit 447c31a

Browse files
committed
Add more CircleCI files to about/ci folder
1 parent 2e882c3 commit 447c31a

File tree

6 files changed

+400
-4
lines changed

6 files changed

+400
-4
lines changed

.circleci/circle-clang.yml

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
# Copyright Glen Knowles 2025.
2+
# Distributed under the Boost Software License, Version 1.0.
3+
#
4+
# .circleci/config.yml
5+
6+
# See: https://circleci.com/docs/configuration-reference
7+
version: 2.1
8+
9+
workflows:
10+
build:
11+
jobs:
12+
- build-dunix:
13+
env: CXX=clang++ CC=clang
14+
matrix:
15+
parameters:
16+
image:
17+
- silkeh/clang:11
18+
- silkeh/clang:12
19+
- silkeh/clang:13
20+
- silkeh/clang:14
21+
- silkeh/clang:15
22+
- silkeh/clang:16
23+
- silkeh/clang:17
24+
- silkeh/clang:18
25+
- silkeh/clang:19
26+
- silkeh/clang:20
27+
config: [Debug, Release]
28+
29+
jobs:
30+
build-dunix:
31+
parameters:
32+
image: {type: string}
33+
env: {type: string}
34+
config: {type: string}
35+
coverage: {type: boolean, default: false}
36+
docker:
37+
- image: <<parameters.image>>
38+
resource_class: medium
39+
steps:
40+
- checkout
41+
- run:
42+
name: Install
43+
command: |
44+
export <<parameters.env>>
45+
apt-get update -y
46+
apt-get install cmake -y
47+
apt-get install locales-all -y
48+
- run:
49+
name: Build
50+
command: |
51+
export <<parameters.env>>
52+
mkdir -p build && cd build
53+
cmake .. -DBUILD_COVERAGE:BOOL=${BUILD_COVERAGE}
54+
cmake --build . --config <<parameters.config>>
55+
- run:
56+
name: Test
57+
command: |
58+
export <<parameters.env>>
59+
LANG=en_US.UTF-8
60+
export COLUMNS=80
61+
cd bin
62+
./cli --test
File renamed without changes.

.circleci/circle-gcc.yml

Lines changed: 165 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,165 @@
1+
# Copyright Glen Knowles 2025.
2+
# Distributed under the Boost Software License, Version 1.0.
3+
#
4+
# .circleci/config.yml
5+
6+
# See: https://circleci.com/docs/configuration-reference
7+
version: 2.1
8+
orbs:
9+
codecov: codecov/codecov@5.4.3
10+
11+
workflows:
12+
build:
13+
jobs:
14+
- build-win:
15+
image: windows-server-2019-vs2019:current
16+
generator: "Visual Studio 16 2019"
17+
matrix:
18+
parameters:
19+
platform: [Win32, x64]
20+
config: [Debug, Release]
21+
toolset: [v140, v141]
22+
- build-win:
23+
image: windows-server-2022-gui:current
24+
generator: "Visual Studio 17 2022"
25+
matrix:
26+
parameters:
27+
platform: [Win32, x64]
28+
config: [Debug, Release]
29+
toolset: [v142, v143]
30+
- build-dunix:
31+
env: CXX=clang++ CC=clang
32+
matrix:
33+
parameters:
34+
image:
35+
- silkeh/clang:11
36+
- silkeh/clang:12
37+
- silkeh/clang:13
38+
- silkeh/clang:14
39+
- silkeh/clang:15
40+
- silkeh/clang:16
41+
- silkeh/clang:17
42+
- silkeh/clang:18
43+
- silkeh/clang:19
44+
- silkeh/clang:20
45+
config: [Debug, Release]
46+
- build-dunix:
47+
env: CXX=g++ CC=gcc
48+
matrix:
49+
parameters:
50+
image:
51+
- gcc:9
52+
- gcc:10
53+
- gcc:11
54+
- gcc:12
55+
- gcc:13
56+
- gcc:14
57+
- gcc:15
58+
config: [Debug, Release]
59+
# - build-dunix:
60+
# env: CXX=g++ CC=gcc GCOV=gcov BUILD_COVERAGE=ON
61+
# image: gcc
62+
# config: Debug
63+
# coverage: true
64+
65+
jobs:
66+
build-win:
67+
parameters:
68+
image: {type: string}
69+
generator: {type: string}
70+
platform: {type: string}
71+
config: {type: string}
72+
toolset: {type: string}
73+
environment:
74+
p_generator: <<parameters.generator>>
75+
p_platform: <<parameters.platform>>
76+
p_config: <<parameters.config>>
77+
p_toolset: <<parameters.toolset>>
78+
machine:
79+
image: <<parameters.image>>
80+
resource_class: windows.medium
81+
shell: cmd.exe
82+
steps:
83+
- checkout
84+
- run:
85+
name: Build
86+
command: cd .circleci && build-win
87+
- run:
88+
name: Test
89+
command: cd bin && cli --test
90+
91+
build-unix:
92+
parameters:
93+
image: {type: string}
94+
env: {type: string}
95+
config: {type: string}
96+
machine:
97+
image: <<parameters.image>>
98+
resource_class: medium
99+
steps:
100+
- checkout
101+
- run:
102+
name: Install
103+
command: |
104+
export <<parameters.env>>
105+
if [ -n "$INSTALL_APT" ]; then
106+
sudo apt-get update -y
107+
sudo apt-get install software-properties-common -y
108+
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
109+
sudo apt-get update -y
110+
sudo apt-get install -y ${CC} ${CXX}
111+
fi
112+
sudo apt-get install locales-all -y
113+
- run:
114+
name: Build
115+
command: |
116+
export <<parameters.env>>
117+
mkdir -p build && cd build
118+
cmake .. -DBUILD_COVERAGE:BOOL=${BUILD_COVERAGE}
119+
cmake --build . --config <<parameters.config>>
120+
- run:
121+
name: Test
122+
command: |
123+
export <<parameters.env>>
124+
export LANG=en_US.UTF-8
125+
export COLUMNS=80
126+
cd bin
127+
./cli --test
128+
129+
build-dunix:
130+
parameters:
131+
image: {type: string}
132+
env: {type: string}
133+
config: {type: string}
134+
coverage: {type: boolean, default: false}
135+
docker:
136+
- image: <<parameters.image>>
137+
resource_class: medium
138+
steps:
139+
- checkout
140+
- run:
141+
name: Install
142+
command: |
143+
export <<parameters.env>>
144+
apt-get update -y
145+
apt-get install cmake -y
146+
apt-get install locales-all -y
147+
- run:
148+
name: Build
149+
command: |
150+
export <<parameters.env>>
151+
mkdir -p build && cd build
152+
cmake .. -DBUILD_COVERAGE:BOOL=${BUILD_COVERAGE}
153+
cmake --build . --config <<parameters.config>>
154+
- run:
155+
name: Test
156+
command: |
157+
export <<parameters.env>>
158+
LANG=en_US.UTF-8
159+
export COLUMNS=80
160+
cd bin
161+
./cli --test
162+
- when:
163+
condition: <<parameters.coverage>>
164+
steps:
165+
- codecov/upload

.circleci/circle-msvc.yml

Lines changed: 165 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,165 @@
1+
# Copyright Glen Knowles 2025.
2+
# Distributed under the Boost Software License, Version 1.0.
3+
#
4+
# .circleci/config.yml
5+
6+
# See: https://circleci.com/docs/configuration-reference
7+
version: 2.1
8+
orbs:
9+
codecov: codecov/codecov@5.4.3
10+
11+
workflows:
12+
build:
13+
jobs:
14+
- build-win:
15+
image: windows-server-2019-vs2019:current
16+
generator: "Visual Studio 16 2019"
17+
matrix:
18+
parameters:
19+
platform: [Win32, x64]
20+
config: [Debug, Release]
21+
toolset: [v140, v141]
22+
- build-win:
23+
image: windows-server-2022-gui:current
24+
generator: "Visual Studio 17 2022"
25+
matrix:
26+
parameters:
27+
platform: [Win32, x64]
28+
config: [Debug, Release]
29+
toolset: [v142, v143]
30+
- build-dunix:
31+
env: CXX=clang++ CC=clang
32+
matrix:
33+
parameters:
34+
image:
35+
- silkeh/clang:11
36+
- silkeh/clang:12
37+
- silkeh/clang:13
38+
- silkeh/clang:14
39+
- silkeh/clang:15
40+
- silkeh/clang:16
41+
- silkeh/clang:17
42+
- silkeh/clang:18
43+
- silkeh/clang:19
44+
- silkeh/clang:20
45+
config: [Debug, Release]
46+
- build-dunix:
47+
env: CXX=g++ CC=gcc
48+
matrix:
49+
parameters:
50+
image:
51+
- gcc:9
52+
- gcc:10
53+
- gcc:11
54+
- gcc:12
55+
- gcc:13
56+
- gcc:14
57+
- gcc:15
58+
config: [Debug, Release]
59+
# - build-dunix:
60+
# env: CXX=g++ CC=gcc GCOV=gcov BUILD_COVERAGE=ON
61+
# image: gcc
62+
# config: Debug
63+
# coverage: true
64+
65+
jobs:
66+
build-win:
67+
parameters:
68+
image: {type: string}
69+
generator: {type: string}
70+
platform: {type: string}
71+
config: {type: string}
72+
toolset: {type: string}
73+
environment:
74+
p_generator: <<parameters.generator>>
75+
p_platform: <<parameters.platform>>
76+
p_config: <<parameters.config>>
77+
p_toolset: <<parameters.toolset>>
78+
machine:
79+
image: <<parameters.image>>
80+
resource_class: windows.medium
81+
shell: cmd.exe
82+
steps:
83+
- checkout
84+
- run:
85+
name: Build
86+
command: cd .circleci && build-win
87+
- run:
88+
name: Test
89+
command: cd bin && cli --test
90+
91+
build-unix:
92+
parameters:
93+
image: {type: string}
94+
env: {type: string}
95+
config: {type: string}
96+
machine:
97+
image: <<parameters.image>>
98+
resource_class: medium
99+
steps:
100+
- checkout
101+
- run:
102+
name: Install
103+
command: |
104+
export <<parameters.env>>
105+
if [ -n "$INSTALL_APT" ]; then
106+
sudo apt-get update -y
107+
sudo apt-get install software-properties-common -y
108+
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
109+
sudo apt-get update -y
110+
sudo apt-get install -y ${CC} ${CXX}
111+
fi
112+
sudo apt-get install locales-all -y
113+
- run:
114+
name: Build
115+
command: |
116+
export <<parameters.env>>
117+
mkdir -p build && cd build
118+
cmake .. -DBUILD_COVERAGE:BOOL=${BUILD_COVERAGE}
119+
cmake --build . --config <<parameters.config>>
120+
- run:
121+
name: Test
122+
command: |
123+
export <<parameters.env>>
124+
export LANG=en_US.UTF-8
125+
export COLUMNS=80
126+
cd bin
127+
./cli --test
128+
129+
build-dunix:
130+
parameters:
131+
image: {type: string}
132+
env: {type: string}
133+
config: {type: string}
134+
coverage: {type: boolean, default: false}
135+
docker:
136+
- image: <<parameters.image>>
137+
resource_class: medium
138+
steps:
139+
- checkout
140+
- run:
141+
name: Install
142+
command: |
143+
export <<parameters.env>>
144+
apt-get update -y
145+
apt-get install cmake -y
146+
apt-get install locales-all -y
147+
- run:
148+
name: Build
149+
command: |
150+
export <<parameters.env>>
151+
mkdir -p build && cd build
152+
cmake .. -DBUILD_COVERAGE:BOOL=${BUILD_COVERAGE}
153+
cmake --build . --config <<parameters.config>>
154+
- run:
155+
name: Test
156+
command: |
157+
export <<parameters.env>>
158+
LANG=en_US.UTF-8
159+
export COLUMNS=80
160+
cd bin
161+
./cli --test
162+
- when:
163+
condition: <<parameters.coverage>>
164+
steps:
165+
- codecov/upload

0 commit comments

Comments
 (0)