diff options
author | Brad King <brad.king@kitware.com> | 2013-07-10 15:50:49 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2013-07-16 17:48:10 (GMT) |
commit | 45d2966dcc0ebc08a925d6ac2ba1831549faa345 (patch) | |
tree | b51901fe567e10e511a6b0b3cfc7b951821a5d50 /Modules/ExternalProject.cmake | |
parent | a18e9586dbd7172911fde22b6b6331676b817e4d (diff) | |
download | CMake-45d2966dcc0ebc08a925d6ac2ba1831549faa345.zip CMake-45d2966dcc0ebc08a925d6ac2ba1831549faa345.tar.gz CMake-45d2966dcc0ebc08a925d6ac2ba1831549faa345.tar.bz2 |
VS: Avoid leaking child process output back to IDE (#14266)
The VS IDE sets the environment variable VS_UNICODE_OUTPUT when
executing build rules in order to tell MS tools to report output through
a back door instead of through stdout/stderr. Unset this variable so
that CMake can capture or properly redirect all output from processes it
runs even when running inside a VS IDE build environment.
This generalizes the special cases fixed by commit 80d045b0 (When
GetPrerequisites.cmake runs dumpbin while running inside the VS IDE...,
2008-05-01) and commit 44aff73d (ExternalProject: Avoid bleed-through
output when logging, 2011-01-06), so drop special handling of
VS_UNICODE_OUTPUT in those instances.
Diffstat (limited to 'Modules/ExternalProject.cmake')
-rw-r--r-- | Modules/ExternalProject.cmake | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/Modules/ExternalProject.cmake b/Modules/ExternalProject.cmake index 6afdb97..f7e6253 100644 --- a/Modules/ExternalProject.cmake +++ b/Modules/ExternalProject.cmake @@ -961,7 +961,7 @@ endif() set(sep ";") endif() endforeach() - set(code "set(ENV{VS_UNICODE_OUTPUT} \"\")\n${code}set(command \"${cmd}\")${code_execute_process}") + set(code "${code}set(command \"${cmd}\")${code_execute_process}") file(WRITE ${stamp_dir}/${name}-${step}-impl.cmake "${code}") set(command ${CMAKE_COMMAND} "-Dmake=\${make}" "-Dconfig=\${config}" -P ${stamp_dir}/${name}-${step}-impl.cmake) endif() @@ -971,7 +971,6 @@ endif() set(logbase ${stamp_dir}/${name}-${step}) file(WRITE ${script} " ${code_cygpath_make} -set(ENV{VS_UNICODE_OUTPUT} \"\") set(command \"${command}\") execute_process( COMMAND \${command} |