Notes |
|
(0020397)
|
Daniel Emminizer
|
2010-04-26 06:38
|
|
I have experienced similar problems. The problem appears to be in cmVisualStudio10TargetGenerator.cxx. In cmVisualStudio10TargetGenerator::WritePathAndIncrementalLinkOptions(), the </TargetName> line should be changed to something like:
*this->BuildFileStream << cmSystemTools::GetFilenameWithoutLastExtension(
targetNameFull.c_str())
<< "</TargetName>\n";
Additionally, the VS2010 generator is not saving the Project Name property either. This can be fixed by updating cmVisualStudio10TargetGenerator::Generate():
(*this->BuildFileStream) << this->Platform << "</Platform>\n";
// Begin Changes: Save <ProjectName>
this->WriteString("<ProjectName>", 2);
const char* projLabel = this->Target->GetProperty("PROJECT_LABEL");
if(!projLabel)
(*this->BuildFileStream) << this->Name << "</ProjectName>\n";
else
(*this->BuildFileStream) << projLabel << "</ProjectName>\n";
// End Changes
this->WriteString("</PropertyGroup>\n", 1);
Hope this helps. |
|
|
(0022102)
|
d3x0r
|
2010-09-07 07:20
|
|
Fixes in 'next' branch do not fix
add_library( basename-sub-something-group SHARED whatever.c )
SET_TARGET_PROPERTIES( bag-msg-core-server PROPERTIES
SUFFIX ""
PREFIX ""
)
extension remains '.dll' instead of being blank.
(maybe instead of overriding all the internal parts 'targetname' 'targetfilename' etc, could just override the output path. |
|
|
(0022139)
|
Bill Hoffman
|
2010-09-08 14:21
|
|
So, we are generating the files correctly:
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">basename-sub-something-group</TargetName>
<TargetExt Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"></TargetExt>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
However, it seems that VS 2010 is not handling this correctly. Can you via the IDE GUI create a basename-sub-something-group.vcxproj file that does what you want? |
|
|
(0022166)
|
David Cole
|
2010-09-09 16:56
|
|
|
|
(0022167)
|
David Cole
|
2010-09-09 17:07
|
|
Bill and d3x0r,
As a work-around for the VS2010 problem with an *empty* suffix property, it appears you can say:
SUFFIX "."
to force creation of an extensionless dll in VS 2010...
I have not verified whether or not this works with previous visual studio versions... but at least you can workaround it for now. (And if you must, you could conditionalize using "." for VS 2010 only...) |
|