Merge topic 'autogen-makefile-depfile'

d0bedb2170 Autogen: Forward dependencies when both Makefile and DEPFILE are used
4deb9c41b8 cmQtAutoGenInitializer: Improve Const-correctness

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9190
This commit is contained in:
Brad King
2024-01-29 15:43:29 +00:00
committed by Kitware Robot
7 changed files with 40 additions and 2 deletions
+11 -2
View File
@@ -72,7 +72,7 @@ unsigned int GetParallelCPUCount()
return count;
}
std::string FileProjectRelativePath(cmMakefile* makefile,
std::string FileProjectRelativePath(cmMakefile const* makefile,
std::string const& fileName)
{
std::string res;
@@ -1462,7 +1462,6 @@ bool cmQtAutoGenInitializer::InitAutogenTarget()
std::vector<std::string> dependencies(
this->AutogenTarget.DependFiles.begin(),
this->AutogenTarget.DependFiles.end());
if (useDepfile) {
// Create a custom command that generates a timestamp file and
// has a depfile assigned. The depfile is created by JobDepFilesMergeT.
@@ -1501,6 +1500,16 @@ bool cmQtAutoGenInitializer::InitAutogenTarget()
cc->SetEscapeOldStyle(false);
cmTarget* timestampTarget = this->LocalGen->AddUtilityCommand(
timestampTargetName, true, std::move(cc));
auto const isMake =
this->GlobalGen->GetName().find("Make") != std::string::npos;
if (this->AutogenTarget.DependOrigin && isMake) {
for (BT<std::pair<std::string, bool>> const& depName :
this->GenTarget->GetUtilities()) {
timestampTarget->AddUtility(depName.Value.first, false,
this->Makefile);
}
}
this->LocalGen->AddGeneratorTarget(
cm::make_unique<cmGeneratorTarget>(timestampTarget, this->LocalGen));