- Qbs Manual
- QbsLanguageItems
- Artifact
- Qbs 2.1.2

Depends

# Artifact

Describes a file produced by a Rule. More...

- List of all members, including inherited members

## Properties

- alwaysUpdated : bool
- filePath : string
- fileTags : stringList

## Detailed Description

An Artifact represents a single file produced by a Rule.

For example, if a rule produces three files, it needs to contain three Artifact items.

In addition to Artifact properties, you can set module properties within an Artifact item, as follows:

     Artifact {
         filePath: "somefile.cpp"
         fileTags: ["cpp"]
         cpp.cxxLanguageVersion: "c++11"
         // ...
     }

Note: The code on the right-hand side of Artifact properties has access to the set of input artifacts. That is, it can refer to the `inputs` map and, if the rule is not a multiplex rule, the `input` variable.

## Property Documentation

alwaysUpdated : bool

Setting this property to `false` means the file is not necessarily always written to by any command run by the rule. If all artifacts of a rule have this property set to `false`, the commands of the rule are only executed if all of them are out of date compared to the inputs.

Default: `true`

filePath : string

The file path of the target artifact.

Default: Undefined

fileTags : stringList

A list of tags to attach to the target file. These can then be matched by a Rule.

Default: An empty list