Skip to content

Commit

Permalink
Added documentation for new cppStandardHeadersPath configuration option.
Browse files Browse the repository at this point in the history
  • Loading branch information
michaelvlach committed Nov 4, 2017
1 parent 8b3ccfe commit 3b87d0b
Showing 1 changed file with 2 additions and 0 deletions.
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,8 @@ Configurable settings of qbs-autoproject are located in the first Probe in **aut

* **cppHeadersPattern**: Regular expression to match C/C++ source files. When merging products the products with source files (as opposed to only header files) will be merged to. Default value: `"\\.h$"` (NOTE: The backslahs '\' needs to be escaped)

* **cppStandardHeadersPath**: Absolute path to your C++ compiler's include directory. If you are compiling for different platforms, one of the compilers you use should suffice. It is used to determine which of your includes are standard headers to ignore them. This setting is somewhat optional and mainly provides way to supress the warnings about unresolved dependencies so that you see only actually unresolved dependencies rather than standard headers marked as unresolved.

* **items**: Qbs lets you define reusable template products in form of [custom items](http://doc.qt.io/qbs/custom-modules.html). They will serve as base for the kind of products you wish to detect. By default there is a standard palette of C++ items defined: *Application, DynamicLibrary, Plugin, StaticLibrary, Includes, Documentation*. You may create your own, modify the default ones or remove those that you do not use (e.g. Documentation or StaticLibrary). Each item file needs to be placed in the ***autoprojectDirectory**/imports*. All directories and files (absolute paths) will then be tested against the regular expression in **pattern** and if a directory (or file within a directory) will match the corresponding **item** will be created for it. Optionally you may specify **contentPattern** that will apply only to files and the **item** will only be matched if a file within given directory matches the **contentPattern** as well. The items are mutually exclusive and are tested in order of their definition so your items should be organized with most specialized at the top while the most generic are at the bottom (e.g. Application with pattern matching only main.cpp file should be higher than StaticLibrary that matches all \*.cpp files that did not match any of the previous items). For further details refer to *Exaplanation* section.

* **modules**: (C/C++ projects only!) While items are your internal products, modules are your external dependencies. Qbs lets you define [custom modules](http://doc.qt.io/qbs/custom-modules.html) in much the same way as custom items. They should be placed in the ***autoprojectDirectory**/modules/<module-name>/* to be accessible. In qbs-autoproject configuration you should specify only the name and **includePath** that is the root of the header files of your module. By default there is only *Qt* as a module and for that you do not need to specify your own custom module(s). For further information on how the modules are detected refer to *Exaplanation* section.
Expand Down

0 comments on commit 3b87d0b

Please sign in to comment.