[Cmake-commits] CMake branch, next, updated. v2.8.12.1-5999-g6e6e41d
Brad King
brad.king at kitware.com
Tue Dec 3 09:40:17 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 6e6e41de564789fab0b6ce935e580dc1d8f4da32 (commit)
via 591b4aa3bdbfa8ce8223b8b1e7b3b3c64199269b (commit)
from e338d3980075700f3460ab2796efe620fc7f8714 (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=6e6e41de564789fab0b6ce935e580dc1d8f4da32
commit 6e6e41de564789fab0b6ce935e580dc1d8f4da32
Merge: e338d39 591b4aa
Author: Brad King <brad.king at kitware.com>
AuthorDate: Tue Dec 3 09:40:15 2013 -0500
Commit: CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Tue Dec 3 09:40:15 2013 -0500
Merge topic 'revert-CMakeParseArguments_EmptyArgs' into next
591b4aa Revert topic 'CMakeParseArguments_EmptyArgs'
diff --cc Tests/RunCMake/CMakeLists.txt
index 4cdcef9,209b0b3..98dde92
--- a/Tests/RunCMake/CMakeLists.txt
+++ b/Tests/RunCMake/CMakeLists.txt
@@@ -136,6 -134,4 +136,5 @@@ endif(
add_RunCMake_test(File_Generate)
add_RunCMake_test(ExportWithoutLanguage)
add_RunCMake_test(target_link_libraries)
+add_RunCMake_test(target_compile_features)
add_RunCMake_test(CheckModules)
- add_RunCMake_test(CMakeParseArguments)
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=591b4aa3bdbfa8ce8223b8b1e7b3b3c64199269b
commit 591b4aa3bdbfa8ce8223b8b1e7b3b3c64199269b
Author: Brad King <brad.king at kitware.com>
AuthorDate: Tue Dec 3 09:39:16 2013 -0500
Commit: Brad King <brad.king at kitware.com>
CommitDate: Tue Dec 3 09:39:16 2013 -0500
Revert topic 'CMakeParseArguments_EmptyArgs'
It will be revised after working out macro _-rename conflicts.
diff --git a/Modules/CMakeParseArguments.cmake b/Modules/CMakeParseArguments.cmake
index 6aa2d63..4248176 100644
--- a/Modules/CMakeParseArguments.cmake
+++ b/Modules/CMakeParseArguments.cmake
@@ -2,23 +2,16 @@
# CMakeParseArguments
# -------------------
#
-# Parse arguments given to a macro or a function.
#
-# cmake_parse_arguments() is intended to be used in macros or functions
+#
+# CMAKE_PARSE_ARGUMENTS(<prefix> <options> <one_value_keywords>
+# <multi_value_keywords> args...)
+#
+# CMAKE_PARSE_ARGUMENTS() is intended to be used in macros or functions
# for parsing the arguments given to that macro or function. It
# processes the arguments and defines a set of variables which hold the
# values of the respective options.
#
-# ::
-#
-# cmake_parse_arguments(<prefix>
-# <options>
-# <one_value_keywords>
-# <multi_value_keywords>
-# [CMAKE_PARSE_ARGUMENTS_SKIP_EMPTY|CMAKE_PARSE_ARGUMENTS_KEEP_EMPTY]
-# args...
-# )
-#
# The <options> argument contains all options for the respective macro,
# i.e. keywords which can be used when calling the macro without any
# value following, like e.g. the OPTIONAL keyword of the install()
@@ -32,7 +25,7 @@
# macro which can be followed by more than one value, like e.g. the
# TARGETS or FILES keywords of the install() command.
#
-# When done, cmake_parse_arguments() will have defined for each of the
+# When done, CMAKE_PARSE_ARGUMENTS() will have defined for each of the
# keywords listed in <options>, <one_value_keywords> and
# <multi_value_keywords> a variable composed of the given <prefix>
# followed by "_" and the name of the respective keyword. These
@@ -43,17 +36,6 @@
# <prefix>_UNPARSED_ARGUMENTS, this can be checked afterwards to see
# whether your macro was called with unrecognized parameters.
#
-# The cmake CMAKE_PARSE_ARGUMENTS_SKIP_EMPTY (old behaviour) and
-# CMAKE_PARSE_ARGUMENTS_KEEP_EMPTY options decide how empty arguments
-# should be handled. If none of these options is set, for backwards
-# compatibility, if CMAKE_MINIMUM_REQUIRED_VERSION < 3.0.0, the default
-# behaviour is to skip empty arguments, otherwise the default behaviour
-# is to keep them. Using the CMAKE_PARSE_ARGUMENTS_DEFAULT_SKIP_EMPTY
-# directory property the user can explicitly set the default behaviour
-# for a folder and its subfolders.
-#
-#
-#
# As an example here a my_install() macro, which takes similar arguments
# as the real install() command:
#
@@ -63,7 +45,7 @@
# set(options OPTIONAL FAST)
# set(oneValueArgs DESTINATION RENAME)
# set(multiValueArgs TARGETS CONFIGURATIONS)
-# cmake_parse_arguments(MY_INSTALL "${options}" "${oneValueArgs}" "${multiValueArgs}" "${ARGN}" )
+# cmake_parse_arguments(MY_INSTALL "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN} )
# ...
#
#
@@ -98,42 +80,7 @@
# interpreted as the beginning of the new option. E.g.
# my_install(TARGETS foo DESTINATION OPTIONAL) would result in
# MY_INSTALL_DESTINATION set to "OPTIONAL", but MY_INSTALL_DESTINATION
-# would be empty and MY_INSTALL_OPTIONAL would be set to TRUE therefore.
-#
-#
-#
-# If the "CMAKE_PARSE_ARGUMENTS_SKIP_EMPTY" option is set,
-# cmake_parse_argumentswill not consider empty arguments.
-# Therefore
-#
-# ::
-#
-# my_install(DESTINATION "" TARGETS foo "" bar)
-#
-# Will set
-#
-# ::
-#
-# MY_INSTALL_DESTINATION = (unset)
-# MY_INSTALL_MULTI = "foo;bar"
-#
-# Using the "CMAKE_PARSE_ARGUMENTS_SKIP_EMPTY" option instead, will set
-#
-# ::
-#
-# MY_INSTALL_SINGLE = ""
-# MY_INSTALL_MULTI = "foo;;bar"
-#
-#
-# It is also important to note that:
-#
-# ::
-#
-# cmake_parse_arguments(MY_INSTALL "${options}" "${oneValueArgs}" "${multiValueArgs}" "${ARGN}" )
-# cmake_parse_arguments(MY_INSTALL "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN} )
-#
-# Will behave differently, because in the latter case empty arguments
-# are not passed to cmake_parse_arguments.
+# would be empty and MY_INSTALL_OPTIONAL would be set to TRUE therefor.
#=============================================================================
# Copyright 2010 Alexander Neundorf <neundorf at kde.org>
@@ -155,26 +102,23 @@ endif()
set(__CMAKE_PARSE_ARGUMENTS_INCLUDED TRUE)
-define_property(DIRECTORY PROPERTY "CMAKE_PARSE_ARGUMENTS_DEFAULT_SKIP_EMPTY" INHERITED
- BRIEF_DOCS "Whether empty arguments should be skipped or not by default."
- FULL_DOCS
- "See documentation of the cmake_parse_arguments() function in the "
- "CMakeParseArguments module."
- )
+function(CMAKE_PARSE_ARGUMENTS prefix _optionNames _singleArgNames _multiArgNames)
+ # first set all result variables to empty/FALSE
+ foreach(arg_name ${_singleArgNames} ${_multiArgNames})
+ set(${prefix}_${arg_name})
+ endforeach()
+
+ foreach(option ${_optionNames})
+ set(${prefix}_${option} FALSE)
+ endforeach()
+ set(${prefix}_UNPARSED_ARGUMENTS)
-function(_CMAKE_PARSE_ARGUMENTS prefix _optionNames _singleArgNames _multiArgNames _skipEmpty)
set(insideValues FALSE)
set(currentArgName)
- if(_skipEmpty)
- set(_loopARGN ${ARGN})
- else()
- set(_loopARGN IN LISTS ARGN)
- endif()
-
# now iterate over all arguments and fill the result variables
- foreach(currentArg ${_loopARGN})
+ foreach(currentArg ${ARGN})
list(FIND _optionNames "${currentArg}" optionIndex) # ... then this marks the end of the arguments belonging to this keyword
list(FIND _singleArgNames "${currentArg}" singleArgIndex) # ... then this marks the end of the arguments belonging to this keyword
list(FIND _multiArgNames "${currentArg}" multiArgIndex) # ... then this marks the end of the arguments belonging to this keyword
@@ -182,25 +126,13 @@ function(_CMAKE_PARSE_ARGUMENTS prefix _optionNames _singleArgNames _multiArgNam
if(${optionIndex} EQUAL -1 AND ${singleArgIndex} EQUAL -1 AND ${multiArgIndex} EQUAL -1)
if(insideValues)
if("${insideValues}" STREQUAL "SINGLE")
- if(_skipEmpty)
- set(${prefix}_${currentArgName} ${currentArg})
- else()
- set(${prefix}_${currentArgName} "${currentArg}")
- endif()
+ set(${prefix}_${currentArgName} ${currentArg})
set(insideValues FALSE)
elseif("${insideValues}" STREQUAL "MULTI")
- if(_skipEmpty)
- list(APPEND ${prefix}_${currentArgName} ${currentArg})
- else()
- list(APPEND ${prefix}_${currentArgName} "${currentArg}")
- endif()
+ list(APPEND ${prefix}_${currentArgName} ${currentArg})
endif()
else()
- if(_skipEmpty)
- list(APPEND ${prefix}_UNPARSED_ARGUMENTS ${currentArg})
- else()
- list(APPEND ${prefix}_UNPARSED_ARGUMENTS "${currentArg}")
- endif()
+ list(APPEND ${prefix}_UNPARSED_ARGUMENTS ${currentArg})
endif()
else()
if(NOT ${optionIndex} EQUAL -1)
@@ -220,70 +152,9 @@ function(_CMAKE_PARSE_ARGUMENTS prefix _optionNames _singleArgNames _multiArgNam
endforeach()
# propagate the result variables to the caller:
- foreach(arg_name ${_singleArgNames} ${_multiArgNames} ${_optionNames} UNPARSED_ARGUMENTS)
- if(DEFINED ${prefix}_${arg_name})
- set(${prefix}_${arg_name} "${${prefix}_${arg_name}}" PARENT_SCOPE)
- endif()
+ foreach(arg_name ${_singleArgNames} ${_multiArgNames} ${_optionNames})
+ set(${prefix}_${arg_name} ${${prefix}_${arg_name}} PARENT_SCOPE)
endforeach()
+ set(${prefix}_UNPARSED_ARGUMENTS ${${prefix}_UNPARSED_ARGUMENTS} PARENT_SCOPE)
endfunction()
-
-
-# This "wrapper" macro is a workaround that allows to use this version of this
-# module with CMake <= 2.8.12
-# Before that version set(VAR "" PARENT_SCOPE) did not set the variable in
-# the parent scope and instead it used to unset it.
-# This wrapper calls the real function, but if necessary (i.e. when empty
-# arguments should not be skipped and CMake < 3.0.0) it parses the arguments
-# again in order to find single and multiple arguments that have not been set
-# and sets them to an empty string in the same variable scope as the caller.
-macro(CMAKE_PARSE_ARGUMENTS prefix _optionNames _singleArgNames _multiArgNames)
- # first set all result variables to empty/FALSE
- foreach(arg_name ${_singleArgNames} ${_multiArgNames})
- set(${prefix}_${arg_name})
- endforeach()
-
- foreach(option ${_optionNames})
- set(${prefix}_${option} FALSE)
- endforeach()
-
- set(${prefix}_UNPARSED_ARGUMENTS)
-
- get_property(_defaultSkipEmptySet DIRECTORY PROPERTY CMAKE_PARSE_ARGUMENTS_DEFAULT_SKIP_EMPTY SET)
- get_property(_defaultSkipEmpty DIRECTORY PROPERTY CMAKE_PARSE_ARGUMENTS_DEFAULT_SKIP_EMPTY)
-
- if("x${ARGN}" MATCHES "^xCMAKE_PARSE_ARGUMENTS_(SKIP|KEEP)_EMPTY;?")
- if("${CMAKE_MATCH_1}" STREQUAL "SKIP")
- set(_skipEmpty 1)
- elseif("${CMAKE_MATCH_1}" STREQUAL "KEEP")
- set(_skipEmpty 0)
- endif()
- string(REGEX REPLACE "^${CMAKE_MATCH_0}" "" ARGN "x${ARGN}")
- elseif(_defaultSkipEmptySet)
- set(_skipEmpty "${_defaultSkipEmpty}")
- elseif(CMAKE_MINIMUM_REQUIRED_VERSION VERSION_LESS 3.0.0)
- # Keep compatibility with previous releases
- set(_skipEmpty 1)
- else()
- set(_skipEmpty 0)
- endif()
-
- _cmake_parse_arguments("${prefix}" "${_optionNames}" "${_singleArgNames}" "${_multiArgNames}" "${_skipEmpty}" "${ARGN}")
-
- if(NOT _skipEmpty AND CMAKE_VERSION VERSION_LESS 3.0.0)
- set(__singleArgNames ${_singleArgNames})
- set(__multiArgNames ${_multiArgNames})
- foreach(currentArg ${ARGN})
- if(NOT DEFINED ${prefix}_${currentArg})
- list(FIND __singleArgNames "${currentArg}" _singleArgIndex)
- list(FIND __multiArgNames "${currentArg}" _multiArgIndex)
- if(NOT ${_singleArgIndex} EQUAL -1 OR NOT ${_multiArgIndex} EQUAL -1)
- set(${prefix}_${currentArg} "")
- endif()
- endif()
- endforeach()
- unset(__singleArgNames)
- unset(__multiArgNames)
- endif()
-
-endmacro()
diff --git a/Source/cmDefinePropertyCommand.h b/Source/cmDefinePropertyCommand.h
index c4143cf..8dc4d96 100644
--- a/Source/cmDefinePropertyCommand.h
+++ b/Source/cmDefinePropertyCommand.h
@@ -34,13 +34,6 @@ public:
*/
virtual const char* GetName() const { return "define_property";}
- /**
- * This determines if the command is invoked when in script mode.
- * define_property() will have no effect in script mode, but this will
- * make many of the modules usable in cmake/ctest scripts.
- */
- virtual bool IsScriptable() const { return true; }
-
cmTypeMacro(cmDefinePropertyCommand, cmCommand);
private:
std::string PropertyName;
diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt
index bb26396..209b0b3 100644
--- a/Tests/RunCMake/CMakeLists.txt
+++ b/Tests/RunCMake/CMakeLists.txt
@@ -135,4 +135,3 @@ add_RunCMake_test(File_Generate)
add_RunCMake_test(ExportWithoutLanguage)
add_RunCMake_test(target_link_libraries)
add_RunCMake_test(CheckModules)
-add_RunCMake_test(CMakeParseArguments)
diff --git a/Tests/RunCMake/CMakeParseArguments/ARGUMENT-KEEP.cmake b/Tests/RunCMake/CMakeParseArguments/ARGUMENT-KEEP.cmake
deleted file mode 100644
index 1913713..0000000
--- a/Tests/RunCMake/CMakeParseArguments/ARGUMENT-KEEP.cmake
+++ /dev/null
@@ -1,29 +0,0 @@
-# CMAKE_MINIMUM_REQUIRED_VERSION 2.8.12
-# CMAKE_PARSE_ARGUMENTS_DEFAULT_SKIP_EMPTY 1
-# CMAKE_PARSE_ARGUMENTS_(KEEP|SKIP)_EMPTY KEEP
-# => KEEP
-
-cmake_minimum_required(VERSION 2.8.12)
-
-include(CMakeParseArguments)
-
-set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY CMAKE_PARSE_ARGUMENTS_DEFAULT_SKIP_EMPTY 1)
-
-macro(MY_INSTALL)
- set(options OPTIONAL FAST)
- set(oneValueArgs DESTINATION RENAME)
- set(multiValueArgs TARGETS CONFIGURATIONS)
- cmake_parse_arguments(MY_INSTALL "${options}" "${oneValueArgs}" "${multiValueArgs}" CMAKE_PARSE_ARGUMENTS_KEEP_EMPTY "${ARGN}")
-endmacro()
-
-my_install(DESTINATION "" TARGETS foo "" bar)
-
-if(NOT DEFINED MY_INSTALL_DESTINATION)
- message(FATAL_ERROR "NOT DEFINED MY_INSTALL_DESTINATION")
-elseif(NOT "${MY_INSTALL_DESTINATION}" STREQUAL "")
- message(FATAL_ERROR "NOT \"\${MY_INSTALL_DESTINATION}\" STREQUAL \"\"")
-endif()
-
-if(NOT "${MY_INSTALL_TARGETS}" STREQUAL "foo;;bar")
- message(FATAL_ERROR "NOT \"\${MY_INSTALL_TARGETS}\" STREQUAL \"foo;;bar\"")
-endif()
diff --git a/Tests/RunCMake/CMakeParseArguments/ARGUMENT-SKIP.cmake b/Tests/RunCMake/CMakeParseArguments/ARGUMENT-SKIP.cmake
deleted file mode 100644
index 6e0598c..0000000
--- a/Tests/RunCMake/CMakeParseArguments/ARGUMENT-SKIP.cmake
+++ /dev/null
@@ -1,27 +0,0 @@
-# CMAKE_MINIMUM_REQUIRED_VERSION 2.8.12
-# CMAKE_PARSE_ARGUMENTS_DEFAULT_SKIP_EMPTY 0
-# CMAKE_PARSE_ARGUMENTS_(KEEP|SKIP)_EMPTY SKIP
-# => SKIP
-
-cmake_minimum_required(VERSION 2.8.12)
-
-include(CMakeParseArguments)
-
-set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY CMAKE_PARSE_ARGUMENTS_DEFAULT_SKIP_EMPTY 0)
-
-macro(MY_INSTALL)
- set(options OPTIONAL FAST)
- set(oneValueArgs DESTINATION RENAME)
- set(multiValueArgs TARGETS CONFIGURATIONS)
- cmake_parse_arguments(MY_INSTALL "${options}" "${oneValueArgs}" "${multiValueArgs}" CMAKE_PARSE_ARGUMENTS_SKIP_EMPTY "${ARGN}")
-endmacro()
-
-my_install(DESTINATION "" TARGETS foo "" bar)
-
-if(DEFINED MY_INSTALL_DESTINATION)
- message(FATAL_ERROR "DEFINED MY_INSTALL_DESTINATION")
-endif()
-
-if(NOT "${MY_INSTALL_TARGETS}" STREQUAL "foo;bar")
- message(FATAL_ERROR "NOT \"\${MY_INSTALL_TARGETS}\" STREQUAL \"foo;bar\"")
-endif()
diff --git a/Tests/RunCMake/CMakeParseArguments/CMakeLists.txt b/Tests/RunCMake/CMakeParseArguments/CMakeLists.txt
deleted file mode 100644
index 4b3de84..0000000
--- a/Tests/RunCMake/CMakeParseArguments/CMakeLists.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-cmake_minimum_required(VERSION 2.8.12)
-project(${RunCMake_TEST} NONE)
-include(${RunCMake_TEST}.cmake)
diff --git a/Tests/RunCMake/CMakeParseArguments/Example.cmake b/Tests/RunCMake/CMakeParseArguments/Example.cmake
deleted file mode 100644
index 063b5f8..0000000
--- a/Tests/RunCMake/CMakeParseArguments/Example.cmake
+++ /dev/null
@@ -1,70 +0,0 @@
-include(CMakeParseArguments)
-
-macro(MY_INSTALL)
- set(options OPTIONAL FAST)
- set(oneValueArgs DESTINATION RENAME)
- set(multiValueArgs TARGETS CONFIGURATIONS)
- cmake_parse_arguments(MY_INSTALL "${options}" "${oneValueArgs}" "${multiValueArgs}" "${ARGN}")
-endmacro()
-
-my_install(TARGETS foo bar DESTINATION bin OPTIONAL)
-
-if(NOT MY_INSTALL_OPTIONAL)
- message(FATAL_ERROR "NOT MY_INSTALL_OPTIONAL")
-endif()
-
-if(MY_INSTALL_FAST)
- message(FATAL_ERROR "MY_INSTALL_FAST")
-endif()
-
-if(NOT "${MY_INSTALL_DESTINATION}" STREQUAL "bin")
- message(FATAL_ERROR "NOT \"\${MY_INSTALL_DESTINATION}\" STREQUAL \"bin\"")
-endif()
-
-if(DEFINED MY_INSTALL_RENAME)
- message(FATAL_ERROR "DEFINED MY_INSTALL_RENAME")
-endif()
-
-if(NOT "${MY_INSTALL_TARGETS}" STREQUAL "foo;bar")
- message(FATAL_ERROR "NOT \"\${MY_INSTALL_TARGETS}\" STREQUAL \"foo;bar\"")
-endif()
-
-if(DEFINED MY_INSTALL_CONFIGURATIONS)
- message(FATAL_ERROR "DEFINED MY_INSTALL_CONFIGURATIONS")
-endif()
-
-if(DEFINED MY_INSTALL_UNPARSED_ARGUMENTS)
- message(DEFINED MY_INSTALL_UNPARSED_ARGUMENTS)
-endif()
-
-
-
-my_install(TARGETS foo bar DESTINATION bin OPTIONAL blub)
-
-if(NOT MY_INSTALL_OPTIONAL)
- message(FATAL_ERROR "NOT MY_INSTALL_OPTIONAL")
-endif()
-
-if(MY_INSTALL_FAST)
- message(FATAL_ERROR "MY_INSTALL_FAST")
-endif()
-
-if(NOT "${MY_INSTALL_DESTINATION}" STREQUAL "bin")
- message(FATAL_ERROR "NOT \"\${MY_INSTALL_DESTINATION}\" STREQUAL \"bin\"")
-endif()
-
-if(DEFINED MY_INSTALL_RENAME)
- message(FATAL_ERROR "DEFINED MY_INSTALL_RENAME")
-endif()
-
-if(NOT "${MY_INSTALL_TARGETS}" STREQUAL "foo;bar")
- message(FATAL_ERROR "NOT \"\${MY_INSTALL_TARGETS}\" STREQUAL \"foo;bar\"")
-endif()
-
-if(DEFINED MY_INSTALL_CONFIGURATIONS)
- message(FATAL_ERROR "DEFINED MY_INSTALL_CONFIGURATIONS")
-endif()
-
-if(NOT "${MY_INSTALL_UNPARSED_ARGUMENTS}" STREQUAL "blub")
- message(FATAL_ERROR "NOT \"\${MY_INSTALL_UNPARSED_ARGUMENTS}\" STREQUAL \"blub\"")
-endif()
diff --git a/Tests/RunCMake/CMakeParseArguments/PROPERTY-KEEP.cmake b/Tests/RunCMake/CMakeParseArguments/PROPERTY-KEEP.cmake
deleted file mode 100644
index 67046ef..0000000
--- a/Tests/RunCMake/CMakeParseArguments/PROPERTY-KEEP.cmake
+++ /dev/null
@@ -1,29 +0,0 @@
-# CMAKE_MINIMUM_REQUIRED_VERSION 2.8.12
-# CMAKE_PARSE_ARGUMENTS_DEFAULT_SKIP_EMPTY 0
-# CMAKE_PARSE_ARGUMENTS_(KEEP|SKIP)_EMPTY UNSET
-# => KEEP
-
-cmake_minimum_required(VERSION 2.8.12)
-
-include(CMakeParseArguments)
-
-set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY CMAKE_PARSE_ARGUMENTS_DEFAULT_SKIP_EMPTY 0)
-
-macro(MY_INSTALL)
- set(options OPTIONAL FAST)
- set(oneValueArgs DESTINATION RENAME)
- set(multiValueArgs TARGETS CONFIGURATIONS)
- cmake_parse_arguments(MY_INSTALL "${options}" "${oneValueArgs}" "${multiValueArgs}" "${ARGN}")
-endmacro()
-
-my_install(DESTINATION "" TARGETS foo "" bar)
-
-if(NOT DEFINED MY_INSTALL_DESTINATION)
- message(FATAL_ERROR "NOT DEFINED MY_INSTALL_DESTINATION")
-elseif(NOT "${MY_INSTALL_DESTINATION}" STREQUAL "")
- message(FATAL_ERROR "NOT \"\${MY_INSTALL_DESTINATION}\" STREQUAL \"\"")
-endif()
-
-if(NOT "${MY_INSTALL_TARGETS}" STREQUAL "foo;;bar")
- message(FATAL_ERROR "NOT \"\${MY_INSTALL_TARGETS}\" STREQUAL \"foo;;bar\"")
-endif()
diff --git a/Tests/RunCMake/CMakeParseArguments/PROPERTY-SKIP.cmake b/Tests/RunCMake/CMakeParseArguments/PROPERTY-SKIP.cmake
deleted file mode 100644
index 941d63f..0000000
--- a/Tests/RunCMake/CMakeParseArguments/PROPERTY-SKIP.cmake
+++ /dev/null
@@ -1,27 +0,0 @@
-# CMAKE_MINIMUM_REQUIRED_VERSION 2.8.12
-# CMAKE_PARSE_ARGUMENTS_DEFAULT_SKIP_EMPTY 1
-# CMAKE_PARSE_ARGUMENTS_(KEEP|SKIP)_EMPTY UNSET
-# => SKIP
-
-cmake_minimum_required(VERSION 2.8.12)
-
-include(CMakeParseArguments)
-
-set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY CMAKE_PARSE_ARGUMENTS_DEFAULT_SKIP_EMPTY 1)
-
-macro(MY_INSTALL)
- set(options OPTIONAL FAST)
- set(oneValueArgs DESTINATION RENAME)
- set(multiValueArgs TARGETS CONFIGURATIONS)
- cmake_parse_arguments(MY_INSTALL "${options}" "${oneValueArgs}" "${multiValueArgs}" "${ARGN}")
-endmacro()
-
-my_install(DESTINATION "" TARGETS foo "" bar)
-
-if(DEFINED MY_INSTALL_DESTINATION)
- message(FATAL_ERROR "DEFINED MY_INSTALL_DESTINATION")
-endif()
-
-if(NOT "${MY_INSTALL_TARGETS}" STREQUAL "foo;bar")
- message(FATAL_ERROR "NOT \"\${MY_INSTALL_TARGETS}\" STREQUAL \"foo;bar\"")
-endif()
diff --git a/Tests/RunCMake/CMakeParseArguments/RunCMakeTest.cmake b/Tests/RunCMake/CMakeParseArguments/RunCMakeTest.cmake
deleted file mode 100644
index 30ab6c6..0000000
--- a/Tests/RunCMake/CMakeParseArguments/RunCMakeTest.cmake
+++ /dev/null
@@ -1,9 +0,0 @@
-include(RunCMake)
-
-run_cmake(Example)
-run_cmake(VERSION-SKIP)
-# run_cmake(VERSION-KEEP) # Enable when 3.0.0 is released
-run_cmake(PROPERTY-SKIP)
-run_cmake(PROPERTY-KEEP)
-run_cmake(ARGUMENT-SKIP)
-run_cmake(ARGUMENT-KEEP)
diff --git a/Tests/RunCMake/CMakeParseArguments/VERSION-KEEP.cmake b/Tests/RunCMake/CMakeParseArguments/VERSION-KEEP.cmake
deleted file mode 100644
index 44967ec..0000000
--- a/Tests/RunCMake/CMakeParseArguments/VERSION-KEEP.cmake
+++ /dev/null
@@ -1,27 +0,0 @@
-# CMAKE_MINIMUM_REQUIRED_VERSION 3.0.0
-# CMAKE_PARSE_ARGUMENTS_DEFAULT_SKIP_EMPTY UNSET
-# CMAKE_PARSE_ARGUMENTS_(KEEP|SKIP)_EMPTY UNSET
-# => KEEP
-
-cmake_minimum_required(VERSION 3.0.0)
-
-include(CMakeParseArguments)
-
-macro(MY_INSTALL)
- set(options OPTIONAL FAST)
- set(oneValueArgs DESTINATION RENAME)
- set(multiValueArgs TARGETS CONFIGURATIONS)
- cmake_parse_arguments(MY_INSTALL "${options}" "${oneValueArgs}" "${multiValueArgs}" "${ARGN}")
-endmacro()
-
-my_install(DESTINATION "" TARGETS foo "" bar)
-
-if(NOT DEFINED MY_INSTALL_DESTINATION)
- message(FATAL_ERROR "NOT DEFINED MY_INSTALL_DESTINATION")
-elseif(NOT "${MY_INSTALL_DESTINATION}" STREQUAL "")
- message(FATAL_ERROR "NOT \"\${MY_INSTALL_DESTINATION}\" STREQUAL \"\"")
-endif()
-
-if(NOT "${MY_INSTALL_TARGETS}" STREQUAL "foo;;bar")
- message(FATAL_ERROR "NOT \"\${MY_INSTALL_TARGETS}\" STREQUAL \"foo;;bar\"")
-endif()
diff --git a/Tests/RunCMake/CMakeParseArguments/VERSION-SKIP.cmake b/Tests/RunCMake/CMakeParseArguments/VERSION-SKIP.cmake
deleted file mode 100644
index 88ff49c..0000000
--- a/Tests/RunCMake/CMakeParseArguments/VERSION-SKIP.cmake
+++ /dev/null
@@ -1,25 +0,0 @@
-# CMAKE_MINIMUM_REQUIRED_VERSION 2.8.12
-# CMAKE_PARSE_ARGUMENTS_DEFAULT_SKIP_EMPTY UNSET
-# CMAKE_PARSE_ARGUMENTS_(KEEP|SKIP)_EMPTY UNSET
-# => SKIP
-
-cmake_minimum_required(VERSION 2.8.12)
-
-include(CMakeParseArguments)
-
-macro(MY_INSTALL)
- set(options OPTIONAL FAST)
- set(oneValueArgs DESTINATION RENAME)
- set(multiValueArgs TARGETS CONFIGURATIONS)
- cmake_parse_arguments(MY_INSTALL "${options}" "${oneValueArgs}" "${multiValueArgs}" "${ARGN}")
-endmacro()
-
-my_install(DESTINATION "" TARGETS foo "" bar)
-
-if(DEFINED MY_INSTALL_DESTINATION)
- message(FATAL_ERROR "DEFINED MY_INSTALL_DESTINATION")
-endif()
-
-if(NOT "${MY_INSTALL_TARGETS}" STREQUAL "foo;bar")
- message(FATAL_ERROR "NOT \"\${MY_INSTALL_TARGETS}\" STREQUAL \"foo;bar\"")
-endif()
-----------------------------------------------------------------------
Summary of changes:
Modules/CMakeParseArguments.cmake | 179 +++-----------------
Source/cmDefinePropertyCommand.h | 7 -
Tests/RunCMake/CMakeLists.txt | 1 -
.../CMakeParseArguments/ARGUMENT-KEEP.cmake | 29 ---
.../CMakeParseArguments/ARGUMENT-SKIP.cmake | 27 ---
Tests/RunCMake/CMakeParseArguments/CMakeLists.txt | 3 -
Tests/RunCMake/CMakeParseArguments/Example.cmake | 70 --------
.../CMakeParseArguments/PROPERTY-KEEP.cmake | 29 ---
.../CMakeParseArguments/PROPERTY-SKIP.cmake | 27 ---
.../CMakeParseArguments/RunCMakeTest.cmake | 9 -
.../CMakeParseArguments/VERSION-KEEP.cmake | 27 ---
.../CMakeParseArguments/VERSION-SKIP.cmake | 25 ---
12 files changed, 25 insertions(+), 408 deletions(-)
delete mode 100644 Tests/RunCMake/CMakeParseArguments/ARGUMENT-KEEP.cmake
delete mode 100644 Tests/RunCMake/CMakeParseArguments/ARGUMENT-SKIP.cmake
delete mode 100644 Tests/RunCMake/CMakeParseArguments/CMakeLists.txt
delete mode 100644 Tests/RunCMake/CMakeParseArguments/Example.cmake
delete mode 100644 Tests/RunCMake/CMakeParseArguments/PROPERTY-KEEP.cmake
delete mode 100644 Tests/RunCMake/CMakeParseArguments/PROPERTY-SKIP.cmake
delete mode 100644 Tests/RunCMake/CMakeParseArguments/RunCMakeTest.cmake
delete mode 100644 Tests/RunCMake/CMakeParseArguments/VERSION-KEEP.cmake
delete mode 100644 Tests/RunCMake/CMakeParseArguments/VERSION-SKIP.cmake
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list