<div dir="ltr">Hi,<div class="gmail_extra"><br><div class="gmail_quote">On Tue, Jul 16, 2013 at 12:26 PM, Milian Wolff <span dir="ltr"><<a href="mailto:mail@milianw.de" target="_blank">mail@milianw.de</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On Tuesday 16 July 2013 11:30:22 Andreas Pakulat wrote:<br>
> Hi,<br>
><br>
> On Mon, Jul 15, 2013 at 10:52 AM, Milian Wolff <<a href="mailto:mail@milianw.de">mail@milianw.de</a>> wrote:<br>
> > Hey guys,<br>
> ><br>
> > the handling of CMAKE_BUILD_TYPE=debugfull in FindKDE4Internal.cmake is<br>
> > guarded by `if (CMAKE_COMPILER_IS_GNUCXX)` so it won't work if you use<br>
> > clang.<br>
> > It gets worse if you use ccache as well, i.e. via<br>
><br>
> Hmm, interesting, I just noticed that Debian seems to have dropped support<br>
> for Debugfull completely, only 1 reference in the file and that is in a<br>
> comment.<br>
><br>
> I'd say an "OR CMAKE_CXX_COMPILER_ID MATCHES 'clang'" should be sufficient,<br>
> the cmake manual hints towards the compiler id being set to 'clang' (in a<br>
> more or less unrelated part, but the other mentioned id's match whats in<br>
> that variable on the corresponding compilers). So the line should be<br>
><br>
> if (CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES 'clang' )<br>
<br>
</div>OK, but the FindKDE4Internal contains more such checks and everywhere I wonder<br>
whether clang shouldn't do the same... I.e. more pedantic linker flags,<br>
determining include dirs, fPIE, visibility, etc. pp. - I actually wonder why I<br>
can compile stuff with clang at all ;-)<br></blockquote><div><br></div><div style>IMO, wherever it makes sense Clang should be treated as being compatible to gcc. I don't know Clang good enough to say wether this is the case for all arguments that FindKDE4Internal adds, but wherever the arguments do the same thing with Clang the check should be if( gcc OR clang) basically.</div>
<div><br></div><div style>Andreas</div></div></div></div>