[Cmake-commits] CMake branch, next, updated. v2.8.12.1-5110-g706145c

Stephen Kelly steveire at gmail.com
Tue Nov 12 22:08:34 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  706145cad5370aeabed6b7a05b37d7f960f8f6a4 (commit)
       via  e6a5ab9568048052e353dcc094590032cf821f54 (commit)
      from  4f961c752d9e4ee67cec0ce41e1f7ebd7d84f828 (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=706145cad5370aeabed6b7a05b37d7f960f8f6a4
commit 706145cad5370aeabed6b7a05b37d7f960f8f6a4
Merge: 4f961c7 e6a5ab9
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Tue Nov 12 22:08:27 2013 -0500
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Tue Nov 12 22:08:27 2013 -0500

    Merge topic 'target_compile_features' into next
    
    e6a5ab9 Revert topic target_compile_features.

diff --cc Help/manual/cmake-properties.7.rst
index c5c1a81,d6d42ad..cab5b4a
--- a/Help/manual/cmake-properties.7.rst
+++ b/Help/manual/cmake-properties.7.rst
@@@ -97,12 -96,8 +97,9 @@@ Properties on Target
     /prop_tgt/COMPILE_DEFINITIONS
     /prop_tgt/COMPILE_FLAGS
     /prop_tgt/COMPILE_OPTIONS
-    /prop_tgt/COMPILE_FEATURES
     /prop_tgt/CONFIG_OUTPUT_NAME
 +   /prop_tgt/COMPILE_POOL
     /prop_tgt/CONFIG_POSTFIX
-    /prop_tgt/CXX_STANDARD
-    /prop_tgt/CXX_EXTENSIONS
     /prop_tgt/DEBUG_POSTFIX
     /prop_tgt/DEFINE_SYMBOL
     /prop_tgt/EchoString

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e6a5ab9568048052e353dcc094590032cf821f54
commit e6a5ab9568048052e353dcc094590032cf821f54
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Wed Nov 13 04:05:52 2013 +0100
Commit:     Stephen Kelly <steveire at gmail.com>
CommitDate: Wed Nov 13 04:07:27 2013 +0100

    Revert topic target_compile_features.

diff --git a/Help/command/target_compile_features.rst b/Help/command/target_compile_features.rst
deleted file mode 100644
index e33ba4e..0000000
--- a/Help/command/target_compile_features.rst
+++ /dev/null
@@ -1,28 +0,0 @@
-target_compile_features
------------------------
-
-Add expected compiler features to a target.
-
-::
-
-  target_compile_features(<target> <PRIVATE|PUBLIC|INTERFACE> <feature> [...])
-
-Specify compiler features required when compiling a given target.  If the
-feature is not listed in the :variable:`CMAKE_CXX_COMPILE_FEATURES` variable,
-then an error will be reported by CMake.  If the use of the feature requires
-an additional compiler flag, such as --std=c++11, the flag will be added
-automatically.
-
-The INTERFACE, PUBLIC and PRIVATE keywords are required to specify the
-scope of the features.  PRIVATE and PUBLIC items will
-populate the :prop_tgt:`COMPILE_FEATURES` property of <target>.  PUBLIC and
-INTERFACE items will populate the :prop_tgt:`INTERFACE_COMPILE_FEATURES` property
-of <target>.  Repeated calls for the same <target> append items in the order called.
-
-The named <target> must have been created by a command such as
-add_executable or add_library and must not be an IMPORTED target.
-
-Arguments to target_compile_features may use "generator expressions"
-with the syntax "$<...>".
-See the :manual:`cmake-generator-expressions(7)` manual for available
-expressions.
diff --git a/Help/manual/cmake-commands.7.rst b/Help/manual/cmake-commands.7.rst
index 1294873..fb0d2b5 100644
--- a/Help/manual/cmake-commands.7.rst
+++ b/Help/manual/cmake-commands.7.rst
@@ -91,7 +91,6 @@ These commands may be used freely in CMake projects.
    /command/source_group
    /command/string
    /command/target_compile_definitions
-   /command/target_compile_features
    /command/target_compile_options
    /command/target_include_directories
    /command/target_link_libraries
diff --git a/Help/manual/cmake-properties.7.rst b/Help/manual/cmake-properties.7.rst
index e3a4cf8..d6d42ad 100644
--- a/Help/manual/cmake-properties.7.rst
+++ b/Help/manual/cmake-properties.7.rst
@@ -96,11 +96,8 @@ Properties on Targets
    /prop_tgt/COMPILE_DEFINITIONS
    /prop_tgt/COMPILE_FLAGS
    /prop_tgt/COMPILE_OPTIONS
-   /prop_tgt/COMPILE_FEATURES
    /prop_tgt/CONFIG_OUTPUT_NAME
    /prop_tgt/CONFIG_POSTFIX
-   /prop_tgt/CXX_STANDARD
-   /prop_tgt/CXX_EXTENSIONS
    /prop_tgt/DEBUG_POSTFIX
    /prop_tgt/DEFINE_SYMBOL
    /prop_tgt/EchoString
diff --git a/Help/manual/cmake-variables.7.rst b/Help/manual/cmake-variables.7.rst
index b06989b..59e8064 100644
--- a/Help/manual/cmake-variables.7.rst
+++ b/Help/manual/cmake-variables.7.rst
@@ -222,9 +222,6 @@ Variables for Languages
    :maxdepth: 1
 
    /variable/CMAKE_COMPILER_IS_GNULANG
-   /variable/CMAKE_CXX_COMPILE_FEATURES
-   /variable/CMAKE_CXX_KNOWN_FEATURES
-   /variable/CMAKE_CXX_STANDARD
    /variable/CMAKE_Fortran_MODDIR_DEFAULT
    /variable/CMAKE_Fortran_MODDIR_FLAG
    /variable/CMAKE_Fortran_MODOUT_FLAG
diff --git a/Help/prop_tgt/COMPILE_FEATURES.rst b/Help/prop_tgt/COMPILE_FEATURES.rst
deleted file mode 100644
index 3ef743c..0000000
--- a/Help/prop_tgt/COMPILE_FEATURES.rst
+++ /dev/null
@@ -1,11 +0,0 @@
-COMPILE_FEATURES
-----------------
-
-Compiler features enabled for this target.
-
-The list of features in this property are a subset of the features listed
-in the :variable:`CMAKE_CXX_COMPILE_FEATURES` variable.
-
-Contents of COMPILE_FEATURES may use "generator expressions" with the
-syntax "$<...>".  See the :manual:`cmake-generator-expressions(7)` manual for
-available expressions.
diff --git a/Help/prop_tgt/CXX_EXTENSIONS.rst b/Help/prop_tgt/CXX_EXTENSIONS.rst
deleted file mode 100644
index 329e2c9..0000000
--- a/Help/prop_tgt/CXX_EXTENSIONS.rst
+++ /dev/null
@@ -1,8 +0,0 @@
-CXX_EXTENSIONS
---------------
-
-Boolean specifying whether compiler specific extensions are requested.
-
-This property specifies whether compiler specific extensions should be
-used.  For some compilers, this results in adding a flag such as -std=gnu++11
-instead of -std=c++11 to the compile line.
diff --git a/Help/prop_tgt/CXX_STANDARD.rst b/Help/prop_tgt/CXX_STANDARD.rst
deleted file mode 100644
index c3cd486..0000000
--- a/Help/prop_tgt/CXX_STANDARD.rst
+++ /dev/null
@@ -1,13 +0,0 @@
-CXX_STANDARD
-------------
-
-The C++ standard whose features are required to build this target.
-
-This property specifies the C++ standard whose features are required
-to build this target.  For some compilers, this results in adding a
-flag such as -std=c++11 to the compile line.
-
-Supported values are 98 and 11.
-
-This property is initialized by the value of the :variable:`CMAKE_CXX_STANDARD`
-variable if it is set when a target is created.
diff --git a/Help/variable/CMAKE_CXX_COMPILE_FEATURES.rst b/Help/variable/CMAKE_CXX_COMPILE_FEATURES.rst
deleted file mode 100644
index 386f5c0..0000000
--- a/Help/variable/CMAKE_CXX_COMPILE_FEATURES.rst
+++ /dev/null
@@ -1,11 +0,0 @@
-CMAKE_CXX_COMPILE_FEATURES
---------------------------
-
-List of features known to the C++ compiler
-
-These features are known to be available for use with the C++ compiler. This
-list is a subset of the features listed in the :variable:`CMAKE_CXX_KNOWN_FEATURES`
-variable.
-
-The features listed here may be used with the :command:`target_compile_features`
-command.
diff --git a/Help/variable/CMAKE_CXX_KNOWN_FEATURES.rst b/Help/variable/CMAKE_CXX_KNOWN_FEATURES.rst
deleted file mode 100644
index 3aa5017..0000000
--- a/Help/variable/CMAKE_CXX_KNOWN_FEATURES.rst
+++ /dev/null
@@ -1,21 +0,0 @@
-CMAKE_CXX_KNOWN_FEATURES
-------------------------
-
-List of C++ features known to this version of CMake.
-
-The features listed in this variable may be known to be available to the C++
-compiler.  If the feature is available with the C++ compiler, it will be
-listed in the :variable:`CMAKE_CXX_COMPILE_FEATURES` variable.
-
-The features known to this version of CMake are:
-
-cxx_delegating_constructors
-  Delegating constructors, as defined in N1986_.
-
-.. _N1986: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1986.pdf
-
-gnuxx_typeof
-  The GNU typeof extension.
-
-msvcxx_sealed
-  The MSVC sealed extension.
diff --git a/Help/variable/CMAKE_CXX_STANDARD.rst b/Help/variable/CMAKE_CXX_STANDARD.rst
deleted file mode 100644
index 87c00c8..0000000
--- a/Help/variable/CMAKE_CXX_STANDARD.rst
+++ /dev/null
@@ -1,8 +0,0 @@
-CMAKE_CXX_STANDARD
-------------------
-
-Default value for CXX_STANDARD property of targets.
-
-This variable is used to initialize the :prop_tgt:`CXX_STANDARD`
-property on all targets.  See that target property for additional
-information.
diff --git a/Modules/Compiler/AppleClang-CXX.cmake b/Modules/Compiler/AppleClang-CXX.cmake
index 0372e18..680f720 100644
--- a/Modules/Compiler/AppleClang-CXX.cmake
+++ b/Modules/Compiler/AppleClang-CXX.cmake
@@ -1,6 +1 @@
-include(Compiler/Clang)
-__compiler_clang(CXX)
-
-if(NOT CMAKE_CXX_SIMULATE_ID STREQUAL "MSVC")
-  set(CMAKE_CXX_COMPILE_OPTIONS_VISIBILITY_INLINES_HIDDEN "-fvisibility-inlines-hidden")
-endif()
+include(Compiler/Clang-CXX)
diff --git a/Modules/Compiler/Clang-CXX-FeatureTests.cmake b/Modules/Compiler/Clang-CXX-FeatureTests.cmake
deleted file mode 100644
index cb56243..0000000
--- a/Modules/Compiler/Clang-CXX-FeatureTests.cmake
+++ /dev/null
@@ -1,17 +0,0 @@
-
-if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 2.1)
-  # This file is only loaded if Clang >= 2.1
-  message(FATAL_ERROR "This file should not be included for Clang < 2.1.")
-endif()
-
-set(testable_features
-  cxx_delegating_constructors
-)
-foreach(feature ${testable_features})
-  set(_cmake_feature_test_${feature} "__has_extension(${feature})")
-endforeach()
-
-unset(testable_features)
-
-set(_cmake_feature_test_gnuxx_typeof "!defined(__STRICT_ANSI__)")
-set(_cmake_feature_test_msvcxx_sealed "_MSC_VER")
diff --git a/Modules/Compiler/Clang-CXX.cmake b/Modules/Compiler/Clang-CXX.cmake
index 31a3358..0372e18 100644
--- a/Modules/Compiler/Clang-CXX.cmake
+++ b/Modules/Compiler/Clang-CXX.cmake
@@ -4,45 +4,3 @@ __compiler_clang(CXX)
 if(NOT CMAKE_CXX_SIMULATE_ID STREQUAL "MSVC")
   set(CMAKE_CXX_COMPILE_OPTIONS_VISIBILITY_INLINES_HIDDEN "-fvisibility-inlines-hidden")
 endif()
