<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Mon, Nov 3, 2014 at 10:54 AM, Leon Pollak <span dir="ltr"><<a href="mailto:leonp@plris.com" target="_blank">leonp@plris.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span class="">On Sunday 19 October 2014 20:37:00 Aleix Pol wrote:<br>
</span><div><div class="h5">> On Sun, Oct 19, 2014 at 10:42 AM, Leon Pollak <<a href="mailto:leonp@plris.com">leonp@plris.com</a>> wrote:<br>
> > Hello, all.<br>
> > My previous mail (attached below) was not answered, so I continued to<br>
> > experiment.<br>
> > My experiments showed that none of the definitions made in the<br>
> > CMakeLists.txt<br>
> > file are not recognized by the parser.<br>
> > I have no idea why and how BUILD_PPC gets defined, no visible reason. I<br>
> > tried<br>
> > tochange its place to be the first - no influence.<br>
> ><br>
> > So, if nobody comments on this, I am going to fill report in<br>
> > bugs.kde.org...<br>
> > Thanks.<br>
> > -----------------------------------------------------------------------<br>
> > It seems that code browser/parser does not see correctly the definitions<br>
> > dependent on the variables defined in cmake file. I understand the<br>
> > complexity<br>
> > of the issue next to impossible.<br>
> > Still, may be kdevelop gurus may be so kind to suggest something to solve<br>
> > this?<br>
> > ---<br>
> > I have the same code for several different architectures. Thus I have<br>
> > build<br>
> > dirs for each CPU type named as BuildARM, BuildPPC, BuildPC, etc...<br>
> > My cmake.txt contains:<br>
> ><br>
> > #define build type XXX: /Projects/CSU/BuildXXX<br>
> > string(REPLACE "/" ";" LIST ${CMAKE_BINARY_DIR})<br>
> > list(GET LIST 3 BUILD_TYPE)<br>
> > if (BUILD_TYPE MATCHES BuildPC)<br>
> > add_definitions(-DBUILD_PC)<br>
> > elseif (BUILD_TYPE MATCHES BuildARM2)<br>
> > add_definitions(-DBUILD_ARM2)<br>
> > elseif (BUILD_TYPE MATHES BuildPPC)<br>
> > add_definitions(-DBUILD_PPC)<br>
> > elseif (BUILD_TYPE MATCHES BuildARM)<br>
> > add_definitions(-DBUILD_ARM)<br>
> > endif()<br>
> ><br>
> ><br>
> > There is also main system.h file which contains:<br>
> ><br>
> > #ifdef BUILD_PC<br>
> > #define BUILD_ARM<br>
> > #endif<br>
> ><br>
> > #ifdef BUILD_ARM<br>
> > #include "system-DVRM.h"<br>
> > #elif defined(BUILD_PPC)<br>
> > #include "system-TDR.h"<br>
> > #elif defined(BUILD_ARM2)<br>
> > #include "system-HDVR.h"<br>
> > #endif<br>
> > #if !defined(SYS_CPU)<br>
> > #error No CPU definition<br>
> > #endif<br>
> ><br>
> > (for accuracy - I debug some code in PC for different configurations, in<br>
> > the<br>
> > example - for ARM).<br>
> ><br>
> > What is unclear to me, that parser for some reason ALWAYS(!!!) thinks that<br>
> > only variable BUILD_PPC is defined! Independent of what configuration is<br>
> > chosen, it always thinks that BUILD_PPC is defined.<br>
> > I tried to delete all ~.cache and ~.ccashe directories, rebuild DB,<br>
> > recompile<br>
> > - nothing helps! Only BUILD_PPC is defined all the time.<br>
> ><br>
> > Is there any way to get out of this?<br>
> ><br>
> > Many thanks ahead.<br>
> > --<br>
> > Leon<br>
><br>
> Hi Leon,<br>
> Sorry for taking so much time to answer.<br>
><br>
> In general, the kdev-cmake parser should get this information from the<br>
> CMakeCache. Also this should work.<br>
><br>
> Can you provide a (small) test project I can try with?<br>
><br>
> Thanks,<br>
> Aleix<br>
</div></div><span class="">Hello, Aleix.<br>
Now my turn to be sorry for the delay...:-)<br>
<br>
I created the test example with only my *.h files and "hello world" main.cpp.<br>
</span>Please, find the example at:<br>
<a href="ftp://www.plris.com/pub/Test.tgz" target="_blank">ftp://www.plris.com/pub/Test.tgz</a><br>
<div class=""><div class="h5"><br>
The example behaves a bit different, but still, not correct IMHO:<br>
None of the BUILD_XXX defines are not seen and SYS_CPU is unknown too.<br>
This is independent on which build type do I choose from the cmake menu in<br>
project's options.<br>
<br>
Can I be of any more help?<br>
--<br>
Leon<br>
</div></div></blockquote></div><br></div><div class="gmail_extra">Hi Leon,<div>I've been trying to reproduce your bug and couldn't because your code relies on the fact that the source code needs to be in /Projects/something/BuildXXX.</div><div><br></div><div>I suggest you to:</div><div>1. point me to the bug report that describes this issue</div><div>2. look yourself at the output in stdout, you need to activate "kdevelop (cmake support)" in kdebugdialog.</div><div><br></div><div>Aleix</div></div></div>