FileTagger
Assigns file tags to files. More...
- List of all members, including inherited members
- FileTagger is part of List of All Items.
Properties
- fileTags : list
(since Qbs 1.0)
- patterns : stringList
(since Qbs 1.0)
- priority : int
(since Qbs 1.10)
Detailed Description
This item assigns file tags to files. The FileTagger item can appear in Product items or Module items.
For every source artifact that has no file tag, Qbs will search for a FileTagger with a pattern that matches the file name of the source artifact. If a matching file tagger is found, then the file tags specified in the FileTagger item are assigned to the source artifact.
If there is more than one matching FileTagger, all file taggers with the same highest priority are taken into account and their file tags are accumulated.
The FileTagger item can be attached to a product or a module. In the latter case, its effect is the same as if it had been attached to all products having a dependency on the respective module. For instance, the cpp module of Qbs has, among others, the following file tagger:
FileTagger { patterns: "*.cpp" fileTags: ["cpp"] }
As a result, the "cpp"
tag is automatically attached to all files ending with ".cpp"
in products depending on the cpp
module. This causes them to be compiled, because a C++ compiler rule has "cpp"
in its list of matching input tags.
File taggers are disabled if file tags are set explicitly in a product or group. For example, the "cpp"
tag is not attached to the .cpp
files in the following product:
Product { Depends { name: "cpp" } Group { files: "*.cpp" fileTags: "other" } }
Property Documentation
fileTags : list |
Tags to attach to a product's files. These can then be matched by a rule.
Default: An empty list
This property was introduced in Qbs 1.0.
patterns : stringList |
A list of patterns to match against. Supports the usual wildcards '*', '?' and '[]'.
Neither the list itself nor any of its elements may be empty.
This property was introduced in Qbs 1.0.
priority : int |
The priority of the FileTagger. A higher numerical value means a higher priority.
Default: 0
This property was introduced in Qbs 1.10.