|
|
|
name: run_target
|
|
|
|
returns: run_tgt
|
|
|
|
description: |
|
|
|
|
This function creates a new top-level target that runs a specified
|
|
|
|
command with the specified arguments. Like all top-level targets, this
|
|
|
|
integrates with the selected backend. For instance, you can run it as
|
|
|
|
`meson compile target_name`. Note that a run target produces no output
|
|
|
|
as far as Meson is concerned. It is only meant for tasks such as
|
|
|
|
running a code formatter or flashing an external device's firmware
|
|
|
|
with a built file.
|
|
|
|
|
|
|
|
The command is run from an *unspecified* directory, and Meson will set
|
|
|
|
three environment variables `MESON_SOURCE_ROOT`, `MESON_BUILD_ROOT`
|
|
|
|
and `MESON_SUBDIR` that specify the source directory, build directory
|
|
|
|
and subdirectory the target was defined in, respectively.
|
|
|
|
|
|
|
|
*Since 0.57.0* The template strings passed to `command` keyword arguments accept
|
|
|
|
the following special substitutions:
|
|
|
|
- `@SOURCE_ROOT@`: the path to the root of the source tree. Depending on the backend,
|
|
|
|
this may be an absolute or a relative to current workdir path.
|
|
|
|
- `@BUILD_ROOT@`: the path to the root of the build tree. Depending on the backend,
|
|
|
|
this may be an absolute or a relative to current workdir path.
|
|
|
|
- `@CURRENT_SOURCE_DIR@` *Since 0.57.1*: this is the directory where the currently
|
|
|
|
processed meson.build is located in. Depending on the backend,
|
|
|
|
this may be an absolute or a relative to current workdir path.
|
|
|
|
|
|
|
|
posargs:
|
|
|
|
target_name:
|
|
|
|
type: str
|
|
|
|
description: The name of the run target
|
|
|
|
|
|
|
|
kwargs:
|
|
|
|
command:
|
|
|
|
type: list[exe| external_program | custom_tgt | file | str]
|
|
|
|
description: |
|
|
|
|
A list containing the command to run and the arguments
|
|
|
|
to pass to it. Each list item may be a string or a target. For
|
|
|
|
instance, passing the return value of [[executable]]
|
|
|
|
as the first item will run that executable, or passing a string as
|
|
|
|
the first item will find that command in `PATH` and run it.
|
|
|
|
|
|
|
|
depends:
|
|
|
|
type: list[build_tgt | custom_tgt | custom_idx]
|
|
|
|
description: |
|
|
|
|
A list of targets that this target depends on but which
|
|
|
|
are not listed in the command array (because, for example, the
|
|
|
|
script does file globbing internally, custom_idx was not possible
|
|
|
|
as a type between 0.60 and 1.4.0).
|
|
|
|
|
|
|
|
env:
|
|
|
|
since: 0.57.0
|
|
|
|
type: env | list[str] | dict[str]
|
|
|
|
description: |
|
|
|
|
environment variables to set, such as
|
|
|
|
`{'NAME1': 'value1', 'NAME2': 'value2'}` or `['NAME1=value1', 'NAME2=value2']`,
|
|
|
|
or an [[@env]] object which allows more sophisticated environment juggling.
|