浏览代码

Help: Clarify effect of set(ENV{..} ..) and unset(ENV{..})

Explain that the commands affect only the current CMake process,
not the process from which CMake was called,
nor the system environment at large,
nor the environment of subsequent build or test processes.
Joachim Wuttke (h) 7 年之前
父节点
当前提交
3de551cc22
共有 2 个文件被更改,包括 20 次插入5 次删除
  1. 7 1
      Help/command/set.rst
  2. 13 4
      Help/command/unset.rst

+ 7 - 1
Help/command/set.rst

@@ -88,4 +88,10 @@ Set Environment Variable
 
   set(ENV{<variable>} <value>...)
 
-Sets the current process environment ``<variable>`` to the given value.
+Sets an :manual:`Environment Variable <cmake-env-variables(7)>`
+to the given value.
+Subsequent calls of ``$ENV{<variable>}`` will return this new value.
+
+This command affects only the current CMake process, not the process
+from which CMake was called, nor the system environment at large,
+nor the environment of subsequent build or test processes.

+ 13 - 4
Help/command/unset.rst

@@ -3,6 +3,9 @@ unset
 
 Unset a variable, cache variable, or environment variable.
 
+Unset Normal Variable or Cache Entry
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
 .. code-block:: cmake
 
   unset(<variable> [CACHE | PARENT_SCOPE])
@@ -22,11 +25,17 @@ If ``PARENT_SCOPE`` is present then the variable is removed from the scope
 above the current scope.  See the same option in the :command:`set` command
 for further details.
 
-``<variable>`` can be an environment variable such as:
+Unset Environment Variable
+^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 .. code-block:: cmake
 
-  unset(ENV{LD_LIBRARY_PATH})
+  unset(ENV{<variable>})
+
+Removes ``<variable>`` from the currently available
+:manual:`Environment Variables <cmake-env-variables(7)>`.
+Subsequent calls of ``$ENV{<variable>}`` will return the empty string.
 
-in which case the variable will be removed from the current
-environment.
+This command affects only the current CMake process, not the process
+from which CMake was called, nor the system environment at large,
+nor the environment of subsequent build or test processes.