aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2017-05-03 19:38:41 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2017-05-03 21:00:36 +1000
commit7ec6e6df2013aa65f99e0183c9d36b3ef3b7ab0e (patch)
tree0ca0d21a4f64affdd2d56007f669167b24e15fce /docs
parent71f0a63fb20c14cee14a211d6c6c8e6abc247117 (diff)
downloadmeson-7ec6e6df2013aa65f99e0183c9d36b3ef3b7ab0e.zip
meson-7ec6e6df2013aa65f99e0183c9d36b3ef3b7ab0e.tar.gz
meson-7ec6e6df2013aa65f99e0183c9d36b3ef3b7ab0e.tar.bz2
docs: add a short description for all top pages in the Manual
Diffstat (limited to 'docs')
-rw-r--r--docs/markdown/Adding-arguments.md4
-rw-r--r--docs/markdown/Build-options.md4
-rw-r--r--docs/markdown/Build-system-converters.md4
-rw-r--r--docs/markdown/Configuration.md4
-rw-r--r--docs/markdown/Configuring-a-build-directory.md4
-rw-r--r--docs/markdown/Creating-Linux-binaries.md4
-rw-r--r--docs/markdown/Creating-OSX-packages.md4
-rw-r--r--docs/markdown/Cross-compilation.md4
-rw-r--r--docs/markdown/Custom-build-targets.md4
-rw-r--r--docs/markdown/Dependencies.md4
-rw-r--r--docs/markdown/External-commands.md4
-rw-r--r--docs/markdown/Feature-autodetection.md4
-rw-r--r--docs/markdown/Generating-sources.md4
-rw-r--r--docs/markdown/IDE-integration.md4
-rw-r--r--docs/markdown/Include-directories.md4
-rw-r--r--docs/markdown/Installing.md4
-rw-r--r--docs/markdown/Java.md1
-rw-r--r--docs/markdown/Localisation.md4
-rw-r--r--docs/markdown/Modules.md4
-rw-r--r--docs/markdown/Precompiled-headers.md4
-rw-r--r--docs/markdown/Run-targets.md4
-rw-r--r--docs/markdown/Subprojects.md4
-rw-r--r--docs/markdown/Threads.md4
-rw-r--r--docs/markdown/Unit-tests.md4
-rw-r--r--docs/markdown/Unity-builds.md4
-rw-r--r--docs/markdown/Vala.md1
26 files changed, 98 insertions, 0 deletions
diff --git a/docs/markdown/Adding-arguments.md b/docs/markdown/Adding-arguments.md
index 80f02d9..6067377 100644
--- a/docs/markdown/Adding-arguments.md
+++ b/docs/markdown/Adding-arguments.md
@@ -1,3 +1,7 @@
+---
+short-description: Adding compiler arguments
+...
+
# Adding arguments
Often you need to specify extra compiler arguments. Meson provides two different ways to achieve this: global arguments and per-target arguments.
diff --git a/docs/markdown/Build-options.md b/docs/markdown/Build-options.md
index 64e2d38..6029a2c 100644
--- a/docs/markdown/Build-options.md
+++ b/docs/markdown/Build-options.md
@@ -1,3 +1,7 @@
+---
+short-description: Build options to configure project properties
+...
+
# Build options
Most non-trivial builds require user-settable options. As an example a program may have two different data backends that are selectable at build time. Meson provides for this by having a option definition file. Its name is `meson_options.txt` and it is placed at the root of your source tree.
diff --git a/docs/markdown/Build-system-converters.md b/docs/markdown/Build-system-converters.md
index f4ee501..6c81658 100644
--- a/docs/markdown/Build-system-converters.md
+++ b/docs/markdown/Build-system-converters.md
@@ -1,3 +1,7 @@
+---
+short-description: Converting other build systems to Meson
+...
+
# Build system converters
Moving from one build system into another includes a fair bit of work. To make things easier, Meson provides scripts to convert other build systems into Meson. At the time of writing, scripts for CMake and autotools exist. It can be found in the `tools` subdirectory in Meson's source tree.
diff --git a/docs/markdown/Configuration.md b/docs/markdown/Configuration.md
index 037bcbd..70649d7 100644
--- a/docs/markdown/Configuration.md
+++ b/docs/markdown/Configuration.md
@@ -1,3 +1,7 @@
+---
+short-description: Build-time configuration options
+...
+
# Configuration
If there are multiple configuration options, passing them through compiler flags becomes very burdensome. It also makes the configuration settings hard to inspect. To make things easier, Meson supports the generation of configure files. This feature is similar to one found in other build systems such as CMake.
diff --git a/docs/markdown/Configuring-a-build-directory.md b/docs/markdown/Configuring-a-build-directory.md
index e887e9e..c7aa913 100644
--- a/docs/markdown/Configuring-a-build-directory.md
+++ b/docs/markdown/Configuring-a-build-directory.md
@@ -1,3 +1,7 @@
+---
+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.
diff --git a/docs/markdown/Creating-Linux-binaries.md b/docs/markdown/Creating-Linux-binaries.md
index 29d68ec..8e9fb60 100644
--- a/docs/markdown/Creating-Linux-binaries.md
+++ b/docs/markdown/Creating-Linux-binaries.md
@@ -1,3 +1,7 @@
+---
+short-description: Creating universal Linux binaries
+...
+
# Creating Linux binaries
Creating Linux binaries that can be downloaded and run on any distro (like .dmg packages for OSX or .exe installers for Windows) has traditionally been difficult. This is even more tricky if you want to use modern compilers and features, which is especially desired in game development. There is still no simple turn key solution for this problem but with a bit of setup it can be relatively straightforward.
diff --git a/docs/markdown/Creating-OSX-packages.md b/docs/markdown/Creating-OSX-packages.md
index 8faf568..4a4612e 100644
--- a/docs/markdown/Creating-OSX-packages.md
+++ b/docs/markdown/Creating-OSX-packages.md
@@ -1,3 +1,7 @@
+---
+short-description: Tools to create OS X packages
+...
+
# Creating OSX packages
Meson does not have native support for building OSX packages but it does provide all the tools you need to create one yourself. The reason for this is that it is a very hard task to write a system that provides for all the different ways to do that but it is very easy to write simple scripts for each application.
diff --git a/docs/markdown/Cross-compilation.md b/docs/markdown/Cross-compilation.md
index b5df8b3..21f418b 100644
--- a/docs/markdown/Cross-compilation.md
+++ b/docs/markdown/Cross-compilation.md
@@ -1,3 +1,7 @@
+---
+short-description: Setting up cross-compilation
+...
+
# Cross compilation
Meson has full support for cross compilation. Since cross compiling is more complicated than native building,
diff --git a/docs/markdown/Custom-build-targets.md b/docs/markdown/Custom-build-targets.md
index 0c34b1f..a425f8c 100644
--- a/docs/markdown/Custom-build-targets.md
+++ b/docs/markdown/Custom-build-targets.md
@@ -1,3 +1,7 @@
+---
+short-description: Build targets for custom languages or corner-cases
+...
+
# Custom build targets
While Meson tries to support as many languages and tools as possible, there is no possible way for it to cover all corner cases. For these cases it permits you to define custom build targets. Here is how one would use it.
diff --git a/docs/markdown/Dependencies.md b/docs/markdown/Dependencies.md
index c57b9d4..3c07de9 100644
--- a/docs/markdown/Dependencies.md
+++ b/docs/markdown/Dependencies.md
@@ -1,3 +1,7 @@
+---
+short-description: Dependencies for external libraries and frameworks
+...
+
# Dependencies
Very few applications are fully self-contained, but rather they use external libraries and frameworks to do their work. Meson makes it very easy to find and use external dependencies. Here is how one would use the Zlib compression library.
diff --git a/docs/markdown/External-commands.md b/docs/markdown/External-commands.md
index af19794..f597b0c 100644
--- a/docs/markdown/External-commands.md
+++ b/docs/markdown/External-commands.md
@@ -1,3 +1,7 @@
+---
+short-description: Running external commands
+...
+
# External commands
As a part of the software configuration, you may want to get extra data by running external commands. The basic syntax is the following.
diff --git a/docs/markdown/Feature-autodetection.md b/docs/markdown/Feature-autodetection.md
index b6a4f41..8de4086 100644
--- a/docs/markdown/Feature-autodetection.md
+++ b/docs/markdown/Feature-autodetection.md
@@ -1,3 +1,7 @@
+---
+short-description: Auto-detection of features like ccache and code coverage
+...
+
# Feature autodetection
Meson is designed for high productivity. It tries to do as many things automatically as it possibly can.
diff --git a/docs/markdown/Generating-sources.md b/docs/markdown/Generating-sources.md
index 82b043d..630b7e9 100644
--- a/docs/markdown/Generating-sources.md
+++ b/docs/markdown/Generating-sources.md
@@ -1,3 +1,7 @@
+---
+short-description: Generation of source files before compilation
+...
+
# Generating sources
Sometimes source files need to be preprocessed before they are passed to the actual compiler. As an example you might want build an IDL compiler and then run some files through that to generate actual source files. In Meson this is done with [`generator()`](https://github.com/mesonbuild/meson/wiki/Reference-manual#generator) or [`custom_target()`](https://github.com/mesonbuild/meson/wiki/Reference-manual#custom_target).
diff --git a/docs/markdown/IDE-integration.md b/docs/markdown/IDE-integration.md
index 7e046c6..46e96c0 100644
--- a/docs/markdown/IDE-integration.md
+++ b/docs/markdown/IDE-integration.md
@@ -1,3 +1,7 @@
+---
+short-description: Meson's API to integrate Meson support into an IDE
+...
+
# IDE integration
Meson has exporters for Visual Studio and XCode, but writing a custom backend for every IDE out there is not a scalable approach. To solve this problem, Meson provides an API that makes it easy for any IDE or build tool to integrate Meson builds and provide an experience comparable to a solution native to the IDE.
diff --git a/docs/markdown/Include-directories.md b/docs/markdown/Include-directories.md
index 949bf2c..c1d4ac1 100644
--- a/docs/markdown/Include-directories.md
+++ b/docs/markdown/Include-directories.md
@@ -1,3 +1,7 @@
+---
+short-description: Instructions on handling include directories
+...
+
# Include directories
Most `C`/`C++` projects have headers in different directories than sources. Thus you need to specify include directories. Let's assume that we are at some subdirectory and wish to add its `include` subdirectory to some target's search path. To create a include directory object we do this:
diff --git a/docs/markdown/Installing.md b/docs/markdown/Installing.md
index 40dcd8d..f186889 100644
--- a/docs/markdown/Installing.md
+++ b/docs/markdown/Installing.md
@@ -1,3 +1,7 @@
+---
+short-description: Installing targets
+...
+
# Installing
By default Meson will not install anything. Build targets can be installed by tagging them as installable in the definition.
diff --git a/docs/markdown/Java.md b/docs/markdown/Java.md
index 8501bdf..9b89304 100644
--- a/docs/markdown/Java.md
+++ b/docs/markdown/Java.md
@@ -1,5 +1,6 @@
---
title: Java
+short-description: Compiling Java programs
...
# Compiling Java applications
diff --git a/docs/markdown/Localisation.md b/docs/markdown/Localisation.md
index 9fde970..f342ecc 100644
--- a/docs/markdown/Localisation.md
+++ b/docs/markdown/Localisation.md
@@ -1,3 +1,7 @@
+---
+short-description: Localization with GNU Gettext
+...
+
# Localisation
Localising your application with GNU Gettext takes a little effort but is quite straightforward. This documentation assumes that you have a `po` subdirectory at your project root directory that contains all the localisation info.
diff --git a/docs/markdown/Modules.md b/docs/markdown/Modules.md
index e594383..c354169 100644
--- a/docs/markdown/Modules.md
+++ b/docs/markdown/Modules.md
@@ -1,3 +1,7 @@
+---
+short-description: Meson modules for common build operations
+...
+
# Modules
In addition to core language features, Meson also provides a module system aimed at providing helper methods for common build operations. Using modules is simple, first you import them:
diff --git a/docs/markdown/Precompiled-headers.md b/docs/markdown/Precompiled-headers.md
index a7bcbf8..cae0bd1 100644
--- a/docs/markdown/Precompiled-headers.md
+++ b/docs/markdown/Precompiled-headers.md
@@ -1,3 +1,7 @@
+---
+short-description: Using precompiled headers to reduce compilation time
+...
+
# Precompiled headers
Parsing header files of system libraries is surprisingly expensive. A typical source file has less than one thousand lines of code. In contrast the headers of large libraries can be tens of thousands of lines. This is especially problematic with C++, where header-only libraries are common and they may contain extremely complex code. This makes them slow to compile.
diff --git a/docs/markdown/Run-targets.md b/docs/markdown/Run-targets.md
index 86639ab..38129a6 100644
--- a/docs/markdown/Run-targets.md
+++ b/docs/markdown/Run-targets.md
@@ -1,3 +1,7 @@
+---
+short-description: Targets to run external commands
+...
+
# Run targets
Sometimes you need to have a target that just runs an external command. As an example you might have a build target that reformats your source code, runs `cppcheck` or something similar. In Meson this is accomplished with a so called *run target*.
diff --git a/docs/markdown/Subprojects.md b/docs/markdown/Subprojects.md
index 0318e79..b4e0925 100644
--- a/docs/markdown/Subprojects.md
+++ b/docs/markdown/Subprojects.md
@@ -1,3 +1,7 @@
+---
+short-description: Using meson projects as subprojects within other meson projects
+...
+
# Subprojects
Some platforms do not provide a native packaging system. In these cases it is common to bundle all third party libraries in your source tree. This is usually frowned upon because it makes it hard to add these kinds of projects into e.g. those Linux distributions that forbid bundled libraries.
diff --git a/docs/markdown/Threads.md b/docs/markdown/Threads.md
index d4f1bca..1bf9f83 100644
--- a/docs/markdown/Threads.md
+++ b/docs/markdown/Threads.md
@@ -1,3 +1,7 @@
+---
+short-description: Enabling thread support
+...
+
# Threads
Meson has a very simple notational shorthand for enabling thread support on your build targets. First you obtain the thread dependency object like this:
diff --git a/docs/markdown/Unit-tests.md b/docs/markdown/Unit-tests.md
index d5ef77e..83c3712 100644
--- a/docs/markdown/Unit-tests.md
+++ b/docs/markdown/Unit-tests.md
@@ -1,3 +1,7 @@
+---
+short-description: Meson's own unit-test system
+...
+
# Unit tests
Meson comes with a fully functional unit test system. To use it simply build an executable and then use it in a test.
diff --git a/docs/markdown/Unity-builds.md b/docs/markdown/Unity-builds.md
index f1f718e..9f939f5 100644
--- a/docs/markdown/Unity-builds.md
+++ b/docs/markdown/Unity-builds.md
@@ -1,3 +1,7 @@
+---
+short-description: Unity builds are a technique for reducing build times
+...
+
# Unity builds
Unity builds are a technique for cutting down build times. The way it works is relatively straightforward. Suppose we have source files `src1.c`, `src2.c` and `src3.c`. Normally we would run the compiler three times, once for each file. In a unity build we instead compile all these sources in a single unit. The simplest approach is to create a new source file that looks like this.
diff --git a/docs/markdown/Vala.md b/docs/markdown/Vala.md
index 0a6bc81..259ebd1 100644
--- a/docs/markdown/Vala.md
+++ b/docs/markdown/Vala.md
@@ -1,5 +1,6 @@
---
title: Vala
+short-description: Compiling Vala programs
...
# Compiling Vala applications