cmMakefile: Create all generated byproducts as known sources

This commit is contained in:
Daniel Eiband
2019-09-06 19:17:37 +02:00
parent e6ddb57479
commit 4926ab2454
2 changed files with 7 additions and 8 deletions

View File

@@ -970,8 +970,8 @@ cmSourceFile* cmMakefile::AddCustomCommandToOutput(
}
// Always create the output sources and mark them generated.
this->CreateGeneratedSources(outputs, cmSourceFileLocationKind::Known);
this->CreateGeneratedSources(byproducts, cmSourceFileLocationKind::Known);
this->CreateGeneratedSources(outputs);
this->CreateGeneratedSources(byproducts);
// Choose a source file on which to store the custom command.
cmSourceFile* file = nullptr;
@@ -1239,7 +1239,7 @@ cmTarget* cmMakefile::AddUtilityCommand(
// Store the custom command in the target.
if (!commandLines.empty() || !depends.empty()) {
// Always create the byproduct sources and mark them generated.
this->CreateGeneratedSources(byproducts, cmSourceFileLocationKind::Known);
this->CreateGeneratedSources(byproducts);
std::string force =
cmStrCat(this->GetCurrentBinaryDirectory(), "/CMakeFiles/", utilityName);
@@ -3444,10 +3444,11 @@ cmSourceFile* cmMakefile::GetOrCreateSource(const std::string& sourceName,
}
void cmMakefile::CreateGeneratedSources(
const std::vector<std::string>& outputs, cmSourceFileLocationKind kind)
const std::vector<std::string>& outputs)
{
for (std::string const& output : outputs) {
if (cmSourceFile* out = this->GetOrCreateSource(output, true, kind)) {
if (cmSourceFile* out = this->GetOrCreateSource(
output, true, cmSourceFileLocationKind::Known)) {
out->SetProperty("GENERATED", "1");
}
}

View File

@@ -1067,9 +1067,7 @@ private:
bool atOnly, const char* filename,
long line, bool replaceAt) const;
void CreateGeneratedSources(
const std::vector<std::string>& outputs,
cmSourceFileLocationKind kind = cmSourceFileLocationKind::Ambiguous);
void CreateGeneratedSources(const std::vector<std::string>& outputs);
/**
* See LinearGetSourceFileWithOutput for background information