patch: c/cxxflags for static libraries

Leo Savernik l.savernik at aon.at
Wed Jul 19 20:04:13 CEST 2006


Am Mittwoch, 19. Juli 2006 17:06 schrieb Matt Broadstone:
> What I am referring to is that when I'm working on khtml (in this
> example) and make a change to say dom/, in my build dir I can cd to
> kdelibs/build/khtml/dom and build from that directory instead of the
> khtml directory and it will only rebuild the dom lib 

Under autotools, you'd have got a libdom.a convenience lib by that time. So no 
other files are recompiled than those this lib depends onto. So far so good.

> and then link 
> things accordingly. 

And now it gets interesting.
Did you use automake in this step formerly (i. e. "make all" in khtml/)? If 
yes, it'll do dependency checking and *will* recompile all affected files, 
will rebuild all changed convenience libs and only then will relink 
libkhtml.so.

So unless you did fancy stuff the default way to build things did never ever 
relieve one from rebuilding necessary dependencies under autotools.

> Perhaps it should be the case when I make the 
> change and build from khtml/, but it doesn't work that way - when I
> build from khtml in that example it rebuilds all of khtml. That's all
> I'm trying to get around...

The general problem in khtml is that it's tightly coupled, i. e. nearly every 
header includes nearly every other header, transitively. So what may look 
like a total recompile could simply be a large set of files affected by 
transitive includes.

OTOH, if cmake is really rebuilding *everything*, it looks like more a bug in 
the buildsystem.

mfg
	Leo


More information about the Kde-buildsystem mailing list