summaryrefslogtreecommitdiffstats
path: root/Help
diff options
context:
space:
mode:
authorJames Johnston <johnstonj.public@codenest.com>2015-07-05 20:32:20 (GMT)
committerBrad King <brad.king@kitware.com>2015-07-06 18:51:40 (GMT)
commite494763997c2e28ead2269f21a1c6a66a815ac2e (patch)
tree7400e2b297c1736b607a6a99368c6fafc5a9a9bf /Help
parent7e86f567aca6b913689dc2d8c17a17936284b811 (diff)
downloadCMake-e494763997c2e28ead2269f21a1c6a66a815ac2e.zip
CMake-e494763997c2e28ead2269f21a1c6a66a815ac2e.tar.gz
CMake-e494763997c2e28ead2269f21a1c6a66a815ac2e.tar.bz2
ExternalProject: Added new USES_TERMINAL options
Added new USES_TERMINAL option to the ExternalProject_Add_Step function. This option passes USES_TERMINAL to the underlying add_custom_command call so that the Ninja console pool is used. Also, corresponding new USES_TERMINAL_<step> options were added to the ExternalProject_Add function. Justification: if using Ninja with a CMake superbuild, it's often desirable to limit the superbuild to ONE sub-Ninja process at a time to avoid oversubscribing the CPU. Using the console pool also makes it easy to monitor the progress of the sub-Ninja process. Independent USES_TERMINAL_<step> arguments are passed to ExternalProject_Add instead of one USES_TERMINAL argument that controls everything. Users may wish to run some steps in parallel but not others (e.g. parallelize configure but not build).
Diffstat (limited to 'Help')
-rw-r--r--Help/release/dev/ExternalProject-USES_TERMINAL.rst7
1 files changed, 7 insertions, 0 deletions
diff --git a/Help/release/dev/ExternalProject-USES_TERMINAL.rst b/Help/release/dev/ExternalProject-USES_TERMINAL.rst
new file mode 100644
index 0000000..415540d
--- /dev/null
+++ b/Help/release/dev/ExternalProject-USES_TERMINAL.rst
@@ -0,0 +1,7 @@
+ExternalProject-USES_TERMINAL
+-----------------------------
+
+* The :module:`ExternalProject` module learned new ``USES_TERMINAL``
+ arguments for giving steps exclusive terminal access. Especially
+ useful with the :generator:`Ninja` generator to monitor CMake
+ superbuild progress and prevent CPU oversubscription.