Compiling source code into libraries and executables has always been problematic, especially for cross platform projects. Typical problems in existing build systems include slow build times, undecipherable syntax, lack of support for cross compilation and so on. Some people choose to not use a build system at all but instead just write a one-off Makefile, which will usually work fine on their machine and nowhere else. All this makes software development slower than it needs to be.
The Meson build system is a new build system designed from the ground up to provide a solution for these (and other) problems. It is implemented in Python 3 and provides a simple, non-Turing complete DSL for describing the build. The project provides built-in support for common tasks such as documentation generation, building Qt apps and Python extension modules. Meson is currently seeing a lot of uptake in the Free software world with big projects such as GStreamer, parts of GNOME, Wayland and even the X server either transitioning, or very strongly considering the transition to Meson.
In this talk we go over the design of Meson, how to use it for new and existing projects and the benefits this brings, including faster compiles, less time wasted debugging the build system environment and easy access to modern software development tools and practices.