summaryrefslogtreecommitdiffstats
path: root/Source/cmLinkLineComputer.cxx
diff options
context:
space:
mode:
authorKyle Edwards <kyle.edwards@kitware.com>2019-11-15 18:01:36 (GMT)
committerKyle Edwards <kyle.edwards@kitware.com>2019-12-13 15:51:46 (GMT)
commit5a8a9f72293ab1b3fd768ff40e5fb1f07cdb7dd2 (patch)
tree7e456292c9299223c3bd851261595f24371d2f3b /Source/cmLinkLineComputer.cxx
parent3bc63e99e44b3ef82c19d018f939ea839882a131 (diff)
downloadCMake-5a8a9f72293ab1b3fd768ff40e5fb1f07cdb7dd2.zip
CMake-5a8a9f72293ab1b3fd768ff40e5fb1f07cdb7dd2.tar.gz
CMake-5a8a9f72293ab1b3fd768ff40e5fb1f07cdb7dd2.tar.bz2
Ninja: Add multi-config variant
Co-Authored-by: vector-of-bool <vectorofbool@gmail.com>
Diffstat (limited to 'Source/cmLinkLineComputer.cxx')
-rw-r--r--Source/cmLinkLineComputer.cxx30
1 files changed, 22 insertions, 8 deletions
diff --git a/Source/cmLinkLineComputer.cxx b/Source/cmLinkLineComputer.cxx
index 0dc6236..4320010 100644
--- a/Source/cmLinkLineComputer.cxx
+++ b/Source/cmLinkLineComputer.cxx
@@ -23,6 +23,7 @@ cmLinkLineComputer::cmLinkLineComputer(cmOutputConverter* outputConverter,
, OutputConverter(outputConverter)
, ForResponse(false)
, UseWatcomQuote(false)
+ , UseNinjaMulti(false)
, Relink(false)
{
}
@@ -34,6 +35,11 @@ void cmLinkLineComputer::SetUseWatcomQuote(bool useWatcomQuote)
this->UseWatcomQuote = useWatcomQuote;
}
+void cmLinkLineComputer::SetUseNinjaMulti(bool useNinjaMulti)
+{
+ this->UseNinjaMulti = useNinjaMulti;
+}
+
void cmLinkLineComputer::SetForResponse(bool forResponse)
{
this->ForResponse = forResponse;
@@ -106,10 +112,14 @@ void cmLinkLineComputer::ComputeLinkLibs(
std::string cmLinkLineComputer::ConvertToOutputFormat(std::string const& input)
{
- cmOutputConverter::OutputFormat shellFormat = (this->ForResponse)
- ? cmOutputConverter::RESPONSE
- : ((this->UseWatcomQuote) ? cmOutputConverter::WATCOMQUOTE
- : cmOutputConverter::SHELL);
+ cmOutputConverter::OutputFormat shellFormat = cmOutputConverter::SHELL;
+ if (this->ForResponse) {
+ shellFormat = cmOutputConverter::RESPONSE;
+ } else if (this->UseWatcomQuote) {
+ shellFormat = cmOutputConverter::WATCOMQUOTE;
+ } else if (this->UseNinjaMulti) {
+ shellFormat = cmOutputConverter::NINJAMULTI;
+ }
return this->OutputConverter->ConvertToOutputFormat(input, shellFormat);
}
@@ -117,10 +127,14 @@ std::string cmLinkLineComputer::ConvertToOutputFormat(std::string const& input)
std::string cmLinkLineComputer::ConvertToOutputForExisting(
std::string const& input)
{
- cmOutputConverter::OutputFormat shellFormat = (this->ForResponse)
- ? cmOutputConverter::RESPONSE
- : ((this->UseWatcomQuote) ? cmOutputConverter::WATCOMQUOTE
- : cmOutputConverter::SHELL);
+ cmOutputConverter::OutputFormat shellFormat = cmOutputConverter::SHELL;
+ if (this->ForResponse) {
+ shellFormat = cmOutputConverter::RESPONSE;
+ } else if (this->UseWatcomQuote) {
+ shellFormat = cmOutputConverter::WATCOMQUOTE;
+ } else if (this->UseNinjaMulti) {
+ shellFormat = cmOutputConverter::NINJAMULTI;
+ }
return this->OutputConverter->ConvertToOutputForExisting(input, shellFormat);
}