diff options
author | Craig Scott <craig.scott@crascit.com> | 2019-05-08 12:49:17 (GMT) |
---|---|---|
committer | Kitware Robot <kwrobot@kitware.com> | 2019-05-08 12:49:34 (GMT) |
commit | 4aace9b015cd95209c191139b091acbe0c047864 (patch) | |
tree | 3683b98e66ffc2332206a6e2701ea52677758613 /Source | |
parent | afd7df9d1cd9f4aefc3a15e274cd8c6fb01e339c (diff) | |
parent | 2a34d0ac3613101996b4e751bc2653e4cbeaf5b0 (diff) | |
download | CMake-4aace9b015cd95209c191139b091acbe0c047864.zip CMake-4aace9b015cd95209c191139b091acbe0c047864.tar.gz CMake-4aace9b015cd95209c191139b091acbe0c047864.tar.bz2 |
Merge topic 'ctest-update-version-override'
2a34d0ac36 ctest: Add new variable CTEST_UPDATE_VERSION_OVERRIDE
7ddac95121 Help: cross-ref and wording of docs related to ctest_update()
a0d04d8810 testing: Update terminology in ctest_update tests
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Zack Galbreath <zack.galbreath@kitware.com>
Merge-request: !3277
Diffstat (limited to 'Source')
-rw-r--r-- | Source/CTest/cmCTestGlobalVC.cxx | 5 | ||||
-rw-r--r-- | Source/CTest/cmCTestGlobalVC.h | 2 | ||||
-rw-r--r-- | Source/CTest/cmCTestUpdateCommand.cxx | 3 | ||||
-rw-r--r-- | Source/CTest/cmCTestVC.cxx | 14 | ||||
-rw-r--r-- | Source/CTest/cmCTestVC.h | 1 |
5 files changed, 25 insertions, 0 deletions
diff --git a/Source/CTest/cmCTestGlobalVC.cxx b/Source/CTest/cmCTestGlobalVC.cxx index a2d4d2c..54ebd4f 100644 --- a/Source/CTest/cmCTestGlobalVC.cxx +++ b/Source/CTest/cmCTestGlobalVC.cxx @@ -117,3 +117,8 @@ bool cmCTestGlobalVC::WriteXMLUpdates(cmXMLWriter& xml) return result; } + +void cmCTestGlobalVC::SetNewRevision(std::string const& revision) +{ + this->NewRevision = revision; +} diff --git a/Source/CTest/cmCTestGlobalVC.h b/Source/CTest/cmCTestGlobalVC.h index 76377ed..9c57215 100644 --- a/Source/CTest/cmCTestGlobalVC.h +++ b/Source/CTest/cmCTestGlobalVC.h @@ -32,6 +32,8 @@ protected: // Implement cmCTestVC internal API. bool WriteXMLUpdates(cmXMLWriter& xml) override; + void SetNewRevision(std::string const& revision) override; + /** Represent a vcs-reported action for one path in a revision. */ struct Change { diff --git a/Source/CTest/cmCTestUpdateCommand.cxx b/Source/CTest/cmCTestUpdateCommand.cxx index a2f1462..65dc921 100644 --- a/Source/CTest/cmCTestUpdateCommand.cxx +++ b/Source/CTest/cmCTestUpdateCommand.cxx @@ -62,6 +62,9 @@ cmCTestGenericHandler* cmCTestUpdateCommand::InitializeHandler() this->Makefile, "UpdateVersionOnly", "CTEST_UPDATE_VERSION_ONLY", this->Quiet); this->CTest->SetCTestConfigurationFromCMakeVariable( + this->Makefile, "UpdateVersionOverride", "CTEST_UPDATE_VERSION_OVERRIDE", + this->Quiet); + this->CTest->SetCTestConfigurationFromCMakeVariable( this->Makefile, "HGCommand", "CTEST_HG_COMMAND", this->Quiet); this->CTest->SetCTestConfigurationFromCMakeVariable( this->Makefile, "HGUpdateOptions", "CTEST_HG_UPDATE_OPTIONS", this->Quiet); diff --git a/Source/CTest/cmCTestVC.cxx b/Source/CTest/cmCTestVC.cxx index 374e73f..eea41cf 100644 --- a/Source/CTest/cmCTestVC.cxx +++ b/Source/CTest/cmCTestVC.cxx @@ -141,6 +141,15 @@ void cmCTestVC::CleanupImpl() bool cmCTestVC::Update() { bool result = true; + + // Use the explicitly specified version. + std::string versionOverride = + this->CTest->GetCTestConfiguration("UpdateVersionOverride"); + if (!versionOverride.empty()) { + this->SetNewRevision(versionOverride); + return true; + } + // if update version only is on then do not actually update, // just note the current version and finish if (!cmSystemTools::IsOn( @@ -166,6 +175,11 @@ bool cmCTestVC::NoteNewRevision() return true; } +void cmCTestVC::SetNewRevision(std::string const& /*unused*/) +{ + // We do nothing by default. +} + bool cmCTestVC::UpdateImpl() { cmCTestLog(this->CTest, HANDLER_VERBOSE_OUTPUT, diff --git a/Source/CTest/cmCTestVC.h b/Source/CTest/cmCTestVC.h index 69a3bf0..2a4765d 100644 --- a/Source/CTest/cmCTestVC.h +++ b/Source/CTest/cmCTestVC.h @@ -70,6 +70,7 @@ protected: virtual bool NoteOldRevision(); virtual bool UpdateImpl(); virtual bool NoteNewRevision(); + virtual void SetNewRevision(std::string const& revision); virtual bool WriteXMLUpdates(cmXMLWriter& xml); #if defined(__SUNPRO_CC) && __SUNPRO_CC <= 0x510 |