| 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. |