[Cmake] Automated library dependencies

Miller, James V (Research) millerjv at crd . ge . com
Tue, 21 Jan 2003 09:40:54 -0500


This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.

------_=_NextPart_001_01C2C15A.2BE73094
Content-Type: text/plain;
	charset="iso-8859-1"

We just stumbled across an issue that I think is related to the automated library dependency checks. 
 
It looks as though when library A links against library B, that CMake also links library A against
everything that library B linked against.  This saves the library writer from tracking down and
maintaining all the library dependencies.
 
What does not seem to be happening automatically is the propagation of the LINK_DIRECTORIES that were
used to build library B into the LINK_DIRECTORIES that are needed for library A.  So if library B
uses an external package, library A will also link to that external package but it won't know where
to find that external package.  (I assume this is only a problem when library A is not in a
subdirectory of library B).
 
Should the LINK_DIRECTORIES also be propagated from library B to library A.  It is basically the same
argument for why the link libraries are propagated from library B to library A.
 

Jim Miller 
_____________________________________
Visualization & Computer Vision
GE Research
Bldg. KW, Room C218B
P.O. Box 8, Schenectady NY 12301

millerjv at research . ge . com <mailto:millerjv at research . ge . com> 

james . miller at research . ge . com
(518) 387-4005, Dial Comm: 8*833-4005, 
Cell: (518) 505-7065, Fax: (518) 387-6981 

 <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

------_=_NextPart_001_01C2C15A.2BE73094
Content-Type: text/html;
	charset="iso-8859-1"

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">


<META content="MSHTML 6.00.2715.400" name=GENERATOR></HEAD>
<BODY>
<DIV><SPAN class=850563314-21012003><FONT size=2>We just stumbled across an 
issue that I think is related to the automated library dependency 
checks.&nbsp;</FONT></SPAN></DIV>
<DIV><SPAN class=850563314-21012003></SPAN>&nbsp;</DIV>
<DIV><SPAN class=850563314-21012003><FONT size=2>It looks as though when library 
A links against library B, that&nbsp;CMake also&nbsp;links library A 
against&nbsp;everything that library B linked against.&nbsp; This saves the 
library writer&nbsp;from tracking down and maintaining all the library 
dependencies.</FONT></SPAN></DIV>
<DIV><SPAN class=850563314-21012003></SPAN>&nbsp;</DIV>
<DIV><SPAN class=850563314-21012003><FONT size=2>What does not seem to 
be&nbsp;happening automatically is the propagation of&nbsp;the 
LINK_DIRECTORIES&nbsp;that were&nbsp;used to build library B into the 
LINK_DIRECTORIES that are needed for library A.&nbsp; So if library B uses 
an&nbsp;external package, library A will&nbsp;also link to that&nbsp;external 
package but it won't know where to find that external package.&nbsp; (I assume 
this is only&nbsp;a problem when library A is not in a subdirectory of library 
B).</FONT></SPAN></DIV>
<DIV><SPAN class=850563314-21012003></SPAN>&nbsp;</DIV>
<DIV><SPAN class=850563314-21012003><FONT size=2>Should the LINK_DIRECTORIES 
also be propagated from library&nbsp;B to library A.&nbsp; It is 
basically&nbsp;the same argument for why the link libraries are propagated from 
library B to library A.</FONT></SPAN></DIV>
<DIV><SPAN class=850563314-21012003></SPAN><FONT size=2></FONT>&nbsp;</DIV>
<DIV class=Section1>
<P style="MARGIN: 0in 0in 0pt"><B><SPAN 
style="COLOR: navy; FONT-FAMILY: 'Comic Sans MS'">Jim Miller</SPAN></B> 
<BR><B><I><SPAN 
style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Arial">_____________________________________</SPAN></I></B><BR><EM><SPAN 
style="FONT-SIZE: 7.5pt; COLOR: black; FONT-FAMILY: Arial">Visualization &amp; 
Computer Vision</SPAN></EM><I><SPAN 
style="FONT-SIZE: 7.5pt; COLOR: black; FONT-FAMILY: Arial"><BR><EM>GE 
Research</EM><BR><EM>Bldg. KW, Room C218B</EM><BR><EM>P.O. Box 8, Schenectady NY 
12301</EM><BR><BR></SPAN></I><EM><U><SPAN 
style="FONT-SIZE: 7.5pt; COLOR: blue"><A 
href="mailto:millerjv at research . ge . com">millerjv at research . ge . com</A></SPAN></U></EM></P>
<P style="MARGIN: 0in 0in 0pt"><EM><U><SPAN 
style="FONT-SIZE: 7.5pt; COLOR: blue">james . miller at research . ge . com</SPAN></U></EM><BR><I><SPAN 
style="FONT-SIZE: 7.5pt; COLOR: black; FONT-FAMILY: Arial">(518) 387-4005, Dial 
Comm: 8*833-4005, </SPAN></I><BR><I><SPAN 
style="FONT-SIZE: 7.5pt; COLOR: black; FONT-FAMILY: Arial">Cell: (518) 505-7065, 
Fax: (518) 387-6981</SPAN></I> </P>
<P class=MsoNormal>&nbsp;<?xml:namespace prefix = o ns = 
"urn:schemas-microsoft-com:office:office" /><o:p></o:p></P></DIV>
<DIV>&nbsp;</DIV></BODY></HTML>

------_=_NextPart_001_01C2C15A.2BE73094--