diff options
author | Brad King <brad.king@kitware.com> | 2016-06-02 18:55:53 (GMT) |
---|---|---|
committer | CMake Topic Stage <kwrobot@kitware.com> | 2016-06-02 18:55:53 (GMT) |
commit | 9ca8c7a99f193179ebfc893060966c37e3efabca (patch) | |
tree | 5644abd70664e53246518362e8ba3f3ef404434b | |
parent | f1ff6301eafe61f5e9d7376d3713a0f37d3a2015 (diff) | |
parent | f11243d13e104e61949c7023ada5a9e74d653e5c (diff) | |
download | CMake-9ca8c7a99f193179ebfc893060966c37e3efabca.zip CMake-9ca8c7a99f193179ebfc893060966c37e3efabca.tar.gz CMake-9ca8c7a99f193179ebfc893060966c37e3efabca.tar.bz2 |
Merge topic 'FindHDF5-fix-already-found'
f11243d1 FindHDF5: Add backwards compatability for already-found searches
-rw-r--r-- | Modules/FindHDF5.cmake | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/Modules/FindHDF5.cmake b/Modules/FindHDF5.cmake index f589977..bc0d50b 100644 --- a/Modules/FindHDF5.cmake +++ b/Modules/FindHDF5.cmake @@ -345,7 +345,7 @@ macro( _HDF5_parse_compile_line endmacro() # Try to find HDF5 using an installed hdf5-config.cmake -if(NOT HDF5_ROOT AND NOT HDF5_FOUND) +if(NOT HDF5_FOUND AND NOT HDF5_ROOT) find_package(HDF5 QUIET NO_MODULE) if( HDF5_FOUND) set(HDF5_INCLUDE_DIRS ${HDF5_INCLUDE_DIR}) @@ -382,7 +382,7 @@ if(NOT HDF5_ROOT AND NOT HDF5_FOUND) endif() endif() -if(NOT HDF5_ROOT AND NOT HDF5_FOUND) +if(NOT HDF5_FOUND AND NOT HDF5_ROOT) set(_HDF5_NEED_TO_SEARCH False) set(HDF5_COMPILER_NO_INTERROGATE True) # Only search for languages we've enabled @@ -488,12 +488,12 @@ else() set(_HDF5_NEED_TO_SEARCH True) endif() -if(HDF5_COMPILER_NO_INTERROGATE) +if(NOT HDF5_FOUND AND HDF5_COMPILER_NO_INTERROGATE) # No arguments necessary, all languages can use the compiler wrappers set(HDF5_FOUND True) set(HDF5_METHOD "Included by compiler wrappers") set(HDF5_REQUIRED_VARS HDF5_METHOD) -elseif(NOT _HDF5_NEED_TO_SEARCH) +elseif(NOT HDF5_FOUND AND NOT _HDF5_NEED_TO_SEARCH) # Compiler wrappers aren't being used by the build but were found and used # to determine necessary include and library flags set(HDF5_INCLUDE_DIRS) @@ -680,6 +680,13 @@ if( NOT HDF5_FOUND ) endif() endif() +# If HDF5_REQUIRED_VARS is empty at this point, then it's likely that +# something external is trying to explicitly pass already found +# locations +if(NOT HDF5_REQUIRED_VARS) + set(HDF5_REQUIRED_VARS HDF5_LIBRARIES HDF5_INCLUDE_DIRS) +endif() + find_package_handle_standard_args(HDF5 REQUIRED_VARS ${HDF5_REQUIRED_VARS} VERSION_VAR HDF5_VERSION |