From a1aceb2585cb4b1e4e58ac32d9435ed43ad2d1d2 Mon Sep 17 00:00:00 2001 From: Brad King Date: Wed, 26 Nov 2014 17:27:31 -0500 Subject: [PATCH 1/3] Help: Format set_property and get_property command docs --- Help/command/get_property.rst | 38 +++++++++++++++++++++-------------- Help/command/set_property.rst | 32 +++++++++++++++++------------ 2 files changed, 42 insertions(+), 28 deletions(-) diff --git a/Help/command/get_property.rst b/Help/command/get_property.rst index c2937be6a..abec8f9f6 100644 --- a/Help/command/get_property.rst +++ b/Help/command/get_property.rst @@ -21,29 +21,37 @@ specifies the variable in which to store the result. The second argument determines the scope from which to get the property. It must be one of the following: -GLOBAL scope is unique and does not accept a name. +``GLOBAL`` + Scope is unique and does not accept a name. -DIRECTORY scope defaults to the current directory but another -directory (already processed by CMake) may be named by full or -relative path. +``DIRECTORY`` + Scope defaults to the current directory but another + directory (already processed by CMake) may be named by full or + relative path. -TARGET scope must name one existing target. +``TARGET`` + Scope must name one existing target. -SOURCE scope must name one source file. +``SOURCE`` + Scope must name one source file. -TEST scope must name one existing test. +``TEST`` + Scope must name one existing test. -CACHE scope must name one cache entry. +``CACHE`` + Scope must name one cache entry. -VARIABLE scope is unique and does not accept a name. +``VARIABLE`` + Scope is unique and does not accept a name. -The required PROPERTY option is immediately followed by the name of +The required ``PROPERTY`` option is immediately followed by the name of the property to get. If the property is not set an empty value is -returned. If the SET option is given the variable is set to a boolean -value indicating whether the property has been set. If the DEFINED +returned. If the ``SET`` option is given the variable is set to a boolean +value indicating whether the property has been set. If the ``DEFINED`` option is given the variable is set to a boolean value indicating -whether the property has been defined such as with define_property. -If BRIEF_DOCS or FULL_DOCS is given then the variable is set to a +whether the property has been defined such as with the +:command:`define_property` command. +If ``BRIEF_DOCS`` or ``FULL_DOCS`` is given then the variable is set to a string containing documentation for the requested property. If documentation is requested for a property that has not been defined -NOTFOUND is returned. +``NOTFOUND`` is returned. diff --git a/Help/command/set_property.rst b/Help/command/set_property.rst index 8cb963edf..8c4f610fd 100644 --- a/Help/command/set_property.rst +++ b/Help/command/set_property.rst @@ -18,26 +18,32 @@ Set one property on zero or more objects of a scope. The first argument determines the scope in which the property is set. It must be one of the following: -GLOBAL scope is unique and does not accept a name. +``GLOBAL`` + Scope is unique and does not accept a name. -DIRECTORY scope defaults to the current directory but another -directory (already processed by CMake) may be named by full or -relative path. +``DIRECTORY`` + Scope defaults to the current directory but another + directory (already processed by CMake) may be named by full or + relative path. -TARGET scope may name zero or more existing targets. +``TARGET`` + Scope may name zero or more existing targets. -SOURCE scope may name zero or more source files. Note that source -file properties are visible only to targets added in the same -directory (CMakeLists.txt). +``SOURCE`` + Scope may name zero or more source files. Note that source + file properties are visible only to targets added in the same + directory (CMakeLists.txt). -TEST scope may name zero or more existing tests. +``TEST`` + Scope may name zero or more existing tests. -CACHE scope must name zero or more cache existing entries. +``CACHE`` + Scope must name zero or more cache existing entries. -The required PROPERTY option is immediately followed by the name of +The required ``PROPERTY`` option is immediately followed by the name of the property to set. Remaining arguments are used to compose the property value in the form of a semicolon-separated list. If the -APPEND option is given the list is appended to any existing property -value.If the APPEND_STRING option is given the string is append to any +``APPEND`` option is given the list is appended to any existing property +value. If the ``APPEND_STRING`` option is given the string is append to any existing property value as string, i.e. it results in a longer string and not a list of strings. From 07254a8166f7f45d284b0982c59b185037d21bc1 Mon Sep 17 00:00:00 2001 From: Nils Gladitz Date: Wed, 26 Nov 2014 17:22:24 -0500 Subject: [PATCH 2/3] Help: Document installed file property API Since commit v3.1.0-rc1~479^2~1 (Add an "installed file" property scope, 2014-05-15) the get_property and set_property commands support an 'INSTALL' scope. Add documentation for this scope. --- Help/command/get_property.rst | 4 ++++ Help/command/set_property.rst | 17 +++++++++++++++++ 2 files changed, 21 insertions(+) diff --git a/Help/command/get_property.rst b/Help/command/get_property.rst index abec8f9f6..632ece65c 100644 --- a/Help/command/get_property.rst +++ b/Help/command/get_property.rst @@ -10,6 +10,7 @@ Get a property. DIRECTORY [dir] | TARGET | SOURCE | + INSTALL | TEST | CACHE | VARIABLE> @@ -35,6 +36,9 @@ be one of the following: ``SOURCE`` Scope must name one source file. +``INSTALL`` + Scope must name one installed file path. + ``TEST`` Scope must name one existing test. diff --git a/Help/command/set_property.rst b/Help/command/set_property.rst index 8c4f610fd..62002309c 100644 --- a/Help/command/set_property.rst +++ b/Help/command/set_property.rst @@ -9,6 +9,7 @@ Set a named property in a given scope. DIRECTORY [dir] | TARGET [target1 [target2 ...]] | SOURCE [src1 [src2 ...]] | + INSTALL [file1 [file2 ...]] | TEST [test1 [test2 ...]] | CACHE [entry1 [entry2 ...]]> [APPEND] [APPEND_STRING] @@ -34,6 +35,22 @@ be one of the following: file properties are visible only to targets added in the same directory (CMakeLists.txt). +``INSTALL`` + Scope may name zero or more installed file paths. + These are made available to CPack to influence deployment. + + Both the property key and value may use generator expressions. + Specific properties may apply to installed files and/or directories. + + Path components have to be separated by forward slashes, + must be normalized and are case sensitive. + + To reference the installation prefix itself with a relative path use ".". + + Currently installed file properties are only defined for + the WIX generator where the given paths are relative + to the installation prefix. + ``TEST`` Scope may name zero or more existing tests. From 89bb34d3499efd0ae78324d53ca0bdead2c3e660 Mon Sep 17 00:00:00 2001 From: Brad King Date: Wed, 26 Nov 2014 17:33:53 -0500 Subject: [PATCH 3/3] Help: Add 3.1 release notes for INSTALL property scope --- Help/release/3.1.0.rst | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Help/release/3.1.0.rst b/Help/release/3.1.0.rst index 65aae000b..c6a971752 100644 --- a/Help/release/3.1.0.rst +++ b/Help/release/3.1.0.rst @@ -69,9 +69,15 @@ Commands :variable:`CMAKE_FIND_PACKAGE_NO_SYSTEM_PACKAGE_REGISTRY` variables to skip searching the package registries. +* The :command:`get_property` command learned a new ``INSTALL`` scope + for properties. + * The :command:`install` command learned a ``MESSAGE_NEVER`` option to avoid output during installation. +* The :command:`set_property` command learned a new ``INSTALL`` scope + for properties. + * The :command:`string` command learned a new ``GENEX_STRIP`` subcommand which removes :manual:`generator expression `.