[Cmake-commits] CMake branch, next, updated. v2.8.4-1121-g6bead33

Brad King brad.king at kitware.com
Wed Mar 9 11:26:51 EST 2011


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  6bead336227dc2eb3e9cb9bb622c1ea333a777ae (commit)
       via  c6a8e4c71ad56df8f7de30bfed3a3d9d62419325 (commit)
      from  30aee960bd2442860683cb05999ab1eb3f340ae5 (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=6bead336227dc2eb3e9cb9bb622c1ea333a777ae
commit 6bead336227dc2eb3e9cb9bb622c1ea333a777ae
Merge: 30aee96 c6a8e4c
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Mar 9 11:26:49 2011 -0500
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Wed Mar 9 11:26:49 2011 -0500

    Merge topic 'module-link-interface-issue-11945' into next
    
    c6a8e4c The link interface of MODULE libraries is empty (#11945)


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c6a8e4c71ad56df8f7de30bfed3a3d9d62419325
commit c6a8e4c71ad56df8f7de30bfed3a3d9d62419325
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Mar 9 09:52:46 2011 -0500
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Wed Mar 9 09:52:46 2011 -0500

    The link interface of MODULE libraries is empty (#11945)
    
    MODULE libraries cannot be linked into other libraries and executables
    (just like executables without ENABLE_EXPORTS).  Set the MODULE target
    link interface to be empty.  This allows such targets to be installed in
    an EXPORT set without including all their private implementation
    dependencies.

diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx
index 72efce3..b5900c4 100644
--- a/Source/cmTarget.cxx
+++ b/Source/cmTarget.cxx
@@ -4278,9 +4278,13 @@ bool cmTarget::ComputeLinkInterface(const char* config, LinkInterface& iface)
       }
     }
 
-  // There is no implicit link interface for executables, so if none
-  // was explicitly set, there is no link interface.
-  if(!explicitLibraries && this->GetType() == cmTarget::EXECUTABLE)
+  // There is no implicit link interface for executables or modules
+  // so if none was explicitly set then there is no link interface.
+  // Note that CMake versions 2.2 and below allowed linking to modules.
+  bool canLinkModules = this->Makefile->NeedBackwardsCompatibility(2,2);
+  if(!explicitLibraries &&
+     (this->GetType() == cmTarget::EXECUTABLE ||
+      this->GetType() == cmTarget::MODULE_LIBRARY && !canLinkModules))
     {
     return false;
     }

-----------------------------------------------------------------------

Summary of changes:
 Source/cmTarget.cxx |   10 +++++++---
 1 files changed, 7 insertions(+), 3 deletions(-)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list