[Cmake-commits] CMake branch, next, updated. v2.8.10.2-2029-ga74ac9a

Stephen Kelly steveire at gmail.com
Fri Feb 8 13:27:56 EST 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  a74ac9a51f988615637232e166b7a93dc7e92e68 (commit)
       via  510fdcb18801076e2041eaae2941375eecc93ec2 (commit)
      from  47298ae6bc41935bc431e161ea64184e09f49495 (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=a74ac9a51f988615637232e166b7a93dc7e92e68
commit a74ac9a51f988615637232e166b7a93dc7e92e68
Merge: 47298ae 510fdcb
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Fri Feb 8 13:27:53 2013 -0500
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Fri Feb 8 13:27:53 2013 -0500

    Merge topic 'minor-fixes' into next
    
    510fdcb Whitelist target types in target_{include_directories,compile_definitions}


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=510fdcb18801076e2041eaae2941375eecc93ec2
commit 510fdcb18801076e2041eaae2941375eecc93ec2
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Fri Feb 8 19:12:45 2013 +0100
Commit:     Stephen Kelly <steveire at gmail.com>
CommitDate: Fri Feb 8 19:21:30 2013 +0100

    Whitelist target types in target_{include_directories,compile_definitions}
    
    Setting include directories or compile definitions on a target created
    with add_custom_target does not make sense.

diff --git a/Source/cmTargetPropCommandBase.cxx b/Source/cmTargetPropCommandBase.cxx
index 18a1d2a..771097c 100644
--- a/Source/cmTargetPropCommandBase.cxx
+++ b/Source/cmTargetPropCommandBase.cxx
@@ -38,6 +38,15 @@ bool cmTargetPropCommandBase
     this->HandleMissingTarget(args[0]);
     return false;
     }
+  if ((this->Target->GetType() != cmTarget::SHARED_LIBRARY)
+    && (this->Target->GetType() != cmTarget::STATIC_LIBRARY)
+    && (this->Target->GetType() != cmTarget::OBJECT_LIBRARY)
+    && (this->Target->GetType() != cmTarget::MODULE_LIBRARY)
+    && (this->Target->GetType() != cmTarget::EXECUTABLE))
+    {
+    this->SetError("called with non-compilable target type");
+    return false;
+    }
 
   unsigned int argIndex = 1;
 
diff --git a/Tests/ObjectLibrary/A/CMakeLists.txt b/Tests/ObjectLibrary/A/CMakeLists.txt
index 36c86e7..55778ea 100644
--- a/Tests/ObjectLibrary/A/CMakeLists.txt
+++ b/Tests/ObjectLibrary/A/CMakeLists.txt
@@ -13,6 +13,6 @@ add_custom_command(
   COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/a1.c.in
                                    ${CMAKE_CURRENT_BINARY_DIR}/a1.c
   )
-include_directories(${CMAKE_CURRENT_SOURCE_DIR})
 
 add_library(A OBJECT a1.c a2.c)
+target_include_directories(A PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
diff --git a/Tests/RunCMake/include_directories/RunCMakeTest.cmake b/Tests/RunCMake/include_directories/RunCMakeTest.cmake
index de37252..ddf268c 100644
--- a/Tests/RunCMake/include_directories/RunCMakeTest.cmake
+++ b/Tests/RunCMake/include_directories/RunCMakeTest.cmake
@@ -2,3 +2,4 @@ include(RunCMake)
 
 run_cmake(NotFoundContent)
 run_cmake(DebugIncludes)
+run_cmake(TID-bad-target)
diff --git a/Tests/RunCMake/include_directories/TID-bad-target-result.txt b/Tests/RunCMake/include_directories/TID-bad-target-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/include_directories/TID-bad-target-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/include_directories/TID-bad-target-stderr.txt b/Tests/RunCMake/include_directories/TID-bad-target-stderr.txt
new file mode 100644
index 0000000..481e358
--- /dev/null
+++ b/Tests/RunCMake/include_directories/TID-bad-target-stderr.txt
@@ -0,0 +1,4 @@
+CMake Error at TID-bad-target.cmake:6 \(target_include_directories\):
+  target_include_directories called with non-compilable target type
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
diff --git a/Tests/RunCMake/include_directories/TID-bad-target.cmake b/Tests/RunCMake/include_directories/TID-bad-target.cmake
new file mode 100644
index 0000000..32201c1
--- /dev/null
+++ b/Tests/RunCMake/include_directories/TID-bad-target.cmake
@@ -0,0 +1,6 @@
+
+add_custom_target(check ALL
+  COMMAND ${CMAKE_COMMAND} -E echo check
+)
+
+target_include_directories(check PRIVATE somedir)

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

Summary of changes:
 Source/cmTargetPropCommandBase.cxx                 |    9 +++++++++
 Tests/ObjectLibrary/A/CMakeLists.txt               |    2 +-
 .../include_directories/RunCMakeTest.cmake         |    1 +
 .../TID-bad-target-result.txt}                     |    0
 .../include_directories/TID-bad-target-stderr.txt  |    4 ++++
 .../include_directories/TID-bad-target.cmake       |    6 ++++++
 6 files changed, 21 insertions(+), 1 deletions(-)
 copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => include_directories/TID-bad-target-result.txt} (100%)
 create mode 100644 Tests/RunCMake/include_directories/TID-bad-target-stderr.txt
 create mode 100644 Tests/RunCMake/include_directories/TID-bad-target.cmake


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list