mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-11 08:20:18 -06:00
CUDA: Disable support for using response files.
This commit is contained in:
@@ -753,11 +753,10 @@ void cmNinjaNormalTargetGenerator::WriteDeviceLinkStatement()
|
||||
|
||||
cmGlobalNinjaGenerator& globalGen = *this->GetGlobalGenerator();
|
||||
|
||||
int commandLineLengthLimit = -1;
|
||||
if (!this->ForceResponseFile()) {
|
||||
commandLineLengthLimit = calculateCommandLineLengthLimit(
|
||||
globalGen.GetRuleCmdLength(this->LanguageLinkerDeviceRule()));
|
||||
}
|
||||
// Device linking currently doesn't support response files so
|
||||
// do not check if the user has explicitly forced a response file.
|
||||
int const commandLineLengthLimit = calculateCommandLineLengthLimit(
|
||||
globalGen.GetRuleCmdLength(this->LanguageLinkerDeviceRule()));
|
||||
|
||||
const std::string rspfile =
|
||||
std::string(cmake::GetCMakeFilesDirectoryPostSlash()) +
|
||||
@@ -1048,8 +1047,10 @@ void cmNinjaNormalTargetGenerator::WriteLinkStatement()
|
||||
}
|
||||
cmGlobalNinjaGenerator& globalGen = *this->GetGlobalGenerator();
|
||||
|
||||
bool const lang_supports_response =
|
||||
!(this->TargetLinkLanguage == "RC" || this->TargetLinkLanguage == "CUDA");
|
||||
int commandLineLengthLimit = -1;
|
||||
if (!this->ForceResponseFile()) {
|
||||
if (!lang_supports_response || !this->ForceResponseFile()) {
|
||||
commandLineLengthLimit = calculateCommandLineLengthLimit(
|
||||
globalGen.GetRuleCmdLength(this->LanguageLinkerRule()));
|
||||
}
|
||||
|
||||
@@ -405,7 +405,8 @@ void cmNinjaTargetGenerator::WriteCompileRule(const std::string& lang)
|
||||
std::string rspcontent;
|
||||
std::string responseFlag;
|
||||
|
||||
if (lang != "RC" && this->ForceResponseFile()) {
|
||||
bool const lang_supports_response = !(lang == "RC" || lang == "CUDA");
|
||||
if (lang_supports_response && this->ForceResponseFile()) {
|
||||
rspfile = "$RSP_FILE";
|
||||
responseFlag = "@" + rspfile;
|
||||
rspcontent = " $DEFINES $INCLUDES $FLAGS";
|
||||
@@ -930,9 +931,10 @@ void cmNinjaTargetGenerator::WriteObjectBuildStatement(
|
||||
|
||||
this->SetMsvcTargetPdbVariable(vars);
|
||||
|
||||
bool const isRC = (language == "RC");
|
||||
bool const lang_supports_response =
|
||||
!(language == "RC" || language == "CUDA");
|
||||
int const commandLineLengthLimit =
|
||||
((!isRC && this->ForceResponseFile())) ? -1 : 0;
|
||||
((lang_supports_response && this->ForceResponseFile())) ? -1 : 0;
|
||||
std::string const rspfile = objectFileName + ".rsp";
|
||||
|
||||
this->GetGlobalGenerator()->WriteBuild(
|
||||
|
||||
Reference in New Issue
Block a user