I fixed your issues and added a couple more fixes for problems with the module. They have been merged with stage/next.

Thanks,
Will

Brad King wrote:
On 05/24/2011 03:04 PM, Will Dicharry wrote:
Brad King wrote:
Therefore if someone finds HDF5 twice the second time may take the wrong
logic path.  The proper value to test after the find_package call is
HDF5_FOUND to know whether or not the config file was found and loaded.
Won't this have the same problem? HDF5_FOUND gets set by FindPackageHandleStandardArgs, so the second time find_package(HDF5) gets called on a system with the autoconf HDF5 build we'll take the wrong control path and call get_target_properties on targets that don't exist.

Yes, you're right.

That's why I used the INCLUDE_DIR in the first place (forgetting about the backwards compatibility thing at the end). Is there something else I can branch on?

The find_package command will set HDF5_DIR to the directory containing
the config file.  However, there is a different organization we can use.

The general form should be something like

 if(NOT HDF5_FOUND)
   find_package(HDF5 QUIET NO_MODULE)
   if(HDF5_FOUND)
     # ... map hdf5-config values to our outputs
   endif()
 endif()

 if(NOT HDF5_FOUND)
   # old-style search
 endif()

 if(HDF5_FOUND)
   # Generic logic (if any) when HDF5 is found by either method.
   # Logic should be safe to run twice or have its own guard.
 endif()

By including the "NOT HDF5_FOUND" guard around each block then it does
not matter how many times the module is included.

-Brad

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

_______________________________________________
cmake-developers mailing list
cmake-developers@cmake.org
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers

Reply via email to