[Cmake-commits] CMake branch, next, updated. v2.8.11.2-3407-gd7bc12c
Stephen Kelly
steveire at gmail.com
Fri Jul 26 08:40:00 EDT 2013
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".
The branch, next has been updated
via d7bc12c7f44ca5c63dcd110c25873502da7b1ee3 (commit)
via c83f5b2e2665bbe30c110f71cf07f4435e702cb5 (commit)
via f94bdb3deb70d0fa7ed5275609318be8ac79503b (commit)
from 669d1d4d10fb87511f67edc04ab7599974fb9ed5 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d7bc12c7f44ca5c63dcd110c25873502da7b1ee3
commit d7bc12c7f44ca5c63dcd110c25873502da7b1ee3
Merge: 669d1d4 c83f5b2
Author: Stephen Kelly <steveire at gmail.com>
AuthorDate: Fri Jul 26 08:39:57 2013 -0400
Commit: CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Fri Jul 26 08:39:57 2013 -0400
Merge topic 'minor-cleanups' into next
c83f5b2 cmTarget: Fix iface libraries and languages for static libraries.
f94bdb3 cmTarget: Remove duplicates when printing traces of tll signatures
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c83f5b2e2665bbe30c110f71cf07f4435e702cb5
commit c83f5b2e2665bbe30c110f71cf07f4435e702cb5
Author: Stephen Kelly <steveire at gmail.com>
AuthorDate: Fri Jul 26 14:03:44 2013 +0200
Commit: Stephen Kelly <steveire at gmail.com>
CommitDate: Fri Jul 26 14:39:28 2013 +0200
cmTarget: Fix iface libraries and languages for static libraries.
diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx
index 136c43c..622e812 100644
--- a/Source/cmTarget.cxx
+++ b/Source/cmTarget.cxx
@@ -6467,6 +6467,15 @@ bool cmTarget::ComputeLinkInterface(const char* config, LinkInterface& iface,
break;
}
}
+ else
+ {
+ iface.Libraries = impl->Libraries;
+ if(this->GetType() == cmTarget::STATIC_LIBRARY)
+ {
+ // Targets using this archive need its language runtime libraries.
+ iface.Languages = impl->Languages;
+ }
+ }
}
}
@@ -6495,7 +6504,8 @@ bool cmTarget::ComputeLinkInterface(const char* config, LinkInterface& iface,
headTarget,
this, &dagChecker), iface.Libraries);
- if(this->GetType() == cmTarget::SHARED_LIBRARY)
+ if(this->GetType() == cmTarget::SHARED_LIBRARY
+ || this->GetType() == cmTarget::STATIC_LIBRARY)
{
// Shared libraries may have runtime implementation dependencies
// on other shared libraries that are not in the interface.
@@ -6529,6 +6539,11 @@ bool cmTarget::ComputeLinkInterface(const char* config, LinkInterface& iface,
}
}
}
+ if(this->GetType() == cmTarget::STATIC_LIBRARY)
+ {
+ // Targets using this archive need its language runtime libraries.
+ iface.Languages = impl->Languages;
+ }
}
}
else if (this->GetPolicyStatusCMP0022() == cmPolicies::WARN
diff --git a/Tests/CMakeCommands/target_link_libraries/cmp0022/CMakeLists.txt b/Tests/CMakeCommands/target_link_libraries/cmp0022/CMakeLists.txt
index dd6ab41..07d7c43 100644
--- a/Tests/CMakeCommands/target_link_libraries/cmp0022/CMakeLists.txt
+++ b/Tests/CMakeCommands/target_link_libraries/cmp0022/CMakeLists.txt
@@ -16,3 +16,12 @@ assert_property(cmp0022ifacelib INTERFACE_LINK_LIBRARIES "")
add_executable(cmp0022exe cmp0022exe.cpp)
target_link_libraries(cmp0022exe cmp0022lib)
+
+add_library(staticlib1 STATIC staticlib1.cpp)
+generate_export_header(staticlib1)
+add_library(staticlib2 STATIC staticlib2.cpp)
+generate_export_header(staticlib2)
+target_link_libraries(staticlib1 LINK_PUBLIC staticlib2)
+
+add_executable(staticlib_exe staticlib_exe.cpp)
+target_link_libraries(staticlib_exe staticlib1)
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f94bdb3deb70d0fa7ed5275609318be8ac79503b
commit f94bdb3deb70d0fa7ed5275609318be8ac79503b
Author: Stephen Kelly <steveire at gmail.com>
AuthorDate: Fri Jul 26 14:02:18 2013 +0200
Commit: Stephen Kelly <steveire at gmail.com>
CommitDate: Fri Jul 26 14:05:25 2013 +0200
cmTarget: Remove duplicates when printing traces of tll signatures
diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx
index 6dde5ed..136c43c 100644
--- a/Source/cmTarget.cxx
+++ b/Source/cmTarget.cxx
@@ -2521,6 +2521,7 @@ void cmTarget::GetTllSignatureTraces(cmOStringStream &s,
= (sig == cmTarget::KeywordTLLSignature ? "keyword"
: "plain");
s << "The uses of the " << sigString << " signature are here:\n";
+ std::set<cmStdString> emitted;
for(std::vector<cmListFileBacktrace>::const_iterator it = sigs.begin();
it != sigs.end(); ++it)
{
@@ -2528,7 +2529,12 @@ void cmTarget::GetTllSignatureTraces(cmOStringStream &s,
if(i != it->end())
{
cmListFileContext const& lfc = *i;
- s << " * " << (lfc.Line? "": " in ") << lfc << std::endl;
+ cmOStringStream line;
+ line << " * " << (lfc.Line? "": " in ") << lfc << std::endl;
+ if (emitted.insert(line.str()).second)
+ {
+ s << line.str();
+ }
++i;
}
}
-----------------------------------------------------------------------
Summary of changes:
Source/cmTarget.cxx | 25 ++++++++++++++++++-
.../target_link_libraries/cmp0022/CMakeLists.txt | 9 +++++++
2 files changed, 32 insertions(+), 2 deletions(-)
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list