From 360d4155920b851f114843e91234bb0ae33afef3 Mon Sep 17 00:00:00 2001 From: Daniel Pfeifer Date: Thu, 5 Jan 2017 23:41:01 +0100 Subject: cmLoadCommandCommand: Port away from FinalPass --- Source/cmLoadCommandCommand.cxx | 24 +++++------------------- 1 file changed, 5 insertions(+), 19 deletions(-) diff --git a/Source/cmLoadCommandCommand.cxx b/Source/cmLoadCommandCommand.cxx index 2697f44..f5da2ee 100644 --- a/Source/cmLoadCommandCommand.cxx +++ b/Source/cmLoadCommandCommand.cxx @@ -126,18 +126,6 @@ public: bool InitialPass(std::vector const& args, cmExecutionStatus&) override; - /** - * This is called at the end after all the information - * specified by the command is accumulated. Most commands do - * not implement this method. At this point, reading and - * writing to the cache can be done. - */ - void FinalPass() override; - bool HasFinalPass() const override - { - return this->Impl->FinalPass != nullptr; - } - private: std::shared_ptr Impl; }; @@ -168,6 +156,11 @@ bool cmLoadedCommand::InitialPass(std::vector const& args, cmFreeArguments(argc, argv); if (result) { + if (this->Impl->FinalPass) { + auto impl = this->Impl; + this->Makefile->AddFinalAction( + [impl](cmMakefile& makefile) { impl->DoFinalPass(&makefile); }); + } return true; } @@ -178,13 +171,6 @@ bool cmLoadedCommand::InitialPass(std::vector const& args, return false; } -void cmLoadedCommand::FinalPass() -{ - if (this->Impl->FinalPass) { - this->Impl->DoFinalPass(this->Makefile); - } -} - } // namespace // cmLoadCommandCommand -- cgit v0.12