diff options
author | Brad King <brad.king@kitware.com> | 2016-06-02 18:56:09 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2016-06-02 18:56:09 (GMT) |
commit | 9703b32c1c75b0b343bb5043030a08a1b1345a20 (patch) | |
tree | f5cb732917053c8d1afab37a8e42c47d528bf4d7 /Modules | |
parent | 7e8cfb9549b7a3b24f72c15ee353544ec2810293 (diff) | |
parent | f11243d13e104e61949c7023ada5a9e74d653e5c (diff) | |
download | CMake-9703b32c1c75b0b343bb5043030a08a1b1345a20.zip CMake-9703b32c1c75b0b343bb5043030a08a1b1345a20.tar.gz CMake-9703b32c1c75b0b343bb5043030a08a1b1345a20.tar.bz2 |
Merge branch 'FindHDF5-fix-already-found' into releasev3.6.0-rc1
Diffstat (limited to 'Modules')
-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 |