Skip to content

Commit f47676c

Browse files
authored
Merge pull request #96 from ralphlange/fix-ci
Fix CI issues
2 parents a6746f8 + 0881e0e commit f47676c

File tree

2 files changed

+122
-105
lines changed

2 files changed

+122
-105
lines changed

.appveyor.yml

Lines changed: 31 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,6 @@
44
cache:
55
- C:\Users\appveyor\.tools
66

7-
#---------------------------------#
8-
# additional packages #
9-
#---------------------------------#
10-
11-
install:
12-
# for the sequencer
13-
- cinst re2c
14-
- cmd: git submodule update --init --recursive
15-
167
#---------------------------------#
178
# repository cloning #
189
#---------------------------------#
@@ -40,39 +31,55 @@ configuration:
4031
environment:
4132
# common / default variables for all jobs
4233
SETUP_PATH: .ci-local
34+
BASE: 7.0
4335

4436
matrix:
45-
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
46-
CMP: vs2019
47-
BASE: 7.0
48-
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
49-
CMP: gcc
50-
BASE: 7.0
51-
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
52-
CMP: vs2017
53-
BASE: 7.0
54-
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
55-
CMP: vs2019
56-
BASE: 3.15
37+
- CMP: vs2019
38+
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
39+
- CMP: vs2017
40+
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
41+
- CMP: vs2015
42+
- CMP: vs2013
43+
- CMP: gcc
44+
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
45+
# TODO: static linking w/ readline isn't working. Bypass auto-detect
46+
COMMANDLINE_LIBRARY: EPICS
5747

5848
# Platform: processor architecture
5949
platform:
6050
- x64
6151

52+
# Matrix configuration: exclude sets of jobs
53+
matrix:
54+
exclude:
55+
# MinGW debug builds use the same libraries, unlike VS
56+
- configuration: dynamic-debug
57+
CMP: gcc
58+
- configuration: static-debug
59+
CMP: gcc
60+
6261
#---------------------------------#
6362
# building & testing #
6463
#---------------------------------#
6564

66-
build_script:
65+
install:
66+
- cmd: git submodule update --init --recursive
67+
- cmd: pip install git+https://github.com/mdavidsaver/ci-core-dumper#egg=ci-core-dumper
6768
- cmd: python .ci/cue.py prepare
69+
70+
build_script:
6871
- cmd: python .ci/cue.py build
6972

7073
test_script:
71-
- cmd: python .ci/cue.py test
74+
- cmd: python -m ci_core_dumper install
75+
- cmd: python .ci/cue.py -T 20M test
7276

7377
on_finish:
7478
- ps: Get-ChildItem *.tap -Recurse -Force | % { Push-AppveyorArtifact $_.FullName -FileName $_.Name }
75-
- cmd: python .ci/cue.py build test-results -s
79+
- cmd: python .ci/cue.py -T 5M test-results
80+
81+
on_failure:
82+
- cmd: python -m ci_core_dumper report
7683

7784
#---------------------------------#
7885
# debugging #

.github/workflows/ci-scripts-build.yml

Lines changed: 91 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -39,143 +39,164 @@ jobs:
3939
runs-on: ${{ matrix.os }}
4040
# Set environment variables from matrix parameters
4141
env:
42+
BASE: "7.0"
4243
CMP: ${{ matrix.cmp }}
4344
BCFG: ${{ matrix.configuration }}
44-
BASE: ${{ matrix.base }}
45-
WINE: ${{ matrix.wine }}
46-
RTEMS: ${{ matrix.rtems }}
47-
RTEMS_TARGET: ${{ matrix.rtems_target }}
45+
CI_CROSS_TARGETS: ${{ matrix.cross }}
4846
EXTRA: ${{ matrix.extra }}
4947
TEST: ${{ matrix.test }}
5048
strategy:
5149
fail-fast: false
5250
matrix:
5351
# Job names also name artifacts, character limitations apply
5452
include:
55-
- os: ubuntu-latest
53+
- os: ubuntu-22.04
54+
cmp: gcc-12
55+
name: "Ub-22 gcc-12 c++20 Werror"
56+
# Turn all warnings into errors,
57+
# except for those we could not fix (yet).
58+
# Remove respective -Wno-error=... flag once it is fixed.
59+
extra: "CMD_CXXFLAGS=-std=c++20
60+
CMD_CPPFLAGS='-fdiagnostics-color
61+
-fstack-protector-strong
62+
-Wformat
63+
-Werror
64+
-Werror=format-security
65+
-Wno-error=deprecated-declarations
66+
-Wno-error=stringop-truncation
67+
-Wno-error=restrict
68+
-Wno-error=sizeof-pointer-memaccess
69+
-Wno-error=nonnull
70+
-Wno-error=dangling-pointer
71+
-Wno-error=format-overflow
72+
-Wno-error=stringop-overread
73+
-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3'
74+
CMD_LDFLAGS=-Wl,-z,relro"
75+
76+
- os: ubuntu-20.04
5677
cmp: gcc
5778
configuration: default
58-
base: "7.0"
59-
wine: "64"
60-
name: "Ub-20 gcc-9 + MinGW"
79+
cross: "windows-x64-mingw"
80+
name: "Ub-20 gcc + MinGW"
6181

