Skip to content

Commit d8b4d85

Browse files
committed
meson: ci: wip: move compilerwarnings task to meson
1 parent f840656 commit d8b4d85

File tree

2 files changed

+61
-47
lines changed

2 files changed

+61
-47
lines changed

.cirrus.yml

Lines changed: 48 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -518,6 +518,10 @@ task:
518518
ccache_cache:
519519
folder: $CCACHE_DIR
520520

521+
ccache_stats_start_script:
522+
ccache -s
523+
ccache -z
524+
521525
setup_additional_packages_script: |
522526
#apt-get update
523527
#DEBIAN_FRONTEND=noninteractive apt-get -y install ...
@@ -526,80 +530,73 @@ task:
526530
# Test that code can be built with gcc/clang without warnings
527531
###
528532

529-
setup_script: echo "COPT=-Werror" > src/Makefile.custom
530-
531533
# Trace probes have a history of getting accidentally broken. Use the
532534
# different compilers to build with different combinations of dtrace on/off
533535
# and cassert on/off.
534536

535537
# gcc, cassert off, dtrace on
536538
always:
537539
gcc_warning_script: |
538-
time ./configure \
539-
--cache gcc.cache \
540-
--enable-dtrace \
541-
${LINUX_CONFIGURE_FEATURES} \
542-
CC="ccache gcc" CXX="ccache g++" CLANG="ccache clang"
543-
make -s -j${BUILD_JOBS} clean
544-
time make -s -j${BUILD_JOBS} world-bin
540+
mkdir build-gcc && cd build-gcc
541+
CC="ccache gcc" CXX="ccache g++" \
542+
meson setup \
543+
-Dwerror=true \
544+
-Dcassert=false \
545+
-Ddtrace=enabled \
546+
${LINUX_MESON_FEATURES} \
547+
..
548+
time ninja -j${BUILD_JOBS}
545549
546550
# gcc, cassert on, dtrace off
547551
always:
548552
gcc_a_warning_script: |
549-
time ./configure \
550-
--cache gcc.cache \
551-
--enable-cassert \
552-
${LINUX_CONFIGURE_FEATURES} \
553-
CC="ccache gcc" CXX="ccache g++" CLANG="ccache clang"
554-
make -s -j${BUILD_JOBS} clean
555-
time make -s -j${BUILD_JOBS} world-bin
553+
cd build-gcc
554+
meson configure \
555+
-Dcassert=true \
556+
-Ddtrace=disabled
557+
time ninja -j${BUILD_JOBS}
556558
557559
# clang, cassert off, dtrace off
558560
always:
559561
clang_warning_script: |
560-
time ./configure \
561-
--cache clang.cache \
562-
${LINUX_CONFIGURE_FEATURES} \
563-
CC="ccache clang" CXX="ccache clang++" CLANG="ccache clang"
564-
make -s -j${BUILD_JOBS} clean
565-
time make -s -j${BUILD_JOBS} world-bin
562+
mkdir build-clang && cd build-clang
563+
CC="ccache clang" CXX="ccache clang++" \
564+
meson setup \
565+
-Dwerror=true \
566+
-Dcassert=false \
567+
-Ddtrace=disabled \
568+
${LINUX_MESON_FEATURES} \
569+
..
570+
time ninja -j${BUILD_JOBS}
566571
567572
# clang, cassert on, dtrace on
568573
always:
569574
clang_a_warning_script: |
570-
time ./configure \
571-
--cache clang.cache \
572-
--enable-cassert \
573-
--enable-dtrace \
574-
${LINUX_CONFIGURE_FEATURES} \
575-
CC="ccache clang" CXX="ccache clang++" CLANG="ccache clang"
576-
make -s -j${BUILD_JOBS} clean
577-
time make -s -j${BUILD_JOBS} world-bin
575+
cd build-clang
576+
meson configure \
577+
-Dcassert=true \
578+
-Ddtrace=enabled
579+
time ninja -j${BUILD_JOBS}
578580
579581
# cross-compile to windows
580582
always:
581583
mingw_cross_warning_script: |
582-
time ./configure \
583-
--host=x86_64-w64-mingw32 \
584-
--enable-cassert \
585-
CC="ccache x86_64-w64-mingw32-gcc" \
586-
CXX="ccache x86_64-w64-mingw32-g++"
587-
make -s -j${BUILD_JOBS} clean
588-
time make -s -j${BUILD_JOBS} world-bin
584+
mkdir build-w64 && cd build-w64
585+
meson setup \
586+
--cross-file=../src/tools/ci/linux-mingw-w64-64bit.txt \
587+
-Dwerror=true \
588+
-Dcassert=true \
589+
..
590+
time ninja -j${BUILD_JOBS}
589591
590592
###
591593
# Verify docs can be built
592594
###
593595
# XXX: Only do this if there have been changes in doc/ since last build
594596
always:
595597
docs_build_script: |
596-
time ./configure \
597-
--cache gcc.cache \
598-
CC="ccache gcc" \
599-
CXX="ccache g++" \
600-
CLANG="ccache clang"
601-
make -s -j${BUILD_JOBS} clean
602-
time make -s -j${BUILD_JOBS} -C doc
598+
cd build-gcc
599+
time ninja docs
603600
604601
###
605602
# Verify headerscheck / cpluspluscheck succeed
@@ -612,15 +609,19 @@ task:
612609
###
613610
always:
614611
headers_headerscheck_script: |
615-
time ./configure \
612+
mkdir build-ac && cd build-ac
613+
time ../configure \
616614
${LINUX_CONFIGURE_FEATURES} \
617615
--without-icu \
618616
--quiet \
619-
CC="gcc" CXX"=g++" CLANG="clang"
620-
make -s -j${BUILD_JOBS} clean
617+
CC="gcc" CXX="g++" CLANG="clang"
618+
make -s -j${BUILD_JOBS} world-bin
621619
time make -s headerscheck EXTRAFLAGS='-fmax-errors=10'
622620
headers_cpluspluscheck_script: |
621+
cd build-ac
623622
time make -s cpluspluscheck EXTRAFLAGS='-fmax-errors=10'
624623
625624
always:
625+
ccache_stats_end_script:
626+
ccache -s
626627
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)