diff --git a/Source/cmMarkAsAdvancedCommand.cxx b/Source/cmMarkAsAdvancedCommand.cxx index 17f3002fb7..1e71b2ddd5 100644 --- a/Source/cmMarkAsAdvancedCommand.cxx +++ b/Source/cmMarkAsAdvancedCommand.cxx @@ -48,6 +48,7 @@ bool cmMarkAsAdvancedCommand::InitialPass(std::vector const& argsIn { m_Makefile->AddCacheDefinition(variable.c_str(), 0, 0, cmCacheManager::UNINITIALIZED); + overwrite = true; } it.Find(variable.c_str()); if ( it.IsAtEnd() ) @@ -55,7 +56,10 @@ bool cmMarkAsAdvancedCommand::InitialPass(std::vector const& argsIn cmSystemTools::Error("This should never happen..."); return false; } - it.SetProperty("ADVANCED", value); + if ( overwrite ) + { + it.SetProperty("ADVANCED", value); + } } return true; }