COMP: Converting INSTALL->ALL_BUILD dependency implementation to use the AddUtility method on a target. This significantly simplifies the implementation and removes warnings about hiding virtual functions.
This commit is contained in:
parent
cf5c2b7ae8
commit
48702f8a8d
|
@ -165,6 +165,17 @@ void cmGlobalVisualStudio6Generator::Generate()
|
|||
AddUtilityCommand("INSTALL", false, no_output, no_depends,
|
||||
cmake_command.c_str(),
|
||||
"-DBUILD_TYPE=$(IntDir)", "-P", "cmake_install.cmake");
|
||||
|
||||
// Make the INSTALL target depend on ALL_BUILD unless the
|
||||
// project says to not do so.
|
||||
const char* noall =
|
||||
gen[0]->GetMakefile()
|
||||
->GetDefinition("CMAKE_SKIP_INSTALL_ALL_DEPENDENCY");
|
||||
if(!noall || cmSystemTools::IsOff(noall))
|
||||
{
|
||||
cmTarget* install = gen[0]->GetMakefile()->FindTarget("INSTALL");
|
||||
install->AddUtility("ALL_BUILD");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -267,7 +278,6 @@ void cmGlobalVisualStudio6Generator::WriteDSWFile(std::ostream& fout,
|
|||
if ((l->second.GetType() != cmTarget::INSTALL_FILES)
|
||||
&& (l->second.GetType() != cmTarget::INSTALL_PROGRAMS))
|
||||
{
|
||||
const char* extra_depend = 0;
|
||||
bool skip = false;
|
||||
// skip ALL_BUILD and RUN_TESTS if they have already been added
|
||||
if(l->first == "ALL_BUILD" )
|
||||
|
@ -291,16 +301,6 @@ void cmGlobalVisualStudio6Generator::WriteDSWFile(std::ostream& fout,
|
|||
{
|
||||
doneInstall = true;
|
||||
}
|
||||
|
||||
// Make the INSTALL target depend on ALL_BUILD unless the
|
||||
// project says to not do so.
|
||||
const char* noall =
|
||||
root->GetMakefile()
|
||||
->GetDefinition("CMAKE_SKIP_INSTALL_ALL_DEPENDENCY");
|
||||
if(!noall || cmSystemTools::IsOff(noall))
|
||||
{
|
||||
extra_depend = "ALL_BUILD";
|
||||
}
|
||||
}
|
||||
if(l->first == "RUN_TESTS")
|
||||
{
|
||||
|
@ -315,8 +315,7 @@ void cmGlobalVisualStudio6Generator::WriteDSWFile(std::ostream& fout,
|
|||
}
|
||||
if(!skip)
|
||||
{
|
||||
this->WriteProject(fout, si->c_str(), dir.c_str(),l->second,
|
||||
extra_depend);
|
||||
this->WriteProject(fout, si->c_str(), dir.c_str(),l->second);
|
||||
}
|
||||
++si;
|
||||
}
|
||||
|
@ -366,8 +365,7 @@ void cmGlobalVisualStudio6Generator::OutputDSWFile()
|
|||
void cmGlobalVisualStudio6Generator::WriteProject(std::ostream& fout,
|
||||
const char* dspname,
|
||||
const char* dir,
|
||||
const cmTarget& target,
|
||||
const char* extra_depend)
|
||||
const cmTarget& target)
|
||||
{
|
||||
fout << "#########################################################"
|
||||
"######################\n\n";
|
||||
|
@ -401,14 +399,6 @@ void cmGlobalVisualStudio6Generator::WriteProject(std::ostream& fout,
|
|||
}
|
||||
}
|
||||
|
||||
// Add an extra dependency if specified.
|
||||
if(extra_depend)
|
||||
{
|
||||
fout << "Begin Project Dependency\n";
|
||||
fout << "Project_Dep_Name " << extra_depend << "\n";
|
||||
fout << "End Project Dependency\n";
|
||||
}
|
||||
|
||||
std::set<cmStdString>::const_iterator i, end;
|
||||
// write utility dependencies.
|
||||
i = target.GetUtilities().begin();
|
||||
|
|
|
@ -79,7 +79,7 @@ private:
|
|||
void WriteDSWHeader(std::ostream& fout);
|
||||
void WriteProject(std::ostream& fout,
|
||||
const char* name, const char* path,
|
||||
const cmTarget &t, const char* extra_depend);
|
||||
const cmTarget &t);
|
||||
void WriteExternalProject(std::ostream& fout,
|
||||
const char* name, const char* path,
|
||||
const std::vector<std::string>& dependencies);
|
||||
|
|
|
@ -130,7 +130,6 @@ void cmGlobalVisualStudio71Generator::WriteSLNFile(std::ostream& fout,
|
|||
if ((l->second.GetType() != cmTarget::INSTALL_FILES)
|
||||
&& (l->second.GetType() != cmTarget::INSTALL_PROGRAMS))
|
||||
{
|
||||
const char* extra_depend = 0;
|
||||
bool skip = false;
|
||||
if(l->first == "ALL_BUILD" )
|
||||
{
|
||||
|
@ -153,15 +152,6 @@ void cmGlobalVisualStudio71Generator::WriteSLNFile(std::ostream& fout,
|
|||
{
|
||||
doneInstall = true;
|
||||
}
|
||||
// Make the INSTALL target depend on ALL_BUILD unless the
|
||||
// project says to not do so.
|
||||
const char* noall =
|
||||
root->GetMakefile()
|
||||
->GetDefinition("CMAKE_SKIP_INSTALL_ALL_DEPENDENCY");
|
||||
if(!noall || cmSystemTools::IsOff(noall))
|
||||
{
|
||||
extra_depend = "ALL_BUILD";
|
||||
}
|
||||
}
|
||||
if(l->first == "RUN_TESTS")
|
||||
{
|
||||
|
@ -176,8 +166,7 @@ void cmGlobalVisualStudio71Generator::WriteSLNFile(std::ostream& fout,
|
|||
}
|
||||
if(!skip)
|
||||
{
|
||||
this->WriteProject(fout, si->c_str(), dir.c_str(),l->second,
|
||||
extra_depend);
|
||||
this->WriteProject(fout, si->c_str(), dir.c_str(),l->second);
|
||||
}
|
||||
++si;
|
||||
}
|
||||
|
@ -240,8 +229,7 @@ void
|
|||
cmGlobalVisualStudio71Generator::WriteProject(std::ostream& fout,
|
||||
const char* dspname,
|
||||
const char* dir,
|
||||
const cmTarget& t,
|
||||
const char* extra_depend)
|
||||
const cmTarget& t)
|
||||
{
|
||||
std::string d = cmSystemTools::ConvertToOutputPath(dir);
|
||||
fout << "Project(\"{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}\") = \""
|
||||
|
@ -249,7 +237,7 @@ cmGlobalVisualStudio71Generator::WriteProject(std::ostream& fout,
|
|||
<< d << "\\" << dspname << ".vcproj\", \"{"
|
||||
<< this->GetGUID(dspname) << "}\"\n";
|
||||
fout << "\tProjectSection(ProjectDependencies) = postProject\n";
|
||||
this->WriteProjectDepends(fout, dspname, dir, t, extra_depend);
|
||||
this->WriteProjectDepends(fout, dspname, dir, t);
|
||||
fout << "\tEndProjectSection\n";
|
||||
|
||||
fout <<"EndProject\n";
|
||||
|
@ -265,8 +253,7 @@ cmGlobalVisualStudio71Generator
|
|||
::WriteProjectDepends(std::ostream& fout,
|
||||
const char* dspname,
|
||||
const char*,
|
||||
const cmTarget& target,
|
||||
const char* extra_depend)
|
||||
const cmTarget& target)
|
||||
{
|
||||
// insert Begin Project Dependency Project_Dep_Name project stuff here
|
||||
if (target.GetType() != cmTarget::STATIC_LIBRARY)
|
||||
|
@ -291,13 +278,6 @@ cmGlobalVisualStudio71Generator
|
|||
}
|
||||
}
|
||||
|
||||
// Add the extra dependency if requested.
|
||||
if(extra_depend)
|
||||
{
|
||||
fout << "\t\t{" << this->GetGUID(extra_depend) << "} = {"
|
||||
<< this->GetGUID(extra_depend) << "}\n";
|
||||
}
|
||||
|
||||
std::set<cmStdString>::const_iterator i, end;
|
||||
// write utility dependencies.
|
||||
i = target.GetUtilities().begin();
|
||||
|
|
|
@ -48,10 +48,10 @@ protected:
|
|||
std::vector<cmLocalGenerator*>& generators);
|
||||
virtual void WriteProject(std::ostream& fout,
|
||||
const char* name, const char* path,
|
||||
const cmTarget &t, const char* extra_depend);
|
||||
const cmTarget &t);
|
||||
virtual void WriteProjectDepends(std::ostream& fout,
|
||||
const char* name, const char* path,
|
||||
const cmTarget &t, const char* extra_depend);
|
||||
const cmTarget &t);
|
||||
virtual void WriteProjectConfigurations(std::ostream& fout, const char* name, bool in_all);
|
||||
virtual void WriteExternalProject(std::ostream& fout, const char* name, const char* path,
|
||||
const std::vector<std::string>& depends);
|
||||
|
|
|
@ -197,9 +197,20 @@ void cmGlobalVisualStudio7Generator::Generate()
|
|||
AddUtilityCommand("INSTALL", false, no_output, no_depends,
|
||||
cmake_command.c_str(),
|
||||
"-DBUILD_TYPE=$(IntDir)", "-P", "cmake_install.cmake");
|
||||
|
||||
// Make the INSTALL target depend on ALL_BUILD unless the
|
||||
// project says to not do so.
|
||||
const char* noall =
|
||||
gen[0]->GetMakefile()
|
||||
->GetDefinition("CMAKE_SKIP_INSTALL_ALL_DEPENDENCY");
|
||||
if(!noall || cmSystemTools::IsOff(noall))
|
||||
{
|
||||
cmTarget* install = gen[0]->GetMakefile()->FindTarget("INSTALL");
|
||||
install->AddUtility("ALL_BUILD");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// add the Run Tests command
|
||||
this->SetupTests();
|
||||
|
||||
|
@ -432,21 +443,7 @@ void cmGlobalVisualStudio7Generator::WriteSLNFile(std::ostream& fout,
|
|||
else if ((l->second.GetType() != cmTarget::INSTALL_FILES)
|
||||
&& (l->second.GetType() != cmTarget::INSTALL_PROGRAMS))
|
||||
{
|
||||
// Make the INSTALL target depend on ALL_BUILD unless the
|
||||
// project says to not do so.
|
||||
const char* extra_depend = 0;
|
||||
if(l->first == "INSTALL")
|
||||
{
|
||||
const char* noall =
|
||||
root->GetMakefile()
|
||||
->GetDefinition("CMAKE_SKIP_INSTALL_ALL_DEPENDENCY");
|
||||
if(!noall || cmSystemTools::IsOff(noall))
|
||||
{
|
||||
extra_depend = "ALL_BUILD";
|
||||
}
|
||||
}
|
||||
this->WriteProjectDepends(fout, si->c_str(), dir.c_str(), l->second,
|
||||
extra_depend);
|
||||
this->WriteProjectDepends(fout, si->c_str(), dir.c_str(), l->second);
|
||||
++si;
|
||||
}
|
||||
}
|
||||
|
@ -517,8 +514,7 @@ cmGlobalVisualStudio7Generator
|
|||
::WriteProjectDepends(std::ostream& fout,
|
||||
const char* dspname,
|
||||
const char*,
|
||||
const cmTarget& target,
|
||||
const char* extra_depend)
|
||||
const cmTarget& target)
|
||||
{
|
||||
int depcount = 0;
|
||||
// insert Begin Project Dependency Project_Dep_Name project stuff here
|
||||
|
@ -555,18 +551,6 @@ cmGlobalVisualStudio7Generator
|
|||
}
|
||||
}
|
||||
|
||||
// Add the extra dependency if requested.
|
||||
if(extra_depend)
|
||||
{
|
||||
std::string guid = this->GetGUID(extra_depend);
|
||||
if(!guid.empty())
|
||||
{
|
||||
fout << "\t\t{" << this->GetGUID(dspname) << "}." << depcount << " = {"
|
||||
<< guid << "}\n";
|
||||
depcount++;
|
||||
}
|
||||
}
|
||||
|
||||
std::set<cmStdString>::const_iterator i, end;
|
||||
// write utility dependencies.
|
||||
i = target.GetUtilities().begin();
|
||||
|
|
|
@ -89,7 +89,7 @@ protected:
|
|||
const cmTarget &t);
|
||||
virtual void WriteProjectDepends(std::ostream& fout,
|
||||
const char* name, const char* path,
|
||||
const cmTarget &t, const char* extra_depend);
|
||||
const cmTarget &t);
|
||||
virtual void WriteProjectConfigurations(std::ostream& fout, const char* name, bool in_all);
|
||||
virtual void WriteSLNFooter(std::ostream& fout);
|
||||
virtual void WriteSLNHeader(std::ostream& fout);
|
||||
|
|
Loading…
Reference in New Issue