The Meson Build System
http://mesonbuild.com/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
1.9 KiB
61 lines
1.9 KiB
--- |
|
short-description: Configuring a pre-generated build directory |
|
... |
|
|
|
# Configuring a build directory |
|
|
|
Often you want to change the settings of your build after it has been |
|
generated. For example you might want to change from a debug build |
|
into a release build, set custom compiler flags, change the build |
|
options provided in your `meson_options.txt` file and so on. |
|
|
|
The main tool for this is the `meson configure` command. |
|
|
|
You invoke `meson configure` by giving it the location of your build dir. If |
|
omitted, the current working directory is used instead. Here's a |
|
sample output for a simple project. |
|
|
|
Core properties |
|
|
|
Source dir /home/jpakkane/clangdemo/2_address |
|
Build dir /home/jpakkane/clangdemo/2_address/buildmeson |
|
|
|
Core options |
|
|
|
type Build type debug |
|
strip Strip on install False |
|
coverage Coverage report False |
|
pch Precompiled headers True |
|
unity Unity build False |
|
|
|
Compiler flags |
|
|
|
cflags [] |
|
|
|
Linker flags |
|
|
|
clinkflags [] |
|
|
|
Directories |
|
|
|
installprefix Install prefix /usr/local |
|
libdir Library directory lib |
|
bindir Binary directory bin |
|
includedir Header directory include |
|
datadir Data directory share |
|
mandir Man page directory share/man |
|
localedir Locale file directory share/locale |
|
|
|
This project does not have any options |
|
|
|
These are all the options available for the current project arranged |
|
into related groups. The first column in every field is the name of |
|
the option. To set an option you use the `-D` option. For example, |
|
changing the installation prefix from `/usr/local` to `/tmp/testroot` |
|
you would issue the following command. |
|
|
|
meson configure -Dprefix=/tmp/testroot |
|
|
|
Then you would run your build command (usually `ninja`), which would |
|
cause Meson to detect that the build setup has changed and do all the |
|
work required to bring your build tree up to date.
|
|
|