summaryrefslogtreecommitdiffstats
path: root/Source/cmOrderLinkDirectories.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'Source/cmOrderLinkDirectories.cxx')
-rw-r--r--Source/cmOrderLinkDirectories.cxx10
1 files changed, 8 insertions, 2 deletions
diff --git a/Source/cmOrderLinkDirectories.cxx b/Source/cmOrderLinkDirectories.cxx
index bd07f8a..2779f42 100644
--- a/Source/cmOrderLinkDirectories.cxx
+++ b/Source/cmOrderLinkDirectories.cxx
@@ -463,7 +463,11 @@ bool cmOrderLinkDirectories::DetermineLibraryPathOrder()
#ifdef CM_ORDER_LINK_DIRECTORIES_DEBUG
fprintf(stderr, "Raw link item [%s]\n", this->RawLinkItems[i].c_str());
#endif
- if(cmSystemTools::FileIsFullPath(this->RawLinkItems[i].c_str()))
+ // check to see if the file is a full path or just contains
+ // a / in it and is a path to something
+ cmStdString& item = this->RawLinkItems[i];
+ if(cmSystemTools::FileIsFullPath(item.c_str())
+ || item.find("/") != item.npos)
{
if(cmSystemTools::FileIsDirectory(this->RawLinkItems[i].c_str()))
{
@@ -486,6 +490,8 @@ bool cmOrderLinkDirectories::DetermineLibraryPathOrder()
}
else
{
+ // A full path to a directory was found as a link item
+ // warn user
std::string message =
"Warning: Ignoring path found in link libraries for target: ";
message += this->TargetName;
@@ -496,7 +502,7 @@ bool cmOrderLinkDirectories::DetermineLibraryPathOrder()
cmSystemTools::Message(message.c_str());
continue;
}
- }
+ } // is it a directory
if(!framework)
{
dir = cmSystemTools::GetFilenamePath(this->RawLinkItems[i]);