Humm you are right. HDF5 would need to be built before ParaView even attempts to configure.<br><br><div class="gmail_quote">On Thu, Apr 15, 2010 at 10:08 AM, kent williams <span dir="ltr"><<a href="mailto:nkwmailinglists@gmail.com" target="_blank">nkwmailinglists@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">There's a 'chicken-and-egg' problem with using ExternalProject in this<br>
context: When you configure a project that uses ExternalProject_add,<br>
that project won't be available to be found by FindPackage until AFTER<br>
the project is built. But CMake will want to find it at Configuration<br>
Time, and it will not yet exist.<br>
<br>
The only way I know out of this 'chicken and egg' problem is to make<br>
ParaView itself an ExternalProject that depends on HDF5.<br>
<br>
ExternalProject is great and all, but this is rather an annoying<br>
problem, because the most natural thing to do would be to add<br>
ExternalProjects into the CMakeLists.txt for the projects upon which<br>
they depend. To do this, ExternalProject would probably have to be<br>
more than a Module.<br>
<br>
You can probably finesse this by defining the variables defined by<br>
e.g. UseHDF5.cmake based on where the ExternalProject will drop its<br>
files when it's done building and installs.<br>
<br>
Or maybe this would be a good thing to add to the ExternalProject<br>
macro itself -- have it define the variables a project would need to<br>
use the ExternalProject once it's built. Then at configure time, the<br>
build system should be generated so that anything depending on an<br>
ExternalProject should be built after it.<br>
<br>
<br>
On Thu, Apr 15, 2010 at 5:57 AM, Dave Partyka <<a href="mailto:dave.partyka@kitware.com" target="_blank">dave.partyka@kitware.com</a>> wrote:<br>
> Just thinking out loud but we could make an "external_project" call instead.<br>
> This would sync, configure, build and install it easily without needing to<br>
> override anything. And then ParaView would just FindPackage(HDF5) with the<br>
> internal build directory as a hint.<br>
><br>
</blockquote></div><br>