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.
Subpages:
Overview – Overview of the Meson build system
Running Meson – Building a project with Meson
Built-in options – Built-in options to configure project properties
Using with Visual Studio – How to use Meson in Visual Studio
Meson sample – Simple project step by step explanation
Syntax – Syntax and structure of Meson files
Cross and Native File reference
Persistent native environments – Setting up native compilation
Build targets – Definition of build targets
Include directories – Instructions on handling include directories
Installing – Installing targets
Adding arguments – Adding compiler arguments
Configuration – Build-time configuration options
Dependencies – Dependencies for external libraries and frameworks
Threads – Enabling thread support
External commands – Running external commands
Precompiled headers – Using precompiled headers to reduce compilation time
Unity builds – Unity builds are a technique for reducing build times
Feature autodetection – Auto-detection of features like ccache and code coverage
Generating sources – Generation of source files before compilation
Unit tests – Meson's own unit-test system
Cross compilation – Setting up cross-compilation
Localisation – Localization with GNU Gettext
Build options – Build options to configure project properties
Subprojects – Using Meson projects as subprojects within other Meson projects
Disabling parts of the build – Disabling options
clang-format – Code formatting
Modules – Meson modules for common build operations
Java – Compiling Java programs
Vala – Compiling Vala and Genie programs
D – Compiling D sources
Cython – Support for Cython in Meson
Rust – Working with Rust in Meson
IDE integration – Meson's API to integrate Meson support into an IDE
Custom build targets – Build targets for custom languages or corner-cases
Build system converters – Converting other build systems to Meson
Configuring a build directory – Configuring a pre-generated build directory
Run targets – Targets to run external commands
Creating releases – Creating releases
Creating OSX packages – Tools to create OS X packages
Creating Linux binaries – Creating universal Linux binaries
Project templates – Project templates
The results of the search are