summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2014-06-05 10:34:16 (GMT)
committerStephen Kelly <steveire@gmail.com>2014-06-05 11:58:27 (GMT)
commit567af1a596455b096c9261317b1562ceb89f2e95 (patch)
treeeeae400c6c7947941342fedab7a4d3130926faf9
parent2336ec514080014430589166287e076c7e5608d8 (diff)
downloadCMake-567af1a596455b096c9261317b1562ceb89f2e95.zip
CMake-567af1a596455b096c9261317b1562ceb89f2e95.tar.gz
CMake-567af1a596455b096c9261317b1562ceb89f2e95.tar.bz2
WCDH: Issue a better message for version compatibility.
-rw-r--r--Modules/WriteCompilerDetectionHeader.cmake9
-rw-r--r--Tests/RunCMake/WriteCompilerDetectionHeader/OldVersion-stderr.txt6
2 files changed, 12 insertions, 3 deletions
diff --git a/Modules/WriteCompilerDetectionHeader.cmake b/Modules/WriteCompilerDetectionHeader.cmake
index f80943d..3f8d835 100644
--- a/Modules/WriteCompilerDetectionHeader.cmake
+++ b/Modules/WriteCompilerDetectionHeader.cmake
@@ -197,8 +197,13 @@ function(write_compiler_detection_header
if(NOT _WCD_VERSION)
set(_WCD_VERSION ${CMAKE_MINIMUM_REQUIRED_VERSION})
endif()
- if (_WCD_VERSION VERSION_LESS 3.1.0) # Version which introduced this function
- message(FATAL_ERROR "VERSION parameter too low.")
+ set(_min_version 3.1.0) # Version which introduced this function
+ if (_WCD_VERSION VERSION_LESS _min_version)
+ set(err "VERSION compatibility for write_compiler_detection_header is set to ${_WCD_VERSION}, which is too low.")
+ set(err "${err} It must be set to at least ${_min_version}. ")
+ set(err "${err} Either set the VERSION parameter to the write_compiler_detection_header function, or update")
+ set(err "${err} your minimum required CMake version with the cmake_minimum_required command.")
+ message(FATAL_ERROR "${err}")
endif()
set(compilers
diff --git a/Tests/RunCMake/WriteCompilerDetectionHeader/OldVersion-stderr.txt b/Tests/RunCMake/WriteCompilerDetectionHeader/OldVersion-stderr.txt
index 842eb3f..8d4db34 100644
--- a/Tests/RunCMake/WriteCompilerDetectionHeader/OldVersion-stderr.txt
+++ b/Tests/RunCMake/WriteCompilerDetectionHeader/OldVersion-stderr.txt
@@ -1,5 +1,9 @@
CMake Error at .*Modules/WriteCompilerDetectionHeader.cmake:[0-9]+ \(message\):
- VERSION parameter too low.
+ VERSION compatibility for write_compiler_detection_header is set to 3.0,
+ which is too low. It must be set to at least 3.1.0. Either set the
+ VERSION parameter to the write_compiler_detection_header function, or
+ update your minimum required CMake version with the cmake_minimum_required
+ command.
Call Stack \(most recent call first\):
OldVersion.cmake:4 \(write_compiler_detection_header\)
CMakeLists.txt:3 \(include\)