BUG: fix for 4524, add support for target properties to set vs source code control information
This commit is contained in:
parent
db0e1fd675
commit
637418a835
|
@ -1832,6 +1832,26 @@ cmLocalVisualStudio7Generator::WriteProjectStart(std::ostream& fout,
|
|||
{
|
||||
keyword = "Win32Proj";
|
||||
}
|
||||
const char* vsProjectname = target.GetProperty("VS_SCC_PROJECTNAME");
|
||||
if (!vsProjectname)
|
||||
{
|
||||
vsProjectname = "";
|
||||
}
|
||||
const char* vsLocalpath = target.GetProperty("VS_SCC_LOCALPATH");
|
||||
if (!vsLocalpath)
|
||||
{
|
||||
vsLocalpath = "";
|
||||
}
|
||||
const char* vsProvider = target.GetProperty("VS_SCC_PROVIDER");
|
||||
std::string providerString;
|
||||
if (!vsProvider)
|
||||
{
|
||||
providerString = "";
|
||||
}
|
||||
else
|
||||
{
|
||||
providerString = "\tSccProvider=\"" + std::string(vsProvider) + "\"\n";
|
||||
}
|
||||
cmGlobalVisualStudio7Generator* gg =
|
||||
static_cast<cmGlobalVisualStudio7Generator *>(this->GlobalGenerator);
|
||||
fout << "\tName=\"" << projLabel << "\"\n";
|
||||
|
@ -1839,9 +1859,15 @@ cmLocalVisualStudio7Generator::WriteProjectStart(std::ostream& fout,
|
|||
{
|
||||
fout << "\tProjectGUID=\"{" << gg->GetGUID(libName) << "}\"\n";
|
||||
}
|
||||
fout << "\tSccProjectName=\"\"\n"
|
||||
<< "\tSccLocalPath=\"\"\n"
|
||||
<< "\tKeyword=\"" << keyword << "\">\n"
|
||||
// if we have all the required Source code control tags
|
||||
// then add that to the project
|
||||
if(vsProvider && vsLocalpath && vsProjectname)
|
||||
{
|
||||
fout << "\tSccProjectName=\"" << vsProjectname << "\"\n"
|
||||
<< "\tSccLocalPath=\"" << vsLocalpath << "\"\n"
|
||||
<< "\tSccProvider=\"" << providerString << "\"\n";
|
||||
}
|
||||
fout << "\tKeyword=\"" << keyword << "\">\n"
|
||||
<< "\t<Platforms>\n"
|
||||
<< "\t\t<Platform\n\t\t\tName=\"" << this->PlatformName << "\"/>\n"
|
||||
<< "\t</Platforms>\n";
|
||||
|
|
|
@ -145,6 +145,9 @@ public:
|
|||
"the target in an IDE like visual studio. VS_KEYWORD can be set "
|
||||
"to change the visual studio keyword, for example QT integration "
|
||||
"works better if this is set to Qt4VSv1.0.\n"
|
||||
"VS_SCC_PROJECTNAME, VS_SCC_LOCALPATH, VS_SCC_PROVIDER can be set "
|
||||
"to add support for source control bindings in a Visual Studio "
|
||||
"project file.\n"
|
||||
"When a library is built CMake by default generates code to remove "
|
||||
"any existing library using all possible names. This is needed "
|
||||
"to support libraries that switch between STATIC and SHARED by "
|
||||
|
|
Loading…
Reference in New Issue