From f0e9d74a2d371ab2c22b3c7608bc8da1548873a0 Mon Sep 17 00:00:00 2001 From: Brad King Date: Wed, 2 Jun 2021 07:41:05 -0400 Subject: cmake_transform_depfile: Remove unused incomplete vstlog support In commit b2c14bc774 (cmake -E: Add cmake_transform_depfile internal command, 2020-10-02, v3.20.0-rc1~684^2~2) a partial implementation for converting MSBuild "TLog" format files was added. However, it is unused and incomplete: * Does not enforce absolute paths as TLog docs require. * Does not upper-case paths as TLog docs recommend. * The TLog format semantics are not equivalent to `out: in`. Remove the unused TLog transform infrastructure to avoid confusion. Issue: #20286 --- Source/cmCustomCommandGenerator.cxx | 6 ---- Source/cmTransformDepfile.cxx | 34 ---------------------- Source/cmTransformDepfile.h | 1 - Source/cmcmd.cxx | 2 -- Tests/RunCMake/TransformDepfile/RunCMakeTest.cmake | 4 --- 5 files changed, 47 deletions(-) diff --git a/Source/cmCustomCommandGenerator.cxx b/Source/cmCustomCommandGenerator.cxx index 77779ba..10a6491 100644 --- a/Source/cmCustomCommandGenerator.cxx +++ b/Source/cmCustomCommandGenerator.cxx @@ -227,9 +227,6 @@ cmCustomCommandGenerator::cmCustomCommandGenerator( case cmDepfileFormat::GccDepfile: argv.emplace_back("gccdepfile"); break; - case cmDepfileFormat::VsTlog: - argv.emplace_back("vstlog"); - break; case cmDepfileFormat::MakeDepfile: argv.emplace_back("makedepfile"); break; @@ -440,9 +437,6 @@ std::string cmCustomCommandGenerator::GetInternalDepfileName( case cmDepfileFormat::MakeDepfile: extension = ".d"; break; - case cmDepfileFormat::VsTlog: - extension = ".tlog"; - break; } return cmStrCat(this->LG->GetBinaryDirectory(), "/CMakeFiles/d/", hash.HashString(depfile), extension); diff --git a/Source/cmTransformDepfile.cxx b/Source/cmTransformDepfile.cxx index 6927300..0df9550 100644 --- a/Source/cmTransformDepfile.cxx +++ b/Source/cmTransformDepfile.cxx @@ -78,37 +78,6 @@ void WriteDepfile(cmDepfileFormat format, cmsys::ofstream& fout, } } } - -// tlog format : always windows paths on Windows regardless the generator -std::string ConvertToTLogOutputPath(const std::string& path) -{ -#if defined(_WIN32) && !defined(__CYGWIN__) - return cmSystemTools::ConvertToWindowsOutputPath(path); -#else - return cmSystemTools::ConvertToOutputPath(path); -#endif -} - -void WriteVsTlog(cmsys::ofstream& fout, const cmLocalGenerator& lg, - const cmGccDepfileContent& content) -{ - for (auto const& dep : content) { - fout << '^'; - bool first = true; - for (auto const& rule : dep.rules) { - if (!first) { - fout << '|'; - } - first = false; - fout << ConvertToTLogOutputPath(lg.MaybeRelativeToTopBinDir(rule)); - } - fout << "\r\n"; - for (auto const& path : dep.paths) { - fout << ConvertToTLogOutputPath(lg.MaybeRelativeToTopBinDir(path)) - << "\r\n"; - } - } -} } bool cmTransformDepfile(cmDepfileFormat format, const cmLocalGenerator& lg, @@ -133,9 +102,6 @@ bool cmTransformDepfile(cmDepfileFormat format, const cmLocalGenerator& lg, case cmDepfileFormat::MakeDepfile: WriteDepfile(format, fout, lg, content); break; - case cmDepfileFormat::VsTlog: - WriteVsTlog(fout, lg, content); - break; } return true; } diff --git a/Source/cmTransformDepfile.h b/Source/cmTransformDepfile.h index c31e4ab..ce7cd66 100644 --- a/Source/cmTransformDepfile.h +++ b/Source/cmTransformDepfile.h @@ -7,7 +7,6 @@ enum class cmDepfileFormat { GccDepfile, - VsTlog, MakeDepfile }; diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx index 727e412..84ac189 100644 --- a/Source/cmcmd.cxx +++ b/Source/cmcmd.cxx @@ -1529,8 +1529,6 @@ int cmcmd::ExecuteCMakeCommand(std::vector const& args, auto format = cmDepfileFormat::GccDepfile; if (args[3] == "gccdepfile") { format = cmDepfileFormat::GccDepfile; - } else if (args[3] == "vstlog") { - format = cmDepfileFormat::VsTlog; } else if (args[3] == "makedepfile") { format = cmDepfileFormat::MakeDepfile; } else { diff --git a/Tests/RunCMake/TransformDepfile/RunCMakeTest.cmake b/Tests/RunCMake/TransformDepfile/RunCMakeTest.cmake index 9a38b95..1ce723b 100644 --- a/Tests/RunCMake/TransformDepfile/RunCMakeTest.cmake +++ b/Tests/RunCMake/TransformDepfile/RunCMakeTest.cmake @@ -5,10 +5,6 @@ function(run_transform_depfile name) run_cmake_command(${name}-gcc ${CMAKE_COMMAND} -E cmake_transform_depfile "${RunCMake_GENERATOR}" gccdepfile "${RunCMake_SOURCE_DIR}" "${RunCMake_SOURCE_DIR}/subdir" "${RunCMake_BINARY_DIR}" "${RunCMake_BINARY_DIR}/subdir" "${CMAKE_CURRENT_LIST_DIR}/${name}.d" out.d ) - set(RunCMake-check-file vstlog.cmake) - run_cmake_command(${name}-tlog - ${CMAKE_COMMAND} -E cmake_transform_depfile "${RunCMake_GENERATOR}" vstlog "${RunCMake_SOURCE_DIR}" "${RunCMake_SOURCE_DIR}/subdir" "${RunCMake_BINARY_DIR}" "${RunCMake_BINARY_DIR}/subdir" "${CMAKE_CURRENT_LIST_DIR}/${name}.d" out.tlog - ) endfunction() if(WIN32) -- cgit v0.12