diff options
author | Mateusz Janek <stryku2393@gmail.com> | 2016-12-21 14:27:49 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2017-01-16 15:52:48 (GMT) |
commit | b42330be21c0d3046aa0e6fdf046a492bddef520 (patch) | |
tree | efd6fbbda9401a36000f2c3b265b9d43310348e6 /Help | |
parent | 6154a2cddcdb297b1aef20f501fec9af7d7b5262 (diff) | |
download | CMake-b42330be21c0d3046aa0e6fdf046a492bddef520.zip CMake-b42330be21c0d3046aa0e6fdf046a492bddef520.tar.gz CMake-b42330be21c0d3046aa0e6fdf046a492bddef520.tar.bz2 |
source_group: Add options create groups matching directory tree
Add `TREE` and `PREFIX` arguments to enable this behavior.
Diffstat (limited to 'Help')
-rw-r--r-- | Help/command/source_group.rst | 18 | ||||
-rw-r--r-- | Help/release/dev/source_group-tree.rst | 5 |
2 files changed, 21 insertions, 2 deletions
diff --git a/Help/command/source_group.rst b/Help/command/source_group.rst index 6e3829c..938ca40 100644 --- a/Help/command/source_group.rst +++ b/Help/command/source_group.rst @@ -2,15 +2,27 @@ source_group ------------ Define a grouping for source files in IDE project generation. +There are two different signatures to create source groups. -.. code-block:: cmake +:: source_group(<name> [FILES <src>...] [REGULAR_EXPRESSION <regex>]) + source_group(TREE <root> [PREFIX <prefix>] [FILES <src>...]) Defines a group into which sources will be placed in project files. This is intended to set up file tabs in Visual Studio. The options are: +``TREE`` + CMake will automatically detect, from ``<src>`` files paths, source groups + it needs to create, to keep structure of source groups analogically to the + actual files and directories structure in the project. Paths of ``<src>`` + files will be cut to be relative to ``<root>``. + +``PREFIX`` + Source group and files located directly in ``<root>`` path, will be placed + in ``<prefix>`` source groups. + ``FILES`` Any source file specified explicitly will be placed in group ``<name>``. Relative paths are interpreted with respect to the @@ -25,11 +37,13 @@ explicitly lists the file with ``FILES`` will be favored, if any. If no group explicitly lists the file, the *last* group whose regular expression matches the file will be favored. -The ``<name>`` of the group may contain backslashes to specify subgroups: +The ``<name>`` of the group and ``<prefix>`` argument may contain backslashes +to specify subgroups: .. code-block:: cmake source_group(outer\\inner ...) + source_group(TREE <root> PREFIX sources\\inc ...) For backwards compatibility, the short-hand signature diff --git a/Help/release/dev/source_group-tree.rst b/Help/release/dev/source_group-tree.rst new file mode 100644 index 0000000..c5fec1d --- /dev/null +++ b/Help/release/dev/source_group-tree.rst @@ -0,0 +1,5 @@ +source_group-tree +----------------- + +* The :command:`source_group` command gained ``TREE`` and ``PREFIX`` + options to add groups following source tree directory structure. |