Project config and KMessageBox' dontAskAgainName

Vladimir Prus ghost at cs.msu.su
Fri Jan 20 14:08:04 UTC 2006


On Friday 20 January 2006 15:53, Jens Dagerbo wrote:
> On 1/20/06, Hamish Rodda <rodda at kde.org> wrote:
> > If you're going to add this feature I think you should just run the make
> > command whenever it's indicated, regardless of detecting changes or not. 
> > It would be difficult enough to emulate in in the build plugin, let alone
> > the debugger.  For most smaller projects a redundant make command is
> > pretty quick to execute.
>
> Hang on. Are you really suggesting to run 'make' every time the
> debugger is started to make sure the  binary is up-to-date??
>
> This would add seconds to the debugger startup time even for a "hello
> world" program. Starting the debugger on a project the size of
> KDevelop's codebase would be something you would do your utmost to
> avoid - we could be talking minutes.
>
> I haven't looked at how it's implemented, but doesn't the build
> manager already attempt to keep track of the codebase state, and only
> rebuild if "needed"?

Not quite. Existing project manages have method 'isDirty' (ehm.. 
copy-pasted!), that compares timestamps of files with the timestamps they had 
last time build finished successfully, or something like that.

That method is used by "Execute" command. And just to be sure, project 
managers save all open files before the check. There are possible variations, 
like connecting to "file saved" signal but anyway I think it's possible to 
avoid 'make' invocations in most cases. 

I too don't think unconditionally running 'make' is optimal performance-wise. 
We can get false make invocation when you edited non-source file, or file 
that's no used by the debugged target, but to detect such cases a 
programmatic interface to the build system is needed, and no existing one has 
it.


- Volodya





More information about the KDevelop-devel mailing list