-
-cmake_policy(GET CMP0025 appleClangPolicy)
-if(NOT appleClangPolicy STREQUAL NEW)
-  return()
-endif()
-
-set(CMAKE_CXX98_COMPILE_EXTENSIONS)
-set(CMAKE_CXX11_COMPILE_FEATURES)
-set(CMAKE_CXX11_COMPILE_EXTENSIONS)
-
-include("${CMAKE_ROOT}/Modules/Internal/FeatureTesting.cmake")
-
-macro(_get_clang_features std_version list)
-  record_compiler_features(CXX "-std=${std_version}" ${list})
-endmacro()
-
-if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 2.1)
-  set(CMAKE_CXX98_STANDARD_COMPILE_OPTION "-std=c++98")
-  set(CMAKE_CXX98_EXTENSION_COMPILE_OPTION "-std=gnu++98")
-  _get_clang_features(gnu++98 CMAKE_CXX98_COMPILE_EXTENSIONS)
-endif()
-
-if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.1)
-  set(CMAKE_CXX11_STANDARD_COMPILE_OPTION "-std=c++11")
-  set(CMAKE_CXX11_EXTENSION_COMPILE_OPTION "-std=gnu++11")
-  _get_clang_features(gnu++11 CMAKE_CXX11_COMPILE_EXTENSIONS)
-  _get_clang_features(c++11 CMAKE_CXX11_COMPILE_FEATURES)
-elseif(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 2.1)
-  set(CMAKE_CXX11_STANDARD_COMPILE_OPTION "-std=c++0x")
-  set(CMAKE_CXX11_EXTENSION_COMPILE_OPTION "-std=gnu++0x")
-  _get_clang_features(gnu++0x CMAKE_CXX11_COMPILE_EXTENSIONS)
-  _get_clang_features(c++0x CMAKE_CXX11_COMPILE_FEATURES)
-endif()
-
-string(REPLACE "${CMAKE_CXX11_COMPILE_FEATURES}" "" CMAKE_CXX11_COMPILE_EXTENSIONS "${CMAKE_CXX11_COMPILE_EXTENSIONS}")
-string(REPLACE "${CMAKE_CXX98_COMPILE_EXTENSIONS}" "" CMAKE_CXX11_COMPILE_EXTENSIONS "${CMAKE_CXX11_COMPILE_EXTENSIONS}")
-
-set(CMAKE_CXX_COMPILE_FEATURES
-  ${CMAKE_CXX98_COMPILE_EXTENSIONS}
-  ${CMAKE_CXX11_COMPILE_FEATURES}
-  ${CMAKE_CXX11_COMPILE_EXTENSIONS}
-)
diff --git a/Modules/Compiler/GNU-CXX-FeatureTests.cmake b/Modules/Compiler/GNU-CXX-FeatureTests.cmake
deleted file mode 100644
index 13c6128..0000000
--- a/Modules/Compiler/GNU-CXX-FeatureTests.cmake
+++ /dev/null
@@ -1,17 +0,0 @@
-
-set(_cmake_feature_test_gnuxx_typeof "!defined(__STRICT_ANSI__)")
-
-if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.3)
-  # This file is only loaded if GCC >= 4.3
-  message(FATAL_ERROR "This file should not be included for GCC < 4.3.")
-endif()
-
-# For GCC 4.7, we can test the standard __cplusplus macro, ...
-# set(isCxx98Mode "__cplusplus >= 199711L")
-# set(isCxx11Mode "__cplusplus >= 201103L")
-# ... but before GCC 4.7, __cplusplus is always defined to 1, so check
-# the old macro.
-# set(isCxx98Mode "!defined(__GXX_EXPERIMENTAL_CXX0X__)")
-# set(isCxx11Mode "defined(__GXX_EXPERIMENTAL_CXX0X__)")
-
-set(_cmake_feature_test_cxx_delegating_constructors "(__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L")
diff --git a/Modules/Compiler/GNU-CXX.cmake b/Modules/Compiler/GNU-CXX.cmake
index 68ae667..33d6093 100644
--- a/Modules/Compiler/GNU-CXX.cmake
+++ b/Modules/Compiler/GNU-CXX.cmake
@@ -10,42 +10,3 @@ else()
     set(CMAKE_CXX_COMPILE_OPTIONS_VISIBILITY_INLINES_HIDDEN "-fvisibility-inlines-hidden")
   endif()
 endif()
-
-set(CMAKE_CXX98_COMPILE_EXTENSIONS)
-set(CMAKE_CXX11_COMPILE_FEATURES)
-set(CMAKE_CXX11_COMPILE_EXTENSIONS)
-
-include("${CMAKE_ROOT}/Modules/Internal/FeatureTesting.cmake")
-
-macro(_get_gcc_features std_version list)
-  record_compiler_features(CXX "-std=${std_version}" ${list})
-endmacro()
-
-if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.3)
-  set(CMAKE_CXX98_STANDARD_COMPILE_OPTION "-std=c++98")
-  set(CMAKE_CXX98_EXTENSION_COMPILE_OPTION "-std=gnu++98")
-  _get_gcc_features(gnu++98 CMAKE_CXX98_COMPILE_EXTENSIONS)
-endif()
-
-if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.7)
-  set(CMAKE_CXX11_STANDARD_COMPILE_OPTION "-std=c++11")
-  set(CMAKE_CXX11_EXTENSION_COMPILE_OPTION "-std=gnu++11")
-  _get_gcc_features(c++11 CMAKE_CXX11_COMPILE_FEATURES)
-  _get_gcc_features(gnu++11 CMAKE_CXX11_COMPILE_EXTENSIONS)
-
-elseif(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.3)
-  set(CMAKE_CXX11_STANDARD_COMPILE_OPTION "-std=c++0x")
-  set(CMAKE_CXX11_EXTENSION_COMPILE_OPTION "-std=gnu++0x")
-  _get_gcc_features(c++0x CMAKE_CXX11_COMPILE_FEATURES)
-  _get_gcc_features(gnu++0x CMAKE_CXX11_COMPILE_EXTENSIONS)
-
-endif()
-
-string(REPLACE "${CMAKE_CXX98_COMPILE_EXTENSIONS}" "" CMAKE_CXX11_COMPILE_EXTENSIONS "${CMAKE_CXX11_COMPILE_EXTENSIONS}")
-string(REPLACE "${CMAKE_CXX11_COMPILE_FEATURES}" "" CMAKE_CXX11_COMPILE_EXTENSIONS "${CMAKE_CXX11_COMPILE_EXTENSIONS}")
-
-set(CMAKE_CXX_COMPILE_FEATURES
-  ${CMAKE_CXX98_COMPILE_EXTENSIONS}
-  ${CMAKE_CXX11_COMPILE_FEATURES}
-  ${CMAKE_CXX11_COMPILE_EXTENSIONS}
-)
diff --git a/Modules/Compiler/GNU.cmake b/Modules/Compiler/GNU.cmake
index 37c9e6d..504704d 100644
--- a/Modules/Compiler/GNU.cmake
+++ b/Modules/Compiler/GNU.cmake
@@ -51,7 +51,6 @@ macro(__compiler_gnu lang)
   set(CMAKE_${lang}_FLAGS_RELWITHDEBINFO_INIT "-O2 -g -DNDEBUG")
   set(CMAKE_${lang}_CREATE_PREPROCESSED_SOURCE "<CMAKE_${lang}_COMPILER> <DEFINES> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>")
   set(CMAKE_${lang}_CREATE_ASSEMBLY_SOURCE "<CMAKE_${lang}_COMPILER> <DEFINES> <FLAGS> -S <SOURCE> -o <ASSEMBLY_SOURCE>")
-  set(_CMAKE_${lang}_CREATE_OBJECT_FILE "<FLAGS>;-c;<SOURCE>")
   if(NOT APPLE)
     set(CMAKE_INCLUDE_SYSTEM_FLAG_${lang} "-isystem ")
   endif()
diff --git a/Modules/Compiler/MSVC-CXX-FeatureTests.cmake b/Modules/Compiler/MSVC-CXX-FeatureTests.cmake
deleted file mode 100644
index 7a56acd..0000000
--- a/Modules/Compiler/MSVC-CXX-FeatureTests.cmake
+++ /dev/null
@@ -1,2 +0,0 @@
-
-set(_cmake_feature_test_msvcxx_sealed "_MSC_VER >= 1400")
diff --git a/Modules/Internal/FeatureTesting.cmake b/Modules/Internal/FeatureTesting.cmake
deleted file mode 100644
index 3d59b7d..0000000
--- a/Modules/Internal/FeatureTesting.cmake
+++ /dev/null
@@ -1,47 +0,0 @@
-
-macro(record_compiler_features lang compile_flags feature_list)
-  include("${CMAKE_ROOT}/Modules/Compiler/${CMAKE_${lang}_COMPILER_ID}-${lang}-FeatureTests.cmake" OPTIONAL)
-
-  string(TOLOWER ${lang} lang_lc)
-  file(REMOVE "${CMAKE_BINARY_DIR}/CMakeFiles/feature_tests${CMAKE_${lang}_OUTPUT_EXTENSION}")
-  file(WRITE "${CMAKE_BINARY_DIR}/CMakeFiles/feature_tests.${lang_lc}" "
-  extern const char features[] = {\"\"\n")
-  foreach(feature ${CMAKE_${lang}_KNOWN_FEATURES})
-    if (_cmake_feature_test_${feature})
-      if (${_cmake_feature_test_${feature}} STREQUAL 1)
-        set(_feature_condition "\"1\" ")
-      else()
-        set(_feature_condition "#if ${_cmake_feature_test_${feature}}\n\"1\"\n#else\n\"0\"\n#endif\n")
-      endif()
-      file(APPEND "${CMAKE_BINARY_DIR}/CMakeFiles/feature_tests.${lang_lc}" "\"${lang}_FEATURE:\"\n${_feature_condition}\"${feature}\\n\"\n")
-    endif()
-  endforeach()
-  file(APPEND "${CMAKE_BINARY_DIR}/CMakeFiles/feature_tests.${lang_lc}" "\n};\n")
-
-  string(REPLACE "<FLAGS>" "${compile_flags}" _compile_object_command "${_CMAKE_${lang}_CREATE_OBJECT_FILE}" )
-  string(REPLACE "<SOURCE>" "${CMAKE_BINARY_DIR}/CMakeFiles/feature_tests.${lang_lc}" _compile_object_command "${_compile_object_command}" )
-  execute_process(COMMAND "${CMAKE_${lang}_COMPILER}"
-    ${_compile_object_command}
-    WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/CMakeFiles"
-    ERROR_VARIABLE _error
-    OUTPUT_VARIABLE _output
-    RESULT_VARIABLE _result
-  )
-  # We need to capture these when running the process so that the output does
-  # not leak and confuse unit tests. Clear the variables so they do not leak
-  # to user CMake code either.
-  unset(_error)
-  unset(_output)
-  if (_result EQUAL 0 AND EXISTS "${CMAKE_BINARY_DIR}/CMakeFiles/feature_tests${CMAKE_${lang}_OUTPUT_EXTENSION}")
-    file(STRINGS "${CMAKE_BINARY_DIR}/CMakeFiles/feature_tests${CMAKE_${lang}_OUTPUT_EXTENSION}"
-      features REGEX "${lang}_FEATURE:.*")
-    foreach(info ${features})
-      string(REPLACE "${lang}_FEATURE:" "" info ${info})
-      string(SUBSTRING ${info} 0 1 has_feature)
-      if(has_feature)
-        string(REGEX REPLACE "^1" "" feature ${info})
-        list(APPEND ${feature_list} ${feature})
-      endif()
-    endforeach()
-  endif()
-endmacro()
diff --git a/Modules/Platform/Windows-MSVC-CXX.cmake b/Modules/Platform/Windows-MSVC-CXX.cmake
index ebe3468..0e85005 100644
--- a/Modules/Platform/Windows-MSVC-CXX.cmake
+++ b/Modules/Platform/Windows-MSVC-CXX.cmake
@@ -4,7 +4,3 @@ if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 18.0)
   set(_FS_CXX " /FS")
 endif()
 __windows_compiler_msvc(CXX)
-
-include("${CMAKE_ROOT}/Modules/Internal/FeatureTesting.cmake")
-
-record_compiler_features(CXX "" CMAKE_CXX_COMPILE_FEATURES)
diff --git a/Modules/Platform/Windows-MSVC.cmake b/Modules/Platform/Windows-MSVC.cmake
index 53b439a..e29aaf4 100644
--- a/Modules/Platform/Windows-MSVC.cmake
+++ b/Modules/Platform/Windows-MSVC.cmake
@@ -246,7 +246,6 @@ macro(__windows_compiler_msvc lang)
     "<CMAKE_${lang}_COMPILER> > <PREPROCESSED_SOURCE> ${CMAKE_START_TEMP_FILE} ${CMAKE_CL_NOLOGO}${_COMPILE_${lang}} <FLAGS> <DEFINES> -E <SOURCE>${CMAKE_END_TEMP_FILE}")
   set(CMAKE_${lang}_CREATE_ASSEMBLY_SOURCE
     "<CMAKE_${lang}_COMPILER> ${CMAKE_START_TEMP_FILE} ${CMAKE_CL_NOLOGO}${_COMPILE_${lang}} <FLAGS> <DEFINES> /FoNUL /FAs /Fa<ASSEMBLY_SOURCE> /c <SOURCE>${CMAKE_END_TEMP_FILE}")
