Skip to content

Commit 70c5a37

Browse files
committed
consolidate ci-test scripts
1 parent a81eb0e commit 70c5a37

File tree

2 files changed

+62
-7
lines changed

2 files changed

+62
-7
lines changed

.github/workflows/arch.x86_64.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ jobs:
1010

1111
steps:
1212
- uses: actions/checkout@v4
13-
- run: build-aux/ci-test
13+
- run: build-aux/ci-test plain
1414

1515
test_asan:
1616
runs-on: ubuntu-latest
@@ -20,4 +20,4 @@ jobs:
2020

2121
steps:
2222
- uses: actions/checkout@v4
23-
- run: build-aux/ci-test-asan
23+
- run: build-aux/ci-test asan

build-aux/ci-test

Lines changed: 60 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,71 @@
11
#!/bin/bash -le
22

3+
debug() {
4+
echo "::debug::$*"
5+
}
6+
7+
error() {
8+
echo "::error::$*"
9+
}
10+
11+
fatal() {
12+
error "$*"
13+
exit 1
14+
}
15+
16+
group() {
17+
echo "::group::$*"
18+
}
19+
20+
endgroup() {
21+
echo "::endgroup::"
22+
}
23+
24+
debug "Running with buildmode=$buildmode"
25+
26+
group 'setup'
27+
28+
buildmode=$1
29+
setup_flags=()
30+
builddir=build-$buildmode
31+
test_install=0
32+
33+
case $buildmode in
34+
plain)
35+
test_install=1
36+
;;
37+
asan)
38+
setup_flags=('-Db_sanitize=address')
39+
;;
40+
*)
41+
fatal "unknown build mode $buildmode"
42+
;;
43+
esac
44+
345
pacman -Syu --noconfirm base-devel git gmock gtest python meson perl
446

547
# Needed to ensure PATH is properly set for perl, etc.
648
source /etc/profile
749

50+
endgroup
51+
852
# build
9-
meson setup build --prefix=/usr --buildtype=debugoptimized
10-
meson compile -C build
53+
group 'build'
54+
meson setup "$builddir" \
55+
--prefix=/usr \
56+
--buildtype=debugoptimized \
57+
"${setup_flags[@]}"
58+
meson compile -C "$builddir"
59+
endgroup
1160

1261
# test
13-
meson test -C build
62+
group 'test'
63+
meson test -C "$builddir"
64+
endgroup
1465

15-
# package
16-
meson install -C build
66+
# install
67+
if (( test_install )); then
68+
group 'install'
69+
meson install -C "$builddir"
70+
endgroup
71+
fi

0 commit comments

Comments
 (0)