A few questions about project manager
mail at milianw.de
Thu Mar 29 17:50:41 UTC 2012
On Friday 23 March 2012 12:41:03 Alexandre Courbot wrote:
> Hi KDevers,
> I finally found some time recently to start working on that Linux
> kernel project manager plugin (shamelessly inspired by the custom
> build manager) I talked about some months ago, and things are going
> well so far - to the point I am actually using it at work:
> With the right set of files to parse, right definitions and right
> include paths, KDevelop is actually doing wonders on kernel code. It
> is by far the most comfy kernel dev environment I have been using so
> far. There are a few things to improve with the parser and
> make-resolver and I hope to address them as well - unfortunately the
> latest patch of mine seems to have introduced issues and needed to be
> reverted. :/
> Anyway, things are working but it is still hacky and even after
> looking at the custom build plugin and project manager interfaces I
> have a few darks corners for which I would be grateful to receive some
> guidance. In particular:
> * I need to reparse the whole project whenever the its configuration
> changes because some include directories may have added/removed. How
> can I achieve that? Right now the parsing of the kernel configuration
> is done by and overload of the import() method of
> AbstractFileManagerPlugin, which is definitely not the right place.
> More generally, how can I trigger a reparsing the whole project or
> some of its files?
You can connect to the KDirWatch returned by projectWatcher. When it emits
dirty() for your Makefile, trigger a reload?
Also, you should try to cleanup the code such that it does not call
projectClosing(project); in import() - that looks hackish/wrong. instead,
reload the current project such that it removes obsolete files and adds new
stuff, but keeps previously added things that are still valid. somewhat more
complicated, but much better I think. (project state is kept that way e.g.)
> * Until recently, my project configuration dialog had two panes: the
> one I wrote, and the one for make that allowed to set things like the
> number of parallel processes for compilation. However, the make pane
> is gone when I compile against the latest KDevelop git. Any idea about
> how I can get it back?
add org.kdevelop.IMakeBuilder to X-KDevelop-IRequired in your .desktop file -
if that does not work, ping me and I'll fix it.
> More questions will probably follow as things progress. :) But
> considering the low amount of effort I invested so far in this plugin,
> the returns in term of usability are already huge. KDevelop rocks.
mail at milianw.de
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 198 bytes
Desc: This is a digitally signed message part.
More information about the KDevelop-devel