<div dir="ltr"><div style>Hi, </div><div style><br></div>That is awesome.  May be the most generic component could be hosted on the <a href="http://github.com/commontk">http://github.com/commontk</a> ? We are also trying to make generic component allowing to easily build application relying on multiple project. <div>

<br></div><div>The idea would be to provide a drop-in CMake module (named CMakeSuperBuild ?) allowing to very very easily leverage External project. We would also have a repository of existing external project definition that could easily be re-used.</div>

<div><br></div><div style>This new module would also provide the helper to make packaging and MAcOSx bundling easier.</div><div><br></div><div style>Thanks</div><div style>Jc</div><div style><br></div></div><div class="gmail_extra">

<br><br><div class="gmail_quote">On Fri, Apr 19, 2013 at 1:04 PM, radovan bast <span dir="ltr">&lt;<a href="mailto:radovan.bast@irsamc.ups-tlse.fr" target="_blank">radovan.bast@irsamc.ups-tlse.fr</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">dear Jean-Christophe,<br>
<br>
absolutely. it will take a bit of time until<br>
we finetune things but the plan is to have and share an open<br>
source repository (probably on github) that will provide<br>
generic plug-n-play CMake infrastructure for projects that require Fortran, C, and C++,<br>
as well as MPI/OpenMP, BLAS, and LAPACK. the focus<br>
is on scientific computing but i will try to keep things<br>
general and generic also for other projects.<br>
<br>
best greetings,<br>
  radovan<div><div class="h5"><br>
<br>
<br>
On Fri, 19 Apr 2013 18:45:04 +0200, Jean-Christophe Fillion-Robin &lt;<a href="mailto:jchris.fillionr@kitware.com" target="_blank">jchris.fillionr@kitware.com</a>&gt; wrote:<br>
<br>
</div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5">
Hi Radovan,<br>
<br>
That is good news :) Do you think you could share the CMake code you ended<br>
up created. May be could generalize the solution to create a re-usable<br>
module.<br>
<br>
Thanks<br>
Jc<br>
<br>
<br>
On Fri, Apr 19, 2013 at 12:23 PM, radovan bast &lt;<br>
<a href="mailto:radovan.bast@irsamc.ups-tlse.fr" target="_blank">radovan.bast@irsamc.ups-tlse.<u></u>fr</a>&gt; wrote:<br>
<br>
</div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5">
dear Jean-Christophe,<br>
<br>
indeed the approach you demostrated works for me!<br>
this is exactly what i needed.<br>
thank you again!<br>
<br>
(i am sorry for coming back to you so late;<br>
was too busy with other things)<br>
<br>
best regards,<br>
  radovan<br>
<br>
<br>
<br>
On Sat, 13 Apr 2013 12:24:02 +0200, Jean-Christophe Fillion-Robin &lt;<br>
<a href="mailto:jchris.fillionr@kitware.com" target="_blank">jchris.fillionr@kitware.com</a>&gt; wrote:<br>
<br>
 Hi Radovan,<br>
</div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5">
Did you manage to make use and/or generalize the code I pointed you?<br>
Thanks<br>
Jc<br>
<br>
--<br>
Sent from my mobile device<br>
On Apr 6, 2013 10:29 AM, &quot;radovan bast&quot; &lt;<a href="mailto:radovan@bast.fr" target="_blank">radovan@bast.fr</a>&gt; wrote:<br>
<br>
 dear Jean-Christophe,<br>
</div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5">
wonderful! thank you very much.<br>
i will test it out.<br>
best regards,<br>
  radovan<br>
<br>
<br>
On Fri, 05 Apr 2013 18:13:52 +0200, Jean-Christophe Fillion-Robin &lt;<br>
<a href="mailto:jchris.fillionr@kitware.com" target="_blank">jchris.fillionr@kitware.com</a>&gt; wrote:<br>
<br>
 Hi Radovan,<br>
<br>
</div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5">
<br>
This is possible. You could look at the approach we consider in CTK.<br>
See<br>
</div></div><a href="https://github.com/commontk/****CTK/compare/**" target="_blank">https://github.com/commontk/**<u></u>**CTK/compare/**</a>&lt;<a href="https://github.com/commontk/**CTK/compare/**" target="_blank">https://<u></u>github.com/commontk/**CTK/<u></u>compare/**</a>&gt;<br>


