<div class="gmail_quote">On Thu, Feb 19, 2009 at 3:38 PM, Alexander Neundorf <span dir="ltr">&lt;<a href="mailto:a.neundorf-work@gmx.net">a.neundorf-work@gmx.net</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="Ih2E3d">On Wednesday 18 February 2009, Philip Lowman wrote:<br>
</div><div class="Ih2E3d">
&gt; This is an interesting idea.<br>
&gt;<br>
&gt; One thought I had was the potential of new features creeping into the CMake<br>
&gt; module you&#39;re downloading that aren&#39;t yet available in the CMake version<br>
&gt; that you&#39;re using. &nbsp;One example of this as of late is the HINTS feature.<br>
&gt; There are still many people out there using CMake 2.4.x and plenty of Find<br>
&gt; Modules which now support HINTS (which obviously doesn&#39;t work in 2.4.x).<br>
&gt;<br>
&gt; My point is by pointing your source tree off to some URL you immediately<br>
&gt; assume that the module located there will ALWAYS work with the current<br>
&gt; trunk of your software (from now until the end of time) when this may not<br>
&gt; necessarily be the case.<br>
<br>
</div>I agree with that.<br>
And once you have found out that a cmake module you need exists somewhere, you<br>
can also bundle it with your software. Then you also know what you have and<br>
can fix it if something breaks.<br>
<br>
Beside that, at least starting with cmake 2.6.3 it should be recommended to<br>
put a cmake_minimum_required(VERSION ... ) in such cmake modules, so they<br>
will fail with an appropriate error if it&#39;s not good enough.<br>
(with cmake 2.6.0 to 2.6.2 there is an issue with this: if you do this in a<br>
cmake module, it also sets the cmake policies to this version, and these<br>
policies are then applied to the including file. With 2.6.3 by default the<br>
different policies don&#39;t &quot;escape&quot; that file) (hope I got that right).</blockquote><div><br>Thanks for sharing that.&nbsp; I always wondered what might happen if I set cmake_minimum_required() in a module.&nbsp; I figured it would be global so never tried.&nbsp; Glad to hear this has been fixed.&nbsp; It should be useful come 2.8 if there are any really cool new features. ;)<br>
</div></div><br clear="all"><br>-- <br>Philip Lowman<br>