summaryrefslogtreecommitdiffstats
path: root/Source/cmLocalGenerator.cxx
diff options
context:
space:
mode:
authorJuan Ramos <juan.ramos@kitware.com>2024-05-28 03:19:05 (GMT)
committerBrad King <brad.king@kitware.com>2024-07-01 16:02:49 (GMT)
commit197cb419d13d5dbb704be97bd3ee04ce514fa58f (patch)
tree7fae6062e544659541c9dd97946ada61fe1c7310 /Source/cmLocalGenerator.cxx
parent033713530a077893be93e52ef577205cb8466b9d (diff)
downloadCMake-197cb419d13d5dbb704be97bd3ee04ce514fa58f.zip
CMake-197cb419d13d5dbb704be97bd3ee04ce514fa58f.tar.gz
CMake-197cb419d13d5dbb704be97bd3ee04ce514fa58f.tar.bz2
add_custom_command: Add CODEGEN support
By specifying CODEGEN as an argument to add_custom_command the custom command will be added to a codegen build target. The intent is to provide a convenient way for users to get their generated files without having to build the whole project. This can be helpful for code analysis tools which can be useful for IDEs and CI.
Diffstat (limited to 'Source/cmLocalGenerator.cxx')
-rw-r--r--Source/cmLocalGenerator.cxx6
1 files changed, 6 insertions, 0 deletions
diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx
index aa3f28e..e6d56d3 100644
--- a/Source/cmLocalGenerator.cxx
+++ b/Source/cmLocalGenerator.cxx
@@ -4626,6 +4626,12 @@ void AppendCustomCommandToOutput(cmLocalGenerator& lg,
if (cmCustomCommand* cc = sf->GetCustomCommand()) {
cc->AppendCommands(commandLines);
cc->AppendDepends(depends);
+ if (cc->GetCodegen() && !implicit_depends.empty()) {
+ lg.GetCMakeInstance()->IssueMessage(
+ MessageType::FATAL_ERROR,
+ "Cannot append IMPLICIT_DEPENDS to existing CODEGEN custom "
+ "command.");
+ }
cc->AppendImplicitDepends(implicit_depends);
return;
}