summaryrefslogtreecommitdiffstats
path: root/Source/cmTarget.cxx
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2006-10-05 20:30:47 (GMT)
committerBrad King <brad.king@kitware.com>2006-10-05 20:30:47 (GMT)
commite0a662a3ddfe3c906f81b0a070e4de169e46646e (patch)
treed2d48e7ae58604b3e09f3ad239ffadab2c55ee8c /Source/cmTarget.cxx
parent48470eaa0072d1ce6e4f407c014d18197f4cd5c3 (diff)
downloadCMake-e0a662a3ddfe3c906f81b0a070e4de169e46646e.zip
CMake-e0a662a3ddfe3c906f81b0a070e4de169e46646e.tar.gz
CMake-e0a662a3ddfe3c906f81b0a070e4de169e46646e.tar.bz2
ENH: Adding version number to the name of a DLL built in cygwin but not the import library. This addresses bug#3571.
Diffstat (limited to 'Source/cmTarget.cxx')
-rw-r--r--Source/cmTarget.cxx11
1 files changed, 11 insertions, 0 deletions
diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx
index 24e196a..9ac85ee 100644
--- a/Source/cmTarget.cxx
+++ b/Source/cmTarget.cxx
@@ -1255,6 +1255,17 @@ void cmTarget::GetFullNameInternal(TargetType type,
// Append the per-configuration postfix.
outBase += configPostfix?configPostfix:"";
+ // Name shared libraries with their version number on some platforms.
+ if(const char* version = this->GetProperty("VERSION"))
+ {
+ if(type == cmTarget::SHARED_LIBRARY && !implib &&
+ this->Makefile->IsOn("CMAKE_SHARED_LIBRARY_NAME_WITH_VERSION"))
+ {
+ outBase += "-";
+ outBase += version;
+ }
+ }
+
// Append the suffix.
outSuffix = targetSuffix?targetSuffix:"";
}