ENH: Add a notion of a global target
This commit is contained in:
parent
f1fb182270
commit
ea5564624c
|
@ -1056,6 +1056,7 @@ void cmMakefile::AddGlobalLinkInformation(const char* name, cmTarget& target)
|
|||
switch(target.GetType())
|
||||
{
|
||||
case cmTarget::UTILITY:
|
||||
case cmTarget::GLOBAL_TARGET:
|
||||
case cmTarget::INSTALL_FILES:
|
||||
case cmTarget::INSTALL_PROGRAMS:
|
||||
return;
|
||||
|
|
|
@ -135,7 +135,7 @@ void cmTarget::TraceVSDependencies(std::string projFile,
|
|||
srcFilesQueued.insert(projFile);
|
||||
}
|
||||
// add in the library depends for custom targets
|
||||
if (this->GetType() == cmTarget::UTILITY)
|
||||
if (this->GetType() == cmTarget::UTILITY || this->GetType() == cmTarget::GLOBAL_TARGET)
|
||||
{
|
||||
for (std::vector<cmCustomCommand>::iterator ic =
|
||||
this->GetPostBuildCommands().begin();
|
||||
|
@ -886,6 +886,9 @@ const char *cmTarget::GetProperty(const char* prop)
|
|||
case cmTarget::UTILITY:
|
||||
return "UTILITY";
|
||||
break;
|
||||
case cmTarget::GLOBAL_TARGET:
|
||||
return "GLOBAL_TARGET";
|
||||
break;
|
||||
case cmTarget::INSTALL_FILES:
|
||||
return "INSTALL_FILES";
|
||||
break;
|
||||
|
@ -991,6 +994,7 @@ const char* cmTarget::GetCreateRuleVariable()
|
|||
case cmTarget::EXECUTABLE:
|
||||
return "_LINK_EXECUTABLE";
|
||||
case cmTarget::UTILITY:
|
||||
case cmTarget::GLOBAL_TARGET:
|
||||
case cmTarget::INSTALL_FILES:
|
||||
case cmTarget::INSTALL_PROGRAMS:
|
||||
break;
|
||||
|
@ -1014,6 +1018,7 @@ const char* cmTarget::GetSuffixVariableInternal(TargetType type,
|
|||
case cmTarget::EXECUTABLE:
|
||||
return "CMAKE_EXECUTABLE_SUFFIX";
|
||||
case cmTarget::UTILITY:
|
||||
case cmTarget::GLOBAL_TARGET:
|
||||
case cmTarget::INSTALL_FILES:
|
||||
case cmTarget::INSTALL_PROGRAMS:
|
||||
break;
|
||||
|
@ -1037,6 +1042,7 @@ const char* cmTarget::GetPrefixVariableInternal(TargetType type,
|
|||
return "CMAKE_SHARED_MODULE_PREFIX";
|
||||
case cmTarget::EXECUTABLE:
|
||||
case cmTarget::UTILITY:
|
||||
case cmTarget::GLOBAL_TARGET:
|
||||
case cmTarget::INSTALL_FILES:
|
||||
case cmTarget::INSTALL_PROGRAMS:
|
||||
break;
|
||||
|
|
|
@ -35,7 +35,7 @@ public:
|
|||
cmTarget();
|
||||
enum TargetType { EXECUTABLE, STATIC_LIBRARY,
|
||||
SHARED_LIBRARY, MODULE_LIBRARY, UTILITY, INSTALL_FILES,
|
||||
INSTALL_PROGRAMS };
|
||||
INSTALL_PROGRAMS, GLOBAL_TARGET};
|
||||
|
||||
enum CustomCommandType { PRE_BUILD, PRE_LINK, POST_BUILD };
|
||||
|
||||
|
|
Loading…
Reference in New Issue