62-
- os: ubuntu-latest
82+
- os: ubuntu-20.04
6383
cmp: gcc
6484
configuration: static
65-
base: "7.0"
66-
wine: "64"
67-
name: "Ub-20 gcc-9 + MinGW, static"
85+
cross: "windows-x64-mingw"
86+
name: "Ub-20 gcc + MinGW, static"
6887

69-
- os: ubuntu-latest
88+
- os: ubuntu-20.04
7089
cmp: gcc
7190
configuration: static
72-
base: "7.0"
7391
extra: "CMD_CXXFLAGS=-std=c++11"
74-
name: "Ub-20 gcc-9 C++11, static"
92+
name: "Ub-20 gcc C++11, static"
7593

76-
- os: ubuntu-latest
94+
- os: ubuntu-20.04
95+
cmp: gcc
96+
configuration: static
97+
extra: "CMD_CFLAGS=-funsigned-char CMD_CXXFLAGS=-funsigned-char"
98+
name: "Ub-20 gcc unsigned char"
99+
100+
- os: ubuntu-20.04
77101
cmp: clang
78102
configuration: default
79-
base: "7.0"
80-
name: "Ub-20 clang-10"
103+
name: "Ub-20 clang"
81104

82-
- os: ubuntu-latest
105+
- os: ubuntu-20.04
83106
cmp: clang
84107
configuration: default
85-
base: "7.0"
86108
extra: "CMD_CXXFLAGS=-std=c++11"
87-
name: "Ub-20 clang-10 C++11"
109+
name: "Ub-20 clang C++11"
88110

89111
- os: ubuntu-20.04
90112
cmp: gcc
91113
configuration: default
92-
base: "7.0"
93-
rtems: "5"
94-
rtems_target: RTEMS-pc686-qemu
95-
name: "Ub-20 gcc-9 + RT-5.1 pc686"
114+
cross: "RTEMS-pc686-qemu@5"
115+
name: "Ub-20 gcc + RT-5.1 pc686"
96116

97117
- os: ubuntu-20.04
98118
cmp: gcc
99119
configuration: default
100-
base: "7.0"
101-
rtems: "5"
102-
rtems_target: RTEMS-beatnik
120+
cross: "RTEMS-beatnik@5"
103121
test: NO
104-
name: "Ub-20 gcc-9 + RT-5.1 beatnik"
122+
name: "Ub-20 gcc + RT-5.1 beatnik"
105123

106124
- os: ubuntu-20.04
107125
cmp: gcc
108126
configuration: default
109-
base: "7.0"
110-
rtems: "5"
111-
rtems_target: RTEMS-xilinx_zynq_a9_qemu
127+
cross: "RTEMS-xilinx_zynq_a9_qemu@5"
112128
test: NO
113-
name: "Ub-20 gcc-9 + RT-5.1 xilinx_zynq_a9_qemu"
129+
name: "Ub-20 gcc + RT-5.1 xilinx_zynq_a9_qemu"
114130

115131
- os: ubuntu-20.04
116132
cmp: gcc
117133
configuration: default
118-
base: "7.0"
119-
rtems: "5"
120-
rtems_target: RTEMS-uC5282
134+
cross: "RTEMS-uC5282@5"
121135
test: NO
122-
name: "Ub-20 gcc-9 + RT-5.1 uC5282"
136+
name: "Ub-20 gcc + RT-5.1 uC5282"
123137

124138
- os: ubuntu-20.04
125139
cmp: gcc
126140
configuration: default
127-
base: "7.0"
128-
rtems: "4.10"
129-
name: "Ub-20 gcc-9 + RT-4.10"
130-
rtems_target: RTEMS-pc386-qemu
141+
name: "Ub-20 gcc + RT-4.10"
142+
131143
test: NO
132144

