[Cmake-commits] CMake branch, next, updated. v2.8.11-2117-g6883de2

Brad King brad.king at kitware.com
Tue May 21 15:22:21 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  6883de21916e878296eca770c9595806546833b0 (commit)
       via  2f84dfec93b6a5d8b4db89bafe09688382b96997 (commit)
      from  a08366a84b3af4de0f407181b4cfd0b0b2eea7c6 (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=6883de21916e878296eca770c9595806546833b0
commit 6883de21916e878296eca770c9595806546833b0
Merge: a08366a 2f84dfe
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Tue May 21 15:22:20 2013 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Tue May 21 15:22:20 2013 -0400

    Merge topic 'fix-include_directories-whitespace-handling' into next
    
    2f84dfe include_directories: Fix handling of empty or space-only entries


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=2f84dfec93b6a5d8b4db89bafe09688382b96997
commit 2f84dfec93b6a5d8b4db89bafe09688382b96997
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Mon May 20 12:25:59 2013 +0200
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Tue May 21 15:20:46 2013 -0400

    include_directories: Fix handling of empty or space-only entries
    
    This is a regression introduced in commit 0d46e9a0 (Store includes
    from the same include_directories call together., 2013-01-20).
    
    Reported at
    
     http://thread.gmane.org/gmane.comp.programming.tools.cmake.user/46695/focus=7847

diff --git a/Source/cmIncludeDirectoryCommand.cxx b/Source/cmIncludeDirectoryCommand.cxx
index ffb0e80..30c1743 100644
--- a/Source/cmIncludeDirectoryCommand.cxx
+++ b/Source/cmIncludeDirectoryCommand.cxx
@@ -116,13 +116,19 @@ void cmIncludeDirectoryCommand::GetIncludes(const std::string &arg,
       {
       std::string inc = arg.substr(lastPos,pos);
       this->NormalizeInclude(inc);
-      incs.push_back(inc);
+      if (!inc.empty())
+        {
+        incs.push_back(inc);
+        }
       }
     lastPos = pos + 1;
     }
   std::string inc = arg.substr(lastPos);
   this->NormalizeInclude(inc);
-  incs.push_back(inc);
+  if (!inc.empty())
+    {
+    incs.push_back(inc);
+    }
 }
 
 void cmIncludeDirectoryCommand::NormalizeInclude(std::string &inc)
@@ -133,6 +139,11 @@ void cmIncludeDirectoryCommand::NormalizeInclude(std::string &inc)
     {
     inc.assign(inc, b, 1+e-b);   // copy the remaining substring
     }
+  else
+    {
+    inc = "";
+    return;
+    }
 
   if (!cmSystemTools::IsOff(inc.c_str()))
     {
diff --git a/Tests/IncludeDirectories/CMakeLists.txt b/Tests/IncludeDirectories/CMakeLists.txt
index 8a60f17..3e3ecc9 100644
--- a/Tests/IncludeDirectories/CMakeLists.txt
+++ b/Tests/IncludeDirectories/CMakeLists.txt
@@ -58,3 +58,14 @@ get_property(propContentAfter DIRECTORY PROPERTY INCLUDE_DIRECTORIES)
 if (NOT propContentAfter STREQUAL "")
   message(SEND_ERROR "Clearing DIRECTORY property failed.")
 endif()
+
+add_library(empty_entry_test SHARED empty.cpp)
+set_target_properties(empty_entry_test PROPERTIES INCLUDE_DIRECTORIES "")
+include_directories(/one/two
+  " "
+  "  "
+)
+get_target_property(incs empty_entry_test INCLUDE_DIRECTORIES)
+if (NOT incs STREQUAL ";/one/two")
+  message(SEND_ERROR "Empty include_directories entry was not ignored.")
+endif()
diff --git a/Tests/IncludeDirectories/empty.cpp b/Tests/IncludeDirectories/empty.cpp
new file mode 100644
index 0000000..ab32cf6
--- /dev/null
+++ b/Tests/IncludeDirectories/empty.cpp
@@ -0,0 +1 @@
+// No content

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

Summary of changes:


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list