Skip to content

Meson

Karel Koci requested to merge meson into master

This switches from autotools to meson. In the end, the conversion took me about a day of work. Thus it is a prety efficient build system if I compare it with autotools (I invested days and months to get where we are right now).

The advantage of meson:

  • pretty much everything is way easier
  • configuration is defined in the same file and thus in the same location as compilation which makes it much more direct
  • adds the ability to easily pull in other projects to be built instead of need to install all dependencies to system
  • pkg-config files are generated and thus kind of no longer our thing to deal with (such as that it tracks dependencies from single location)
  • Meson's documentation is simply awesome compared to a mess of autotools

Disadvantages:

  • Valgrind support is not exactly nice so I had to implement our own way to run in valgrind
  • Flawfinder is run on all files instead of just sources because I was unable to reasonably get all source files in project (cppcheck on the other hand works even better thanks to direct integration)
  • The build has to be always in subdirectoru (out of tree) but that is probably just rather habit than an issue
  • It is something new and whole team would have to learn it and all C projects would have to be ported to it
Edited by Miroslav Hanak

Merge request reports