name: install_data
returns: void
description: |
  Installs files from the source tree that are listed as positional arguments.
  Please note that this can only install static files from the source tree.
  Generated files are installed via the `install_dir:` kwarg on the respective
  generators, such as `custom_target()` or `configure_file()`.

  See [Installing](Installing.md) for more examples.

varargs:
  name: file
  type: file | str
  description: Files to install.

warnings:
  - the `install_mode` kwarg ignored integer values between 0.59.0 -- 1.1.0.
  - an omitted `install_dir` kwarg did not work correctly inside of a subproject until 1.3.0.
  - an omitted `install_dir` kwarg did not work correctly when combined with the `preserve_path` kwarg until 1.3.0.

kwargs:
  install_dir:
    type: str
    description: |
      The absolute or relative path to the installation directory.
      If this is a relative path, it is assumed to be relative to the prefix.

      If omitted, the directory defaults to `{datadir}/{projectname}` *(since 0.45.0)*.

  install_mode:
    type: array[str | int]
    since: 0.38.0
    description: |
      specify the file mode in symbolic format and
      optionally the owner/uid and group/gid for the installed files. For
      example:

      `install_mode: 'rw-r--r--'` for just the file mode

      `install_mode: ['rw-r--r--', 'nobody', 'nogroup']` for the file mode and the user/group

      `install_mode: ['rw-r-----', 0, 0]` for the file mode and uid/gid

      To leave any of these three as the default, specify `false`.

  install_tag:
    type: str
    since: 0.60.0
    description: |
      A string used by the `meson install --tags` command
      to install only a subset of the files. By default these files have no install
      tag which means they are not being installed when `--tags` argument is specified.

  preserve_path:
    type: bool
    since: 0.64.0
    default: false
    description: |
      Disable stripping child-directories from data files when installing.

      This is equivalent to GNU Automake's `nobase` option.

  rename:
    type: array[str]
    since: 0.46.0
    description: |
      If specified renames each source file into corresponding file from `rename` array.
      Nested paths are allowed and they are
      joined with `install_dir`. Length of `rename` array must be equal to
      the number of sources.

  sources:
    type: array[file | str]
    description: Additional files to install.

  follow_symlinks:
    type: bool
    since: 1.3.0
    default: true
    description: |
      If true, dereferences links and copies their target instead.  The default
      value will become false in the future.
