QMake-Parser based Buildtool support

Andreas Pakulat apaku at gmx.de
Sun Sep 24 00:07:04 UTC 2006


Hi everybody,

I'm "opening" the kdevelop-qmake4 branch for testing. Everybody who has
a couple of qmake projects, please compile and install that version and
try to see wether the projects are properly parsed and if the new
support is usable. (I hope I got all crashes out already, but make sure
you got copies from your project files)

Before I tell you all the new features, 2 important bugs that I may not
fix in the next 2 or 3 days:

- Crash on closing. This happens in the Scope destructor and I currently
  don't understand why. So please don't try to use this for production
  yet
- I need to think about how to show subproject dirs that are excluded
  from the SUBDIRS variable in a certain scope. Currently they are shown
  as if they were included, but of course this has to change. Also they
  shouldn't be displayed at all, so there's another bug there too

Now a couple of things that are better than before:

- no messing up of project files, at least not to the extent that the
  existing filebuffer does. With the parser I do not touch existing
  newlines or comments, I try to reuse existing variable declarations as
  much as possible.
- a real tree of project files, scopes and include files. The overview
  now displays project files, simple scopes and functions scopes in
  exactly the hierarchy they are in the files. Also include files are
  recognized and parsed
- disabling of subdirs and files in scopes. You can add/remove files and
  subprojects inside scopes of a certain project file, making it much
  easier to use cross-platform project files, that include different
  sources for different platforms

Can't think of anything else, atm (it's getting late).

As akademy just started, I guess I won't get too much feedback until the
next weekend, thus my plans are to merge these changes at earliest in 2
weeks from now. Of course this depends on how many bugs are found and
how many I can fix until then. In any case the merge should be done
before tagging beta3, or not at all leaving the work as an exercise for
me to create the qmake support for kdev4 ;)

Andreas

-- 
Your reasoning is excellent -- it's only your basic assumptions that are wrong.




More information about the KDevelop-devel mailing list