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  51e3f6f33058409b8c755db7c9885f25dfa02c37 (commit)
       via  9e0b3153fa2fa9e1b51d1fd7d265a114958e7f0a (commit)
      from  252ccd1edb1c8a0a2739f24c5ac28f4ae4daaa2d (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=51e3f6f33058409b8c755db7c9885f25dfa02c37
commit 51e3f6f33058409b8c755db7c9885f25dfa02c37
Merge: 252ccd1 9e0b315
Author:     Brad King <brad.k...@kitware.com>
AuthorDate: Wed Apr 16 15:57:11 2014 -0400
Commit:     CMake Topic Stage <kwro...@kitware.com>
CommitDate: Wed Apr 16 15:57:11 2014 -0400

    Merge topic 'fix-CMP0052' into next
    
    9e0b3153 CMP0052: Do not warn when include dir is not in source or build 
tree


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9e0b3153fa2fa9e1b51d1fd7d265a114958e7f0a
commit 9e0b3153fa2fa9e1b51d1fd7d265a114958e7f0a
Author:     Brad King <brad.k...@kitware.com>
AuthorDate: Wed Apr 16 15:53:57 2014 -0400
Commit:     Brad King <brad.k...@kitware.com>
CommitDate: Wed Apr 16 15:57:35 2014 -0400

    CMP0052: Do not warn when include dir is not in source or build tree
    
    When the policy was added by commit 783bce29 (Export: Disallow exported
    interface includes in src/build tree, 2014-03-31) it accidentally left a
    code path that would warn when the include dir is in the install tree
    but *not* in the source or build tree.  Fix that.

diff --git a/Source/cmExportFileGenerator.cxx b/Source/cmExportFileGenerator.cxx
index 42fce6d..25ffe1a 100644
--- a/Source/cmExportFileGenerator.cxx
+++ b/Source/cmExportFileGenerator.cxx
@@ -277,6 +277,8 @@ static bool checkInterfaceDirs(const std::string &prepro,
            "  \"" << *li << "\"";
       target->GetMakefile()->IssueMessage(messageType, e.str());
       }
+    bool inBinary = isSubDirectory(li->c_str(), topBinaryDir);
+    bool inSource = isSubDirectory(li->c_str(), topSourceDir);
     if (isSubDirectory(li->c_str(), installDir))
       {
       // The include directory is inside the install tree.  If the
@@ -284,8 +286,8 @@ static bool checkInterfaceDirs(const std::string &prepro,
       // fall through to the checks below that the include directory is not
       // also inside the source tree or build tree.
       bool shouldContinue =
-          isSubDirectory(installDir, topBinaryDir)
-        || isSubDirectory(installDir, topSourceDir);
+        (!inBinary || isSubDirectory(installDir, topBinaryDir)) &&
+        (!inSource || isSubDirectory(installDir, topSourceDir));
 
       if (!shouldContinue)
         {
@@ -317,7 +319,7 @@ static bool checkInterfaceDirs(const std::string &prepro,
         continue;
         }
       }
-    if (isSubDirectory(li->c_str(), topBinaryDir))
+    if (inBinary)
       {
       e << "Target \"" << target->GetName() << "\" "
            "INTERFACE_INCLUDE_DIRECTORIES property contains path:\n"
@@ -326,7 +328,7 @@ static bool checkInterfaceDirs(const std::string &prepro,
       }
     if (!inSourceBuild)
       {
-      if (isSubDirectory(li->c_str(), topSourceDir))
+      if (inSource)
         {
         e << "Target \"" << target->GetName() << "\" "
             "INTERFACE_INCLUDE_DIRECTORIES property contains path:\n"

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

Summary of changes:
 Source/cmExportFileGenerator.cxx |   10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)


hooks/post-receive
-- 
CMake
_______________________________________________
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits

Reply via email to