Skip to content

Commit ae53f21

Browse files
committed
meson: ci: wip: move compilerwarnings task to meson
1 parent 30917aa commit ae53f21

File tree

2 files changed

+61
-48
lines changed

2 files changed

+61
-48
lines changed

.cirrus.yml

Lines changed: 48 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -700,6 +700,10 @@ task:
700700
ccache_cache:
701701
folder: $CCACHE_DIR
702702

703+
ccache_stats_start_script:
704+
ccache -s
705+
ccache -z
706+
703707
setup_additional_packages_script: |
704708
#apt-get update
705709
#DEBIAN_FRONTEND=noninteractive apt-get -y install ...
@@ -708,81 +712,73 @@ task:
708712
# Test that code can be built with gcc/clang without warnings
709713
###
710714

711-
setup_script: echo "COPT=-Werror" > src/Makefile.custom
712-
713715
# Trace probes have a history of getting accidentally broken. Use the
714716
# different compilers to build with different combinations of dtrace on/off
715717
# and cassert on/off.
716718

717719
# gcc, cassert off, dtrace on
718720
always:
719721
gcc_warning_script: |
720-
time ./configure \
721-
--cache gcc.cache \
722-
--enable-dtrace \
723-
${LINUX_CONFIGURE_FEATURES} \
724-
CC="ccache gcc" CXX="ccache g++" CLANG="ccache clang"
725-
make -s -j${BUILD_JOBS} clean
726-
time make -s -j${BUILD_JOBS} world-bin
722+
mkdir build-gcc && cd build-gcc
723+
CC="ccache gcc" CXX="ccache g++" \
724+
meson setup \
725+
-Dwerror=true \
726+
-Dcassert=false \
727+
-Ddtrace=enabled \
728+
${LINUX_MESON_FEATURES} \
729+
..
730+
time ninja -j${BUILD_JOBS}
727731
728732
# gcc, cassert on, dtrace off
729733
always:
730734
gcc_a_warning_script: |
731-
time ./configure \
732-
--cache gcc.cache \
733-
--enable-cassert \
734-
${LINUX_CONFIGURE_FEATURES} \
735-
CC="ccache gcc" CXX="ccache g++" CLANG="ccache clang"
736-
make -s -j${BUILD_JOBS} clean
737-
time make -s -j${BUILD_JOBS} world-bin
735+
cd build-gcc
736+
meson configure \
737+
-Dcassert=true \
738+
-Ddtrace=disabled
739+
time ninja -j${BUILD_JOBS}
738740
739741
# clang, cassert off, dtrace off
740742
always:
741743
clang_warning_script: |
742-
time ./configure \
743-
--cache clang.cache \
744-
${LINUX_CONFIGURE_FEATURES} \
745-
CC="ccache clang" CXX="ccache clang++" CLANG="ccache clang"
746-
make -s -j${BUILD_JOBS} clean
747-
time make -s -j${BUILD_JOBS} world-bin
744+
mkdir build-clang && cd build-clang
745+
CC="ccache clang" CXX="ccache clang++" \
746+
meson setup \
747+
-Dwerror=true \
748+
-Dcassert=false \
749+
-Ddtrace=disabled \
750+
${LINUX_MESON_FEATURES} \
751+
..
752+
time ninja -j${BUILD_JOBS}
748753
749754
# clang, cassert on, dtrace on
750755
always:
751756
clang_a_warning_script: |
752-
time ./configure \
753-
--cache clang.cache \
754-
--enable-cassert \
755-
--enable-dtrace \
756-
${LINUX_CONFIGURE_FEATURES} \
757-
CC="ccache clang" CXX="ccache clang++" CLANG="ccache clang"
758-
make -s -j${BUILD_JOBS} clean
759-
time make -s -j${BUILD_JOBS} world-bin
757+
cd build-clang
758+
meson configure \
759+
-Dcassert=true \
760+
-Ddtrace=enabled
761+
time ninja -j${BUILD_JOBS}
760762
761763
# cross-compile to windows
762764
always:
763765
mingw_cross_warning_script: |
764-
time ./configure \
765-
--host=x86_64-w64-mingw32 \
766-
--enable-cassert \
767-
--without-icu \
768-
CC="ccache x86_64-w64-mingw32-gcc" \
769-
CXX="ccache x86_64-w64-mingw32-g++"
770-
make -s -j${BUILD_JOBS} clean
771-
time make -s -j${BUILD_JOBS} world-bin
766+
mkdir build-w64 && cd build-w64
767+
meson setup \
768+
--cross-file=../src/tools/ci/linux-mingw-w64-64bit.txt \
769+
-Dwerror=true \
770+
-Dcassert=true \
771+
..
772+
time ninja -j${BUILD_JOBS}
772773
773774
###
774775
# Verify docs can be built
775776
###
776777
# XXX: Only do this if there have been changes in doc/ since last build
777778
always:
778779
docs_build_script: |
779-
time ./configure \
780-
--cache gcc.cache \
781-
CC="ccache gcc" \
782-
CXX="ccache g++" \
783-
CLANG="ccache clang"
784-
make -s -j${BUILD_JOBS} clean
785-
time make -s -j${BUILD_JOBS} -C doc
780+
cd build-gcc
781+
time ninja docs
786782
787783
###
788784
# Verify headerscheck / cpluspluscheck succeed
@@ -795,15 +791,19 @@ task:
795791
###
796792
always:
797793
headers_headerscheck_script: |
798-
time ./configure \
794+
mkdir build-ac && cd build-ac
795+
time ../configure \
799796
${LINUX_CONFIGURE_FEATURES} \
800797
--without-icu \
801798
--quiet \
802-
CC="gcc" CXX"=g++" CLANG="clang"
803-
make -s -j${BUILD_JOBS} clean
799+
CC="gcc" CXX="g++" CLANG="clang"
800+
make -s -j${BUILD_JOBS} world-bin
804801
time make -s headerscheck EXTRAFLAGS='-fmax-errors=10'
805802
headers_cpluspluscheck_script: |
803+
cd build-ac
806804
time make -s cpluspluscheck EXTRAFLAGS='-fmax-errors=10'
807805
808806
always:
807+
ccache_stats_end_script:
808+
ccache -s
809809
upload_caches: ccache
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
[binaries]
2+
c = ['ccache', '/usr/bin/x86_64-w64-mingw32-gcc']
3+
cpp = ['ccache', '/usr/bin/x86_64-w64-mingw32-g++']
4+
ar = '/usr/bin/x86_64-w64-mingw32-ar'
5+
strip = '/usr/bin/x86_64-w64-mingw32-strip'
6+
pkgconfig = '/usr/bin/x86_64-w64-mingw32-pkg-config'
7+
windres = '/usr/bin/x86_64-w64-mingw32-windres'
8+
9+
[host_machine]
10+
system = 'windows'
11+
cpu_family = 'x86_64'
12+
cpu = 'x86_64'
13+
endian = 'little'

0 commit comments

Comments
 (0)