summaryrefslogtreecommitdiffstats
path: root/Source/cmLocalGenerator.cxx
diff options
context:
space:
mode:
authorBill Hoffman <bill.hoffman@kitware.com>2006-10-27 20:01:56 (GMT)
committerBill Hoffman <bill.hoffman@kitware.com>2006-10-27 20:01:56 (GMT)
commit00230147fa314745cf3a928166a7454b3688116f (patch)
treee05e89d697713d51d5ee9184c93e24a6aadf7e27 /Source/cmLocalGenerator.cxx
parent883c96ba64145d67af7f79fa4ca11f6bfd713201 (diff)
downloadCMake-00230147fa314745cf3a928166a7454b3688116f.zip
CMake-00230147fa314745cf3a928166a7454b3688116f.tar.gz
CMake-00230147fa314745cf3a928166a7454b3688116f.tar.bz2
ENH: move changes from main tree
Diffstat (limited to 'Source/cmLocalGenerator.cxx')
-rw-r--r--Source/cmLocalGenerator.cxx31
1 files changed, 30 insertions, 1 deletions
diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx
index 8694939..a6e44bd 100644
--- a/Source/cmLocalGenerator.cxx
+++ b/Source/cmLocalGenerator.cxx
@@ -40,6 +40,7 @@ cmLocalGenerator::cmLocalGenerator()
this->Parent = 0;
this->WindowsShell = false;
this->WindowsVSIDE = false;
+ this->WatcomWMake = false;
this->MSYSShell = false;
this->IgnoreLibPrefix = false;
this->UseRelativePaths = false;
@@ -840,6 +841,28 @@ cmLocalGenerator::ExpandRuleVariable(std::string const& variable,
{
return this->TargetImplib;
}
+ if(variable == "TARGET_VERSION_MAJOR")
+ {
+ if(replaceValues.TargetVersionMajor)
+ {
+ return replaceValues.TargetVersionMajor;
+ }
+ else
+ {
+ return "0";
+ }
+ }
+ if(variable == "TARGET_VERSION_MINOR")
+ {
+ if(replaceValues.TargetVersionMinor)
+ {
+ return replaceValues.TargetVersionMinor;
+ }
+ else
+ {
+ return "0";
+ }
+ }
if(replaceValues.Target)
{
if(variable == "TARGET_BASE")
@@ -1629,7 +1652,9 @@ void cmLocalGenerator
{
// Compute the proper name to use to link this library.
cmTarget* tgt = this->GlobalGenerator->FindTarget(0, lib.c_str());
- if(tgt)
+ if(tgt && (tgt->GetType() == cmTarget::STATIC_LIBRARY ||
+ tgt->GetType() == cmTarget::SHARED_LIBRARY ||
+ tgt->GetType() == cmTarget::MODULE_LIBRARY))
{
// This is a CMake target. Ask the target for its real name.
// Pass the full path to the target file but purposely leave
@@ -2324,6 +2349,10 @@ std::string cmLocalGenerator::EscapeForShell(const char* str, bool makeVars,
{
flags |= cmsysSystem_Shell_Flag_EchoWindows;
}
+ if(this->WatcomWMake)
+ {
+ flags |= cmsysSystem_Shell_Flag_WatcomWMake;
+ }
// Compute the buffer size needed.
int size = (this->WindowsShell ?