From 318ec0756045818c6697ac3a496e8e8b8e984484 Mon Sep 17 00:00:00 2001 From: Jason Haslam Date: Sun, 4 Dec 2022 19:56:00 -0700 Subject: automoc: Remove existing output file before invoking moc Remove the output file before invoking moc in case the case of source file has changed on disk. Recent versions of clang warn when the case of the include directive (which does change) doesn't match the case of the file on disk. --- Source/cmQtAutoMocUic.cxx | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Source/cmQtAutoMocUic.cxx b/Source/cmQtAutoMocUic.cxx index 4753e61..683c18f 100644 --- a/Source/cmQtAutoMocUic.cxx +++ b/Source/cmQtAutoMocUic.cxx @@ -1981,6 +1981,9 @@ void cmQtAutoMocUicT::JobCompileMocT::Process() std::string const& sourceFile = this->Mapping->SourceFile->FileName; std::string const& outputFile = this->Mapping->OutputFile; + // Remove output file in case the case of the source file has changed + cmSystemTools::RemoveFile(outputFile); + // Compose moc command std::vector cmd; { -- cgit v0.12