ci: Convert CompilerWarnings job to meson This is part of the overall move toward meson. This particular step was previously held up because the headerscheck target was not ported to meson, but this has been done a few months ago (commit e82fc27e095). This conversion is relatively straightforward. The scope of each individual build step (e.g., what features it enables, what optimization level it uses) has been maintained, except as noted.
It actually covers a bit more now, as it also compiles various test code via the testprep target. One thing we're losing is the sharing of the configure cache between the steps (gcc.cache, clang.cache). There is a way to do that in meson (meson-private/coredata.dat), but it's not meant to be used across different build directories, and so making that work might be a more significant restructuring. The overall performance of the CI runs seems to be about on par nonetheless. Bitcode for JIT inlining is no longer built in this job, since meson doesn't support it. It added little to warning coverage, and the Linux autoconf job still builds it. This backpatches commit 3ca57291ff3 to 19. Since cirrus-ci shut down, only 19 and master have CI, due to the incremental work towards a new CI system. I soon plan to backpatch CI to all versions that previously had CI. Maintenance of CI going forward will be simpler if the branches are as similar as possible. Co-authored-by: Andres Freund <[email protected]> Reviewed-by: Nazir Bilal Yavuz <[email protected]> Discussion: https://www.postgresql.org/message-id/flat/e52e2c29-4834-4c64-a200-eddcba38fb4d%40eisentraut.org Backpatch-through: 19 Branch ------ REL_19_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/fa93d7928e72f08b0eef1dc4759e24ac1b0102a0 Author: Peter Eisentraut <[email protected]> Modified Files -------------- .github/workflows/pg-ci.yml | 80 ++++++++++++++++++++++----------------- src/tools/ci/mingw-cross-file.txt | 22 +++++++++++ 2 files changed, 67 insertions(+), 35 deletions(-)