133145
- os: ubuntu-20.04
134146
cmp: gcc
135147
configuration: default
136-
base: "7.0"
137-
rtems: "4.9"
138-
name: "Ub-20 gcc-9 + RT-4.9"
139-
rtems_target: RTEMS-pc386-qemu
140-
141-
- os: ubuntu-20.04
142-
cmp: gcc
143-
configuration: default
144-
base: "3.15"
145-
name: "Ub-20 3.15"
148+
name: "Ub-20 gcc + RT-4.9"
149+
146150

147151
- os: macos-latest
148152
cmp: clang
149153
configuration: default
150-
base: "7.0"
151-
name: "MacOS clang-12"
154+
name: "MacOS clang"
152155

153156
- os: windows-2019
154157
cmp: vs2019
155-
configuration: default
156-
base: "7.0"
158+
configuration: debug
157159
name: "Win2019 MSC-19"
160+
extra: "CMD_CXXFLAGS=-analysis"
158161

159162
- os: windows-2019
160163
cmp: vs2019
161-
configuration: static
162-
base: "7.0"
164+
configuration: static-debug
163165
name: "Win2019 MSC-19, static"
166+
extra: "CMD_CXXFLAGS=-analysis"
164167

165168
- os: windows-2019
166169
cmp: vs2019
167170
configuration: debug
168-
base: "7.0"
169171
name: "Win2019 MSC-19, debug"
170172

171173
- os: windows-2019
172174
cmp: gcc
173175
configuration: default
174-
base: "7.0"
175176
name: "Win2019 mingw"
176177

178+
# Linux cross builds
179+
180+
- os: ubuntu-latest
181+
cmp: gcc
182+
configuration: default
183+
name: "Cross linux-aarch64"
184+
cross: linux-aarch64
185+
186+
- os: ubuntu-latest
187+
cmp: gcc
188+
configuration: default
189+
name: "Cross linux-arm gnueabi"
190+
cross: linux-arm@arm-linux-gnueabi
191+
192+
- os: ubuntu-latest
193+
cmp: gcc
194+
configuration: default
195+
name: "Cross linux-arm gnueabihf"
196+
cross: linux-arm@arm-linux-gnueabihf
197+
177198
steps:
178-
- uses: actions/checkout@v3
199+
- uses: actions/checkout@v4
179200
with:
180201
submodules: true
181202
- name: Automatic core dumper analysis
@@ -209,45 +230,30 @@ jobs:
209230
image: ${{ matrix.image }}
210231
# Set environment variables from matrix parameters
211232
env:
233+
BASE: "7.0"
212234
CMP: ${{ matrix.cmp }}
213235
BCFG: ${{ matrix.configuration }}
214-
BASE: ${{ matrix.base }}
215236
EXTRA: ${{ matrix.extra }}
216237
TEST: ${{ matrix.test }}
217238
strategy:
218239
fail-fast: false
219240
matrix:
220241
# Job names also name artifacts, character limitations apply
221242
include:
222-
- name: "CentOS-7 3.16"
223-
image: centos:7
224-
cmp: gcc
225-
configuration: default
226-
base: "3.16"
227-
228-
- name: "CentOS-7 3.15"
229-
image: centos:7
230-
cmp: gcc
231-
configuration: default
232-
base: "3.15"
233-
234-
- name: "CentOS-7"
235-
image: centos:7
236-
cmp: gcc
237-
configuration: default
238-
base: "7.0"
243+
#- name: "CentOS-7"
244+
# image: centos:7
245+
# cmp: gcc
246+
# configuration: default
239247

240248
- name: "Fedora-33"
241249
image: fedora:33
242250
cmp: gcc
243251
configuration: default
244-
base: "7.0"
245252

246253
- name: "Fedora-latest"
247254
image: fedora:latest
248255
cmp: gcc
249256
configuration: default
250-
base: "7.0"
251257

252258
steps:
253259
- name: "Build newer Git"
@@ -276,11 +282,15 @@ jobs:
276282
# people would rather just break all existing scripts...
277283
[ -e /usr/bin/python ] || ln -sf python3 /usr/bin/python
278284
python --version
279-
- uses: actions/checkout@v3
285+
- uses: actions/checkout@v4
280286
with:
281287
submodules: true
282288
- name: Automatic core dumper analysis
283289
uses: mdavidsaver/ci-core-dumper@master
290+
if: matrix.image!='centos:7'
291+
- name: Automatic core dumper analysis
292+
uses: mdavidsaver/ci-core-dumper@node16
293+
if: matrix.image=='centos:7'
284294
- name: Prepare and compile dependencies
285295
run: python .ci/cue.py prepare
286296
- name: Build main module

0 commit comments

Comments
 (0)