-  set(_CMAKE_${lang}_CREATE_OBJECT_FILE "${CMAKE_CL_NOLOGO};/TP;<FLAGS>;-c;<SOURCE>")
 
   set(CMAKE_${lang}_USE_RESPONSE_FILE_FOR_OBJECTS 1)
   set(CMAKE_${lang}_LINK_EXECUTABLE
diff --git a/Source/cmCommands.cxx b/Source/cmCommands.cxx
index 8f89fd9..1e2a85c 100644
--- a/Source/cmCommands.cxx
+++ b/Source/cmCommands.cxx
@@ -32,7 +32,6 @@
 #include "cmSubdirDependsCommand.cxx"
 #include "cmTargetCompileDefinitionsCommand.cxx"
 #include "cmTargetCompileOptionsCommand.cxx"
-#include "cmTargetCompileFeaturesCommand.cxx"
 #include "cmTargetIncludeDirectoriesCommand.cxx"
 #include "cmTargetPropCommandBase.cxx"
 #include "cmUseMangledMesaCommand.cxx"
@@ -78,7 +77,6 @@ void GetPredefinedCommands(std::list<cmCommand*>&
   commands.push_back(new cmTargetIncludeDirectoriesCommand);
   commands.push_back(new cmTargetCompileDefinitionsCommand);
   commands.push_back(new cmTargetCompileOptionsCommand);
-  commands.push_back(new cmTargetCompileFeaturesCommand);
   commands.push_back(new cmUseMangledMesaCommand);
   commands.push_back(new cmUtilitySourceCommand);
   commands.push_back(new cmVariableRequiresCommand);
diff --git a/Source/cmGeneratorExpressionDAGChecker.cxx b/Source/cmGeneratorExpressionDAGChecker.cxx
index cfcaa70..92dc054 100644
--- a/Source/cmGeneratorExpressionDAGChecker.cxx
+++ b/Source/cmGeneratorExpressionDAGChecker.cxx
@@ -210,11 +210,3 @@ bool cmGeneratorExpressionDAGChecker::EvaluatingCompileOptions() const
   return (strcmp(prop, "COMPILE_OPTIONS") == 0
        || strcmp(prop, "INTERFACE_COMPILE_OPTIONS") == 0 );
 }
-
-//----------------------------------------------------------------------------
-bool cmGeneratorExpressionDAGChecker::EvaluatingCompileFeatures() const
-{
-  const char *prop = this->Property.c_str();
-  return (strcmp(prop, "COMPILE_FEATURES") == 0
-       || strcmp(prop, "INTERFACE_COMPILE_FEATURES") == 0);
-}
diff --git a/Source/cmGeneratorExpressionDAGChecker.h b/Source/cmGeneratorExpressionDAGChecker.h
index 0502430..c8594e7 100644
--- a/Source/cmGeneratorExpressionDAGChecker.h
+++ b/Source/cmGeneratorExpressionDAGChecker.h
@@ -20,15 +20,13 @@
   F(EvaluatingIncludeDirectories) \
   F(EvaluatingSystemIncludeDirectories) \
   F(EvaluatingCompileDefinitions) \
-  F(EvaluatingCompileOptions) \
-  F(EvaluatingCompileFeatures)
+  F(EvaluatingCompileOptions)
 
 #define CM_FOR_EACH_TRANSITIVE_PROPERTY_NAME(F) \
   F(INCLUDE_DIRECTORIES) \
   F(SYSTEM_INCLUDE_DIRECTORIES) \
   F(COMPILE_DEFINITIONS) \
-  F(COMPILE_OPTIONS) \
-  F(COMPILE_FEATURES)
+  F(COMPILE_OPTIONS)
 
 //----------------------------------------------------------------------------
 struct cmGeneratorExpressionDAGChecker
diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx
index a44ce49..63ec576 100644
--- a/Source/cmLocalGenerator.cxx
+++ b/Source/cmLocalGenerator.cxx
@@ -1386,14 +1386,6 @@ void cmLocalGenerator::AddCompileOptions(
       this->AppendFlagEscape(flags, i->c_str());
       }
     }
-  std::vector<std::string> features;
-  target->GetCompileFeatures(features, config);
-  for(std::vector<std::string>::const_iterator it = features.begin();
-      it != features.end(); ++it)
-    {
-    this->Makefile->AddRequiredTargetFeature(target, it->c_str());
-    }
-  this->AddCompilerRequirementFlag(flags, target, lang);
 }
 
 //----------------------------------------------------------------------------
@@ -2073,36 +2065,6 @@ void cmLocalGenerator::AddSharedFlags(std::string& flags,
     }
 }
 
-//----------------------------------------------------------------------------
-void cmLocalGenerator::
-AddCompilerRequirementFlag(std::string &flags, cmTarget* target,
-                           const char *lang)
-{
-  if (!lang)
-    {
-    return;
-    }
-  std::string l(lang);
-  std::string stdProp = l + "_STANDARD";
-  const char *standard = target->GetProperty(stdProp.c_str());
-  if (!standard)
-    {
-    return;
-    }
-  std::string extProp = l + "_EXTENSIONS";
-  bool ext = target->GetPropertyAsBool(extProp.c_str());
-  std::string type = ext ? "EXTENSION" : "STANDARD";
-
-  std::string compile_option =
-            "CMAKE_" + l + std::string(standard)
-                     + "_" + type + "_COMPILE_OPTION";
-  if (const char *opt =
-                target->GetMakefile()->GetDefinition(compile_option.c_str()))
-    {
-    this->AppendFlags(flags, opt);
-    }
-}
-
 static void AddVisibilityCompileOption(std::string &flags, cmTarget* target,
                                        cmLocalGenerator *lg, const char *lang)
 {
diff --git a/Source/cmLocalGenerator.h b/Source/cmLocalGenerator.h
index 4a307f7..21700e9 100644
--- a/Source/cmLocalGenerator.h
+++ b/Source/cmLocalGenerator.h
@@ -147,8 +147,6 @@ public:
                                 const char *lang);
   void AddConfigVariableFlags(std::string& flags, const char* var,
                               const char* config);
-  void AddCompilerRequirementFlag(std::string &flags, cmTarget* target,
-                                  const char *lang);
   ///! Append flags to a string.
   virtual void AppendFlags(std::string& flags, const char* newFlags);
   virtual void AppendFlagEscape(std::string& flags, const char* rawFlag);
diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx
index e7c23ef..c18a7eb 100644
--- a/Source/cmMakefile.cxx
+++ b/Source/cmMakefile.cxx
@@ -41,11 +41,6 @@
 #include <ctype.h> // for isspace
 #include <assert.h>
 
-#define FOR_EACH_CXX_FEATURE(F) \
-  F(cxx_delegating_constructors) \
-  F(gnuxx_typeof) \
-  F(msvcxx_sealed)
-
 class cmMakefile::Internals
 {
 public:
@@ -2414,19 +2409,6 @@ const char* cmMakefile::GetDefinition(const char* name) const
     {
     this->Internal->VarUsageStack.top().insert(name);
     }
-  if (strcmp(name, "CMAKE_CXX_KNOWN_FEATURES") == 0)
-    {
-#define STRING_LIST_ELEMENT(F) ";" #F
-    return FOR_EACH_CXX_FEATURE(STRING_LIST_ELEMENT) + 1;
-#undef STRING_LIST_ELEMENT
-    }
-#define PP_FEATURE_NAME(F) \
-  if (strcmp(name, "CMAKE_PP_NAME_" #F) == 0) \
-    { \
-    return ("COMPILER_" + cmSystemTools::UpperCase(#F)).c_str(); \
-    }
-  FOR_EACH_CXX_FEATURE(PP_FEATURE_NAME)
-#undef PP_FEATURE_NAME
   const char* def = this->Internal->VarStack.top().Get(name);
   if(!def)
     {
@@ -4439,146 +4421,3 @@ void cmMakefile::RecordPolicies(cmPolicies::PolicyMap& pm)
     pm[pid] = this->GetPolicyStatus(pid);
     }
 }
-
-#define FEATURE_STRING(F) , #F
-
-static const char * const CXX_FEATURES[] = {
-  0
-  FOR_EACH_CXX_FEATURE(FEATURE_STRING)
-};
-
-static const char * const CXX_STANDARDS[] = {
-    "98"
-  , "11"
-};
-
-bool cmMakefile::
-AddRequiredTargetFeature(cmTarget *target, const char *feature) const
-{
-  if (cmGeneratorExpression::Find(feature) != std::string::npos)
-    {
-    target->AppendProperty("COMPILE_FEATURES", feature);
-    return true;
-    }
-  bool isCxxFeature = std::find_if(cmArrayBegin(CXX_FEATURES) + 1,
-              cmArrayEnd(CXX_FEATURES), cmStrCmp(feature))
-              != cmArrayEnd(CXX_FEATURES);
-  if (!isCxxFeature)
-    {
-    return false;
-    }
-
-  const char* cxxFeaturesKnown =
-    this->GetDefinition("CMAKE_CXX_COMPILE_FEATURES");
-
-  if (!cxxFeaturesKnown)
-    {
-    // We know of no features for the compiler at all.
-    return true;
-    }
-
-  std::vector<std::string> availableFeatures;
-  cmSystemTools::ExpandListArgument(cxxFeaturesKnown, availableFeatures);
-  if (std::find(availableFeatures.begin(),
-                availableFeatures.end(),
-                feature) == availableFeatures.end())
-    {
-    cmOStringStream e;
-    e << "The compiler feature \"" << feature
-      << "\" is not known to compiler \""
-      << this->GetDefinition("CMAKE_CXX_COMPILER_ID") << "\" version "
-      << this->GetDefinition("CMAKE_CXX_COMPILER_VERSION") << ".";
-    this->IssueMessage(cmake::FATAL_ERROR, e.str().c_str());
-    return false;
-    }
-
-  target->AppendProperty("COMPILE_FEATURES", feature);
-
-  bool needCxx98 = true;
-  bool needCxx11 = false;
-  bool needCxxExt = false;
-
-  if (const char *propCxx98 =
-                        this->GetDefinition("CMAKE_CXX98_COMPILE_FEATURES"))
-    {
-    std::vector<std::string> props;
-    cmSystemTools::ExpandListArgument(propCxx98, props);
-    needCxx98 = std::find(props.begin(), props.end(), feature) != props.end();
-    }
-  if (const char *propCxx11 =
-          this->GetDefinition("CMAKE_CXX11_COMPILE_FEATURES"))
-    {
-    std::vector<std::string> props;
-    cmSystemTools::ExpandListArgument(propCxx11, props);
-    needCxx11 = std::find(props.begin(), props.end(), feature) != props.end();
-    }
-
-  if (const char *propCxx98ext =
-          this->GetDefinition("CMAKE_CXX98_COMPILER_EXTENSIONS"))
-    {
-    std::vector<std::string> props;
-    cmSystemTools::ExpandListArgument(propCxx98ext, props);
-    needCxxExt = std::find(props.begin(), props.end(), feature) != props.end();
-    }
-  if (const char *propCxx11ext =
-          this->GetDefinition("CMAKE_CXX11_COMPILER_EXTENSIONS"))
-    {
-    std::vector<std::string> props;
-    cmSystemTools::ExpandListArgument(propCxx11ext, props);
-    bool needCxx11Ext = std::find(props.begin(), props.end(), feature)
-                      != props.end();
-    needCxx11 = needCxx11Ext;
-    needCxxExt = needCxxExt || needCxx11Ext;
-    }
-
-  const char *existingCxxStandard = target->GetProperty("CXX_STANDARD");
-  if (existingCxxStandard)
-    {
-    if (std::find_if(cmArrayBegin(CXX_STANDARDS), cmArrayEnd(CXX_STANDARDS),
-                  cmStrCmp(existingCxxStandard)) == cmArrayEnd(CXX_STANDARDS))
-      {
-      cmOStringStream e;
-      e << "The CXX_STANDARD property on target \"" << target->GetName()
-        << "\" contained an invalid value: \"" << existingCxxStandard << "\".";
-      this->IssueMessage(cmake::FATAL_ERROR, e.str().c_str());
-      return false;
-      }
-    }
-  const char * const *existingCxxIt = existingCxxStandard
-                                    ? std::find_if(cmArrayBegin(CXX_STANDARDS),
-                                      cmArrayEnd(CXX_STANDARDS),
-                                      cmStrCmp(existingCxxStandard))
-                                    : cmArrayEnd(CXX_STANDARDS);
-
-  bool setCxx11 = needCxx11 && !existingCxxStandard;
-  bool setCxx98 = needCxx98 && !existingCxxStandard;
-  if (existingCxxStandard && existingCxxIt <
-                                    std::find_if(cmArrayBegin(CXX_STANDARDS),
-                                      cmArrayEnd(CXX_STANDARDS),
-                                      cmStrCmp("11")))
-    {
-    setCxx11 = true;
-    }
-  else if(existingCxxStandard && existingCxxIt <
-                                    std::find_if(cmArrayBegin(CXX_STANDARDS),
-                                      cmArrayEnd(CXX_STANDARDS),
-                                      cmStrCmp("98")))
-    {
-    setCxx98 = true;
-    }
-
-  if (setCxx11)
-    {
-    target->SetProperty("CXX_STANDARD", "11");
-    }
-  else if (setCxx98)
-    {
-    target->SetProperty("CXX_STANDARD", "98");
-    }
-  bool existingCxxExt = target->GetPropertyAsBool("CXX_EXTENSIONS");
-  if (needCxxExt && !existingCxxExt)
-    {
-    target->SetProperty("CXX_EXTENSIONS", "1");
-    }
-  return true;
-}
diff --git a/Source/cmMakefile.h b/Source/cmMakefile.h
index 4aeffdf..76958ca 100644
--- a/Source/cmMakefile.h
+++ b/Source/cmMakefile.h
@@ -883,8 +883,6 @@ public:
   std::set<cmStdString> const & GetSystemIncludeDirectories() const
     { return this->SystemIncludeDirectories; }
 
-  bool AddRequiredTargetFeature(cmTarget *target, const char *feature) const;
-
 protected:
   // add link libraries and directories to the target
   void AddGlobalLinkInformation(const char* name, cmTarget& target);
diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx
index ea7dc97..dc65297 100644
--- a/Source/cmTarget.cxx
+++ b/Source/cmTarget.cxx
@@ -135,7 +135,6 @@ public:
   };
   std::vector<TargetPropertyEntry*> IncludeDirectoriesEntries;
   std::vector<TargetPropertyEntry*> CompileOptionsEntries;
-  std::vector<TargetPropertyEntry*> CompileFeaturesEntries;
   std::vector<TargetPropertyEntry*> CompileDefinitionsEntries;
   std::vector<cmValueWithOrigin> LinkInterfacePropertyEntries;
 
@@ -145,13 +144,10 @@ public:
                                 CachedLinkInterfaceCompileOptionsEntries;
   mutable std::map<std::string, std::vector<TargetPropertyEntry*> >
                                 CachedLinkInterfaceCompileDefinitionsEntries;
-  mutable std::map<std::string, std::vector<TargetPropertyEntry*> >
-                                CachedLinkInterfaceCompileFeaturesEntries;
 
   mutable std::map<std::string, bool> CacheLinkInterfaceIncludeDirectoriesDone;
   mutable std::map<std::string, bool> CacheLinkInterfaceCompileDefinitionsDone;
   mutable std::map<std::string, bool> CacheLinkInterfaceCompileOptionsDone;
-  mutable std::map<std::string, bool> CacheLinkInterfaceCompileFeaturesDone;
 };
 
 //----------------------------------------------------------------------------
@@ -186,7 +182,6 @@ cmTargetInternals::~cmTargetInternals()
 {
   deleteAndClear(this->CachedLinkInterfaceIncludeDirectoriesEntries);
   deleteAndClear(this->CachedLinkInterfaceCompileOptionsEntries);
-  deleteAndClear(this->CachedLinkInterfaceCompileFeaturesEntries);
   deleteAndClear(this->CachedLinkInterfaceCompileDefinitionsEntries);
 }
 
@@ -209,7 +204,6 @@ cmTarget::cmTarget()
   this->BuildInterfaceIncludesAppended = false;
   this->DebugIncludesDone = false;
   this->DebugCompileOptionsDone = false;
-  this->DebugCompileFeaturesDone = false;
   this->DebugCompileDefinitionsDone = false;
 }
 
@@ -286,7 +280,6 @@ void cmTarget::SetMakefile(cmMakefile* mf)
   this->SetPropertyDefault("MACOSX_BUNDLE", 0);
   this->SetPropertyDefault("MACOSX_RPATH", 0);
   this->SetPropertyDefault("NO_SYSTEM_FROM_IMPORTED", 0);
-  this->SetPropertyDefault("CXX_STANDARD", 0);
 
 
   // Collect the set of configuration types.
@@ -1417,17 +1410,6 @@ void cmTarget::SetProperty(const char* prop, const char* value)
                           new cmTargetInternals::TargetPropertyEntry(cge));
     return;
     }
