[Cmake-commits] CMake branch, next, updated. v3.0.0-rc4-2896-g4d25ffb

Stephen Kelly steveire at gmail.com
Wed May 7 06:08:25 EDT 2014


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  4d25ffbbb502780d5f8128d9f90a4abfc5c3e50f (commit)
       via  68b72a4d905d8d80d6d938a3025bd74afeed5532 (commit)
      from  16334c632056a739637c64f3ba833ff4607670de (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=4d25ffbbb502780d5f8128d9f90a4abfc5c3e50f
commit 4d25ffbbb502780d5f8128d9f90a4abfc5c3e50f
Merge: 16334c6 68b72a4
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Wed May 7 06:08:24 2014 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Wed May 7 06:08:24 2014 -0400

    Merge topic 'compile-features-C-language' into next
    
    68b72a4d Revert topic


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=68b72a4d905d8d80d6d938a3025bd74afeed5532
commit 68b72a4d905d8d80d6d938a3025bd74afeed5532
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Wed May 7 12:07:42 2014 +0200
Commit:     Stephen Kelly <steveire at gmail.com>
CommitDate: Wed May 7 12:07:53 2014 +0200

    Revert topic

diff --git a/Help/command/target_compile_features.rst b/Help/command/target_compile_features.rst
index 9559600..f8e5c54 100644
--- a/Help/command/target_compile_features.rst
+++ b/Help/command/target_compile_features.rst
@@ -8,8 +8,7 @@ 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_C_COMPILE_FEATURES` variable
-or :variable:`CMAKE_CXX_COMPILE_FEATURES` variable,
+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.
diff --git a/Help/manual/cmake-properties.7.rst b/Help/manual/cmake-properties.7.rst
index a204a9c..4e510ac 100644
--- a/Help/manual/cmake-properties.7.rst
+++ b/Help/manual/cmake-properties.7.rst
@@ -16,7 +16,6 @@ Properties of Global Scope
    /prop_gbl/ALLOW_DUPLICATE_CUSTOM_TARGETS
    /prop_gbl/AUTOGEN_TARGETS_FOLDER
    /prop_gbl/AUTOMOC_TARGETS_FOLDER
-   /prop_gbl/CMAKE_C_KNOWN_FEATURES
    /prop_gbl/CMAKE_CXX_KNOWN_FEATURES
    /prop_gbl/DEBUG_CONFIGURATIONS
    /prop_gbl/DISABLED_FEATURES
@@ -94,9 +93,6 @@ Properties on Targets
    /prop_tgt/BUILD_WITH_INSTALL_RPATH
    /prop_tgt/BUNDLE_EXTENSION
    /prop_tgt/BUNDLE
-   /prop_tgt/C_EXTENSIONS
-   /prop_tgt/C_STANDARD
-   /prop_tgt/C_STANDARD_REQUIRED
    /prop_tgt/COMPATIBLE_INTERFACE_BOOL
    /prop_tgt/COMPATIBLE_INTERFACE_NUMBER_MAX
    /prop_tgt/COMPATIBLE_INTERFACE_NUMBER_MIN
@@ -112,9 +108,9 @@ Properties on Targets
    /prop_tgt/COMPILE_PDB_OUTPUT_DIRECTORY_CONFIG
    /prop_tgt/CONFIG_OUTPUT_NAME
    /prop_tgt/CONFIG_POSTFIX
-   /prop_tgt/CXX_EXTENSIONS
    /prop_tgt/CXX_STANDARD
    /prop_tgt/CXX_STANDARD_REQUIRED
+   /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 20d423c..92c1f29 100644
--- a/Help/manual/cmake-variables.7.rst
+++ b/Help/manual/cmake-variables.7.rst
@@ -257,14 +257,10 @@ Variables for Languages
    :maxdepth: 1
 
    /variable/CMAKE_COMPILER_IS_GNULANG
-   /variable/CMAKE_C_COMPILE_FEATURES
-   /variable/CMAKE_C_EXTENSIONS
-   /variable/CMAKE_C_STANDARD
-   /variable/CMAKE_C_STANDARD_REQUIRED
    /variable/CMAKE_CXX_COMPILE_FEATURES
-   /variable/CMAKE_CXX_EXTENSIONS
    /variable/CMAKE_CXX_STANDARD
    /variable/CMAKE_CXX_STANDARD_REQUIRED
+   /variable/CMAKE_CXX_EXTENSIONS
    /variable/CMAKE_Fortran_MODDIR_DEFAULT
    /variable/CMAKE_Fortran_MODDIR_FLAG
    /variable/CMAKE_Fortran_MODOUT_FLAG
diff --git a/Help/prop_gbl/CMAKE_C_KNOWN_FEATURES.rst b/Help/prop_gbl/CMAKE_C_KNOWN_FEATURES.rst
deleted file mode 100644
index c57bc73..0000000
--- a/Help/prop_gbl/CMAKE_C_KNOWN_FEATURES.rst
+++ /dev/null
@@ -1,25 +0,0 @@
-CMAKE_C_KNOWN_FEATURES
-----------------------
-
-List of C features known to this version of CMake.
-
-The features listed in this global property 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_C_COMPILE_FEATURES` variable.
-
-The features listed here may be used with the :command:`target_compile_features`
-command.
-
-The features known to this version of CMake are:
-
-``c_function_prototypes``
-  Function prototypes, as defined in ``ISO/IEC 9899:1990``.
-
-``c_restrict``
-  ``restrict`` keyword, as defined in ``ISO/IEC 9899:1999``.
-
-``c_static_assert``
-  Static assert, as defined in ``ISO/IEC 9899:2011``.
-
-``c_variadic_macros``
-  Variadic macros, as defined in ``ISO/IEC 9899:1999``.
diff --git a/Help/prop_tgt/C_EXTENSIONS.rst b/Help/prop_tgt/C_EXTENSIONS.rst
deleted file mode 100644
index 246e93d..0000000
--- a/Help/prop_tgt/C_EXTENSIONS.rst
+++ /dev/null
@@ -1,8 +0,0 @@
-C_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=gnu11`` instead of ``-std=c11`` to the compile line.
diff --git a/Help/prop_tgt/C_STANDARD.rst b/Help/prop_tgt/C_STANDARD.rst
deleted file mode 100644
index 9fdc0bb..0000000
--- a/Help/prop_tgt/C_STANDARD.rst
+++ /dev/null
@@ -1,27 +0,0 @@
-C_STANDARD
-----------
-
-The C standard whose features are requested to build this target.
-
-This property specifies the C standard whose features are requested
-to build this target.  For some compilers, this results in adding a
-flag such as ``-std=c11`` to the compile line.
-
-Supported values are ``90``, ``99`` and ``11``.
-
-If the value requested does not result in a compile flag being added for
-the compiler in use, a previous standard flag will be added instead.  This
-means that using:
-
-.. code-block:: cmake
-
-  set_property(TARGET tgt PROPERTY C_STANDARD 11)
-
-with a compiler which does not support ``-std=c11`` or an equivalent
-flag will not result in an error or warning, but will instead add the
-``-std=c99`` or ``-std=c90`` flag if supported.  This "decay" behavior may
-be controlled with the :prop_tgt:`C_STANDARD_REQUIRED` target property.
-
-This property is initialized by the value of
-the :variable:`CMAKE_C_STANDARD` variable if it is set when a target
-is created.
diff --git a/Help/prop_tgt/C_STANDARD_REQUIRED.rst b/Help/prop_tgt/C_STANDARD_REQUIRED.rst
deleted file mode 100644
index 6c39e96..0000000
--- a/Help/prop_tgt/C_STANDARD_REQUIRED.rst
+++ /dev/null
@@ -1,14 +0,0 @@
-C_STANDARD_REQUIRED
--------------------
-
-Boolean describing whether the value of :prop_tgt:`C_STANDARD` is a requirement.
-
-If this property is set to ``ON``, then the value of the
-:prop_tgt:`C_STANDARD` target property is treated as a requirement.  If this
-property is ``OFF`` or unset, the :prop_tgt:`C_STANDARD` target property is
-treated as optional and may "decay" to a previous standard if the requested is
-not available.
-
-This property is initialized by the value of
-the :variable:`CMAKE_C_STANDARD_REQUIRED` variable if it is set when a
-target is created.
diff --git a/Help/variable/CMAKE_C_COMPILE_FEATURES.rst b/Help/variable/CMAKE_C_COMPILE_FEATURES.rst
deleted file mode 100644
index 7d1c8b1..0000000
--- a/Help/variable/CMAKE_C_COMPILE_FEATURES.rst
+++ /dev/null
@@ -1,8 +0,0 @@
-CMAKE_C_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 :prop_gbl:`CMAKE_C_KNOWN_FEATURES`
-global property.
diff --git a/Help/variable/CMAKE_C_EXTENSIONS.rst b/Help/variable/CMAKE_C_EXTENSIONS.rst
deleted file mode 100644
index ff2569b..0000000
--- a/Help/variable/CMAKE_C_EXTENSIONS.rst
+++ /dev/null
@@ -1,8 +0,0 @@
-CMAKE_C_EXTENSIONS
-------------------
-
-Default value for ``C_EXTENSIONS`` property of targets.
-
-This variable is used to initialize the :prop_tgt:`C_EXTENSIONS`
-property on all targets.  See that target property for additional
-information.
diff --git a/Help/variable/CMAKE_C_STANDARD.rst b/Help/variable/CMAKE_C_STANDARD.rst
deleted file mode 100644
index fbbc3a4..0000000
--- a/Help/variable/CMAKE_C_STANDARD.rst
+++ /dev/null
@@ -1,26 +0,0 @@
-CMAKE_C_STANDARD
-----------------
-
-The C standard whose features are requested to build this target.
-
-This property specifies the C++ standard whose features are requested
-to build this target.  For some compilers, this results in adding a
-flag such as ``-std=c11`` to the compile line.
-
- Supported values are ``90``, ``99`` and ``11``.
-
-If the value requested does not result in a compile flag being added for
-the compiler in use, a previous standard flag will be added instead.  This
-means that using:
-
-.. code-block:: cmake
-
-  set_property(TARGET tgt PROPERTY C_STANDARD 11)
-
-with a compiler which does not support ``-std=c11`` or an equivalent
-flag will not result in an error or warning, but will instead add the
-``-std=c99`` or ``-std=c90`` flag if supported.
-
-This property is initialized by the value of
-the :variable:`CMAKE_C_STANDARD` variable if it is set when a target
-is created.
diff --git a/Help/variable/CMAKE_C_STANDARD_REQUIRED.rst b/Help/variable/CMAKE_C_STANDARD_REQUIRED.rst
deleted file mode 100644
index 13ea49f..0000000
--- a/Help/variable/CMAKE_C_STANDARD_REQUIRED.rst
+++ /dev/null
@@ -1,8 +0,0 @@
-CMAKE_C_STANDARD_REQUIRED
--------------------------
-
-Default value for ``C_STANDARD_REQUIRED`` property of targets.
-
-This variable is used to initialize the :prop_tgt:`C_STANDARD_REQUIRED`
-property on all targets.  See that target property for additional
-information.
diff --git a/Modules/CMakeCCompiler.cmake.in b/Modules/CMakeCCompiler.cmake.in
index 86cd894..694f8b8 100644
--- a/Modules/CMakeCCompiler.cmake.in
+++ b/Modules/CMakeCCompiler.cmake.in
@@ -2,11 +2,6 @@ set(CMAKE_C_COMPILER "@CMAKE_C_COMPILER@")
 set(CMAKE_C_COMPILER_ARG1 "@CMAKE_C_COMPILER_ARG1@")
 set(CMAKE_C_COMPILER_ID "@CMAKE_C_COMPILER_ID@")
 set(CMAKE_C_COMPILER_VERSION "@CMAKE_C_COMPILER_VERSION@")
-set(CMAKE_C_COMPILE_FEATURES "@CMAKE_C_COMPILE_FEATURES@")
-set(CMAKE_C90_COMPILE_FEATURES "@CMAKE_C90_COMPILE_FEATURES@")
-set(CMAKE_C99_COMPILE_FEATURES "@CMAKE_C99_COMPILE_FEATURES@")
-set(CMAKE_C11_COMPILE_FEATURES "@CMAKE_C11_COMPILE_FEATURES@")
-
 set(CMAKE_C_PLATFORM_ID "@CMAKE_C_PLATFORM_ID@")
 set(CMAKE_C_SIMULATE_ID "@CMAKE_C_SIMULATE_ID@")
 set(CMAKE_C_SIMULATE_VERSION "@CMAKE_C_SIMULATE_VERSION@")
diff --git a/Modules/CMakeDetermineCompileFeatures.cmake b/Modules/CMakeDetermineCompileFeatures.cmake
index 679bb78..583ff8d 100644
--- a/Modules/CMakeDetermineCompileFeatures.cmake
+++ b/Modules/CMakeDetermineCompileFeatures.cmake
@@ -14,45 +14,7 @@
 
 function(cmake_determine_compile_features lang)
 
-  if(lang STREQUAL C AND COMMAND cmake_record_c_compile_features)
-    message(STATUS "Detecting ${lang} compile features")
-
-    set(CMAKE_C90_COMPILE_FEATURES)
-    set(CMAKE_C99_COMPILE_FEATURES)
-    set(CMAKE_C11_COMPILE_FEATURES)
-
-    include("${CMAKE_ROOT}/Modules/Internal/FeatureTesting.cmake")
-
-    cmake_record_c_compile_features()
-
-    if(NOT _result EQUAL 0)
-      message(STATUS "Detecting ${lang} compile features - failed")
-      return()
-    endif()
-
-    if (CMAKE_C99_COMPILE_FEATURES)
-      list(REMOVE_ITEM CMAKE_C11_COMPILE_FEATURES ${CMAKE_C99_COMPILE_FEATURES})
-    endif()
-    if (CMAKE_C90_COMPILE_FEATURES)
-      list(REMOVE_ITEM CMAKE_C99_COMPILE_FEATURES ${CMAKE_C90_COMPILE_FEATURES})
-    endif()
-
-    if(NOT CMAKE_C_COMPILE_FEATURES)
-      set(CMAKE_C_COMPILE_FEATURES
-        ${CMAKE_C90_COMPILE_FEATURES}
-        ${CMAKE_C99_COMPILE_FEATURES}
-        ${CMAKE_C11_COMPILE_FEATURES}
-      )
-    endif()
-
-    set(CMAKE_C_COMPILE_FEATURES ${CMAKE_C_COMPILE_FEATURES} PARENT_SCOPE)
-    set(CMAKE_C90_COMPILE_FEATURES ${CMAKE_C90_COMPILE_FEATURES} PARENT_SCOPE)
-    set(CMAKE_C99_COMPILE_FEATURES ${CMAKE_C99_COMPILE_FEATURES} PARENT_SCOPE)
-    set(CMAKE_C11_COMPILE_FEATURES ${CMAKE_C11_COMPILE_FEATURES} PARENT_SCOPE)
-
-    message(STATUS "Detecting ${lang} compile features - done")
-
-  elseif(lang STREQUAL CXX AND COMMAND cmake_record_cxx_compile_features)
+  if(lang STREQUAL CXX AND COMMAND cmake_record_cxx_compile_features)
     message(STATUS "Detecting ${lang} compile features")
 
     set(CMAKE_CXX98_COMPILE_FEATURES)
diff --git a/Modules/CMakeTestCCompiler.cmake b/Modules/CMakeTestCCompiler.cmake
index 29a58bd..d133042 100644
--- a/Modules/CMakeTestCCompiler.cmake
+++ b/Modules/CMakeTestCCompiler.cmake
@@ -73,9 +73,6 @@ else()
   # Try to identify the ABI and configure it into CMakeCCompiler.cmake
   include(${CMAKE_ROOT}/Modules/CMakeDetermineCompilerABI.cmake)
   CMAKE_DETERMINE_COMPILER_ABI(C ${CMAKE_ROOT}/Modules/CMakeCCompilerABI.c)
-  # Try to identify the compiler features
-  include(${CMAKE_ROOT}/Modules/CMakeDetermineCompileFeatures.cmake)
-  CMAKE_DETERMINE_COMPILE_FEATURES(C)
 
   # Re-configure to save learned information.
   configure_file(
diff --git a/Modules/Compiler/GNU-C-FeatureTests.cmake b/Modules/Compiler/GNU-C-FeatureTests.cmake
deleted file mode 100644
index 57d395c..0000000
--- a/Modules/Compiler/GNU-C-FeatureTests.cmake
+++ /dev/null
@@ -1,14 +0,0 @@
-
-set(_oldestSupported "(__GNUC__ * 100 + __GNUC_MINOR__) >= 407")
-
-set(_cmake_compiler_test_macro __GNUC__)
-
-set(GNU46_C11 "${_oldestSupported} && __STDC_VERSION__ >= 201112L")
-set(_cmake_feature_test_c_static_assert "${GNU46_C11}")
-# Since 4.4 at least:
-set(GNU44_C99 "${_oldestSupported} && __STDC_VERSION__ >= 199901L")
-set(_cmake_feature_test_c_restrict "${GNU44_C99}")
-set(_cmake_feature_test_c_variadic_macros "${GNU44_C99}")
-
-set(GNU_C90 "${_oldestSupported} && defined(__STDC__)")
-set(_cmake_feature_test_c_function_prototypes "${GNU_C90}")
diff --git a/Modules/Compiler/GNU-C.cmake b/Modules/Compiler/GNU-C.cmake
index e6aa65a..9a5137a 100644
--- a/Modules/Compiler/GNU-C.cmake
+++ b/Modules/Compiler/GNU-C.cmake
@@ -1,34 +1,2 @@
 include(Compiler/GNU)
 __compiler_gnu(C)
-
-if (NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.7)
-  set(CMAKE_C90_STANDARD_COMPILE_OPTION "-std=c90")
-  set(CMAKE_C90_EXTENSION_COMPILE_OPTION "-std=gnu90")
-
-  set(CMAKE_C99_STANDARD_COMPILE_OPTION "-std=c99")
-  set(CMAKE_C99_EXTENSION_COMPILE_OPTION "-std=gnu99")
-
-  set(CMAKE_C11_STANDARD_COMPILE_OPTION "-std=c11")
-  set(CMAKE_C11_EXTENSION_COMPILE_OPTION "-std=gnu11")
-endif()
-
-# This may change in a future GNU version.
-set(CMAKE_CXX_STANDARD_DEFAULT 90)
-
-macro(cmake_record_c_compile_features)
-  macro(_get_gcc_features std_version list)
-    record_compiler_features(C "-std=${std_version}" ${list})
-  endmacro()
-
-  if (UNIX AND NOT APPLE AND NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.7)
-    _get_gcc_features(c90 CMAKE_C90_COMPILE_FEATURES)
-    if (_result EQUAL 0)
-      _get_gcc_features(c99 CMAKE_C99_COMPILE_FEATURES)
-    endif()
-    if (_result EQUAL 0)
-      _get_gcc_features(c11 CMAKE_C11_COMPILE_FEATURES)
-    endif()
-  else()
-    set(_result 0)
-  endif()
-endmacro()
diff --git a/Modules/Compiler/GNU-CXX.cmake b/Modules/Compiler/GNU-CXX.cmake
index 1ecdad2..4d8d452 100644
--- a/Modules/Compiler/GNU-CXX.cmake
+++ b/Modules/Compiler/GNU-CXX.cmake
@@ -29,13 +29,14 @@ set(CMAKE_CXX_STANDARD_DEFAULT 98)
 macro(cmake_record_cxx_compile_features)
   macro(_get_gcc_features std_version list)
     record_compiler_features(CXX "-std=${std_version}" ${list})
+    if (NOT _result EQUAL 0)
+      return()
+    endif()
   endmacro()
 
   if (UNIX AND NOT APPLE AND NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.7)
     _get_gcc_features(c++11 CMAKE_CXX11_COMPILE_FEATURES)
-    if (_result EQUAL 0)
-      _get_gcc_features(c++98 CMAKE_CXX98_COMPILE_FEATURES)
-    endif()
+    _get_gcc_features(c++98 CMAKE_CXX98_COMPILE_FEATURES)
   else()
     set(_result 0)
   endif()
diff --git a/Modules/Internal/FeatureTesting.cmake b/Modules/Internal/FeatureTesting.cmake
index 7bf6d91..0fff36b 100644
--- a/Modules/Internal/FeatureTesting.cmake
+++ b/Modules/Internal/FeatureTesting.cmake
@@ -5,7 +5,7 @@ macro(record_compiler_features lang compile_flags feature_list)
   string(TOLOWER ${lang} lang_lc)
   file(REMOVE "${CMAKE_BINARY_DIR}/CMakeFiles/feature_tests.bin")
   file(WRITE "${CMAKE_BINARY_DIR}/CMakeFiles/feature_tests.${lang_lc}" "
-  const char features[] = {\"\"\n")
+  extern const char features[] = {\"\"\n")
 
   get_property(known_features GLOBAL PROPERTY CMAKE_${lang}_KNOWN_FEATURES)
 
@@ -20,7 +20,7 @@ macro(record_compiler_features lang compile_flags feature_list)
     endif()
   endforeach()
   file(APPEND "${CMAKE_BINARY_DIR}/CMakeFiles/feature_tests.${lang_lc}"
-    "\n};\n\nint main() { return 0; }\n")
+    "\n};\n\nint main(int, char **) { return 0; }\n")
 
   try_compile(CMAKE_${lang}_FEATURE_TEST
     ${CMAKE_BINARY_DIR} "${CMAKE_BINARY_DIR}/CMakeFiles/feature_tests.${lang_lc}"
diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx
index 298d232..afb2ce8 100644
--- a/Source/cmLocalGenerator.cxx
+++ b/Source/cmLocalGenerator.cxx
@@ -2187,10 +2187,6 @@ AddCompilerRequirementFlag(std::string &flags, cmTarget* target,
     // Maintain sorted order, most recent first.
     langStdMap["CXX"].push_back("11");
     langStdMap["CXX"].push_back("98");
-
-    langStdMap["C"].push_back("11");
-    langStdMap["C"].push_back("99");
-    langStdMap["C"].push_back("90");
     }
 
   std::string standard(standardProp);
diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx
index 9275bcc..9ad637a 100644
--- a/Source/cmMakefile.cxx
+++ b/Source/cmMakefile.cxx
@@ -4496,22 +4496,12 @@ void cmMakefile::RecordPolicies(cmPolicies::PolicyMap& pm)
 }
 
 #define FEATURE_STRING(F) , #F
-static const char * const C_FEATURES[] = {
-  0
-  FOR_EACH_C_FEATURE(FEATURE_STRING)
-};
 
 static const char * const CXX_FEATURES[] = {
   0
   FOR_EACH_CXX_FEATURE(FEATURE_STRING)
 };
-#undef FEATURE_STRING
 
-static const char * const C_STANDARDS[] = {
-    "90"
-  , "99"
-  , "11"
-};
 static const char * const CXX_STANDARDS[] = {
     "98"
   , "11"
@@ -4527,13 +4517,10 @@ AddRequiredTargetFeature(cmTarget *target, const std::string& feature,
     target->AppendProperty("COMPILE_FEATURES", feature.c_str());
     return true;
     }
-  bool isCFeature = std::find_if(cmArrayBegin(C_FEATURES) + 1,
-              cmArrayEnd(C_FEATURES), cmStrCmp(feature))
-              != cmArrayEnd(C_FEATURES);
   bool isCxxFeature = std::find_if(cmArrayBegin(CXX_FEATURES) + 1,
               cmArrayEnd(CXX_FEATURES), cmStrCmp(feature))
               != cmArrayEnd(CXX_FEATURES);
-  if (!isCFeature && !isCxxFeature)
+  if (!isCxxFeature)
     {
     cmOStringStream e;
     if (error)
@@ -4557,7 +4544,7 @@ AddRequiredTargetFeature(cmTarget *target, const std::string& feature,
     return false;
     }
 
-  std::string lang = isCFeature ? "C" : "CXX";
+  std::string lang = "CXX";
 
   const char* featuresKnown =
     this->GetDefinition("CMAKE_" + lang + "_COMPILE_FEATURES");
@@ -4573,7 +4560,7 @@ AddRequiredTargetFeature(cmTarget *target, const std::string& feature,
       {
       e << "No";
       }
-    e << " known features for " << lang << " compiler\n\""
+    e << " known features for compiler\n\""
       << this->GetDefinition("CMAKE_" + lang + "_COMPILER_ID")
       << "\"\nversion "
       << this->GetDefinition("CMAKE_" + lang + "_COMPILER_VERSION") << ".";
@@ -4606,34 +4593,9 @@ AddRequiredTargetFeature(cmTarget *target, const std::string& feature,
 
   target->AppendProperty("COMPILE_FEATURES", feature.c_str());
 
-  bool needC90 = false;
-  bool needC99 = false;
-  bool needC11 = false;
   bool needCxx98 = false;
   bool needCxx11 = false;
 
-  if (const char *propC90 =
-          this->GetDefinition("CMAKE_C90_COMPILE_FEATURES"))
-    {
-    std::vector<std::string> props;
-    cmSystemTools::ExpandListArgument(propC90, props);
-    needC90 = std::find(props.begin(), props.end(), feature) != props.end();
-    }
-  if (const char *propC99 =
-          this->GetDefinition("CMAKE_C99_COMPILE_FEATURES"))
-    {
-    std::vector<std::string> props;
-    cmSystemTools::ExpandListArgument(propC99, props);
-    needC99 = std::find(props.begin(), props.end(), feature) != props.end();
-    }
-  if (const char *propC11 =
-          this->GetDefinition("CMAKE_C11_COMPILE_FEATURES"))
-    {
-    std::vector<std::string> props;
-    cmSystemTools::ExpandListArgument(propC11, props);
-    needC11 = std::find(props.begin(), props.end(), feature) != props.end();
-    }
-
   if (const char *propCxx98 =
           this->GetDefinition("CMAKE_CXX98_COMPILE_FEATURES"))
     {
@@ -4649,25 +4611,6 @@ AddRequiredTargetFeature(cmTarget *target, const std::string& feature,
     needCxx11 = std::find(props.begin(), props.end(), feature) != props.end();
     }
 
-  const char *existingCStandard = target->GetProperty("C_STANDARD");
-  if (existingCStandard)
-    {
-    if (std::find_if(cmArrayBegin(C_STANDARDS), cmArrayEnd(C_STANDARDS),
-                  cmStrCmp(existingCStandard)) == cmArrayEnd(C_STANDARDS))
-      {
-      cmOStringStream e;
-      e << "The C_STANDARD property on target \"" << target->GetName()
-        << "\" contained an invalid value: \"" << existingCStandard << "\".";
-      this->IssueMessage(cmake::FATAL_ERROR, e.str().c_str());
-      return false;
-      }
-    }
-  const char * const *existingCIt = existingCStandard
-                                    ? std::find_if(cmArrayBegin(C_STANDARDS),
-                                      cmArrayEnd(C_STANDARDS),
-                                      cmStrCmp(existingCStandard))
-                                    : cmArrayEnd(C_STANDARDS);
-
   const char *existingCxxStandard = target->GetProperty("CXX_STANDARD");
   if (existingCxxStandard)
     {
@@ -4687,35 +4630,9 @@ AddRequiredTargetFeature(cmTarget *target, const std::string& feature,
                                       cmStrCmp(existingCxxStandard))
                                     : cmArrayEnd(CXX_STANDARDS);
 
-  bool setC90 = needC90 && !existingCStandard;
-  bool setC99 = needC99 && !existingCStandard;
-  bool setC11 = needC11 && !existingCStandard;
-
   bool setCxx98 = needCxx98 && !existingCxxStandard;
   bool setCxx11 = needCxx11 && !existingCxxStandard;
 
-  if (needC11 && existingCStandard && existingCIt <
-                                    std::find_if(cmArrayBegin(C_STANDARDS),
-                                      cmArrayEnd(C_STANDARDS),
-                                      cmStrCmp("11")))
-    {
-    setC11 = true;
-    }
-  else if(needC99 && existingCStandard && existingCIt <
-                                    std::find_if(cmArrayBegin(C_STANDARDS),
-                                      cmArrayEnd(C_STANDARDS),
-                                      cmStrCmp("99")))
-    {
-    setC99 = true;
-    }
-  else if(needC90 && existingCStandard && existingCIt <
-                                    std::find_if(cmArrayBegin(C_STANDARDS),
-                                      cmArrayEnd(C_STANDARDS),
-                                      cmStrCmp("90")))
-    {
-    setC90 = true;
-    }
-
   if (needCxx11 && existingCxxStandard && existingCxxIt <
                                     std::find_if(cmArrayBegin(CXX_STANDARDS),
                                       cmArrayEnd(CXX_STANDARDS),
@@ -4731,19 +4648,6 @@ AddRequiredTargetFeature(cmTarget *target, const std::string& feature,
     setCxx98 = true;
     }
 
-  if (setC11)
-    {
-    target->SetProperty("C_STANDARD", "11");
-    }
-  else if (setC99)
-    {
-    target->SetProperty("C_STANDARD", "99");
-    }
-  else if (setC90)
-    {
-    target->SetProperty("C_STANDARD", "90");
-    }
-
   if (setCxx11)
     {
     target->SetProperty("CXX_STANDARD", "11");
diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx
index 45d43b4..3436bb4 100644
--- a/Source/cmTarget.cxx
+++ b/Source/cmTarget.cxx
@@ -314,9 +314,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("C_STANDARD", 0);
-    this->SetPropertyDefault("C_STANDARD_REQUIRED", 0);
-    this->SetPropertyDefault("C_EXTENSIONS", 0);
     this->SetPropertyDefault("CXX_STANDARD", 0);
     this->SetPropertyDefault("CXX_STANDARD_REQUIRED", 0);
     this->SetPropertyDefault("CXX_EXTENSIONS", 0);
diff --git a/Source/cmake.cxx b/Source/cmake.cxx
index 3e20881..5518922 100644
--- a/Source/cmake.cxx
+++ b/Source/cmake.cxx
@@ -2273,12 +2273,6 @@ const char *cmake::GetProperty(const std::string& prop,
       }
     this->SetProperty("ENABLED_LANGUAGES", lang.c_str());
     }
-  if (prop == "CMAKE_C_KNOWN_FEATURES")
-    {
-#define STRING_LIST_ELEMENT(F) ";" #F
-    return FOR_EACH_C_FEATURE(STRING_LIST_ELEMENT) + 1;
-#undef STRING_LIST_ELEMENT
-    }
   if (prop == "CMAKE_CXX_KNOWN_FEATURES")
     {
 #define STRING_LIST_ELEMENT(F) ";" #F
diff --git a/Source/cmake.h b/Source/cmake.h
index 33a5d78..33b4f74 100644
--- a/Source/cmake.h
+++ b/Source/cmake.h
@@ -458,12 +458,6 @@ private:
   {"-Wno-dev", "Suppress developer warnings."},\
   {"-Wdev", "Enable developer warnings."}
 
-#define FOR_EACH_C_FEATURE(F) \
-  F(c_function_prototypes) \
-  F(c_restrict) \
-  F(c_static_assert) \
-  F(c_variadic_macros)
-
 #define FOR_EACH_CXX_FEATURE(F) \
   F(cxx_alias_templates) \
   F(cxx_alignas) \
diff --git a/Tests/CMakeCommands/target_compile_features/CMakeLists.txt b/Tests/CMakeCommands/target_compile_features/CMakeLists.txt
index 633ec25..62e3ce0 100644
--- a/Tests/CMakeCommands/target_compile_features/CMakeLists.txt
+++ b/Tests/CMakeCommands/target_compile_features/CMakeLists.txt
@@ -1,7 +1,7 @@
 cmake_minimum_required(VERSION 3.0)
 project(target_compile_features)
 
-if (NOT CMAKE_CXX_COMPILE_FEATURES AND NOT CMAKE_C_COMPILE_FEATURES)
+if (NOT CMAKE_CXX_COMPILE_FEATURES)
   file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/test_dummy.cpp"
     "int main(int,char**) { return 0; }\n"
   )
@@ -11,16 +11,6 @@ endif()
 
 set(CMAKE_VERBOSE_MAKEFILE ON)
 
-if (NOT CMAKE_CXX_COMPILE_FEATURES)
-  if (CMAKE_C_COMPILE_FEATURES)
-    add_executable(target_compile_features main.c)
-    target_compile_features(target_compile_features
-      PRIVATE c_restrict
-    )
-  endif()
-  return()
-endif()
-
 add_executable(target_compile_features main.cpp)
 target_compile_features(target_compile_features
   PRIVATE cxx_auto_type
diff --git a/Tests/CMakeCommands/target_compile_features/main.c b/Tests/CMakeCommands/target_compile_features/main.c
deleted file mode 100644
index a7884db..0000000
--- a/Tests/CMakeCommands/target_compile_features/main.c
+++ /dev/null
@@ -1,10 +0,0 @@
-
-int foo(int * restrict a, int * restrict b)
-{
-  return 0;
-}
-
-int main(int argc, char** argv)
-{
-  return 0;
-}
diff --git a/Tests/CompileFeatures/CMakeLists.txt b/Tests/CompileFeatures/CMakeLists.txt
index 7c422a3..aec3008 100644
--- a/Tests/CompileFeatures/CMakeLists.txt
+++ b/Tests/CompileFeatures/CMakeLists.txt
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.0)
 
 project(CompileFeatures)
 
-if (NOT CMAKE_CXX_COMPILE_FEATURES AND NOT CMAKE_C_COMPILE_FEATURES)
+if (NOT CMAKE_CXX_COMPILE_FEATURES)
   file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/dummy.cpp"
     "int main(int,char**) { return 0; }\n"
   )
@@ -11,36 +11,25 @@ if (NOT CMAKE_CXX_COMPILE_FEATURES AND NOT CMAKE_C_COMPILE_FEATURES)
   return()
 endif()
 
-macro(run_test feature lang)
-  if (";${CMAKE_${lang}_COMPILE_FEATURES};" MATCHES ${feature})
-    add_library(test_${feature} OBJECT ${feature})
+macro(run_test feature)
+  if (";${CMAKE_CXX_COMPILE_FEATURES};" MATCHES ${feature})
+    add_library(test_${feature} OBJECT ${feature}.cpp)
     set_property(TARGET test_${feature}
       PROPERTY COMPILE_FEATURES "${feature}"
     )
   else()
-    list(APPEND non_features_${lang} ${feature})
+    list(APPEND non_features ${feature})
   endif()
 endmacro()
 
-macro(run_cxx_test)
-  run_test(${ARGN} CXX)
-endmacro()
-macro(run_c_test)
-  run_test(${ARGN} C)
-endmacro()
-
 get_property(features GLOBAL PROPERTY CMAKE_CXX_KNOWN_FEATURES)
 foreach(feature ${features})
-  run_cxx_test(${feature})
-endforeach()
-get_property(features GLOBAL PROPERTY CMAKE_C_KNOWN_FEATURES)
-foreach(feature ${features})
-  run_c_test(${feature})
+  run_test(${feature})
 endforeach()
 
 if (CMAKE_CXX_COMPILE_FEATURES)
   include(CheckCXXSourceCompiles)
-  foreach(feature ${non_features_CXX})
+  foreach(feature ${non_features})
     check_cxx_source_compiles("#include \"${CMAKE_CURRENT_SOURCE_DIR}/${feature}.cpp\"\nint main() { return 0; }\n" ${feature}_works)
     if (${feature}_works)
       message(SEND_ERROR
@@ -49,17 +38,6 @@ if (CMAKE_CXX_COMPILE_FEATURES)
   endforeach()
 endif()
 
-if (CMAKE_C_COMPILE_FEATURES)
-  include(CheckCSourceCompiles)
-  foreach(feature ${non_features_C})
-    check_c_source_compiles("#include \"${CMAKE_CURRENT_SOURCE_DIR}/${feature}.c\"\nint main() { return 0; }\n" ${feature}_works)
-    if (${feature}_works)
-      message(SEND_ERROR
-        "Feature ${feature} expected not to work for ${CMAKE_C_COMPILER_ID}-${CMAKE_C_COMPILER_VERSION}.  Update the supported features or blacklist it.")
-    endif()
-  endforeach()
-endif()
-
 add_executable(CompileFeatures main.cpp)
 set_property(TARGET CompileFeatures
   PROPERTY COMPILE_FEATURES "cxx_auto_type"
diff --git a/Tests/CompileFeatures/c_function_prototypes.c b/Tests/CompileFeatures/c_function_prototypes.c
deleted file mode 100644
index ab3c948..0000000
--- a/Tests/CompileFeatures/c_function_prototypes.c
+++ /dev/null
@@ -1,9 +0,0 @@
-
-int someFunc(int a, int b);
-
-int someFunc(int a, int b)
-{
-  (void)a;
-  (void)b;
-  return 0;
-}
diff --git a/Tests/CompileFeatures/c_restrict.c b/Tests/CompileFeatures/c_restrict.c
deleted file mode 100644
index e5a9826..0000000
--- a/Tests/CompileFeatures/c_restrict.c
+++ /dev/null
@@ -1,5 +0,0 @@
-
-int f (int * restrict a, int * restrict b)
-{
-  return 0;
-}
diff --git a/Tests/CompileFeatures/c_static_assert.c b/Tests/CompileFeatures/c_static_assert.c
deleted file mode 100644
index afab504..0000000
--- a/Tests/CompileFeatures/c_static_assert.c
+++ /dev/null
@@ -1,2 +0,0 @@
-
-_Static_assert(1, "Static assert test");
diff --git a/Tests/CompileFeatures/c_variadic_macros.c b/Tests/CompileFeatures/c_variadic_macros.c
deleted file mode 100644
index 73afa0e..0000000
--- a/Tests/CompileFeatures/c_variadic_macros.c
+++ /dev/null
@@ -1,12 +0,0 @@
-
-int someFunc(int i1, char c, int i2)
-{
-  return 0;
-}
-
-#define FUNC_WRAPPER(...) someFunc(__VA_ARGS__)
-
-void otherFunc()
-{
-  FUNC_WRAPPER(42, 'a', 7);
-}
diff --git a/Tests/CompileFeatures/main.c b/Tests/CompileFeatures/main.c
deleted file mode 100644
index a7884db..0000000
--- a/Tests/CompileFeatures/main.c
+++ /dev/null
@@ -1,10 +0,0 @@
-
-int foo(int * restrict a, int * restrict b)
-{
-  return 0;
-}
-
-int main(int argc, char** argv)
-{
-  return 0;
-}
diff --git a/Tests/ExportImport/Export/Interface/CMakeLists.txt b/Tests/ExportImport/Export/Interface/CMakeLists.txt
index 523fc29..1b653eb 100644
--- a/Tests/ExportImport/Export/Interface/CMakeLists.txt
+++ b/Tests/ExportImport/Export/Interface/CMakeLists.txt
@@ -26,10 +26,7 @@ target_link_libraries(sharediface INTERFACE sharedlib)
 add_library(use_auto_type INTERFACE)
 target_compile_features(use_auto_type INTERFACE cxx_auto_type)
 
-add_library(use_c_restrict INTERFACE)
-target_compile_features(use_c_restrict INTERFACE c_restrict)
-
-install(TARGETS headeronly sharediface use_auto_type use_c_restrict
+install(TARGETS headeronly sharediface use_auto_type
   EXPORT expInterface
 )
 install(TARGETS sharedlib
diff --git a/Tests/ExportImport/Import/Interface/CMakeLists.txt b/Tests/ExportImport/Import/Interface/CMakeLists.txt
index 4028405..1f30c67 100644
--- a/Tests/ExportImport/Import/Interface/CMakeLists.txt
+++ b/Tests/ExportImport/Import/Interface/CMakeLists.txt
@@ -17,7 +17,6 @@ set_property(TARGET bld::sharediface APPEND PROPERTY INTERFACE_LINK_LIBRARIES de
 add_executable(interfacetest_bld interfacetest.cpp)
 target_link_libraries(interfacetest_bld bld::sharediface)
 
-include(CheckCSourceCompiles)
 include(CheckCXXSourceCompiles)
 
 macro(do_try_compile prefix)
@@ -42,26 +41,6 @@ macro(do_try_compile prefix)
     message(SEND_ERROR "${prefix} try_compile with IMPORTED INTERFACE target failed!\n\n${OUTPUT}")
   endif()
 
-  if (";${CMAKE_C_COMPILE_FEATURES};" MATCHES ";c_restrict;")
-    set(CMAKE_REQUIRED_LIBRARIES ${prefix}::use_c_restrict)
-    check_c_source_compiles(
-      "
-    int foo(int * restrict a, int * restrict b)
-    {
-      (void)a;
-      (void)b;
-      return 0;
-    }
-    int main()
-    {
-      return 0;
-    }
-    " ${prefix}IMPORTED_IFACE_C_RESTRICT)
-
-    if(NOT ${prefix}IMPORTED_IFACE_C_RESTRICT)
-      message(SEND_ERROR "${prefix} try_compile with IMPORTED INTERFACE target failed!\n\n${OUTPUT}")
-    endif()
-  endif()
   if (";${CMAKE_CXX_COMPILE_FEATURES};" MATCHES ";cxx_auto_type;")
     set(CMAKE_REQUIRED_LIBRARIES ${prefix}::use_auto_type)
     check_cxx_source_compiles(
@@ -71,9 +50,9 @@ macro(do_try_compile prefix)
       auto value = 0;
       return value;
     }
-    " ${prefix}IMPORTED_IFACE_AUTO_TYPE)
+    " ${prefix}IMPORTED_IFACE_CONSTEXPR)
 
-    if(NOT ${prefix}IMPORTED_IFACE_AUTO_TYPE)
+    if(NOT ${prefix}IMPORTED_IFACE_CONSTEXPR)
       message(SEND_ERROR "${prefix} try_compile with IMPORTED INTERFACE target failed!\n\n${OUTPUT}")
     endif()
   endif()
diff --git a/Tests/RunCMake/CompileFeatures/NoSupportedCFeatures-result.txt b/Tests/RunCMake/CompileFeatures/NoSupportedCFeatures-result.txt
deleted file mode 100644
index d00491f..0000000
--- a/Tests/RunCMake/CompileFeatures/NoSupportedCFeatures-result.txt
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/Tests/RunCMake/CompileFeatures/NoSupportedCFeatures-stderr.txt b/Tests/RunCMake/CompileFeatures/NoSupportedCFeatures-stderr.txt
deleted file mode 100644
index fd18c88..0000000
--- a/Tests/RunCMake/CompileFeatures/NoSupportedCFeatures-stderr.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-CMake Error at NoSupportedCFeatures.cmake:[0-9]+ \(target_compile_features\):
-  target_compile_features no known features for C compiler
-
-  "[^"]*"
-
-  version *[.0-9]+\.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
diff --git a/Tests/RunCMake/CompileFeatures/NoSupportedCFeatures.cmake b/Tests/RunCMake/CompileFeatures/NoSupportedCFeatures.cmake
deleted file mode 100644
index 3624d4b..0000000
--- a/Tests/RunCMake/CompileFeatures/NoSupportedCFeatures.cmake
+++ /dev/null
@@ -1,5 +0,0 @@
-
-enable_language(C)
-
-add_library(no_features empty.c)
-target_compile_features(no_features PRIVATE c_static_assert)
diff --git a/Tests/RunCMake/CompileFeatures/NoSupportedCFeaturesGenex-result.txt b/Tests/RunCMake/CompileFeatures/NoSupportedCFeaturesGenex-result.txt
deleted file mode 100644
index d00491f..0000000
--- a/Tests/RunCMake/CompileFeatures/NoSupportedCFeaturesGenex-result.txt
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/Tests/RunCMake/CompileFeatures/NoSupportedCFeaturesGenex-stderr.txt b/Tests/RunCMake/CompileFeatures/NoSupportedCFeaturesGenex-stderr.txt
deleted file mode 100644
index df647e8..0000000
--- a/Tests/RunCMake/CompileFeatures/NoSupportedCFeaturesGenex-stderr.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-CMake Error in CMakeLists.txt:
-  No known features for C compiler
-
-  "[^"]*"
-
-  version *[.0-9]+\.
diff --git a/Tests/RunCMake/CompileFeatures/NoSupportedCFeaturesGenex.cmake b/Tests/RunCMake/CompileFeatures/NoSupportedCFeaturesGenex.cmake
deleted file mode 100644
index b6053aa..0000000
--- a/Tests/RunCMake/CompileFeatures/NoSupportedCFeaturesGenex.cmake
+++ /dev/null
@@ -1,5 +0,0 @@
-
-enable_language(C)
-
-add_library(no_features empty.c)
-target_compile_features(no_features PRIVATE $<1:c_static_assert>)
diff --git a/Tests/RunCMake/CompileFeatures/NoSupportedCxxFeatures-stderr.txt b/Tests/RunCMake/CompileFeatures/NoSupportedCxxFeatures-stderr.txt
index fc882cb..8b029ac 100644
--- a/Tests/RunCMake/CompileFeatures/NoSupportedCxxFeatures-stderr.txt
+++ b/Tests/RunCMake/CompileFeatures/NoSupportedCxxFeatures-stderr.txt
@@ -1,5 +1,5 @@
 CMake Error at NoSupportedCxxFeatures.cmake:3 \(target_compile_features\):
-  target_compile_features no known features for CXX compiler
+  target_compile_features no known features for compiler
 
   "[^"]*"
 
diff --git a/Tests/RunCMake/CompileFeatures/NoSupportedCxxFeaturesGenex-stderr.txt b/Tests/RunCMake/CompileFeatures/NoSupportedCxxFeaturesGenex-stderr.txt
index 66d0d41..d8366b2 100644
--- a/Tests/RunCMake/CompileFeatures/NoSupportedCxxFeaturesGenex-stderr.txt
+++ b/Tests/RunCMake/CompileFeatures/NoSupportedCxxFeaturesGenex-stderr.txt
@@ -1,5 +1,5 @@
 CMake Error in CMakeLists.txt:
-  No known features for CXX compiler
+  No known features for compiler
 
   "[^"]*"
 
diff --git a/Tests/RunCMake/CompileFeatures/RunCMakeTest.cmake b/Tests/RunCMake/CompileFeatures/RunCMakeTest.cmake
index a23d44f..f083751 100644
--- a/Tests/RunCMake/CompileFeatures/RunCMakeTest.cmake
+++ b/Tests/RunCMake/CompileFeatures/RunCMakeTest.cmake
@@ -10,20 +10,11 @@ run_cmake(NotAFeature_OriginDebug_target_compile_features)
 
 run_cmake(generate_feature_list)
 file(READ
-  "${RunCMake_BINARY_DIR}/generate_feature_list-build/c_features.txt"
-  C_FEATURES
+  "${RunCMake_BINARY_DIR}/generate_feature_list-build/features.txt"
+  FEATURES
 )
-file(READ
-  "${RunCMake_BINARY_DIR}/generate_feature_list-build/cxx_features.txt"
-  CXX_FEATURES
-)
-
-if (NOT C_FEATURES)
-  run_cmake(NoSupportedCFeatures)
-  run_cmake(NoSupportedCFeaturesGenex)
-endif()
 
-if (NOT CXX_FEATURES)
+if (NOT FEATURES)
   run_cmake(NoSupportedCxxFeatures)
   run_cmake(NoSupportedCxxFeaturesGenex)
 endif()
diff --git a/Tests/RunCMake/CompileFeatures/empty.c b/Tests/RunCMake/CompileFeatures/empty.c
deleted file mode 100644
index bfbbdde..0000000
--- a/Tests/RunCMake/CompileFeatures/empty.c
+++ /dev/null
@@ -1,7 +0,0 @@
-#ifdef _WIN32
-__declspec(dllexport)
-#endif
-int empty()
-{
-  return 0;
-}
diff --git a/Tests/RunCMake/CompileFeatures/generate_feature_list.cmake b/Tests/RunCMake/CompileFeatures/generate_feature_list.cmake
index 09e17b1..06c4f73 100644
--- a/Tests/RunCMake/CompileFeatures/generate_feature_list.cmake
+++ b/Tests/RunCMake/CompileFeatures/generate_feature_list.cmake
@@ -1,11 +1,5 @@
 
-enable_language(C)
-
-file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/c_features.txt"
-  "${CMAKE_C_COMPILE_FEATURES}"
-)
-
-file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/cxx_features.txt"
+file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/features.txt"
   "${CMAKE_CXX_COMPILE_FEATURES}"
 )
 
diff --git a/Tests/RunCMake/Configure/FailCopyFileABI-stdout.txt b/Tests/RunCMake/Configure/FailCopyFileABI-stdout.txt
index 92fe233..bb87f4c 100644
--- a/Tests/RunCMake/Configure/FailCopyFileABI-stdout.txt
+++ b/Tests/RunCMake/Configure/FailCopyFileABI-stdout.txt
@@ -1,4 +1,4 @@
 -- Detecting C compiler ABI info
--- Detecting C compiler ABI info - failed.*
+-- Detecting C compiler ABI info - failed
 -- Configuring done
 -- Generating done
diff --git a/Tests/SystemInformation/SystemInformation.in b/Tests/SystemInformation/SystemInformation.in
index 9e62ad3..9966e8d 100644
--- a/Tests/SystemInformation/SystemInformation.in
+++ b/Tests/SystemInformation/SystemInformation.in
@@ -19,15 +19,6 @@ CMAKE_COMPILER_IS_GNUCC == "${CMAKE_COMPILER_IS_GNUCC}"
 CMAKE_COMPILER_IS_GNUCXX == "${CMAKE_COMPILER_IS_GNUCXX}"
 CMAKE_C_COMPILER_ID == "${CMAKE_C_COMPILER_ID}"
 CMAKE_C_COMPILER_VERSION == "${CMAKE_C_COMPILER_VERSION}"
-CMAKE_C90_STANDARD_COMPILE_OPTION == "${CMAKE_C90_STANDARD_COMPILE_OPTION}"
-CMAKE_C99_STANDARD_COMPILE_OPTION == "${CMAKE_C99_STANDARD_COMPILE_OPTION}"
-CMAKE_C11_STANDARD_COMPILE_OPTION == "${CMAKE_C11_STANDARD_COMPILE_OPTION}"
-CMAKE_C99_EXTENSION_COMPILE_OPTION == "${CMAKE_C99_EXTENSION_COMPILE_OPTION}"
-CMAKE_C11_EXTENSION_COMPILE_OPTION == "${CMAKE_C11_EXTENSION_COMPILE_OPTION}"
-CMAKE_C_COMPILE_FEATURES == "${CMAKE_C_COMPILE_FEATURES}"
-CMAKE_C90_COMPILE_FEATURES == "${CMAKE_C90_COMPILE_FEATURES}"
-CMAKE_C99_COMPILE_FEATURES == "${CMAKE_C99_COMPILE_FEATURES}"
-CMAKE_C11_COMPILE_FEATURES == "${CMAKE_C11_COMPILE_FEATURES}"
 CMAKE_CXX_COMPILER_ID == "${CMAKE_CXX_COMPILER_ID}"
 CMAKE_CXX_COMPILER_VERSION == "${CMAKE_CXX_COMPILER_VERSION}"
 CMAKE_CXX98_STANDARD_COMPILE_OPTION == "${CMAKE_CXX98_STANDARD_COMPILE_OPTION}"

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

Summary of changes:
 Help/command/target_compile_features.rst           |    3 +-
 Help/manual/cmake-properties.7.rst                 |    6 +-
 Help/manual/cmake-variables.7.rst                  |    6 +-
 Help/prop_gbl/CMAKE_C_KNOWN_FEATURES.rst           |   25 -----
 Help/prop_tgt/C_EXTENSIONS.rst                     |    8 --
 Help/prop_tgt/C_STANDARD.rst                       |   27 ------
 Help/prop_tgt/C_STANDARD_REQUIRED.rst              |   14 ---
 Help/variable/CMAKE_C_COMPILE_FEATURES.rst         |    8 --
 Help/variable/CMAKE_C_EXTENSIONS.rst               |    8 --
 Help/variable/CMAKE_C_STANDARD.rst                 |   26 -----
 Help/variable/CMAKE_C_STANDARD_REQUIRED.rst        |    8 --
 Modules/CMakeCCompiler.cmake.in                    |    5 -
 Modules/CMakeDetermineCompileFeatures.cmake        |   40 +-------
 Modules/CMakeTestCCompiler.cmake                   |    3 -
 Modules/Compiler/GNU-C-FeatureTests.cmake          |   14 ---
 Modules/Compiler/GNU-C.cmake                       |   32 ------
 Modules/Compiler/GNU-CXX.cmake                     |    7 +-
 Modules/Internal/FeatureTesting.cmake              |    4 +-
 Source/cmLocalGenerator.cxx                        |    4 -
 Source/cmMakefile.cxx                              |  102 +-------------------
 Source/cmTarget.cxx                                |    3 -
 Source/cmake.cxx                                   |    6 --
 Source/cmake.h                                     |    6 --
 .../target_compile_features/CMakeLists.txt         |   12 +--
 Tests/CMakeCommands/target_compile_features/main.c |   10 --
 Tests/CompileFeatures/CMakeLists.txt               |   36 ++-----
 Tests/CompileFeatures/c_function_prototypes.c      |    9 --
 Tests/CompileFeatures/c_restrict.c                 |    5 -
 Tests/CompileFeatures/c_static_assert.c            |    2 -
 Tests/CompileFeatures/c_variadic_macros.c          |   12 ---
 Tests/CompileFeatures/main.c                       |   10 --
 Tests/ExportImport/Export/Interface/CMakeLists.txt |    5 +-
 Tests/ExportImport/Import/Interface/CMakeLists.txt |   25 +----
 .../NoSupportedCFeatures-result.txt                |    1 -
 .../NoSupportedCFeatures-stderr.txt                |    8 --
 .../CompileFeatures/NoSupportedCFeatures.cmake     |    5 -
 .../NoSupportedCFeaturesGenex-result.txt           |    1 -
 .../NoSupportedCFeaturesGenex-stderr.txt           |    6 --
 .../NoSupportedCFeaturesGenex.cmake                |    5 -
 .../NoSupportedCxxFeatures-stderr.txt              |    2 +-
 .../NoSupportedCxxFeaturesGenex-stderr.txt         |    2 +-
 Tests/RunCMake/CompileFeatures/RunCMakeTest.cmake  |   15 +--
 Tests/RunCMake/CompileFeatures/empty.c             |    7 --
 .../CompileFeatures/generate_feature_list.cmake    |    8 +-
 .../RunCMake/Configure/FailCopyFileABI-stdout.txt  |    2 +-
 Tests/SystemInformation/SystemInformation.in       |    9 --
 46 files changed, 31 insertions(+), 531 deletions(-)
 delete mode 100644 Help/prop_gbl/CMAKE_C_KNOWN_FEATURES.rst
 delete mode 100644 Help/prop_tgt/C_EXTENSIONS.rst
 delete mode 100644 Help/prop_tgt/C_STANDARD.rst
 delete mode 100644 Help/prop_tgt/C_STANDARD_REQUIRED.rst
 delete mode 100644 Help/variable/CMAKE_C_COMPILE_FEATURES.rst
 delete mode 100644 Help/variable/CMAKE_C_EXTENSIONS.rst
 delete mode 100644 Help/variable/CMAKE_C_STANDARD.rst
 delete mode 100644 Help/variable/CMAKE_C_STANDARD_REQUIRED.rst
 delete mode 100644 Modules/Compiler/GNU-C-FeatureTests.cmake
 delete mode 100644 Tests/CMakeCommands/target_compile_features/main.c
 delete mode 100644 Tests/CompileFeatures/c_function_prototypes.c
 delete mode 100644 Tests/CompileFeatures/c_restrict.c
 delete mode 100644 Tests/CompileFeatures/c_static_assert.c
 delete mode 100644 Tests/CompileFeatures/c_variadic_macros.c
 delete mode 100644 Tests/CompileFeatures/main.c
 delete mode 100644 Tests/RunCMake/CompileFeatures/NoSupportedCFeatures-result.txt
 delete mode 100644 Tests/RunCMake/CompileFeatures/NoSupportedCFeatures-stderr.txt
 delete mode 100644 Tests/RunCMake/CompileFeatures/NoSupportedCFeatures.cmake
 delete mode 100644 Tests/RunCMake/CompileFeatures/NoSupportedCFeaturesGenex-result.txt
 delete mode 100644 Tests/RunCMake/CompileFeatures/NoSupportedCFeaturesGenex-stderr.txt
 delete mode 100644 Tests/RunCMake/CompileFeatures/NoSupportedCFeaturesGenex.cmake
 delete mode 100644 Tests/RunCMake/CompileFeatures/empty.c


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list