FS#64394 - Switch to meson for buildsystem
Attached to Project:
Pacman
Opened by Allan McRae (Allan) - Tuesday, 05 November 2019, 04:52 GMT
Last edited by Allan McRae (Allan) - Thursday, 03 September 2020, 00:51 GMT
Opened by Allan McRae (Allan) - Tuesday, 05 November 2019, 04:52 GMT
Last edited by Allan McRae (Allan) - Thursday, 03 September 2020, 00:51 GMT
|
Details
This bug is to record the current state of switching to
meson for our build system.
Things I do with autotools that I can't with meson: Outstanding: * 'meson dist' does not distribute built manpages. I'm not keen on an asciidoc dep for release tarballs. (not blockers) * 'ninja uninstall' leaves behind lots and lots! Fixed: * make PY_LOG_FLAGS=--valgrind check * make update-copyright OLD=2018 NEW=2019 * repo-add does not work in the build tree * remove-remove does not get created in the build tree * Expected Fail: 0 (some of our tests do have XFAILs) |
This task depends upon
Closed by Allan McRae (Allan)
Thursday, 03 September 2020, 00:51 GMT
Reason for closing: Implemented
Additional comments about closing: https://git.archlinux.org/pacman.git/com mit/?id=454ea024383eab60295e4c4fdf2c3294 75887b2c
Thursday, 03 September 2020, 00:51 GMT
Reason for closing: Implemented
Additional comments about closing: https://git.archlinux.org/pacman.git/com mit/?id=454ea024383eab60295e4c4fdf2c3294 75887b2c
OTOH with a custom target script we could also wire this up to meson, so that running
OLD=2018 NEW=2019 ninja -C builddir copyright
would read OLD/NEW as environment variables, not make variables, and those would be interpreted outside of ninja, by the custom target script. This would be useful if we want to hand a list of meson sources to update copyrights... but currently for make, we run it on every file in the source tree matching a git grep, so I would not bother.
For PY_LOG_FLAGS=--valgrind I guess we would want to do something similar? How is this passed? Would it be sufficient to add this as a meson -Dvalgrind=true or something?
This also reduces the number of files left behind after a ninja uninstall, which is good!
PACTEST_VALGRIND=1 meson test -C builddir/
or
PACTEST_VALGRIND=1 make check