The Meson Build system The Meson Build system Overview Meson is an open source build system meant to be both extremely fast, and, even more importantly, as user friendly as possible The main design point of Meson is that every moment a developer spends writing or debugging build definitions is a second wasted
The Absolute Beginners Guide to Installing and Using Meson Linux Installing Meson is just as simple as installing the compiler toolchain Debian, Ubuntu and derivatives: sudo apt install meson ninja-build Fedora, Centos, RHEL and derivatives: sudo dnf install meson ninja-build Arch: sudo pacman -S meson Windows Meson provides a standard Windows msi installer that can be downloaded from the Releases page
Manual - Meson Manual This is the user manual for Meson It currently tracks the state of Git head If you are using an older version, some of the information here might not work for you
Quickstart Guide - Meson Compiling a Meson project The most common use case of Meson is compiling code on a code base you are working on The steps to take are very simple $ cd path to source root $ meson setup builddir cd builddir $ meson compile $ meson test The only thing to note is that you need to create a separate build directory
Tutorial - Meson Tutorial This page shows from the ground up how to create a Meson build definition for a simple project Then we expand it to use external dependencies to show how easily they can be integrated into your project This tutorial has been written mostly for Linux usage It assumes that you have GTK development libraries available on the system
Getting Meson Meson releases can be downloaded from the GitHub release page, and you can run meson py from inside a release or the git repository itself without doing anything special
Command-line commands - Meson Meson is invoked using the following syntax: meson [COMMAND] [COMMAND_OPTIONS] This section describes all available commands and some of their Optional arguments
Reference manual - Meson This is the root page of the online Meson reference manual This manual is also available in a more machine readable format as a JSON documented attached to every release since 0 60 0
An in-depth tutorial - Meson An in-depth tutorial In this tutorial we set up a project with multiple targets, unit tests and dependencies between targets Our main product is a shared library called foo that is written in C++11 We are going to ignore the contents of the source files, as they are not really important from a build definition point of view The library makes use of the GLib library so we need to detect and