On Wed, 27 Jan 2010 13:57:22 +0200
Jussi Pakkanen <[email protected]> wrote:
> I think I see your concern now. When CMake does the library
> resolvation part it does it itself (i.e. not with Make) and this is
> always done with a single process and looking at the global state. The
> makefiles it produces are recursive, but they are generated with full
> info similar to the way the single process GNU Make thing works.
Not quite. Consider the following scenario:
Library libfoo linked from objects compiled from foo1.cxx, foo2.cxx,
foo3.cxx ...
Library libbar linked from objects compiled from bar1.cxx, bar2.cxx, ...
and is linking against libfoo.
With full deps in one process, bar{1-99}.cxx can be compiled right from
the start, because only the linking of libbar has to be done after the
linking of libfoo. A recursive makefile (one make per lib) makes the
deps a lot rougher: It will only start to compile bar{1-99}.cxx and
friends after it compiled all foo{1-99}.cxx and linked libfoo.
This can be prevented by reordering the makefiles (one for compiling,
one for linking), but thats getting ugly fast if done manually.
Best Regards,
Bjoern
--
===========================================================================
Sitz der Gesellschaft:
Sun Microsystems GmbH, Sonnenallee 1, D-85551 Kirchheim-Heimstetten
Amtsgericht München: HRB 161028
Geschäftsführer: Thomas Schröder, Wolfgang Engels
Vorsitzender des Aufsichtsrates: Martin Häring
===========================================================================
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]