summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2016-02-17 14:14:20 (GMT)
committerBrad King <brad.king@kitware.com>2016-02-17 14:15:18 (GMT)
commitbeaa4fa5ddba4298dfc94b38e1695bac28ea5faf (patch)
tree74ac6e45ad10c684ce1fd9172a94853c2fe64a80
parent3e966ef734230848cf834fc444dc2695a07ff398 (diff)
downloadCMake-beaa4fa5ddba4298dfc94b38e1695bac28ea5faf.zip
CMake-beaa4fa5ddba4298dfc94b38e1695bac28ea5faf.tar.gz
CMake-beaa4fa5ddba4298dfc94b38e1695bac28ea5faf.tar.bz2
CMakeForceCompiler: De-deprecate until more use cases have alternatives
We deprecated this module in commit v3.5.0-rc1~295^2 (CMakeForceCompiler: Deprecate this module and its macros, 2015-10-19) in order to determine whether anyone still has use cases that require it. Indeed we still need to provide a way to work with toolchains that cannot link binaries without special flags. Remove the deprecation warnings until we can provide an alternative to the module for this use case.
-rw-r--r--Help/release/3.5.rst3
-rw-r--r--Modules/CMakeForceCompiler.cmake16
2 files changed, 9 insertions, 10 deletions
diff --git a/Help/release/3.5.rst b/Help/release/3.5.rst
index 62703b3..009eb3c 100644
--- a/Help/release/3.5.rst
+++ b/Help/release/3.5.rst
@@ -159,9 +159,6 @@ Other
Deprecated and Removed Features
===============================
-* The :module:`CMakeForceCompiler` module and its macros are now deprecated.
- See module documentation for an explanation.
-
* The :manual:`cmake(1)` ``-E time`` command now properly passes arguments
with spaces or special characters through to the child process. This
may break scripts that worked around the bug with their own extra
diff --git a/Modules/CMakeForceCompiler.cmake b/Modules/CMakeForceCompiler.cmake
index 343ab3f..faa0dc5 100644
--- a/Modules/CMakeForceCompiler.cmake
+++ b/Modules/CMakeForceCompiler.cmake
@@ -2,7 +2,9 @@
# CMakeForceCompiler
# ------------------
#
-# Deprecated. Do not use.
+# Discouraged. Avoid using this module if possible. It will be deprecated
+# by a future version of CMake once alternatives have been provided for all
+# toolchain file use cases.
#
# The macros provided by this module were once intended for use by
# cross-compiling toolchain files when CMake was not able to automatically
@@ -12,6 +14,12 @@
# CMake detects from a compiler is now too extensive to be provided by
# toolchain files using these macros.
#
+# The only known remaining use case for these macros is to write toolchain
+# files for cross-compilers that cannot link binaries without special flags or
+# custom linker scripts. These macros cause CMake to skip checks it normally
+# performs as part of enabling a language and introspecting the toolchain.
+# However, skipping these checks may limit some generation functionality.
+#
# -------------------------------------------------------------------------
#
# Macro CMAKE_FORCE_C_COMPILER has the following signature:
@@ -70,8 +78,6 @@
# License text for the above reference.)
macro(CMAKE_FORCE_C_COMPILER compiler id)
- message(DEPRECATION "The CMAKE_FORCE_C_COMPILER macro is deprecated. "
- "Instead just set CMAKE_C_COMPILER and allow CMake to identify the compiler.")
set(CMAKE_C_COMPILER "${compiler}")
set(CMAKE_C_COMPILER_ID_RUN TRUE)
set(CMAKE_C_COMPILER_ID ${id})
@@ -84,8 +90,6 @@ macro(CMAKE_FORCE_C_COMPILER compiler id)
endmacro()
macro(CMAKE_FORCE_CXX_COMPILER compiler id)
- message(DEPRECATION "The CMAKE_FORCE_CXX_COMPILER macro is deprecated. "
- "Instead just set CMAKE_CXX_COMPILER and allow CMake to identify the compiler.")
set(CMAKE_CXX_COMPILER "${compiler}")
set(CMAKE_CXX_COMPILER_ID_RUN TRUE)
set(CMAKE_CXX_COMPILER_ID ${id})
@@ -98,8 +102,6 @@ macro(CMAKE_FORCE_CXX_COMPILER compiler id)
endmacro()
macro(CMAKE_FORCE_Fortran_COMPILER compiler id)
- message(DEPRECATION "The CMAKE_FORCE_Fortran_COMPILER macro is deprecated. "
- "Instead just set CMAKE_Fortran_COMPILER and allow CMake to identify the compiler.")
set(CMAKE_Fortran_COMPILER "${compiler}")
set(CMAKE_Fortran_COMPILER_ID_RUN TRUE)
set(CMAKE_Fortran_COMPILER_ID ${id})