Added docs for all meson commands + corresponding unit test (#7217)
parent
a44dc67cb7
commit
399303b534
3 changed files with 718 additions and 0 deletions
@ -0,0 +1,604 @@ |
|||||||
|
# Command-line commands |
||||||
|
|
||||||
|
There are two different ways of invoking Meson. First, you can run it directly |
||||||
|
from the source tree with the command `/path/to/source/meson.py`. Meson may |
||||||
|
also be installed in which case the command is simply `meson`. In this manual |
||||||
|
we only use the latter format for simplicity. |
||||||
|
|
||||||
|
Meson is invoked using the following syntax: |
||||||
|
`meson [COMMAND] [COMMAND_OPTIONS]` |
||||||
|
|
||||||
|
This section describes all available commands and some of their Optional arguments. |
||||||
|
The most common workflow is to run [`setup`](#setup), followed by [`compile`](#compile), and then [`install`](#install). |
||||||
|
|
||||||
|
For the full list of all available options for a specific command use the following syntax: |
||||||
|
`meson COMMAND --help` |
||||||
|
|
||||||
|
### configure |
||||||
|
|
||||||
|
``` |
||||||
|
$ meson configure [-h] [--prefix PREFIX] [--bindir BINDIR] |
||||||
|
[--datadir DATADIR] [--includedir INCLUDEDIR] |
||||||
|
[--infodir INFODIR] [--libdir LIBDIR] |
||||||
|
[--libexecdir LIBEXECDIR] [--localedir LOCALEDIR] |
||||||
|
[--localstatedir LOCALSTATEDIR] [--mandir MANDIR] |
||||||
|
[--sbindir SBINDIR] [--sharedstatedir SHAREDSTATEDIR] |
||||||
|
[--sysconfdir SYSCONFDIR] |
||||||
|
[--auto-features {enabled,disabled,auto}] |
||||||
|
[--backend {ninja,vs,vs2010,vs2015,vs2017,vs2019,xcode}] |
||||||
|
[--buildtype {plain,debug,debugoptimized,release,minsize,custom}] |
||||||
|
[--debug] [--default-library {shared,static,both}] |
||||||
|
[--errorlogs] [--install-umask INSTALL_UMASK] |
||||||
|
[--layout {mirror,flat}] [--optimization {0,g,1,2,3,s}] |
||||||
|
[--stdsplit] [--strip] [--unity {on,off,subprojects}] |
||||||
|
[--unity-size UNITY_SIZE] [--warnlevel {0,1,2,3}] |
||||||
|
[--werror] |
||||||
|
[--wrap-mode {default,nofallback,nodownload,forcefallback}] |
||||||
|
[--pkg-config-path PKG_CONFIG_PATH] |
||||||
|
[--build.pkg-config-path BUILD.PKG_CONFIG_PATH] |
||||||
|
[--cmake-prefix-path CMAKE_PREFIX_PATH] |
||||||
|
[--build.cmake-prefix-path BUILD.CMAKE_PREFIX_PATH] |
||||||
|
[-D option] [--clearcache] |
||||||
|
[builddir] |
||||||
|
``` |
||||||
|
|
||||||
|
Changes options of a configured meson project. |
||||||
|
|
||||||
|
``` |
||||||
|
positional arguments: |
||||||
|
builddir |
||||||
|
|
||||||
|
optional arguments: |
||||||
|
-h, --help show this help message and exit |
||||||
|
--prefix PREFIX Installation prefix. |
||||||
|
--bindir BINDIR Executable directory. |
||||||
|
--datadir DATADIR Data file directory. |
||||||
|
--includedir INCLUDEDIR Header file directory. |
||||||
|
--infodir INFODIR Info page directory. |
||||||
|
--libdir LIBDIR Library directory. |
||||||
|
--libexecdir LIBEXECDIR Library executable directory. |
||||||
|
--localedir LOCALEDIR Locale data directory. |
||||||
|
--localstatedir LOCALSTATEDIR Localstate data directory. |
||||||
|
--mandir MANDIR Manual page directory. |
||||||
|
--sbindir SBINDIR System executable directory. |
||||||
|
--sharedstatedir SHAREDSTATEDIR Architecture-independent data directory. |
||||||
|
--sysconfdir SYSCONFDIR Sysconf data directory. |
||||||
|
--auto-features {enabled,disabled,auto} |
||||||
|
Override value of all 'auto' features |
||||||
|
(default: auto). |
||||||
|
--backend {ninja,vs,vs2010,vs2015,vs2017,vs2019,xcode} |
||||||
|
Backend to use (default: ninja). |
||||||
|
--buildtype {plain,debug,debugoptimized,release,minsize,custom} |
||||||
|
Build type to use (default: debug). |
||||||
|
--debug Debug |
||||||
|
--default-library {shared,static,both} |
||||||
|
Default library type (default: shared). |
||||||
|
--errorlogs Whether to print the logs from failing |
||||||
|
tests |
||||||
|
--install-umask INSTALL_UMASK Default umask to apply on permissions of |
||||||
|
installed files (default: 022). |
||||||
|
--layout {mirror,flat} Build directory layout (default: |
||||||
|
mirror). |
||||||
|
--optimization {0,g,1,2,3,s} Optimization level (default: 0). |
||||||
|
--stdsplit Split stdout and stderr in test logs |
||||||
|
--strip Strip targets on install |
||||||
|
--unity {on,off,subprojects} Unity build (default: off). |
||||||
|
--unity-size UNITY_SIZE Unity block size (default: (2, None, |
||||||
|
4)). |
||||||
|
--warnlevel {0,1,2,3} Compiler warning level to use (default: |
||||||
|
1). |
||||||
|
--werror Treat warnings as errors |
||||||
|
--wrap-mode {default,nofallback,nodownload,forcefallback} |
||||||
|
Wrap mode (default: default). |
||||||
|
--pkg-config-path PKG_CONFIG_PATH List of additional paths for pkg-config |
||||||
|
to search (default: []). (just for host |
||||||
|
machine) |
||||||
|
--build.pkg-config-path BUILD.PKG_CONFIG_PATH |
||||||
|
List of additional paths for pkg-config |
||||||
|
to search (default: []). (just for build |
||||||
|
machine) |
||||||
|
--cmake-prefix-path CMAKE_PREFIX_PATH |
||||||
|
List of additional prefixes for cmake to |
||||||
|
search (default: []). (just for host |
||||||
|
machine) |
||||||
|
--build.cmake-prefix-path BUILD.CMAKE_PREFIX_PATH |
||||||
|
List of additional prefixes for cmake to |
||||||
|
search (default: []). (just for build |
||||||
|
machine) |
||||||
|
-D option Set the value of an option, can be used |
||||||
|
several times to set multiple options. |
||||||
|
--clearcache Clear cached state (e.g. found |
||||||
|
dependencies) |
||||||
|
``` |
||||||
|
|
||||||
|
Most arguments are the same as in [`setup`](#setup). |
||||||
|
|
||||||
|
Note: reconfiguring project will not reset options to their default values (even if they were changed in `meson.build`). |
||||||
|
|
||||||
|
#### Examples: |
||||||
|
|
||||||
|
List all available options: |
||||||
|
``` |
||||||
|
meson configure builddir |
||||||
|
``` |
||||||
|
|
||||||
|
Change value of a single option: |
||||||
|
``` |
||||||
|
meson configure builddir -Doption=new_value |
||||||
|
``` |
||||||
|
|
||||||
|
### compile |
||||||
|
|
||||||
|
*(since 0.54.0)* |
||||||
|
|
||||||
|
``` |
||||||
|
$ meson compile [-h] [-j JOBS] [-l LOAD_AVERAGE] [--clean] [-C BUILDDIR] |
||||||
|
``` |
||||||
|
|
||||||
|
Builds a default or a specified target of a configured meson project. |
||||||
|
|
||||||
|
``` |
||||||
|
optional arguments: |
||||||
|
-h, --help show this help message and exit |
||||||
|
-j JOBS, --jobs JOBS The number of worker jobs to run (if |
||||||
|
supported). If the value is less than 1 |
||||||
|
the build program will guess. |
||||||
|
-l LOAD_AVERAGE, --load-average LOAD_AVERAGE |
||||||
|
The system load average to try to |
||||||
|
maintain (if supported) |
||||||
|
--clean Clean the build directory. |
||||||
|
-C BUILDDIR The directory containing build files to |
||||||
|
be built. |
||||||
|
``` |
||||||
|
|
||||||
|
#### Examples: |
||||||
|
|
||||||
|
Build the project: |
||||||
|
``` |
||||||
|
meson compile -C builddir |
||||||
|
``` |
||||||
|
|
||||||
|
### dist |
||||||
|
|
||||||
|
*(since 0.52.0)* |
||||||
|
|
||||||
|
``` |
||||||
|
$ meson dist [-h] [-C WD] [--formats FORMATS] [--include-subprojects] |
||||||
|
[--no-tests] |
||||||
|
``` |
||||||
|
|
||||||
|
Generates a release archive from the current source tree. |
||||||
|
|
||||||
|
``` |
||||||
|
optional arguments: |
||||||
|
-h, --help show this help message and exit |
||||||
|
-C WD directory to cd into before running |
||||||
|
--formats FORMATS Comma separated list of archive types to create. |
||||||
|
--include-subprojects Include source code of subprojects that have been used |
||||||
|
for the build. |
||||||
|
--no-tests Do not build and test generated packages. |
||||||
|
``` |
||||||
|
|
||||||
|
This creates a file called `projectname-version.tar.xz` in the build |
||||||
|
tree subdirectory `meson-dist`. This archive contains the full |
||||||
|
contents of the latest commit in revision control including all the |
||||||
|
submodules (recursively). All revision control metadata is removed. |
||||||
|
Meson then takes |
||||||
|
this archive and tests that it works by doing a full compile + test + |
||||||
|
install cycle. If all these pass, Meson will then create a SHA-256 |
||||||
|
checksum file next to the archive. |
||||||
|
|
||||||
|
**Note**: Meson behaviour is different from Autotools. The Autotools |
||||||
|
"dist" target packages up the current source tree. Meson packages |
||||||
|
the latest revision control commit. The reason for this is that it |
||||||
|
prevents developers from doing accidental releases where the |
||||||
|
distributed archive does not match any commit in revision control |
||||||
|
(especially the one tagged for the release). |
||||||
|
|
||||||
|
#### Examples: |
||||||
|
|
||||||
|
Create a release archive: |
||||||
|
``` |
||||||
|
meson dist -C builddir |
||||||
|
``` |
||||||
|
|
||||||
|
### init |
||||||
|
|
||||||
|
*(since 0.45.0)* |
||||||
|
|
||||||
|
``` |
||||||
|
$ meson init [-h] [-C WD] [-n NAME] [-e EXECUTABLE] [-d DEPS] |
||||||
|
[-l {c,cpp,cs,cuda,d,fortran,java,objc,objcpp,rust}] [-b] |
||||||
|
[--builddir BUILDDIR] [-f] [--type {executable,library}] |
||||||
|
[--version VERSION] |
||||||
|
[sourcefile [sourcefile ...]] |
||||||
|
``` |
||||||
|
|
||||||
|
Creates a basic set of build files based on a template. |
||||||
|
|
||||||
|
``` |
||||||
|
positional arguments: |
||||||
|
sourcefile source files. default: all recognized |
||||||
|
files in current directory |
||||||
|
|
||||||
|
optional arguments: |
||||||
|
-h, --help show this help message and exit |
||||||
|
-C WD directory to cd into before running |
||||||
|
-n NAME, --name NAME project name. default: name of current |
||||||
|
directory |
||||||
|
-e EXECUTABLE, --executable EXECUTABLE |
||||||
|
executable name. default: project name |
||||||
|
-d DEPS, --deps DEPS dependencies, comma-separated |
||||||
|
-l {c,cpp,cs,cuda,d,fortran,java,objc,objcpp,rust}, --language {c,cpp,cs,cuda,d,fortran,java,objc,objcpp,rust} |
||||||
|
project language. default: autodetected |
||||||
|
based on source files |
||||||
|
-b, --build build after generation |
||||||
|
--builddir BUILDDIR directory for build |
||||||
|
-f, --force force overwrite of existing files and |
||||||
|
directories. |
||||||
|
--type {executable,library} project type. default: executable based |
||||||
|
project |
||||||
|
--version VERSION project version. default: 0.1 |
||||||
|
``` |
||||||
|
|
||||||
|
#### Examples: |
||||||
|
|
||||||
|
Create a project in `sourcedir`: |
||||||
|
``` |
||||||
|
meson init -C sourcedir |
||||||
|
``` |
||||||
|
|
||||||
|
### introspect |
||||||
|
|
||||||
|
``` |
||||||
|
$ meson introspect [-h] [--ast] [--benchmarks] [--buildoptions] |
||||||
|
[--buildsystem-files] [--dependencies] |
||||||
|
[--scan-dependencies] [--installed] [--projectinfo] |
||||||
|
[--targets] [--tests] |
||||||
|
[--backend {ninja,vs,vs2010,vs2015,vs2017,vs2019,xcode}] |
||||||
|
[-a] [-i] [-f] |
||||||
|
[builddir] |
||||||
|
``` |
||||||
|
|
||||||
|
Displays information about a configured meson project. |
||||||
|
|
||||||
|
``` |
||||||
|
positional arguments: |
||||||
|
builddir The build directory |
||||||
|
|
||||||
|
optional arguments: |
||||||
|
-h, --help show this help message and exit |
||||||
|
--ast Dump the AST of the meson file. |
||||||
|
--benchmarks List all benchmarks. |
||||||
|
--buildoptions List all build options. |
||||||
|
--buildsystem-files List files that make up the build |
||||||
|
system. |
||||||
|
--dependencies List external dependencies. |
||||||
|
--scan-dependencies Scan for dependencies used in the |
||||||
|
meson.build file. |
||||||
|
--installed List all installed files and |
||||||
|
directories. |
||||||
|
--projectinfo Information about projects. |
||||||
|
--targets List top level targets. |
||||||
|
--tests List all unit tests. |
||||||
|
--backend {ninja,vs,vs2010,vs2015,vs2017,vs2019,xcode} |
||||||
|
The backend to use for the |
||||||
|
--buildoptions introspection. |
||||||
|
-a, --all Print all available information. |
||||||
|
-i, --indent Enable pretty printed JSON. |
||||||
|
-f, --force-object-output Always use the new JSON format for |
||||||
|
multiple entries (even for 0 and 1 |
||||||
|
introspection commands) |
||||||
|
``` |
||||||
|
|
||||||
|
#### Examples: |
||||||
|
|
||||||
|
Display basic information about a configured project in `builddir`: |
||||||
|
``` |
||||||
|
meson introspect builddir |
||||||
|
``` |
||||||
|
|
||||||
|
### install |
||||||
|
|
||||||
|
*(since 0.47.0)* |
||||||
|
|
||||||
|
``` |
||||||
|
$ meson install [-h] [-C WD] [--no-rebuild] [--only-changed] [--quiet] |
||||||
|
``` |
||||||
|
|
||||||
|
Installs the project to the prefix specified in `setup`. |
||||||
|
|
||||||
|
``` |
||||||
|
optional arguments: |
||||||
|
-h, --help show this help message and exit |
||||||
|
-C WD directory to cd into before running |
||||||
|
--no-rebuild Do not rebuild before installing. |
||||||
|
--only-changed Only overwrite files that are older than the copied file. |
||||||
|
--quiet Do not print every file that was installed. |
||||||
|
``` |
||||||
|
|
||||||
|
See [the installation documentation](Installing.md) for more info. |
||||||
|
|
||||||
|
#### Examples: |
||||||
|
|
||||||
|
Install project to `prefix` (see [`setup`](#setup)): |
||||||
|
``` |
||||||
|
meson install -C builddir |
||||||
|
``` |
||||||
|
|
||||||
|
Install project to `$DESTDIR/prefix`: |
||||||
|
``` |
||||||
|
DESTDIR=/path/to/staging/area meson install -C builddir |
||||||
|
``` |
||||||
|
|
||||||
|
### rewrite |
||||||
|
|
||||||
|
*(since 0.50.0)* |
||||||
|
|
||||||
|
``` |
||||||
|
$ meson rewrite [-h] [-s SRCDIR] [-V] [-S] |
||||||
|
{target,kwargs,default-options,command} ... |
||||||
|
``` |
||||||
|
|
||||||
|
Modifies the meson project. |
||||||
|
|
||||||
|
``` |
||||||
|
optional arguments: |
||||||
|
-h, --help show this help message and exit |
||||||
|
-s SRCDIR, --sourcedir SRCDIR Path to source directory. |
||||||
|
-V, --verbose Enable verbose output |
||||||
|
-S, --skip-errors Skip errors instead of aborting |
||||||
|
|
||||||
|
Rewriter commands: |
||||||
|
Rewrite command to execute |
||||||
|
|
||||||
|
{target,kwargs,default-options,command} |
||||||
|
target Modify a target |
||||||
|
kwargs Modify keyword arguments |
||||||
|
default-options Modify the project default options |
||||||
|
command Execute a JSON array of commands |
||||||
|
``` |
||||||
|
|
||||||
|
See [the meson file rewriter documentation](Rewriter.md) for more info. |
||||||
|
|
||||||
|
### setup |
||||||
|
|
||||||
|
``` |
||||||
|
$ meson setup [-h] [--prefix PREFIX] [--bindir BINDIR] [--datadir DATADIR] |
||||||
|
[--includedir INCLUDEDIR] [--infodir INFODIR] |
||||||
|
[--libdir LIBDIR] [--libexecdir LIBEXECDIR] |
||||||
|
[--localedir LOCALEDIR] [--localstatedir LOCALSTATEDIR] |
||||||
|
[--mandir MANDIR] [--sbindir SBINDIR] |
||||||
|
[--sharedstatedir SHAREDSTATEDIR] [--sysconfdir SYSCONFDIR] |
||||||
|
[--auto-features {enabled,disabled,auto}] |
||||||
|
[--backend {ninja,vs,vs2010,vs2015,vs2017,vs2019,xcode}] |
||||||
|
[--buildtype {plain,debug,debugoptimized,release,minsize,custom}] |
||||||
|
[--debug] [--default-library {shared,static,both}] |
||||||
|
[--errorlogs] [--install-umask INSTALL_UMASK] |
||||||
|
[--layout {mirror,flat}] [--optimization {0,g,1,2,3,s}] |
||||||
|
[--stdsplit] [--strip] [--unity {on,off,subprojects}] |
||||||
|
[--unity-size UNITY_SIZE] [--warnlevel {0,1,2,3}] [--werror] |
||||||
|
[--wrap-mode {default,nofallback,nodownload,forcefallback}] |
||||||
|
[--pkg-config-path PKG_CONFIG_PATH] |
||||||
|
[--build.pkg-config-path BUILD.PKG_CONFIG_PATH] |
||||||
|
[--cmake-prefix-path CMAKE_PREFIX_PATH] |
||||||
|
[--build.cmake-prefix-path BUILD.CMAKE_PREFIX_PATH] |
||||||
|
[-D option] [--native-file NATIVE_FILE] |
||||||
|
[--cross-file CROSS_FILE] [-v] [--fatal-meson-warnings] |
||||||
|
[--reconfigure] [--wipe] |
||||||
|
[builddir] [sourcedir] |
||||||
|
``` |
||||||
|
|
||||||
|
Configures a build directory for the meson project. |
||||||
|
|
||||||
|
This is the default meson command (invoked if there was no COMMAND supplied). |
||||||
|
|
||||||
|
``` |
||||||
|
positional arguments: |
||||||
|
builddir |
||||||
|
sourcedir |
||||||
|
|
||||||
|
optional arguments: |
||||||
|
-h, --help show this help message and exit |
||||||
|
--prefix PREFIX Installation prefix. |
||||||
|
--bindir BINDIR Executable directory. |
||||||
|
--datadir DATADIR Data file directory. |
||||||
|
--includedir INCLUDEDIR Header file directory. |
||||||
|
--infodir INFODIR Info page directory. |
||||||
|
--libdir LIBDIR Library directory. |
||||||
|
--libexecdir LIBEXECDIR Library executable directory. |
||||||
|
--localedir LOCALEDIR Locale data directory. |
||||||
|
--localstatedir LOCALSTATEDIR Localstate data directory. |
||||||
|
--mandir MANDIR Manual page directory. |
||||||
|
--sbindir SBINDIR System executable directory. |
||||||
|
--sharedstatedir SHAREDSTATEDIR Architecture-independent data directory. |
||||||
|
--sysconfdir SYSCONFDIR Sysconf data directory. |
||||||
|
--auto-features {enabled,disabled,auto} |
||||||
|
Override value of all 'auto' features |
||||||
|
(default: auto). |
||||||
|
--backend {ninja,vs,vs2010,vs2015,vs2017,vs2019,xcode} |
||||||
|
Backend to use (default: ninja). |
||||||
|
--buildtype {plain,debug,debugoptimized,release,minsize,custom} |
||||||
|
Build type to use (default: debug). |
||||||
|
--debug Debug |
||||||
|
--default-library {shared,static,both} |
||||||
|
Default library type (default: shared). |
||||||
|
--errorlogs Whether to print the logs from failing |
||||||
|
tests |
||||||
|
--install-umask INSTALL_UMASK Default umask to apply on permissions of |
||||||
|
installed files (default: 022). |
||||||
|
--layout {mirror,flat} Build directory layout (default: |
||||||
|
mirror). |
||||||
|
--optimization {0,g,1,2,3,s} Optimization level (default: 0). |
||||||
|
--stdsplit Split stdout and stderr in test logs |
||||||
|
--strip Strip targets on install |
||||||
|
--unity {on,off,subprojects} Unity build (default: off). |
||||||
|
--unity-size UNITY_SIZE Unity block size (default: (2, None, |
||||||
|
4)). |
||||||
|
--warnlevel {0,1,2,3} Compiler warning level to use (default: |
||||||
|
1). |
||||||
|
--werror Treat warnings as errors |
||||||
|
--wrap-mode {default,nofallback,nodownload,forcefallback} |
||||||
|
Wrap mode (default: default). |
||||||
|
--pkg-config-path PKG_CONFIG_PATH List of additional paths for pkg-config |
||||||
|
to search (default: []). (just for host |
||||||
|
machine) |
||||||
|
--build.pkg-config-path BUILD.PKG_CONFIG_PATH |
||||||
|
List of additional paths for pkg-config |
||||||
|
to search (default: []). (just for build |
||||||
|
machine) |
||||||
|
--cmake-prefix-path CMAKE_PREFIX_PATH |
||||||
|
List of additional prefixes for cmake to |
||||||
|
search (default: []). (just for host |
||||||
|
machine) |
||||||
|
--build.cmake-prefix-path BUILD.CMAKE_PREFIX_PATH |
||||||
|
List of additional prefixes for cmake to |
||||||
|
search (default: []). (just for build |
||||||
|
machine) |
||||||
|
-D option Set the value of an option, can be used |
||||||
|
several times to set multiple options. |
||||||
|
--native-file NATIVE_FILE File containing overrides for native |
||||||
|
compilation environment. |
||||||
|
--cross-file CROSS_FILE File describing cross compilation |
||||||
|
environment. |
||||||
|
-v, --version show program's version number and exit |
||||||
|
--fatal-meson-warnings Make all Meson warnings fatal |
||||||
|
--reconfigure Set options and reconfigure the project. |
||||||
|
Useful when new options have been added |
||||||
|
to the project and the default value is |
||||||
|
not working. |
||||||
|
--wipe Wipe build directory and reconfigure |
||||||
|
using previous command line options. |
||||||
|
Useful when build directory got |
||||||
|
corrupted, or when rebuilding with a |
||||||
|
newer version of meson. |
||||||
|
``` |
||||||
|
|
||||||
|
See [meson introduction page](Running-Meson.md#configuring-the-build-directory) for more info. |
||||||
|
|
||||||
|
#### Examples: |
||||||
|
|
||||||
|
Configures `builddir` with default values: |
||||||
|
``` |
||||||
|
meson setup builddir |
||||||
|
``` |
||||||
|
|
||||||
|
### subprojects |
||||||
|
|
||||||
|
*(since 0.49.0)* |
||||||
|
|
||||||
|
``` |
||||||
|
$ meson subprojects [-h] {update,checkout,download,foreach} ... |
||||||
|
``` |
||||||
|
|
||||||
|
Manages subprojects of the meson project. |
||||||
|
|
||||||
|
``` |
||||||
|
optional arguments: |
||||||
|
-h, --help show this help message and exit |
||||||
|
|
||||||
|
Commands: |
||||||
|
{update,checkout,download,foreach} |
||||||
|
update Update all subprojects from wrap files |
||||||
|
checkout Checkout a branch (git only) |
||||||
|
download Ensure subprojects are fetched, even if |
||||||
|
not in use. Already downloaded subprojects |
||||||
|
are not modified. This can be used to pre- |
||||||
|
fetch all subprojects and avoid downloads |
||||||
|
during configure. |
||||||
|
foreach Execute a command in each subproject |
||||||
|
directory. |
||||||
|
``` |
||||||
|
|
||||||
|
### test |
||||||
|
|
||||||
|
``` |
||||||
|
$ meson test [-h] [--repeat REPEAT] [--no-rebuild] [--gdb] |
||||||
|
[--gdb-path GDB_PATH] [--list] [--wrapper WRAPPER] [-C WD] |
||||||
|
[--suite SUITE] [--no-suite SUITE] [--no-stdsplit] |
||||||
|
[--print-errorlogs] [--benchmark] [--logbase LOGBASE] |
||||||
|
[--num-processes NUM_PROCESSES] [-v] [-q] |
||||||
|
[-t TIMEOUT_MULTIPLIER] [--setup SETUP] |
||||||
|
[--test-args TEST_ARGS] |
||||||
|
[args [args ...]] |
||||||
|
``` |
||||||
|
|
||||||
|
Run tests for the configure meson project. |
||||||
|
|
||||||
|
``` |
||||||
|
positional arguments: |
||||||
|
args Optional list of tests to run |
||||||
|
|
||||||
|
optional arguments: |
||||||
|
-h, --help show this help message and exit |
||||||
|
--repeat REPEAT Number of times to run the tests. |
||||||
|
--no-rebuild Do not rebuild before running tests. |
||||||
|
--gdb Run test under gdb. |
||||||
|
--gdb-path GDB_PATH Path to the gdb binary (default: gdb). |
||||||
|
--list List available tests. |
||||||
|
--wrapper WRAPPER wrapper to run tests with (e.g. |
||||||
|
Valgrind) |
||||||
|
-C WD directory to cd into before running |
||||||
|
--suite SUITE Only run tests belonging to the given |
||||||
|
suite. |
||||||
|
--no-suite SUITE Do not run tests belonging to the given |
||||||
|
suite. |
||||||
|
--no-stdsplit Do not split stderr and stdout in test |
||||||
|
logs. |
||||||
|
--print-errorlogs Whether to print failing tests' logs. |
||||||
|
--benchmark Run benchmarks instead of tests. |
||||||
|
--logbase LOGBASE Base name for log file. |
||||||
|
--num-processes NUM_PROCESSES How many parallel processes to use. |
||||||
|
-v, --verbose Do not redirect stdout and stderr |
||||||
|
-q, --quiet Produce less output to the terminal. |
||||||
|
-t TIMEOUT_MULTIPLIER, --timeout-multiplier TIMEOUT_MULTIPLIER |
||||||
|
Define a multiplier for test timeout, |
||||||
|
for example when running tests in |
||||||
|
particular conditions they might take |
||||||
|
more time to execute. |
||||||
|
--setup SETUP Which test setup to use. |
||||||
|
--test-args TEST_ARGS Arguments to pass to the specified |
||||||
|
test(s) or all tests |
||||||
|
``` |
||||||
|
|
||||||
|
See [the unit test documentation](Unit-tests.md) for more info. |
||||||
|
|
||||||
|
#### Examples: |
||||||
|
|
||||||
|
Run tests for the project: |
||||||
|
``` |
||||||
|
meson test -C builddir |
||||||
|
``` |
||||||
|
|
||||||
|
Run only `specific_test_1` and `specific_test_2`: |
||||||
|
``` |
||||||
|
meson test -C builddir specific_test_1 specific_test_2 |
||||||
|
``` |
||||||
|
|
||||||
|
### wrap |
||||||
|
|
||||||
|
``` |
||||||
|
$ meson wrap [-h] {list,search,install,update,info,status,promote} ... |
||||||
|
``` |
||||||
|
|
||||||
|
An utility to manage WrapDB dependencies. |
||||||
|
|
||||||
|
``` |
||||||
|
optional arguments: |
||||||
|
-h, --help show this help message and exit |
||||||
|
|
||||||
|
Commands: |
||||||
|
{list,search,install,update,info,status,promote} |
||||||
|
list show all available projects |
||||||
|
search search the db by name |
||||||
|
install install the specified project |
||||||
|
update update the project to its newest |
||||||
|
available release |
||||||
|
info show available versions of a project |
||||||
|
status show installed and available versions of |
||||||
|
your projects |
||||||
|
promote bring a subsubproject up to the master |
||||||
|
project |
||||||
|
``` |
||||||
|
|
||||||
|
See [the WrapDB tool documentation](Using-wraptool.md) for more info. |
Loading…
Reference in new issue