MCPcopy Create free account
hub / github.com/Kitware/CMake / WriteDirectoryInformationFile

Method WriteDirectoryInformationFile

Source/cmLocalUnixMakefileGenerator3.cxx:499–546  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

497}
498
499void cmLocalUnixMakefileGenerator3::WriteDirectoryInformationFile()
500{
501 std::string infoFileName =
502 cmStrCat(this->GetCurrentBinaryDirectory(),
503 "/CMakeFiles/CMakeDirectoryInformation.cmake");
504
505 // Open the output file.
506 cmGeneratedFileStream infoFileStream(infoFileName);
507 if (!infoFileStream) {
508 return;
509 }
510
511 infoFileStream.SetCopyIfDifferent(true);
512 // Write the do not edit header.
513 this->WriteDisclaimer(infoFileStream);
514
515 // Setup relative path conversion tops.
516 infoFileStream << "# Relative path conversion top directories.\n"
517 "set(CMAKE_RELATIVE_PATH_TOP_SOURCE \""
518 << this->GetRelativePathTopSource() << "\")\n"
519 << "set(CMAKE_RELATIVE_PATH_TOP_BINARY \""
520 << this->GetRelativePathTopBinary() << "\")\n"
521 << '\n';
522
523 // Tell the dependency scanner to use unix paths if necessary.
524 if (cmSystemTools::GetForceUnixPaths()) {
525 infoFileStream << "# Force unix paths in dependencies.\n"
526 "set(CMAKE_FORCE_UNIX_PATHS 1)\n"
527 "\n";
528 }
529
530 // Store the include regular expressions for this directory.
531 infoFileStream << "\n"
532 "# The C and CXX include file regular expressions for "
533 "this directory.\n"
534 "set(CMAKE_C_INCLUDE_REGEX_SCAN ";
535 cmLocalUnixMakefileGenerator3::WriteCMakeArgument(
536 infoFileStream, this->Makefile->GetIncludeRegularExpression());
537 infoFileStream << ")\n"
538 "set(CMAKE_C_INCLUDE_REGEX_COMPLAIN ";
539 cmLocalUnixMakefileGenerator3::WriteCMakeArgument(
540 infoFileStream, this->Makefile->GetComplainRegularExpression());
541 infoFileStream
542 << ")\n"
543 << "set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})\n"
544 "set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN "
545 "${CMAKE_C_INCLUDE_REGEX_COMPLAIN})\n";
546}
547
548std::string cmLocalUnixMakefileGenerator3::ConvertToFullPath(
549 std::string const& localPath)

Callers 1

GenerateMethod · 0.95

Calls 3

WriteDisclaimerMethod · 0.95
SetCopyIfDifferentMethod · 0.80
cmStrCatFunction · 0.70

Tested by

no test coverage detected