summaryrefslogtreecommitdiff
path: root/docs/markdown/Configuring-a-build-directory.md
diff options
context:
space:
mode:
authorThibault Saunier <thibault.saunier@osg.samsung.com>2017-03-29 15:03:43 -0300
committerJussi Pakkanen <jpakkane@gmail.com>2017-04-26 17:56:33 +0300
commitb371875e02cce2fb3fbb9fbb8f07eb5817ae0e8f (patch)
tree6e1a3c34b1a85479d3b9f42ccd071096e637929b /docs/markdown/Configuring-a-build-directory.md
parent7dc747ea54480c452b913e4bfe682ec67061c9bf (diff)
downloadmeson-b371875e02cce2fb3fbb9fbb8f07eb5817ae0e8f.tar.gz
docs: Import the website and wiki and build with hotdoc
This allows us to more easily have the documentation in sync with the source code as people will have to document new features etc right at the time where they implement it.
Diffstat (limited to 'docs/markdown/Configuring-a-build-directory.md')
-rw-r--r--docs/markdown/Configuring-a-build-directory.md46
1 files changed, 46 insertions, 0 deletions
diff --git a/docs/markdown/Configuring-a-build-directory.md b/docs/markdown/Configuring-a-build-directory.md
new file mode 100644
index 000000000..e887e9eee
--- /dev/null
+++ b/docs/markdown/Configuring-a-build-directory.md
@@ -0,0 +1,46 @@
+# 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 `mesonconf` script. You may also use the `mesongui` graphical application if you want. However this document describes the use of the command line client.
+
+You invoke `mesonconf` 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.
+
+ mesonconf -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.