cmMakefile: check cmake script mode exit code after command

Which potentially may set it, and forward it to the cmExecutionStatus
for proper handling in caller.
This commit is contained in:
leha-bot
2024-01-05 04:21:48 +03:00
parent 3d9d504646
commit b62dcbf5d2

View File

@@ -529,6 +529,12 @@ bool cmMakefile::ExecuteCommand(const cmListFileFunction& lff,
cmSystemTools::SetFatalErrorOccurred();
}
}
if (this->GetCMakeInstance()->HasScriptModeExitCode() &&
this->GetCMakeInstance()->GetWorkingMode() == cmake::SCRIPT_MODE) {
// pass-through the exit code from inner cmake_language(EXIT) ,
// possibly from include() or similar command...
status.SetExitCode(this->GetCMakeInstance()->GetScriptModeExitCode());
}
}
} else {
if (!cmSystemTools::GetFatalErrorOccurred()) {