| 529 | } |
| 530 | |
| 531 | bool cmNinjaTargetGenerator::SetMsvcTargetPdbVariable( |
| 532 | cmNinjaVars& vars, std::string const& config) const |
| 533 | { |
| 534 | cmMakefile* mf = this->GetMakefile(); |
| 535 | if (mf->GetDefinition("MSVC_C_ARCHITECTURE_ID") || |
| 536 | mf->GetDefinition("MSVC_CXX_ARCHITECTURE_ID") || |
| 537 | mf->GetDefinition("MSVC_CUDA_ARCHITECTURE_ID")) { |
| 538 | std::string pdbPath; |
| 539 | std::string compilePdbPath = this->ComputeTargetCompilePDB(config); |
| 540 | if (this->GeneratorTarget->GetType() == cmStateEnums::EXECUTABLE || |
| 541 | this->GeneratorTarget->GetType() == cmStateEnums::STATIC_LIBRARY || |
| 542 | this->GeneratorTarget->GetType() == cmStateEnums::SHARED_LIBRARY || |
| 543 | this->GeneratorTarget->GetType() == cmStateEnums::MODULE_LIBRARY) { |
| 544 | pdbPath = cmStrCat(this->GeneratorTarget->GetPDBDirectory(config), '/', |
| 545 | this->GeneratorTarget->GetPDBName(config)); |
| 546 | } |
| 547 | |
| 548 | vars["TARGET_PDB"] = |
| 549 | this->ConvertToOutputFormatForShell(this->ConvertToNinjaPath(pdbPath)); |
| 550 | vars["TARGET_COMPILE_PDB"] = this->ConvertToOutputFormatForShell( |
| 551 | this->ConvertToNinjaPath(compilePdbPath)); |
| 552 | |
| 553 | this->EnsureParentDirectoryExists(pdbPath); |
| 554 | this->EnsureParentDirectoryExists(compilePdbPath); |
| 555 | return true; |
| 556 | } |
| 557 | return false; |
| 558 | } |
| 559 | |
| 560 | void cmNinjaTargetGenerator::WriteLanguageRules(std::string const& language, |
| 561 | std::string const& config) |
no test coverage detected