summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/BuildDepends/RunCMakeTest.cmake
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2016-04-05 20:20:28 (GMT)
committerBrad King <brad.king@kitware.com>2016-04-05 20:20:28 (GMT)
commitadd7abc8352b87184579401cb2493c72e07aa212 (patch)
tree365a148a216223f3100be01b1be7a02b4d1877ca /Tests/RunCMake/BuildDepends/RunCMakeTest.cmake
parentff805113c766371677b97d94cd3092cf6ff0bbf6 (diff)
downloadCMake-add7abc8352b87184579401cb2493c72e07aa212.zip
CMake-add7abc8352b87184579401cb2493c72e07aa212.tar.gz
CMake-add7abc8352b87184579401cb2493c72e07aa212.tar.bz2
Ninja: Restat custom command byproducts even with a SYMBOLIC output (#16049)
The change in commit v3.5.0-rc1~198^2 (Ninja: Always re-run custom commands that have symbolic dependencies, 2015-11-19) broke the byproducts feature added by commit v3.2.0-rc1~340^2~2 (Add an option for explicit BYPRODUCTS of custom commands, 2014-11-13) when SYMBOLIC outputs also appear. This case occurs with AUTORCC-generated custom targets because the output is SYMBOLIC (to always run) and the generated file is a byproduct (for restat so dependents do not run unnecessarily). The two use cases conflict because Ninja does not support per-output restat. Favor restat whenever byproducts are present because it is required for byproducts to work correctly. In use cases where we want an always-run chain we simply will not be able to also use byproducts.
Diffstat (limited to 'Tests/RunCMake/BuildDepends/RunCMakeTest.cmake')
-rw-r--r--Tests/RunCMake/BuildDepends/RunCMakeTest.cmake1
1 files changed, 1 insertions, 0 deletions
diff --git a/Tests/RunCMake/BuildDepends/RunCMakeTest.cmake b/Tests/RunCMake/BuildDepends/RunCMakeTest.cmake
index 31c72fb..0dd27d4 100644
--- a/Tests/RunCMake/BuildDepends/RunCMakeTest.cmake
+++ b/Tests/RunCMake/BuildDepends/RunCMakeTest.cmake
@@ -39,4 +39,5 @@ if(NOT RunCMake_GENERATOR MATCHES "Visual Studio [67]|Xcode")
unset(run_BuildDepends_skip_step_2)
endif()
+run_BuildDepends(Custom-Symbolic-and-Byproduct)
run_BuildDepends(Custom-Always)