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">&lt;<a href="mailto:nkwmailinglists@gmail.com" target="_blank">nkwmailinglists@gmail.com</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">There&#39;s a &#39;chicken-and-egg&#39; problem with using ExternalProject in this<br>
context: When you configure a project that uses ExternalProject_add,<br>
that project won&#39;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 &#39;chicken and egg&#39; 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&#39;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&#39;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 &lt;<a href="mailto:dave.partyka@kitware.com" target="_blank">dave.partyka@kitware.com</a>&gt; wrote:<br>
&gt; Just thinking out loud but we could make an &quot;external_project&quot; call instead.<br>
&gt; This would sync, configure, build and install it easily without needing to<br>
&gt; override anything. And then ParaView would just FindPackage(HDF5) with the<br>
&gt; internal build directory as a hint.<br>
&gt;<br>
</blockquote></div><br>