00694c9f8a0da6ee28fb079902e6a8<u></u>****c3ec428058...**<br>
891aa5443b110cc7e6aa0ec1339aad<u></u>****4b2c83ef9d&lt;<a href="https://github." target="_blank">https://github.</a><u></u>**<br>
com/commontk/CTK/compare/**<u></u>00694c9f8a0da6ee28fb079902e6a8<u></u>**<br>
c3ec428058...**<u></u>891aa5443b110cc7e6aa0ec1339aad<u></u>**4b2c83ef9d&lt;<a href="https://github.com/commontk/CTK/compare/00694c9f8a0da6ee28fb079902e6a8c3ec428058...891aa5443b110cc7e6aa0ec1339aad4b2c83ef9d" target="_blank">https://github.<u></u>com/commontk/CTK/compare/<u></u>00694c9f8a0da6ee28fb079902e6a8<u></u>c3ec428058...<u></u>891aa5443b110cc7e6aa0ec1339aad<u></u>4b2c83ef9d</a>&gt;<div class="im">

<br>
&gt;<br>
<br>
<br>
Hth<br>
Jc<br>
<br>
<br>
On Fri, Apr 5, 2013 at 12:03 PM, radovan bast &lt;<br></div>
radovan.bast@irsamc.ups-tlse.*<u></u>***fr &lt;radovan.bast@irsamc.ups-tlse.<u></u>**fr&lt;<a href="mailto:radovan.bast@irsamc.ups-tlse.fr" target="_blank">radovan.bast@irsamc.ups-<u></u>tlse.fr</a>&gt;<div><div class="h5">

<br>
&gt;&gt;<br>
<br>
wrote:<br>
<br>
 dear CMake developers and users,<br>
<br>
</div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5">
<br>
first of all, a big thanks for the CMake developers<br>
for a great product! we like CMake a lot.<br>
<br>
we are extensively using CMake external project support<br>
in combination with Git submodules in a number of larger<br>
projects and that works nicely.<br>
<br>
my question is: could i do something similar with CMake<br>
modules? is it possible to start with a minimal core<br>
CMakeLists.txt which would fetch other CMake modules from an<br>
external public (Git) repository<br>
and use them to configure the project?<br>
<br>
the motivation for this is that we have several projects<br>
with rather complex CMake infrastructures. the projects<br>
are independent, live on different repositories, but the<br>
CMake infrastructures are to a large extent overlapping.<br>
currently we synchronize the CMake code between these projects<br>
manually but this is not great and there is the risk that<br>
the codes will diverge, that wheels will be reinvented,<br>
and that improvements are not communicated between the projects.<br>
this could be avoided if the CMake code was not explicitly<br>
present but fetched from a repository which would also<br>
enforce (or encourage) communicating all improvements<br>
to the same place. everything that is generic and not project<br>
specific would go into that external repo, only project specific<br>
things would be kept in the minimal core CMakeLists.txt.<br>
<br>
i will appreciate any pointers and suggestions<br>
on how i could implement such a scheme.<br>
<br>
thanks and best regards,<br>
  radovan<br>
--<br>
<br>
Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at <a href="http://www.kitware.com/**" target="_blank">http://www.kitware.com/**</a><br></div></div>
opensource/opensource.html&lt;**<u></u>htt**p://<a href="http://www.kitware.com/**" target="_blank">www.kitware.com/**</a><div class="im"><br>
<br>
opensource/opensource.html&lt;<u></u>htt**p://<a href="http://www.kitware.com/**" target="_blank">www.kitware.com/**</a><br>
opensource/opensource.html&lt;<a href="http://www.kitware.com/opensource/opensource.html" target="_blank">htt<u></u>p://www.kitware.com/<u></u>opensource/opensource.html</a>&gt;<br>
&gt;<br>
&gt;<br>
<br>
Please keep messages on-topic and check the CMake FAQ at:<br>
</div><a href="http://www.cmake.org/Wiki/******CMake_FAQ" target="_blank">http://www.cmake.org/Wiki/****<u></u>**CMake_FAQ</a>&lt;<a href="http://www.cmake.org/Wiki/****CMake_FAQ" target="_blank">http://www.cmake.<u></u>org/Wiki/****CMake_FAQ</a>&gt;<br>


&lt;<a href="http://www.cmake." target="_blank">http://www.cmake.</a>**org/Wiki/*<u></u>*CMake_FAQ&lt;<a href="http://www.cmake.org/Wiki/**CMake_FAQ" target="_blank">http://www.cmake.<u></u>org/Wiki/**CMake_FAQ</a>&gt;<br>


&gt;<br>
&lt;<a href="http://www.cmake." target="_blank">http://www.cmake.</a>**org/Wiki/*<u></u>*CMake_FAQ&lt;<a href="http://www.cmake." target="_blank">http://www.cmake.</a>**<br>
org/Wiki/CMake_FAQ &lt;<a href="http://www.cmake.org/Wiki/CMake_FAQ" target="_blank">http://www.cmake.org/Wiki/<u></u>CMake_FAQ</a>&gt;&gt;<div class="im"><br>
<br>
&gt;<br>
<br>
Follow this link to subscribe/unsubscribe:<br>
</div><a href="http://www.cmake.org/mailman/******listinfo/cmake" target="_blank">http://www.cmake.org/mailman/*<u></u>*****listinfo/cmake</a>&lt;<a href="http://www.cmake.org/mailman/****listinfo/cmake" target="_blank">http://<u></u>www.cmake.org/mailman/****<u></u>listinfo/cmake</a>&gt;<br>


&lt;<a href="http://www." target="_blank">http://www.</a>**<a href="http://cmake.org/mailman/**listinfo/**cmake" target="_blank">cmake.org/<u></u>mailman/**listinfo/**cmake</a>&lt;<a href="http://www.cmake.org/mailman/**listinfo/cmake" target="_blank">htt<u></u>p://www.cmake.org/mailman/**<u></u>listinfo/cmake</a>&gt;<br>


&gt;<br>
&lt;<a href="http://www." target="_blank">http://www.</a>**<a href="http://cmake.org/**mailman/listinfo/**cmake" target="_blank">cmake.org/**<u></u>mailman/listinfo/**cmake</a>&lt;<a href="http://cmake.org/mailman/listinfo/**cmake" target="_blank">http:<u></u>//cmake.org/mailman/listinfo/*<u></u>*cmake</a>&gt;<br>


&lt;http:**//<a href="http://www.cmake.org/mailman/**listinfo/cmake" target="_blank">www.cmake.org/<u></u>mailman/**listinfo/cmake</a>&lt;<a href="http://www.cmake.org/mailman/listinfo/cmake" target="_blank">http:<u></u>//www.cmake.org/mailman/<u></u>listinfo/cmake</a>&gt;<br>


</blockquote></blockquote></blockquote></blockquote></blockquote></blockquote>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>+1 919 869 8849<br>
</div>