summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2013-01-29 16:43:28 (GMT)
committerStephen Kelly <steveire@gmail.com>2013-01-29 17:44:54 (GMT)
commitf6b16d4b0642d26111cddff714b464e22b715482 (patch)
tree2f9e9edc118a85091b9d7631f43830d1707029e6
parentb3a7e19ee479fda18b1dfe237fc4b78467c05fd7 (diff)
downloadCMake-f6b16d4b0642d26111cddff714b464e22b715482.zip
CMake-f6b16d4b0642d26111cddff714b464e22b715482.tar.gz
CMake-f6b16d4b0642d26111cddff714b464e22b715482.tar.bz2
Don't allow targets args in the new target commands.
-rw-r--r--Source/cmTargetCompileDefinitionsCommand.cxx10
-rw-r--r--Source/cmTargetCompileDefinitionsCommand.h5
-rw-r--r--Source/cmTargetIncludeDirectoriesCommand.cxx20
-rw-r--r--Source/cmTargetIncludeDirectoriesCommand.h5
-rw-r--r--Source/cmTargetPropCommandBase.cxx22
-rw-r--r--Source/cmTargetPropCommandBase.h5
-rw-r--r--Tests/CMakeCommands/target_compile_definitions/CMakeLists.txt2
-rw-r--r--Tests/CMakeCommands/target_include_directories/CMakeLists.txt2
-rw-r--r--Tests/ExportImport/Import/A/CMakeLists.txt19
9 files changed, 16 insertions, 74 deletions
diff --git a/Source/cmTargetCompileDefinitionsCommand.cxx b/Source/cmTargetCompileDefinitionsCommand.cxx
index 683eff6..312d625 100644
--- a/Source/cmTargetCompileDefinitionsCommand.cxx
+++ b/Source/cmTargetCompileDefinitionsCommand.cxx
@@ -37,16 +37,6 @@ void cmTargetCompileDefinitionsCommand
this->Makefile->IssueMessage(cmake::FATAL_ERROR, e.str());
}
-bool cmTargetCompileDefinitionsCommand
-::HandleNonTargetArg(std::string &content,
- const std::string &sep,
- const std::string &entry,
- const std::string &)
-{
- content += sep + entry;
- return true;
-}
-
void cmTargetCompileDefinitionsCommand
::HandleDirectContent(cmTarget *tgt, const std::string &content,
bool)
diff --git a/Source/cmTargetCompileDefinitionsCommand.h b/Source/cmTargetCompileDefinitionsCommand.h
index d49b9e8..6e8fc84 100644
--- a/Source/cmTargetCompileDefinitionsCommand.h
+++ b/Source/cmTargetCompileDefinitionsCommand.h
@@ -81,11 +81,6 @@ private:
virtual void HandleImportedTarget(const std::string &tgt);
virtual void HandleMissingTarget(const std::string &name);
- virtual bool HandleNonTargetArg(std::string &content,
- const std::string &sep,
- const std::string &entry,
- const std::string &tgt);
-
virtual void HandleDirectContent(cmTarget *tgt, const std::string &content,
bool prepend);
};
diff --git a/Source/cmTargetIncludeDirectoriesCommand.cxx b/Source/cmTargetIncludeDirectoriesCommand.cxx
index aeba468..51a2b6b 100644
--- a/Source/cmTargetIncludeDirectoriesCommand.cxx
+++ b/Source/cmTargetIncludeDirectoriesCommand.cxx
@@ -41,26 +41,6 @@ void cmTargetIncludeDirectoriesCommand
}
//----------------------------------------------------------------------------
-bool cmTargetIncludeDirectoriesCommand
-::HandleNonTargetArg(std::string &content,
- const std::string &sep,
- const std::string &entry,
- const std::string &tgt)
-{
- if (!cmSystemTools::FileIsFullPath(entry.c_str()))
- {
- cmOStringStream e;
- e << "Cannot specify relative include directory \"" << entry << "\" for "
- "target \"" << tgt << "\". Only absolute paths are permitted";
- this->Makefile->IssueMessage(cmake::FATAL_ERROR, e.str());
- return false;
- }
-
- content += sep + entry;
- return true;
-}
-
-//----------------------------------------------------------------------------
void cmTargetIncludeDirectoriesCommand
::HandleDirectContent(cmTarget *tgt, const std::string &content,
bool prepend)
diff --git a/Source/cmTargetIncludeDirectoriesCommand.h b/Source/cmTargetIncludeDirectoriesCommand.h
index 5a5f859..a254878 100644
--- a/Source/cmTargetIncludeDirectoriesCommand.h
+++ b/Source/cmTargetIncludeDirectoriesCommand.h
@@ -85,11 +85,6 @@ private:
virtual void HandleImportedTarget(const std::string &tgt);
virtual void HandleMissingTarget(const std::string &name);
- virtual bool HandleNonTargetArg(std::string &content,
- const std::string &sep,
- const std::string &entry,
- const std::string &tgt);
-
virtual void HandleDirectContent(cmTarget *tgt, const std::string &content,
bool prepend);
};
diff --git a/Source/cmTargetPropCommandBase.cxx b/Source/cmTargetPropCommandBase.cxx
index e1eb1d2..ef40438 100644
--- a/Source/cmTargetPropCommandBase.cxx
+++ b/Source/cmTargetPropCommandBase.cxx
@@ -66,14 +66,6 @@ bool cmTargetPropCommandBase
}
//----------------------------------------------------------------------------
-static bool isGeneratorExpression(const std::string &lib)
-{
- const std::string::size_type openpos = lib.find("$<");
- return (openpos != std::string::npos)
- && (lib.find(">", openpos) != std::string::npos);
-}
-
-//----------------------------------------------------------------------------
bool cmTargetPropCommandBase
::ProcessContentArgs(std::vector<std::string> const& args,
unsigned int &argIndex, bool prepend)
@@ -108,19 +100,7 @@ bool cmTargetPropCommandBase
this->PopulateTargetProperies(scope, content, prepend);
return true;
}
- if (this->Makefile->FindTargetToUse(args[i].c_str()))
- {
- content += sep + "$<TARGET_PROPERTY:" + args[i]
- + ",INTERFACE_" + this->Property + ">";
- }
- else if(isGeneratorExpression(args[i]))
- {
- content += sep + args[i];
- }
- else if (!this->HandleNonTargetArg(content, sep, args[i], args[0]))
- {
- return false;
- }
+ content += sep + args[i];
sep = ";";
}
this->PopulateTargetProperies(scope, content, prepend);
diff --git a/Source/cmTargetPropCommandBase.h b/Source/cmTargetPropCommandBase.h
index 0289c44..cc9897d 100644
--- a/Source/cmTargetPropCommandBase.h
+++ b/Source/cmTargetPropCommandBase.h
@@ -38,11 +38,6 @@ private:
virtual void HandleImportedTarget(const std::string &tgt) = 0;
virtual void HandleMissingTarget(const std::string &name) = 0;
- virtual bool HandleNonTargetArg(std::string &content,
- const std::string &sep,
- const std::string &entry,
- const std::string &tgt) = 0;
-
virtual void HandleDirectContent(cmTarget *tgt,
const std::string &content,
bool prepend) = 0;
diff --git a/Tests/CMakeCommands/target_compile_definitions/CMakeLists.txt b/Tests/CMakeCommands/target_compile_definitions/CMakeLists.txt
index 3eca7fc..00cba44 100644
--- a/Tests/CMakeCommands/target_compile_definitions/CMakeLists.txt
+++ b/Tests/CMakeCommands/target_compile_definitions/CMakeLists.txt
@@ -17,7 +17,7 @@ add_executable(consumer
)
target_compile_definitions(consumer
- PRIVATE target_compile_definitions importedlib
+ PRIVATE $<TARGET_PROPERTY:target_compile_definitions,INTERFACE_COMPILE_DEFINITIONS>
$<$<TARGET_DEFINED:notdefined>:SHOULD_NOT_BE_DEFINED>
$<$<TARGET_DEFINED:target_compile_definitions>:SHOULD_BE_DEFINED>
)
diff --git a/Tests/CMakeCommands/target_include_directories/CMakeLists.txt b/Tests/CMakeCommands/target_include_directories/CMakeLists.txt
index e190161..89b61f3 100644
--- a/Tests/CMakeCommands/target_include_directories/CMakeLists.txt
+++ b/Tests/CMakeCommands/target_include_directories/CMakeLists.txt
@@ -43,5 +43,5 @@ add_executable(consumer
)
target_include_directories(consumer
- PRIVATE target_include_directories
+ PRIVATE $<TARGET_PROPERTY:target_include_directories,INTERFACE_INCLUDE_DIRECTORIES>
)
diff --git a/Tests/ExportImport/Import/A/CMakeLists.txt b/Tests/ExportImport/Import/A/CMakeLists.txt
index 187c48a..e9bd2ba 100644
--- a/Tests/ExportImport/Import/A/CMakeLists.txt
+++ b/Tests/ExportImport/Import/A/CMakeLists.txt
@@ -159,15 +159,18 @@ endif()
add_executable(deps_iface deps_iface.c)
target_link_libraries(deps_iface testLibDepends)
-target_include_directories(deps_iface PRIVATE testLibDepends)
-target_compile_definitions(deps_iface PRIVATE testLibDepends)
+target_include_directories(deps_iface PRIVATE $<TARGET_PROPERTY:testLibDepends,INTERFACE_INCLUDE_DIRECTORIES>)
+target_compile_definitions(deps_iface PRIVATE $<TARGET_PROPERTY:testLibDepends,INTERFACE_COMPILE_DEFINITIONS>)
add_executable(deps_shared_iface deps_shared_iface.cpp)
target_link_libraries(deps_shared_iface testSharedLibDepends)
-target_include_directories(deps_shared_iface PRIVATE testSharedLibDepends)
+target_include_directories(deps_shared_iface
+ PRIVATE
+ $<TARGET_PROPERTY:testSharedLibDepends,INTERFACE_INCLUDE_DIRECTORIES>
+)
target_compile_definitions(deps_shared_iface
PRIVATE
- testSharedLibDepends
+ $<TARGET_PROPERTY:testSharedLibDepends,INTERFACE_COMPILE_DEFINITIONS>
$<$<BOOL:$<TARGET_PROPERTY:POSITION_INDEPENDENT_CODE>>:PIC_PROPERTY_IS_ON>
$<$<BOOL:$<TARGET_PROPERTY:CUSTOM_PROP>>:CUSTOM_PROPERTY_IS_ON>
$<$<STREQUAL:$<TARGET_PROPERTY:CUSTOM_STRING>,testcontent>:CUSTOM_STRING_IS_MATCH>
@@ -197,9 +200,13 @@ endif()
add_executable(deps_shared_iface2 deps_shared_iface.cpp)
target_link_libraries(deps_shared_iface2 bld_testSharedLibDepends bld_subdirlib)
-target_include_directories(deps_shared_iface2 PRIVATE bld_testSharedLibDepends bld_subdirlib)
+target_include_directories(deps_shared_iface2
+ PRIVATE
+ $<TARGET_PROPERTY:bld_testSharedLibDepends,INTERFACE_INCLUDE_DIRECTORIES>
+ $<TARGET_PROPERTY:bld_subdirlib,INTERFACE_INCLUDE_DIRECTORIES>
+)
target_compile_definitions(deps_shared_iface2
- PRIVATE bld_testSharedLibDepends TEST_SUBDIR_LIB
+ PRIVATE $<TARGET_PROPERTY:bld_testSharedLibDepends,INTERFACE_COMPILE_DEFINITIONS> TEST_SUBDIR_LIB
$<$<BOOL:$<TARGET_PROPERTY:POSITION_INDEPENDENT_CODE>>:PIC_PROPERTY_IS_ON>
$<$<BOOL:$<TARGET_PROPERTY:CUSTOM_PROP>>:CUSTOM_PROPERTY_IS_ON>
$<$<STREQUAL:$<TARGET_PROPERTY:CUSTOM_STRING>,testcontent>:CUSTOM_STRING_IS_MATCH>