summaryrefslogtreecommitdiffstats
path: root/Help/command
diff options
context:
space:
mode:
authorJames Johnston <johnstonj.public@codenest.com>2015-08-18 03:55:38 (GMT)
committerJames Johnston <johnstonj.public@codenest.com>2015-08-18 03:55:38 (GMT)
commite89ea3d190492e41b37425ff021311c2b471f1b9 (patch)
tree35c88e18b8ac49fc2f115140c73ba04b8df3f0a1 /Help/command
parenta38ea312c02eec6e4ee61015f70920999bf79ff9 (diff)
downloadCMake-e89ea3d190492e41b37425ff021311c2b471f1b9.zip
CMake-e89ea3d190492e41b37425ff021311c2b471f1b9.tar.gz
CMake-e89ea3d190492e41b37425ff021311c2b471f1b9.tar.bz2
get_filename_component: Teach new BASE_DIR parameter.
In the get_filename_component command, add a new BASE_DIR parameter to use with the ABSOLUTE and REALPATH options. This will be used when finding an absolute path from a relative path.
Diffstat (limited to 'Help/command')
-rw-r--r--Help/command/get_filename_component.rst37
1 files changed, 32 insertions, 5 deletions
diff --git a/Help/command/get_filename_component.rst b/Help/command/get_filename_component.rst
index 60488da..82f9120 100644
--- a/Help/command/get_filename_component.rst
+++ b/Help/command/get_filename_component.rst
@@ -3,6 +3,8 @@ get_filename_component
Get a specific component of a full filename.
+------------------------------------------------------------------------------
+
::
get_filename_component(<VAR> <FileName> <COMP> [CACHE])
@@ -15,8 +17,6 @@ Set ``<VAR>`` to a component of ``<FileName>``, where ``<COMP>`` is one of:
NAME = File name without directory
EXT = File name longest extension (.b.c from d/a.b.c)
NAME_WE = File name without directory or longest extension
- ABSOLUTE = Full path to file
- REALPATH = Full path to existing file with symlinks resolved
PATH = Legacy alias for DIRECTORY (use for CMake <= 2.8.11)
Paths are returned with forward slashes and have no trailing slahes.
@@ -24,14 +24,41 @@ The longest file extension is always considered. If the optional
``CACHE`` argument is specified, the result variable is added to the
cache.
+------------------------------------------------------------------------------
+
+::
+
+ get_filename_component(<VAR> <FileName>
+ <COMP> [BASE_DIR <BASE_DIR>]
+ [CACHE])
+
+Set ``<VAR>`` to the absolute path of ``<FileName>``, where ``<COMP>`` is one
+of:
+
+::
+
+ ABSOLUTE = Full path to file
+ REALPATH = Full path to existing file with symlinks resolved
+
+If the provided ``<FileName>`` is a relative path, it is evaluated relative
+to the given base directory ``<BASE_DIR>``. If no base directory is
+provided, the default base directory will be
+:variable:`CMAKE_CURRENT_SOURCE_DIR`.
+
+Paths are returned with forward slashes and have no trailing slahes. If the
+optional ``CACHE`` argument is specified, the result variable is added to the
+cache.
+
+------------------------------------------------------------------------------
+
::
- get_filename_component(<VAR> FileName
+ get_filename_component(<VAR> <FileName>
PROGRAM [PROGRAM_ARGS <ARG_VAR>]
[CACHE])
-The program in ``FileName`` will be found in the system search path or
+The program in ``<FileName>`` will be found in the system search path or
left as a full path. If ``PROGRAM_ARGS`` is present with ``PROGRAM``, then
-any command-line arguments present in the ``FileName`` string are split
+any command-line arguments present in the ``<FileName>`` string are split
from the program name and stored in ``<ARG_VAR>``. This is used to
separate a program name from its arguments in a command line string.