[Cmake] Dependency handling problems with 1.8

Ken Martin ken . martin at kitware . com
Thu, 2 Oct 2003 13:07:51 -0400


> > It will cause more make invocations but either solution will cause
> > that.
>=20
> Not really. What I suggested would not cause more invocations; it'll
> just do them in a different (correct) order.
>=20

The current approach is limited to N make invocations where N is the =
number
of directories. Your suggestion would lead to up to M invocations where =
M is
the number of targets. If the ordering is correct then M would be N.=20
=20
> Yes. I don't think there is any real way of supporting circular
> dependencies in a cross-platform way. For example, can Windows DLLs
> even support circular dependencies? However, linearizing the
> dependency graph, breaking cycles, and inserting an extra target to
> account for the circularity, will get as close as can be expected, =
IMO.

Windows DLL do support circular linking but it is a two step process.
Generate the exports for all the dlls, then generate the dlls =
themselves. I
don't personally like circular libraries but some use them.

After discussing some more over here I think we are going to go with the
basic idea you suggested. We will do it in CVS for the next release of =
CMake
(2.0?) For 1.8.2 we will use a variable to suppress the warning as =
desired.
I like the idea of the extra targets.

- Ken