From 224f50f42f8776e4742851daca32846d1041fbb9 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Tue, 11 Mar 2014 14:49:30 +0100 Subject: [PATCH] find_dependency: Make sure invalid EXACT use can be reported. Test the first argument directly for matching 'EXACT'. The error check in its previous position was incorrect and would only trigger with a version of '0' or similar. --- Modules/CMakeFindDependencyMacro.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Modules/CMakeFindDependencyMacro.cmake b/Modules/CMakeFindDependencyMacro.cmake index 8c615166c..99ffca80c 100644 --- a/Modules/CMakeFindDependencyMacro.cmake +++ b/Modules/CMakeFindDependencyMacro.cmake @@ -31,6 +31,9 @@ macro(find_dependency dep) if (NOT ${dep}_FOUND) set(cmake_fd_version) if (${ARGC} GREATER 1) + if (${ARGV1} STREQUAL EXACT) + message(FATAL_ERROR "Invalid arguments to find_dependency. EXACT may only be specified if a VERSION is specified") + endif() set(cmake_fd_version ${ARGV1}) endif() set(cmake_fd_exact_arg) @@ -38,9 +41,6 @@ macro(find_dependency dep) if (NOT ${ARGV2} STREQUAL EXACT) message(FATAL_ERROR "Invalid arguments to find_dependency") endif() - if (NOT ${cmake_fd_version}) - message(FATAL_ERROR "Invalid arguments to find_dependency. EXACT may only be specified if a VERSION is specified") - endif() set(cmake_fd_exact_arg EXACT) endif() if(${ARGC} GREATER 3)