-  if(strcmp(prop,"COMPILE_FEATURES") == 0)
-    {
-    cmListFileBacktrace lfbt;
-    this->Makefile->GetBacktrace(lfbt);
-    cmGeneratorExpression ge(lfbt);
-    deleteAndClear(this->Internal->CompileFeaturesEntries);
-    cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(value);
-    this->Internal->CompileFeaturesEntries.push_back(
-                          new cmTargetInternals::TargetPropertyEntry(cge));
-    return;
-    }
   if(strcmp(prop,"COMPILE_DEFINITIONS") == 0)
     {
     cmListFileBacktrace lfbt;
@@ -1493,15 +1475,6 @@ void cmTarget::AppendProperty(const char* prop, const char* value,
               new cmTargetInternals::TargetPropertyEntry(ge.Parse(value)));
     return;
     }
-  if(strcmp(prop,"COMPILE_FEATURES") == 0)
-    {
-    cmListFileBacktrace lfbt;
-    this->Makefile->GetBacktrace(lfbt);
-    cmGeneratorExpression ge(lfbt);
-    this->Internal->CompileFeaturesEntries.push_back(
-              new cmTargetInternals::TargetPropertyEntry(ge.Parse(value)));
-    return;
-    }
   if(strcmp(prop,"COMPILE_DEFINITIONS") == 0)
     {
     cmListFileBacktrace lfbt;
@@ -2228,121 +2201,6 @@ void cmTarget::GetCompileDefinitions(std::vector<std::string> &list,
 }
 
 //----------------------------------------------------------------------------
-static void processCompileFeatures(cmTarget const* tgt,
-      const std::vector<cmTargetInternals::TargetPropertyEntry*> &entries,
-      std::vector<std::string> &options,
-      std::set<std::string> &uniqueOptions,
-      cmGeneratorExpressionDAGChecker *dagChecker,
-      const char *config, bool debugOptions)
-{
-  processCompileOptionsInternal(tgt, entries, options, uniqueOptions,
-                                dagChecker, config, debugOptions, "features");
-}
-
-//----------------------------------------------------------------------------
-void cmTarget::GetCompileFeatures(std::vector<std::string> &result,
-                                 const char *config) const
-{
-  std::set<std::string> uniqueFeatures;
-  cmListFileBacktrace lfbt;
-
-  cmGeneratorExpressionDAGChecker dagChecker(lfbt,
-                                             this->GetName(),
-                                             "COMPILE_FEATURES",
-                                             0, 0);
-
-  std::vector<std::string> debugProperties;
-  const char *debugProp =
-              this->Makefile->GetDefinition("CMAKE_DEBUG_TARGET_PROPERTIES");
-  if (debugProp)
-    {
-    cmSystemTools::ExpandListArgument(debugProp, debugProperties);
-    }
-
-  bool debugFeatures = !this->DebugCompileFeaturesDone
-                    && std::find(debugProperties.begin(),
-                                 debugProperties.end(),
-                                 "COMPILE_FEATURES")
-                        != debugProperties.end();
-
-  if (this->Makefile->IsGeneratingBuildSystem())
-    {
-    this->DebugCompileFeaturesDone = true;
-    }
-
-  processCompileFeatures(this,
-                            this->Internal->CompileFeaturesEntries,
-                            result,
-                            uniqueFeatures,
-                            &dagChecker,
-                            config,
-                            debugFeatures);
-
-  std::string configString = config ? config : "";
-  if (!this->Internal->CacheLinkInterfaceCompileFeaturesDone[configString])
-    {
-
-    for (std::vector<cmValueWithOrigin>::const_iterator
-        it = this->Internal->LinkInterfacePropertyEntries.begin(),
-        end = this->Internal->LinkInterfacePropertyEntries.end();
-        it != end; ++it)
-      {
-      if (!cmGeneratorExpression::IsValidTargetName(it->Value)
-          && cmGeneratorExpression::Find(it->Value) == std::string::npos)
-        {
-        continue;
-        }
-      {
-      cmGeneratorExpression ge(lfbt);
-      cmsys::auto_ptr<cmCompiledGeneratorExpression> cge =
-                                                        ge.Parse(it->Value);
-      std::string targetResult = cge->Evaluate(this->Makefile, config,
-                                        false, this, 0, 0);
-      if (!this->Makefile->FindTargetToUse(targetResult.c_str()))
-        {
-        continue;
-        }
-      }
-      std::string featureGenex = "$<TARGET_PROPERTY:" +
-                              it->Value + ",INTERFACE_COMPILE_FEATURES>";
-      if (cmGeneratorExpression::Find(it->Value) != std::string::npos)
-        {
-        // Because it->Value is a generator expression, ensure that it
-        // evaluates to the non-empty string before being used in the
-        // TARGET_PROPERTY expression.
-        featureGenex = "$<$<BOOL:" + it->Value + ">:" + featureGenex + ">";
-        }
-      cmGeneratorExpression ge(it->Backtrace);
-      cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(
-                                                                featureGenex);
-
-      this->Internal
-        ->CachedLinkInterfaceCompileFeaturesEntries[configString].push_back(
-                        new cmTargetInternals::TargetPropertyEntry(cge,
-                                                              it->Value));
-      }
-    }
-
-  processCompileFeatures(this,
-    this->Internal->CachedLinkInterfaceCompileFeaturesEntries[configString],
-                            result,
-                            uniqueFeatures,
-                            &dagChecker,
-                            config,
-                            debugFeatures);
-
-  if (!this->Makefile->IsGeneratingBuildSystem())
-    {
-    deleteAndClear(this->Internal->CachedLinkInterfaceCompileFeaturesEntries);
-    }
-  else
-    {
-    this->Internal->CacheLinkInterfaceCompileFeaturesDone[configString]
-                                                                      = true;
-    }
-}
-
-//----------------------------------------------------------------------------
 void cmTarget::MaybeInvalidatePropertyCache(const char* prop)
 {
   // Wipe out maps caching information affected by this property.
@@ -2809,24 +2667,6 @@ const char *cmTarget::GetProperty(const char* prop,
       }
     return output.c_str();
     }
-  if(strcmp(prop,"COMPILE_FEATURES") == 0)
-    {
-    static std::string output;
-    output = "";
-    std::string sep;
-    typedef cmTargetInternals::TargetPropertyEntry
-                                TargetPropertyEntry;
-    for (std::vector<TargetPropertyEntry*>::const_iterator
-        it = this->Internal->CompileFeaturesEntries.begin(),
-        end = this->Internal->CompileFeaturesEntries.end();
-        it != end; ++it)
-      {
-      output += sep;
-      output += (*it)->ge->GetInput();
-      sep = ";";
-      }
-    return output.c_str();
-    }
   if(strcmp(prop,"COMPILE_DEFINITIONS") == 0)
     {
     static std::string output;
@@ -5993,7 +5833,6 @@ cmTargetInternalPointer::~cmTargetInternalPointer()
 {
   deleteAndClear(this->Pointer->IncludeDirectoriesEntries);
   deleteAndClear(this->Pointer->CompileOptionsEntries);
-  deleteAndClear(this->Pointer->CompileFeaturesEntries);
   deleteAndClear(this->Pointer->CompileDefinitionsEntries);
   delete this->Pointer;
 }
diff --git a/Source/cmTarget.h b/Source/cmTarget.h
index 0dc90a4..b516a0a 100644
--- a/Source/cmTarget.h
+++ b/Source/cmTarget.h
@@ -524,8 +524,6 @@ public:
 
   void GetCompileOptions(std::vector<std::string> &result,
                          const char *config) const;
-  void GetCompileFeatures(std::vector<std::string> &result,
-                           const char *config) const;
 
   bool IsNullImpliedByLinkLibraries(const std::string &p) const;
   bool IsLinkInterfaceDependentBoolProperty(const std::string &p,
@@ -684,7 +682,6 @@ private:
   mutable bool DebugIncludesDone;
   mutable bool DebugCompileOptionsDone;
   mutable bool DebugCompileDefinitionsDone;
-  mutable bool DebugCompileFeaturesDone;
   mutable std::set<std::string> LinkImplicitNullProperties;
   bool BuildInterfaceIncludesAppended;
 
diff --git a/Source/cmTargetCompileDefinitionsCommand.cxx b/Source/cmTargetCompileDefinitionsCommand.cxx
index 2ad2405..46c9666 100644
--- a/Source/cmTargetCompileDefinitionsCommand.cxx
+++ b/Source/cmTargetCompileDefinitionsCommand.cxx
@@ -58,10 +58,9 @@ std::string cmTargetCompileDefinitionsCommand
 }
 
 //----------------------------------------------------------------------------
-bool cmTargetCompileDefinitionsCommand
+void cmTargetCompileDefinitionsCommand
 ::HandleDirectContent(cmTarget *tgt, const std::vector<std::string> &content,
                                    bool, bool)
 {
   tgt->AppendProperty("COMPILE_DEFINITIONS", this->Join(content).c_str());
-  return true;
 }
diff --git a/Source/cmTargetCompileDefinitionsCommand.h b/Source/cmTargetCompileDefinitionsCommand.h
index eedcfbf..7405e90 100644
--- a/Source/cmTargetCompileDefinitionsCommand.h
+++ b/Source/cmTargetCompileDefinitionsCommand.h
@@ -44,7 +44,7 @@ private:
   virtual void HandleImportedTarget(const std::string &tgt);
   virtual void HandleMissingTarget(const std::string &name);
 
-  virtual bool HandleDirectContent(cmTarget *tgt,
+  virtual void HandleDirectContent(cmTarget *tgt,
                                    const std::vector<std::string> &content,
                                    bool prepend, bool system);
   virtual std::string Join(const std::vector<std::string> &content);
diff --git a/Source/cmTargetCompileFeaturesCommand.cxx b/Source/cmTargetCompileFeaturesCommand.cxx
deleted file mode 100644
index 8a7e5f8..0000000
--- a/Source/cmTargetCompileFeaturesCommand.cxx
+++ /dev/null
@@ -1,71 +0,0 @@
-/*============================================================================
-  CMake - Cross Platform Makefile Generator
-  Copyright 2013 Stephen Kelly <steveire at gmail.com>
-
-  Distributed under the OSI-approved BSD License (the "License");
-  see accompanying file Copyright.txt for details.
-
-  This software is distributed WITHOUT ANY WARRANTY; without even the
-  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-  See the License for more information.
-============================================================================*/
-#include "cmTargetCompileFeaturesCommand.h"
-
-bool cmTargetCompileFeaturesCommand::InitialPass(
-  std::vector<std::string> const& args,
-  cmExecutionStatus &)
-{
-  return this->HandleArguments(args, "COMPILE_FEATURES", NO_FLAGS);
-}
-
-void cmTargetCompileFeaturesCommand
-::HandleImportedTarget(const std::string &tgt)
-{
-  cmOStringStream e;
-  e << "Cannot specify compile features for imported target \""
-    << tgt << "\".";
-  this->Makefile->IssueMessage(cmake::FATAL_ERROR, e.str());
-}
-
-void cmTargetCompileFeaturesCommand
-::HandleMissingTarget(const std::string &name)
-{
-  cmOStringStream e;
-  e << "Cannot specify compile features for target \"" << name << "\" "
-       "which is not built by this project.";
-  this->Makefile->IssueMessage(cmake::FATAL_ERROR, e.str());
-}
-
-//----------------------------------------------------------------------------
-std::string cmTargetCompileFeaturesCommand
-::Join(const std::vector<std::string> &content)
-{
-  std::string defs;
-  std::string sep;
-  for(std::vector<std::string>::const_iterator it = content.begin();
-    it != content.end(); ++it)
-    {
-    defs += sep + *it;
-    sep = ";";
-    }
-  return defs;
-}
-
-//----------------------------------------------------------------------------
-bool cmTargetCompileFeaturesCommand
-::HandleDirectContent(cmTarget *tgt, const std::vector<std::string> &content,
-                                   bool, bool)
-{
-  for(std::vector<std::string>::const_iterator it = content.begin();
-    it != content.end(); ++it)
-    {
-    if(!this->Makefile->AddRequiredTargetFeature(tgt, it->c_str()))
-      {
-      cmOStringStream e;
-      e << "specified unknown feature \"" << *it << "\".";
-      this->SetError(e.str().c_str());
-      return false;
-      }
-    }
-  return true;
-}
diff --git a/Source/cmTargetCompileFeaturesCommand.h b/Source/cmTargetCompileFeaturesCommand.h
deleted file mode 100644
index 97a61ba..0000000
--- a/Source/cmTargetCompileFeaturesCommand.h
+++ /dev/null
@@ -1,41 +0,0 @@
-/*============================================================================
-  CMake - Cross Platform Makefile Generator
-  Copyright 2013 Stephen Kelly <steveire at gmail.com>
-
-  Distributed under the OSI-approved BSD License (the "License");
-  see accompanying file Copyright.txt for details.
-
-  This software is distributed WITHOUT ANY WARRANTY; without even the
-  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-  See the License for more information.
-============================================================================*/
-#ifndef cmTargetCompileFeaturesCommand_h
-#define cmTargetCompileFeaturesCommand_h
-
-#include "cmTargetPropCommandBase.h"
-
-class cmTargetCompileFeaturesCommand : public cmTargetPropCommandBase
-{
-  virtual cmCommand* Clone()
-    {
-    return new cmTargetCompileFeaturesCommand;
-    }
-
-  virtual bool InitialPass(std::vector<std::string> const& args,
-                           cmExecutionStatus &status);
-
-  virtual const char* GetName() const { return "target_compile_features";}
-
-  cmTypeMacro(cmTargetCompileFeaturesCommand, cmTargetPropCommandBase);
-
-private:
-  virtual void HandleImportedTarget(const std::string &tgt);
-  virtual void HandleMissingTarget(const std::string &name);
-
-  virtual bool HandleDirectContent(cmTarget *tgt,
-                                   const std::vector<std::string> &content,
-                                   bool prepend, bool system);
-  virtual std::string Join(const std::vector<std::string> &content);
-};
-
-#endif
diff --git a/Source/cmTargetCompileOptionsCommand.cxx b/Source/cmTargetCompileOptionsCommand.cxx
index 18499fd..254acc7 100644
--- a/Source/cmTargetCompileOptionsCommand.cxx
+++ b/Source/cmTargetCompileOptionsCommand.cxx
@@ -51,7 +51,7 @@ std::string cmTargetCompileOptionsCommand
 }
 
 //----------------------------------------------------------------------------
-bool cmTargetCompileOptionsCommand
+void cmTargetCompileOptionsCommand
 ::HandleDirectContent(cmTarget *tgt, const std::vector<std::string> &content,
                                    bool, bool)
 {
@@ -59,5 +59,4 @@ bool cmTargetCompileOptionsCommand
   this->Makefile->GetBacktrace(lfbt);
   cmValueWithOrigin entry(this->Join(content), lfbt);
   tgt->InsertCompileOption(entry);
-  return true;
 }
diff --git a/Source/cmTargetCompileOptionsCommand.h b/Source/cmTargetCompileOptionsCommand.h
index 4376ba7..3713e5a 100644
--- a/Source/cmTargetCompileOptionsCommand.h
+++ b/Source/cmTargetCompileOptionsCommand.h
@@ -44,7 +44,7 @@ private:
   virtual void HandleImportedTarget(const std::string &tgt);
   virtual void HandleMissingTarget(const std::string &name);
 
-  virtual bool HandleDirectContent(cmTarget *tgt,
+  virtual void HandleDirectContent(cmTarget *tgt,
                                    const std::vector<std::string> &content,
                                    bool prepend, bool system);
   virtual std::string Join(const std::vector<std::string> &content);
diff --git a/Source/cmTargetIncludeDirectoriesCommand.cxx b/Source/cmTargetIncludeDirectoriesCommand.cxx
index af7fe77..e7b906c 100644
--- a/Source/cmTargetIncludeDirectoriesCommand.cxx
+++ b/Source/cmTargetIncludeDirectoriesCommand.cxx
@@ -64,7 +64,7 @@ std::string cmTargetIncludeDirectoriesCommand
 }
 
 //----------------------------------------------------------------------------
-bool cmTargetIncludeDirectoriesCommand
+void cmTargetIncludeDirectoriesCommand
 ::HandleDirectContent(cmTarget *tgt, const std::vector<std::string> &content,
                       bool prepend, bool system)
 {
@@ -76,7 +76,6 @@ bool cmTargetIncludeDirectoriesCommand
     {
     tgt->AddSystemIncludeDirectories(content);
     }
-  return true;
 }
 
 //----------------------------------------------------------------------------
diff --git a/Source/cmTargetIncludeDirectoriesCommand.h b/Source/cmTargetIncludeDirectoriesCommand.h
index bb0efcd..6863ee5 100644
--- a/Source/cmTargetIncludeDirectoriesCommand.h
+++ b/Source/cmTargetIncludeDirectoriesCommand.h
@@ -45,7 +45,7 @@ private:
   virtual void HandleImportedTarget(const std::string &tgt);
   virtual void HandleMissingTarget(const std::string &name);
 
-  virtual bool HandleDirectContent(cmTarget *tgt,
+  virtual void HandleDirectContent(cmTarget *tgt,
                                    const std::vector<std::string> &content,
                                    bool prepend, bool system);
   virtual void HandleInterfaceContent(cmTarget *tgt,
diff --git a/Source/cmTargetPropCommandBase.cxx b/Source/cmTargetPropCommandBase.cxx
index 2470b28..e7b6999 100644
--- a/Source/cmTargetPropCommandBase.cxx
+++ b/Source/cmTargetPropCommandBase.cxx
@@ -131,31 +131,29 @@ bool cmTargetPropCommandBase
         || args[i] == "PRIVATE"
         || args[i] == "INTERFACE" )
       {
-      return this->PopulateTargetProperies(scope, content, prepend, system);
+      this->PopulateTargetProperies(scope, content, prepend, system);
+      return true;
       }
     content.push_back(args[i]);
     }
-  return this->PopulateTargetProperies(scope, content, prepend, system);
+  this->PopulateTargetProperies(scope, content, prepend, system);
+  return true;
 }
 
 //----------------------------------------------------------------------------
-bool cmTargetPropCommandBase
+void cmTargetPropCommandBase
 ::PopulateTargetProperies(const std::string &scope,
                           const std::vector<std::string> &content,
                           bool prepend, bool system)
 {
   if (scope == "PRIVATE" || scope == "PUBLIC")
     {
-    if (!this->HandleDirectContent(this->Target, content, prepend, system))
-      {
-      return false;
-      }
+    this->HandleDirectContent(this->Target, content, prepend, system);
     }
   if (scope == "INTERFACE" || scope == "PUBLIC")
     {
     this->HandleInterfaceContent(this->Target, content, prepend, system);
     }
-  return true;
 }
 
 //----------------------------------------------------------------------------
diff --git a/Source/cmTargetPropCommandBase.h b/Source/cmTargetPropCommandBase.h
index 67a8596..c402836 100644
--- a/Source/cmTargetPropCommandBase.h
+++ b/Source/cmTargetPropCommandBase.h
@@ -43,7 +43,7 @@ private:
   virtual void HandleImportedTarget(const std::string &tgt) = 0;
   virtual void HandleMissingTarget(const std::string &name) = 0;
 
-  virtual bool HandleDirectContent(cmTarget *tgt,
+  virtual void HandleDirectContent(cmTarget *tgt,
                                    const std::vector<std::string> &content,
                                    bool prepend, bool system) = 0;
 
@@ -51,7 +51,7 @@ private:
 
   bool ProcessContentArgs(std::vector<std::string> const& args,
                           unsigned int &argIndex, bool prepend, bool system);
-  bool PopulateTargetProperies(const std::string &scope,
+  void PopulateTargetProperies(const std::string &scope,
                                const std::vector<std::string> &content,
                                bool prepend, bool system);
 };
diff --git a/Tests/CMakeCommands/target_compile_features/CMakeLists.txt b/Tests/CMakeCommands/target_compile_features/CMakeLists.txt
deleted file mode 100644
index 7276935..0000000
--- a/Tests/CMakeCommands/target_compile_features/CMakeLists.txt
+++ /dev/null
@@ -1,31 +0,0 @@
-cmake_minimum_required(VERSION 2.8.12)
-cmake_policy(SET CMP0025 NEW)
-project(target_compile_features)
-
-if ("${CMAKE_CXX_COMPILER_ID}" MATCHES "GNU|Clang")
-  add_executable(gnuxx_typeof_test gnuxx_typeof_test.cpp)
-endif()
-if (("${CMAKE_CXX_COMPILER}" MATCHES "MSVC"
-      AND NOT MSVC_VERSION VERSION_LESS 1400)
-    OR ("${CMAKE_CXX_COMPILER}" STREQUAL "Clang"
-      AND "${CMAKE_CXX_SIMULATE_ID}" STREQUAL "MSVC"))
-  add_executable(msvcxx_sealed_test msvcxx_sealed_test.cpp)
-endif()
-
-if (NOT ";${CMAKE_CXX_COMPILE_FEATURES};" MATCHES ";cxx_delegating_constructors;")
-  add_executable(target_compile_features dummy.cpp)
-  return()
-endif()
-
-add_executable(target_compile_features main.cpp)
-target_compile_features(target_compile_features
-  PRIVATE cxx_delegating_constructors
-)
-
-add_library(lib_delegating_constructors lib_delegating_constructors.cpp)
-target_compile_features(lib_delegating_constructors
-  PUBLIC cxx_delegating_constructors
-)
-
-add_executable(lib_user lib_user.cpp)
-target_link_libraries(lib_user lib_delegating_constructors)
diff --git a/Tests/CMakeCommands/target_compile_features/dummy.cpp b/Tests/CMakeCommands/target_compile_features/dummy.cpp
deleted file mode 100644
index 341aaaf..0000000
--- a/Tests/CMakeCommands/target_compile_features/dummy.cpp
+++ /dev/null
@@ -1,5 +0,0 @@
-
-int main(int, char **)
-{
-  return 0;
-}
diff --git a/Tests/CMakeCommands/target_compile_features/gnuxx_typeof_test.cpp b/Tests/CMakeCommands/target_compile_features/gnuxx_typeof_test.cpp
deleted file mode 100644
index 3b8532e..0000000
--- a/Tests/CMakeCommands/target_compile_features/gnuxx_typeof_test.cpp
+++ /dev/null
@@ -1,6 +0,0 @@
-
-int main(int argc, char **argv)
-{
-  typeof(argc) ret = 0;
-  return ret;
-}
diff --git a/Tests/CMakeCommands/target_compile_features/lib_delegating_constructors.cpp b/Tests/CMakeCommands/target_compile_features/lib_delegating_constructors.cpp
deleted file mode 100644
index e597acd..0000000
--- a/Tests/CMakeCommands/target_compile_features/lib_delegating_constructors.cpp
+++ /dev/null
@@ -1,8 +0,0 @@
-
-#include "lib_delegating_constructors.h"
-
-Foo::Foo(int i)
-  : m_i(i)
-{
-
-}
diff --git a/Tests/CMakeCommands/target_compile_features/lib_delegating_constructors.h b/Tests/CMakeCommands/target_compile_features/lib_delegating_constructors.h
deleted file mode 100644
index 75be701..0000000
--- a/Tests/CMakeCommands/target_compile_features/lib_delegating_constructors.h
+++ /dev/null
@@ -1,17 +0,0 @@
-
-#include <cstring>
-
-class Foo
-{
-public:
-  Foo(int i);
-
-  Foo(const char *a)
-    : Foo(strlen(a))
-  {
-
-  }
-
-private:
-  int m_i;
-};
diff --git a/Tests/CMakeCommands/target_compile_features/lib_user.cpp b/Tests/CMakeCommands/target_compile_features/lib_user.cpp
deleted file mode 100644
index 83ad51e..0000000
--- a/Tests/CMakeCommands/target_compile_features/lib_user.cpp
+++ /dev/null
@@ -1,27 +0,0 @@
-
-#include "lib_delegating_constructors.h"
-
-class Bar
-{
-  Bar(int i)
-    :m_i(i)
-  {
-
-  }
-
-  Bar(const char *a)
-    : Bar(strlen(a))
-  {
-
-  }
-
-private:
-  int m_i;
-};
-
-int main(int argc, char **argv)
-{
-  Foo f("hello");
-  Foo b("world");
-  return 0;
-}
diff --git a/Tests/CMakeCommands/target_compile_features/main.cpp b/Tests/CMakeCommands/target_compile_features/main.cpp
deleted file mode 100644
index 77671b0..0000000
--- a/Tests/CMakeCommands/target_compile_features/main.cpp
+++ /dev/null
@@ -1,25 +0,0 @@
-
-#include <cstring>
-
-class Foo
-{
-  Foo(int i)
-    :m_i(i)
-  {
-
-  }
-
-  Foo(const char *a)
-    : Foo(strlen(a))
-  {
-
-  }
-
-private:
-  int m_i;
-};
-
-int main(int, char **)
-{
-  return 0;
-}
diff --git a/Tests/CMakeCommands/target_compile_features/msvcxx_sealed_test.cpp b/Tests/CMakeCommands/target_compile_features/msvcxx_sealed_test.cpp
deleted file mode 100644
index 0127937..0000000
--- a/Tests/CMakeCommands/target_compile_features/msvcxx_sealed_test.cpp
+++ /dev/null
@@ -1,8 +0,0 @@
-
-class A sealed {};
-
-int main(int argc, char **argv)
-{
-  A a;
-  return 0;
-}
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
index 4cb912d..d4a55fc 100644
--- a/Tests/CMakeLists.txt
+++ b/Tests/CMakeLists.txt
@@ -247,12 +247,6 @@ if(BUILD_TESTING)
   ADD_TEST_MACRO(CompatibleInterface CompatibleInterface)
   ADD_TEST_MACRO(AliasTarget AliasTarget)
   ADD_TEST_MACRO(InterfaceLibrary InterfaceLibrary)
-  if((CMAKE_CXX_COMPILER_ID STREQUAL GNU
-        AND NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.6)
-      OR (CMAKE_CXX_COMPILER_ID STREQUAL Clang
-        AND NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 2.9))
-    ADD_TEST_MACRO(CxxDialect CxxDialect)
-  endif()
   set_tests_properties(EmptyLibrary PROPERTIES
     PASS_REGULAR_EXPRESSION "CMake Error: CMake can not determine linker language for target: test")
   ADD_TEST_MACRO(CrossCompile CrossCompile)
@@ -2093,8 +2087,6 @@ ${CMake_BINARY_DIR}/bin/cmake -DVERSION=master -P ${CMake_SOURCE_DIR}/Utilities/
   ADD_TEST_MACRO(CMakeCommands.target_include_directories target_include_directories)
   ADD_TEST_MACRO(CMakeCommands.target_compile_definitions target_compile_definitions)
   ADD_TEST_MACRO(CMakeCommands.target_compile_options target_compile_options)
-  ADD_TEST_MACRO(CMakeCommands.target_compile_features target_compile_features)
-  ADD_TEST_MACRO(compile_features compile_features)
 
   configure_file(
     "${CMake_SOURCE_DIR}/Tests/CTestTestCrash/test.cmake.in"
diff --git a/Tests/CxxDialect/CMakeLists.txt b/Tests/CxxDialect/CMakeLists.txt
deleted file mode 100644
index f0b2d10..0000000
--- a/Tests/CxxDialect/CMakeLists.txt
+++ /dev/null
@@ -1,14 +0,0 @@
-cmake_minimum_required(VERSION 2.8.12)
-cmake_policy(SET CMP0025 NEW)
-project(CxxDialect)
-
-add_executable(use_typeof use_typeof.cxx)
-set_property(TARGET use_typeof PROPERTY CXX_STANDARD 98)
-set_property(TARGET use_typeof PROPERTY CXX_EXTENSIONS TRUE)
-
-add_executable(use_constexpr use_constexpr.cxx)
-set_property(TARGET use_constexpr PROPERTY CXX_STANDARD 11)
-
-add_executable(CxxDialect use_constexpr_and_typeof.cxx)
-set_property(TARGET CxxDialect PROPERTY CXX_STANDARD 11)
-set_property(TARGET CxxDialect PROPERTY CXX_EXTENSIONS TRUE)
diff --git a/Tests/CxxDialect/use_constexpr.cxx b/Tests/CxxDialect/use_constexpr.cxx
deleted file mode 100644
index 30ccc4c..0000000
--- a/Tests/CxxDialect/use_constexpr.cxx
+++ /dev/null
@@ -1,10 +0,0 @@
-
-constexpr int foo()
-{
-  return 0;
-}
-
-int main(int argc, char**)
-{
-  return foo();
-}
diff --git a/Tests/CxxDialect/use_constexpr_and_typeof.cxx b/Tests/CxxDialect/use_constexpr_and_typeof.cxx
deleted file mode 100644
index af217b6..0000000
--- a/Tests/CxxDialect/use_constexpr_and_typeof.cxx
+++ /dev/null
@@ -1,11 +0,0 @@
-
-constexpr int foo()
-{
-  return 0;
-}
-
-int main(int argc, char**)
-{
-  typeof(argc) ret = foo();
-  return ret;
-}
diff --git a/Tests/CxxDialect/use_typeof.cxx b/Tests/CxxDialect/use_typeof.cxx
deleted file mode 100644
index dabb61f..0000000
--- a/Tests/CxxDialect/use_typeof.cxx
+++ /dev/null
@@ -1,6 +0,0 @@
-
-int main(int argc, char**)
-{
-  typeof(argc) ret = 0;
-  return ret;
-}
diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt
index afe4b58..99a0fb3 100644
--- a/Tests/RunCMake/CMakeLists.txt
+++ b/Tests/RunCMake/CMakeLists.txt
@@ -129,5 +129,4 @@ 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)
diff --git a/Tests/RunCMake/target_compile_features/CMakeLists.txt b/Tests/RunCMake/target_compile_features/CMakeLists.txt
deleted file mode 100644
index aa7278d..0000000
--- a/Tests/RunCMake/target_compile_features/CMakeLists.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-cmake_minimum_required(VERSION 2.8.12)
-cmake_policy(SET CMP0025 NEW)
-project(${RunCMake_TEST} CXX)
-include(${RunCMake_TEST}.cmake)
diff --git a/Tests/RunCMake/target_compile_features/RunCMakeTest.cmake b/Tests/RunCMake/target_compile_features/RunCMakeTest.cmake
deleted file mode 100644
index f2abef7..0000000
--- a/Tests/RunCMake/target_compile_features/RunCMakeTest.cmake
+++ /dev/null
@@ -1,11 +0,0 @@
-include(RunCMake)
-
-run_cmake(not_enough_args)
-run_cmake(alias_target)
-run_cmake(utility_target)
-run_cmake(invalid_args)
-run_cmake(invalid_args_on_interface)
-run_cmake(imported_target)
-run_cmake(no_target)
-run_cmake(not_a_cxx_feature)
-run_cmake(no_matching_cxx_feature)
diff --git a/Tests/RunCMake/target_compile_features/alias_target-result.txt b/Tests/RunCMake/target_compile_features/alias_target-result.txt
deleted file mode 100644
index d00491f..0000000
--- a/Tests/RunCMake/target_compile_features/alias_target-result.txt
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/Tests/RunCMake/target_compile_features/alias_target-stderr.txt b/Tests/RunCMake/target_compile_features/alias_target-stderr.txt
deleted file mode 100644
index 3321e3f..0000000
--- a/Tests/RunCMake/target_compile_features/alias_target-stderr.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-CMake Error at alias_target.cmake:4 \(target_compile_features\):
-  target_compile_features can not be used on an ALIAS target.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:4 \(include\)
diff --git a/Tests/RunCMake/target_compile_features/alias_target.cmake b/Tests/RunCMake/target_compile_features/alias_target.cmake
deleted file mode 100644
index d35ddba..0000000
--- a/Tests/RunCMake/target_compile_features/alias_target.cmake
+++ /dev/null
@@ -1,4 +0,0 @@
-
-add_executable(main empty.cpp)
-add_executable(Alias::Main ALIAS main)
-target_compile_features(Alias::Main PRIVATE cxx_delegating_constructors)
diff --git a/Tests/RunCMake/target_compile_features/empty.cpp b/Tests/RunCMake/target_compile_features/empty.cpp
deleted file mode 100644
index bfbbdde..0000000
--- a/Tests/RunCMake/target_compile_features/empty.cpp
+++ /dev/null
@@ -1,7 +0,0 @@
-#ifdef _WIN32
-__declspec(dllexport)
-#endif
-int empty()
-{
-  return 0;
-}
diff --git a/Tests/RunCMake/target_compile_features/imported_target-result.txt b/Tests/RunCMake/target_compile_features/imported_target-result.txt
deleted file mode 100644
index d00491f..0000000
--- a/Tests/RunCMake/target_compile_features/imported_target-result.txt
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/Tests/RunCMake/target_compile_features/imported_target-stderr.txt b/Tests/RunCMake/target_compile_features/imported_target-stderr.txt
deleted file mode 100644
index 95431b4..0000000
--- a/Tests/RunCMake/target_compile_features/imported_target-stderr.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-CMake Error at imported_target.cmake:3 \(target_compile_features\):
-  Cannot specify compile features for imported target "main".
-Call Stack \(most recent call first\):
-  CMakeLists.txt:4 \(include\)
diff --git a/Tests/RunCMake/target_compile_features/imported_target.cmake b/Tests/RunCMake/target_compile_features/imported_target.cmake
deleted file mode 100644
index e248c2f..0000000
--- a/Tests/RunCMake/target_compile_features/imported_target.cmake
+++ /dev/null
@@ -1,3 +0,0 @@
-
-add_library(main INTERFACE IMPORTED)
-target_compile_features(main INTERFACE cxx_delegating_constructors)
diff --git a/Tests/RunCMake/target_compile_features/invalid_args-result.txt b/Tests/RunCMake/target_compile_features/invalid_args-result.txt
deleted file mode 100644
index d00491f..0000000
--- a/Tests/RunCMake/target_compile_features/invalid_args-result.txt
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/Tests/RunCMake/target_compile_features/invalid_args-stderr.txt b/Tests/RunCMake/target_compile_features/invalid_args-stderr.txt
deleted file mode 100644
index 1242730..0000000
--- a/Tests/RunCMake/target_compile_features/invalid_args-stderr.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-CMake Error at invalid_args.cmake:3 \(target_compile_features\):
-  target_compile_features called with invalid arguments
-Call Stack \(most recent call first\):
-  CMakeLists.txt:4 \(include\)
diff --git a/Tests/RunCMake/target_compile_features/invalid_args.cmake b/Tests/RunCMake/target_compile_features/invalid_args.cmake
deleted file mode 100644
index 1a7fb37..0000000
--- a/Tests/RunCMake/target_compile_features/invalid_args.cmake
+++ /dev/null
@@ -1,3 +0,0 @@
-
-add_executable(main empty.cpp)
-target_compile_features(main INVALID cxx_delegating_constructors)
diff --git a/Tests/RunCMake/target_compile_features/invalid_args_on_interface-result.txt b/Tests/RunCMake/target_compile_features/invalid_args_on_interface-result.txt
deleted file mode 100644
index d00491f..0000000
--- a/Tests/RunCMake/target_compile_features/invalid_args_on_interface-result.txt
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/Tests/RunCMake/target_compile_features/invalid_args_on_interface-stderr.txt b/Tests/RunCMake/target_compile_features/invalid_args_on_interface-stderr.txt
deleted file mode 100644
index d7f48b1..0000000
--- a/Tests/RunCMake/target_compile_features/invalid_args_on_interface-stderr.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-CMake Error at invalid_args_on_interface.cmake:3 \(target_compile_features\):
-  target_compile_features may only be set INTERFACE properties on INTERFACE
-  targets
-Call Stack \(most recent call first\):
-  CMakeLists.txt:4 \(include\)
diff --git a/Tests/RunCMake/target_compile_features/invalid_args_on_interface.cmake b/Tests/RunCMake/target_compile_features/invalid_args_on_interface.cmake
deleted file mode 100644
index 324d0f3..0000000
--- a/Tests/RunCMake/target_compile_features/invalid_args_on_interface.cmake
+++ /dev/null
@@ -1,3 +0,0 @@
-
-add_library(main INTERFACE)
-target_compile_features(main PRIVATE cxx_delegating_constructors)
diff --git a/Tests/RunCMake/target_compile_features/no_matching_cxx_feature-result.txt b/Tests/RunCMake/target_compile_features/no_matching_cxx_feature-result.txt
deleted file mode 100644
index d00491f..0000000
--- a/Tests/RunCMake/target_compile_features/no_matching_cxx_feature-result.txt
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/Tests/RunCMake/target_compile_features/no_matching_cxx_feature-stderr.txt b/Tests/RunCMake/target_compile_features/no_matching_cxx_feature-stderr.txt
deleted file mode 100644
index 4df6ee4..0000000
--- a/Tests/RunCMake/target_compile_features/no_matching_cxx_feature-stderr.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-CMake Error at no_matching_cxx_feature.cmake:[0-9][0-9]? \((target_compile_features|message)\):
-  The compiler feature "[^"]+" is not known to compiler "[^"]*"[ \n]*version[ \n]*.+\.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:4 \(include\)
diff --git a/Tests/RunCMake/target_compile_features/no_matching_cxx_feature.cmake b/Tests/RunCMake/target_compile_features/no_matching_cxx_feature.cmake
deleted file mode 100644
index e74a8d7..0000000
--- a/Tests/RunCMake/target_compile_features/no_matching_cxx_feature.cmake
+++ /dev/null
@@ -1,26 +0,0 @@
-
-if (NOT ";${CMAKE_CXX_COMPILE_FEATURES};" MATCHES ";gnuxx_typeof;"
-    AND NOT ";${CMAKE_CXX_COMPILE_FEATURES};" MATCHES ";msvcxx_sealed;" )
-  # Simulate passing the test.
-  message(SEND_ERROR
-    "The compiler feature \"gnuxx_dummy\" is not known to compiler \"GNU\" version 4.8.1."
-  )
-  return()
-endif()
-
-if (";${CMAKE_CXX_COMPILE_FEATURES};" MATCHES ";gnuxx_typeof;")
-  set(feature msvcxx_sealed)
-  if (";${CMAKE_CXX_COMPILE_FEATURES};" MATCHES ";msvcxx_sealed;")
-    # If a compiler supports both extensions, remove one of them.
-    list(REMOVE_ITEM CMAKE_CXX_COMPILE_FEATURES msvcxx_sealed)
-  endif()
-else()
-  set(feature gnuxx_typeof)
-endif()
-
-add_executable(main empty.cpp)
-
-target_compile_features(main
-  PRIVATE
-    ${feature}
-)
diff --git a/Tests/RunCMake/target_compile_features/no_target-result.txt b/Tests/RunCMake/target_compile_features/no_target-result.txt
deleted file mode 100644
index d00491f..0000000
--- a/Tests/RunCMake/target_compile_features/no_target-result.txt
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/Tests/RunCMake/target_compile_features/no_target-stderr.txt b/Tests/RunCMake/target_compile_features/no_target-stderr.txt
deleted file mode 100644
index 9cd5e6b..0000000
--- a/Tests/RunCMake/target_compile_features/no_target-stderr.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-CMake Error at no_target.cmake:2 \(target_compile_features\):
-  Cannot specify compile features for target "main" which is not built by
-  this project.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:4 \(include\)
diff --git a/Tests/RunCMake/target_compile_features/no_target.cmake b/Tests/RunCMake/target_compile_features/no_target.cmake
deleted file mode 100644
index 3f0afe2..0000000
--- a/Tests/RunCMake/target_compile_features/no_target.cmake
+++ /dev/null
@@ -1,2 +0,0 @@
-
-target_compile_features(main INTERFACE cxx_delegating_constructors)
diff --git a/Tests/RunCMake/target_compile_features/not_a_cxx_feature-result.txt b/Tests/RunCMake/target_compile_features/not_a_cxx_feature-result.txt
deleted file mode 100644
index d00491f..0000000
--- a/Tests/RunCMake/target_compile_features/not_a_cxx_feature-result.txt
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/Tests/RunCMake/target_compile_features/not_a_cxx_feature-stderr.txt b/Tests/RunCMake/target_compile_features/not_a_cxx_feature-stderr.txt
deleted file mode 100644
index 1b82258..0000000
--- a/Tests/RunCMake/target_compile_features/not_a_cxx_feature-stderr.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-CMake Error at not_a_cxx_feature.cmake:3 \(target_compile_features\):
-  target_compile_features specified unknown feature "cxx_not_a_feature".
-Call Stack \(most recent call first\):
-  CMakeLists.txt:4 \(include\)
diff --git a/Tests/RunCMake/target_compile_features/not_a_cxx_feature.cmake b/Tests/RunCMake/target_compile_features/not_a_cxx_feature.cmake
deleted file mode 100644
index 0207b72..0000000
--- a/Tests/RunCMake/target_compile_features/not_a_cxx_feature.cmake
+++ /dev/null
@@ -1,6 +0,0 @@
-
-add_executable(main empty.cpp)
-target_compile_features(main
-  PRIVATE
-    cxx_not_a_feature
-)
diff --git a/Tests/RunCMake/target_compile_features/not_enough_args-result.txt b/Tests/RunCMake/target_compile_features/not_enough_args-result.txt
deleted file mode 100644
index d00491f..0000000
--- a/Tests/RunCMake/target_compile_features/not_enough_args-result.txt
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/Tests/RunCMake/target_compile_features/not_enough_args-stderr.txt b/Tests/RunCMake/target_compile_features/not_enough_args-stderr.txt
deleted file mode 100644
index 0f27a9c..0000000
--- a/Tests/RunCMake/target_compile_features/not_enough_args-stderr.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-CMake Error at not_enough_args.cmake:3 \(target_compile_features\):
-  target_compile_features called with incorrect number of arguments
-Call Stack \(most recent call first\):
-  CMakeLists.txt:4 \(include\)
diff --git a/Tests/RunCMake/target_compile_features/not_enough_args.cmake b/Tests/RunCMake/target_compile_features/not_enough_args.cmake
deleted file mode 100644
index 9561230..0000000
--- a/Tests/RunCMake/target_compile_features/not_enough_args.cmake
+++ /dev/null
@@ -1,3 +0,0 @@
-
-add_executable(main empty.cpp)
-target_compile_features(main)
diff --git a/Tests/RunCMake/target_compile_features/utility_target-result.txt b/Tests/RunCMake/target_compile_features/utility_target-result.txt
deleted file mode 100644
index d00491f..0000000
--- a/Tests/RunCMake/target_compile_features/utility_target-result.txt
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/Tests/RunCMake/target_compile_features/utility_target-stderr.txt b/Tests/RunCMake/target_compile_features/utility_target-stderr.txt
deleted file mode 100644
index 96b0bd7..0000000
--- a/Tests/RunCMake/target_compile_features/utility_target-stderr.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-CMake Error at utility_target.cmake:4 \(target_compile_features\):
-  target_compile_features called with non-compilable target type
-Call Stack \(most recent call first\):
-  CMakeLists.txt:4 \(include\)
diff --git a/Tests/RunCMake/target_compile_features/utility_target.cmake b/Tests/RunCMake/target_compile_features/utility_target.cmake
deleted file mode 100644
index 8919056..0000000
--- a/Tests/RunCMake/target_compile_features/utility_target.cmake
+++ /dev/null
@@ -1,4 +0,0 @@
-
-add_custom_target(utility)
-
-target_compile_features(utility PRIVATE cxx_delegating_constructors)
diff --git a/Tests/SystemInformation/CMakeLists.txt b/Tests/SystemInformation/CMakeLists.txt
index 1f88e15..838fd4a 100644
--- a/Tests/SystemInformation/CMakeLists.txt
+++ b/Tests/SystemInformation/CMakeLists.txt
@@ -1,5 +1,4 @@
-cmake_minimum_required (VERSION 2.8.12)
-cmake_policy(SET CMP0025 NEW)
+cmake_minimum_required (VERSION 2.6)
 project(SystemInformation)
 
 include_directories("This does not exists")
diff --git a/Tests/SystemInformation/SystemInformation.in b/Tests/SystemInformation/SystemInformation.in
index 69af703..df3bf49 100644
--- a/Tests/SystemInformation/SystemInformation.in
+++ b/Tests/SystemInformation/SystemInformation.in
@@ -21,7 +21,6 @@ CMAKE_C_COMPILER_ID == "${CMAKE_C_COMPILER_ID}"
 CMAKE_C_COMPILER_VERSION == "${CMAKE_C_COMPILER_VERSION}"
 CMAKE_CXX_COMPILER_ID == "${CMAKE_CXX_COMPILER_ID}"
 CMAKE_CXX_COMPILER_VERSION == "${CMAKE_CXX_COMPILER_VERSION}"
-CMAKE_CXX_COMPILE_FEATURES == "${CMAKE_CXX_COMPILE_FEATURES}"
 
 // C shared library flag
 CMAKE_SHARED_LIBRARY_C_FLAGS == "${CMAKE_SHARED_LIBRARY_C_FLAGS}"
diff --git a/Tests/compile_features/CMakeLists.txt b/Tests/compile_features/CMakeLists.txt
deleted file mode 100644
index c234357..0000000
--- a/Tests/compile_features/CMakeLists.txt
+++ /dev/null
@@ -1,14 +0,0 @@
-cmake_minimum_required(VERSION 2.8.12)
-cmake_policy(SET CMP0025 NEW)
-project(compile_features)
-
-if (EXISTS "${CMAKE_BINARY_DIR}/CMakeFiles/feature_tests.cxx")
-  file(READ "${CMAKE_BINARY_DIR}/CMakeFiles/feature_tests.cxx" featureTest)
-  message("_CMAKE_CXX_CREATE_OBJECT_FILE: ${_CMAKE_CXX_CREATE_OBJECT_FILE}")
-  message("_compile_object_command: ${_compile_object_command}")
-  message("CTEST_FULL_OUTPUT\n${featureTest}")
-else()
-  message("No known features!")
-endif()
-
-add_executable(compile_features main.cpp)
diff --git a/Tests/compile_features/main.cpp b/Tests/compile_features/main.cpp
deleted file mode 100644
index 341aaaf..0000000
--- a/Tests/compile_features/main.cpp
+++ /dev/null
@@ -1,5 +0,0 @@
-
-int main(int, char **)
-{
-  return 0;
-}

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

Summary of changes:
 Help/command/target_compile_features.rst           |   28 ----
 Help/manual/cmake-commands.7.rst                   |    1 -
 Help/manual/cmake-properties.7.rst                 |    3 -
 Help/manual/cmake-variables.7.rst                  |    3 -
 Help/prop_tgt/COMPILE_FEATURES.rst                 |   11 --
 Help/prop_tgt/CXX_EXTENSIONS.rst                   |    8 -
 Help/prop_tgt/CXX_STANDARD.rst                     |   13 --
 Help/variable/CMAKE_CXX_COMPILE_FEATURES.rst       |   11 --
 Help/variable/CMAKE_CXX_KNOWN_FEATURES.rst         |   21 ---
 Help/variable/CMAKE_CXX_STANDARD.rst               |    8 -
 Modules/Compiler/AppleClang-CXX.cmake              |    7 +-
 Modules/Compiler/Clang-CXX-FeatureTests.cmake      |   17 --
 Modules/Compiler/Clang-CXX.cmake                   |   42 -----
 Modules/Compiler/GNU-CXX-FeatureTests.cmake        |   17 --
 Modules/Compiler/GNU-CXX.cmake                     |   39 -----
 Modules/Compiler/GNU.cmake                         |    1 -
 Modules/Compiler/MSVC-CXX-FeatureTests.cmake       |    2 -
 Modules/Internal/FeatureTesting.cmake              |   47 ------
 Modules/Platform/Windows-MSVC-CXX.cmake            |    4 -
 Modules/Platform/Windows-MSVC.cmake                |    1 -
 Source/cmCommands.cxx                              |    2 -
 Source/cmGeneratorExpressionDAGChecker.cxx         |    8 -
 Source/cmGeneratorExpressionDAGChecker.h           |    6 +-
 Source/cmLocalGenerator.cxx                        |   38 -----
 Source/cmLocalGenerator.h                          |    2 -
 Source/cmMakefile.cxx                              |  161 --------------------
 Source/cmMakefile.h                                |    2 -
 Source/cmTarget.cxx                                |  161 --------------------
 Source/cmTarget.h                                  |    3 -
 Source/cmTargetCompileDefinitionsCommand.cxx       |    3 +-
 Source/cmTargetCompileDefinitionsCommand.h         |    2 +-
 Source/cmTargetCompileFeaturesCommand.cxx          |   71 ---------
 Source/cmTargetCompileFeaturesCommand.h            |   41 -----
 Source/cmTargetCompileOptionsCommand.cxx           |    3 +-
 Source/cmTargetCompileOptionsCommand.h             |    2 +-
 Source/cmTargetIncludeDirectoriesCommand.cxx       |    3 +-
 Source/cmTargetIncludeDirectoriesCommand.h         |    2 +-
 Source/cmTargetPropCommandBase.cxx                 |   14 +-
 Source/cmTargetPropCommandBase.h                   |    4 +-
 .../target_compile_features/CMakeLists.txt         |   31 ----
 .../target_compile_features/dummy.cpp              |    5 -
 .../target_compile_features/gnuxx_typeof_test.cpp  |    6 -
 .../lib_delegating_constructors.cpp                |    8 -
 .../lib_delegating_constructors.h                  |   17 --
 .../target_compile_features/lib_user.cpp           |   27 ----
 .../CMakeCommands/target_compile_features/main.cpp |   25 ---
 .../target_compile_features/msvcxx_sealed_test.cpp |    8 -
 Tests/CMakeLists.txt                               |    8 -
 Tests/CxxDialect/CMakeLists.txt                    |   14 --
 Tests/CxxDialect/use_constexpr.cxx                 |   10 --
 Tests/CxxDialect/use_constexpr_and_typeof.cxx      |   11 --
 Tests/CxxDialect/use_typeof.cxx                    |    6 -
 Tests/RunCMake/CMakeLists.txt                      |    1 -
 .../target_compile_features/CMakeLists.txt         |    4 -
 .../target_compile_features/RunCMakeTest.cmake     |   11 --
 .../alias_target-result.txt                        |    1 -
 .../alias_target-stderr.txt                        |    4 -
 .../target_compile_features/alias_target.cmake     |    4 -
 Tests/RunCMake/target_compile_features/empty.cpp   |    7 -
 .../imported_target-result.txt                     |    1 -
 .../imported_target-stderr.txt                     |    4 -
 .../target_compile_features/imported_target.cmake  |    3 -
 .../invalid_args-result.txt                        |    1 -
 .../invalid_args-stderr.txt                        |    4 -
 .../target_compile_features/invalid_args.cmake     |    3 -
 .../invalid_args_on_interface-result.txt           |    1 -
 .../invalid_args_on_interface-stderr.txt           |    5 -
 .../invalid_args_on_interface.cmake                |    3 -
 .../no_matching_cxx_feature-result.txt             |    1 -
 .../no_matching_cxx_feature-stderr.txt             |    4 -
 .../no_matching_cxx_feature.cmake                  |   26 ---
 .../target_compile_features/no_target-result.txt   |    1 -
 .../target_compile_features/no_target-stderr.txt   |    5 -
 .../target_compile_features/no_target.cmake        |    2 -
 .../not_a_cxx_feature-result.txt                   |    1 -
 .../not_a_cxx_feature-stderr.txt                   |    4 -
 .../not_a_cxx_feature.cmake                        |    6 -
 .../not_enough_args-result.txt                     |    1 -
 .../not_enough_args-stderr.txt                     |    4 -
 .../target_compile_features/not_enough_args.cmake  |    3 -
 .../utility_target-result.txt                      |    1 -
 .../utility_target-stderr.txt                      |    4 -
 .../target_compile_features/utility_target.cmake   |    4 -
 Tests/SystemInformation/CMakeLists.txt             |    3 +-
 Tests/SystemInformation/SystemInformation.in       |    1 -
 Tests/compile_features/CMakeLists.txt              |   14 --
 Tests/compile_features/main.cpp                    |    5 -
 87 files changed, 18 insertions(+), 1117 deletions(-)
 delete mode 100644 Help/command/target_compile_features.rst
 delete mode 100644 Help/prop_tgt/COMPILE_FEATURES.rst
 delete mode 100644 Help/prop_tgt/CXX_EXTENSIONS.rst
 delete mode 100644 Help/prop_tgt/CXX_STANDARD.rst
 delete mode 100644 Help/variable/CMAKE_CXX_COMPILE_FEATURES.rst
 delete mode 100644 Help/variable/CMAKE_CXX_KNOWN_FEATURES.rst
 delete mode 100644 Help/variable/CMAKE_CXX_STANDARD.rst
 delete mode 100644 Modules/Compiler/Clang-CXX-FeatureTests.cmake
 delete mode 100644 Modules/Compiler/GNU-CXX-FeatureTests.cmake
 delete mode 100644 Modules/Compiler/MSVC-CXX-FeatureTests.cmake
 delete mode 100644 Modules/Internal/FeatureTesting.cmake
 delete mode 100644 Source/cmTargetCompileFeaturesCommand.cxx
 delete mode 100644 Source/cmTargetCompileFeaturesCommand.h
 delete mode 100644 Tests/CMakeCommands/target_compile_features/CMakeLists.txt
 delete mode 100644 Tests/CMakeCommands/target_compile_features/dummy.cpp
 delete mode 100644 Tests/CMakeCommands/target_compile_features/gnuxx_typeof_test.cpp
 delete mode 100644 Tests/CMakeCommands/target_compile_features/lib_delegating_constructors.cpp
 delete mode 100644 Tests/CMakeCommands/target_compile_features/lib_delegating_constructors.h
 delete mode 100644 Tests/CMakeCommands/target_compile_features/lib_user.cpp
 delete mode 100644 Tests/CMakeCommands/target_compile_features/main.cpp
 delete mode 100644 Tests/CMakeCommands/target_compile_features/msvcxx_sealed_test.cpp
 delete mode 100644 Tests/CxxDialect/CMakeLists.txt
 delete mode 100644 Tests/CxxDialect/use_constexpr.cxx
 delete mode 100644 Tests/CxxDialect/use_constexpr_and_typeof.cxx
 delete mode 100644 Tests/CxxDialect/use_typeof.cxx
 delete mode 100644 Tests/RunCMake/target_compile_features/CMakeLists.txt
 delete mode 100644 Tests/RunCMake/target_compile_features/RunCMakeTest.cmake
 delete mode 100644 Tests/RunCMake/target_compile_features/alias_target-result.txt
 delete mode 100644 Tests/RunCMake/target_compile_features/alias_target-stderr.txt
 delete mode 100644 Tests/RunCMake/target_compile_features/alias_target.cmake
 delete mode 100644 Tests/RunCMake/target_compile_features/empty.cpp
 delete mode 100644 Tests/RunCMake/target_compile_features/imported_target-result.txt
 delete mode 100644 Tests/RunCMake/target_compile_features/imported_target-stderr.txt
 delete mode 100644 Tests/RunCMake/target_compile_features/imported_target.cmake
 delete mode 100644 Tests/RunCMake/target_compile_features/invalid_args-result.txt
 delete mode 100644 Tests/RunCMake/target_compile_features/invalid_args-stderr.txt
 delete mode 100644 Tests/RunCMake/target_compile_features/invalid_args.cmake
 delete mode 100644 Tests/RunCMake/target_compile_features/invalid_args_on_interface-result.txt
 delete mode 100644 Tests/RunCMake/target_compile_features/invalid_args_on_interface-stderr.txt
 delete mode 100644 Tests/RunCMake/target_compile_features/invalid_args_on_interface.cmake
 delete mode 100644 Tests/RunCMake/target_compile_features/no_matching_cxx_feature-result.txt
 delete mode 100644 Tests/RunCMake/target_compile_features/no_matching_cxx_feature-stderr.txt
 delete mode 100644 Tests/RunCMake/target_compile_features/no_matching_cxx_feature.cmake
 delete mode 100644 Tests/RunCMake/target_compile_features/no_target-result.txt
 delete mode 100644 Tests/RunCMake/target_compile_features/no_target-stderr.txt
 delete mode 100644 Tests/RunCMake/target_compile_features/no_target.cmake
 delete mode 100644 Tests/RunCMake/target_compile_features/not_a_cxx_feature-result.txt
 delete mode 100644 Tests/RunCMake/target_compile_features/not_a_cxx_feature-stderr.txt
 delete mode 100644 Tests/RunCMake/target_compile_features/not_a_cxx_feature.cmake
 delete mode 100644 Tests/RunCMake/target_compile_features/not_enough_args-result.txt
 delete mode 100644 Tests/RunCMake/target_compile_features/not_enough_args-stderr.txt
 delete mode 100644 Tests/RunCMake/target_compile_features/not_enough_args.cmake
 delete mode 100644 Tests/RunCMake/target_compile_features/utility_target-result.txt
 delete mode 100644 Tests/RunCMake/target_compile_features/utility_target-stderr.txt
 delete mode 100644 Tests/RunCMake/target_compile_features/utility_target.cmake
 delete mode 100644 Tests/compile_features/CMakeLists.txt
 delete mode 100644 Tests/compile_features/main.cpp


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list