<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40">

<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 11 (filtered medium)">
<style>
<!--
 /* Font Definitions */
 @font-face
        {font-family:Garamond;
        panose-1:2 2 4 4 3 3 1 1 8 3;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";}
h1
        {margin-top:12.0pt;
        margin-right:0in;
        margin-bottom:12.0pt;
        margin-left:.3in;
        text-align:center;
        text-indent:-.3in;
        page-break-after:avoid;
        mso-list:l0 level1 lfo2;
        border:none;
        padding:0in;
        font-size:14.0pt;
        font-family:Garamond;
        text-transform:uppercase;
        letter-spacing:1.0pt;}
h1.CxSpFirst
        {mso-style-type:export-only;
        margin-top:12.0pt;
        margin-right:0in;
        margin-bottom:0in;
        margin-left:.3in;
        margin-bottom:.0001pt;
        text-align:center;
        text-indent:-.3in;
        page-break-after:avoid;
        mso-list:l0 level1 lfo2;
        border:none;
        padding:0in;
        font-size:14.0pt;
        font-family:Garamond;
        text-transform:uppercase;
        letter-spacing:1.0pt;}
h1.CxSpMiddle
        {mso-style-type:export-only;
        margin-top:0in;
        margin-right:0in;
        margin-bottom:0in;
        margin-left:.3in;
        margin-bottom:.0001pt;
        text-align:center;
        text-indent:-.3in;
        page-break-after:avoid;
        mso-list:l0 level1 lfo2;
        border:none;
        padding:0in;
        font-size:14.0pt;
        font-family:Garamond;
        text-transform:uppercase;
        letter-spacing:1.0pt;}
h1.CxSpLast
        {mso-style-type:export-only;
        margin-top:0in;
        margin-right:0in;
        margin-bottom:12.0pt;
        margin-left:.3in;
        text-align:center;
        text-indent:-.3in;
        page-break-after:avoid;
        mso-list:l0 level1 lfo2;
        border:none;
        padding:0in;
        font-size:14.0pt;
        font-family:Garamond;
        text-transform:uppercase;
        letter-spacing:1.0pt;}
h2
        {margin-top:12.0pt;
        margin-right:0in;
        margin-bottom:3.0pt;
        margin-left:0in;
        page-break-after:avoid;
        font-size:14.0pt;
        font-family:Arial;
        font-style:italic;}
p.MsoBodyText, li.MsoBodyText, div.MsoBodyText
        {margin-top:0in;
        margin-right:0in;
        margin-bottom:6.0pt;
        margin-left:0in;
        font-size:12.0pt;
        font-family:"Times New Roman";}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {color:purple;
        text-decoration:underline;}
p.Heading2, li.Heading2, div.Heading2
        {margin-top:12.0pt;
        margin-right:0in;
        margin-bottom:9.0pt;
        margin-left:0in;
        text-indent:0in;
        line-height:200%;
        page-break-after:avoid;
        mso-list:l0 level2 lfo2;
        font-size:12.0pt;
        font-family:Garamond;
        text-transform:uppercase;
        letter-spacing:.5pt;
        font-weight:bold;}
span.EmailStyle19
        {mso-style-type:personal-compose;
        font-family:Arial;
        color:windowtext;}
@page Section1
        {size:8.5in 11.0in;
        margin:1.0in 1.25in 1.0in 1.25in;}
div.Section1
        {page:Section1;}
 /* List Definitions */
 @list l0
        {mso-list-id:1072316217;
        mso-list-template-ids:1601077778;}
@list l0:level1
        {mso-level-style-link:"Heading 1";
        mso-level-text:%1;
        mso-level-tab-stop:.3in;
        mso-level-number-position:left;
        margin-left:.3in;
        text-indent:-.3in;}
@list l0:level2
        {mso-level-style-link:"Heading  2";
        mso-level-text:"%1\.%2";
        mso-level-tab-stop:.4in;
        mso-level-number-position:left;
        margin-left:.4in;
        text-indent:-.4in;}
@list l0:level3
        {mso-level-text:"%1\.%2\.%3";
        mso-level-tab-stop:.5in;
        mso-level-number-position:left;
        margin-left:.5in;
        text-indent:-.5in;}
@list l0:level4
        {mso-level-text:"%1\.%2\.%3\.%4";
        mso-level-tab-stop:.6in;
        mso-level-number-position:left;
        margin-left:.6in;
        text-indent:-.6in;}
@list l0:level5
        {mso-level-text:"%1\.%2\.%3\.%4\.%5";
        mso-level-tab-stop:.7in;
        mso-level-number-position:left;
        margin-left:.7in;
        text-indent:-.7in;}
@list l0:level6
        {mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6";
        mso-level-tab-stop:.8in;
        mso-level-number-position:left;
        margin-left:.8in;
        text-indent:-.8in;}
@list l0:level7
        {mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\.%7";
        mso-level-tab-stop:.9in;
        mso-level-number-position:left;
        margin-left:.9in;
        text-indent:-.9in;}
@list l0:level8
        {mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\.%7\.%8";
        mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        margin-left:1.0in;
        text-indent:-1.0in;}
@list l0:level9
        {mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\.%7\.%8\.%9";
        mso-level-tab-stop:1.1in;
        mso-level-number-position:left;
        margin-left:1.1in;
        text-indent:-1.1in;}
ol
        {margin-bottom:0in;}
ul
        {margin-bottom:0in;}
-->
</style>

</head>

<body lang=EN-US link=blue vlink=purple>

<div class=Section1>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>Dear CMake gurus:<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>&nbsp; First of all, thank you for creating CMake. After
struggling with cross platform builds for a decade, CMake has solved all my essential
requirements for cross platform Windows/Linux software development.<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>On to the questions: I have a large and diverse software/hardware
tree to manage (&gt;75 projects of one form or another). I started porting this
tree to CMake from the top down and bringing in one project at a time. The
problem I am now having is that for the Windows .NET IDE side, the .NET solution
becomes hard to comprehend due to its size. Except for a small handful, many of
these projects use only small subsets of the software components in the tree. The
majority of the time these projects can move along without knowing or interacting
much with other projects that do not share their sw components. So the first
question is if there is a way to siphon off a subset of the build? Given the
fact that the build process is defined in a hierarchy of fixed-name CMakeLists.txt
files, I am confused how to &#8216;overlay&#8217; separate build processes to
simplify the usage of more isolated projects.<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>The second question is adjoined: How do I get the test
suites to not show up in the IDE solution but still be run during the RUN_TESTS
build? In our case, all sw components have a test suite associated with them. Right
now, these tests end up as separate projects in the build, and are seriously
cluttering up the solution. Reading the CTest chapter in the book, it states
that building the test programs separately from the main build, it should
become more scalable. It is clear that I am missing something since excluding
them from the build process would imply that there is a secondary handle of
some sort to trigger the testing which is the same problem I am having as
indicated by the first question. <o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>Can anyone enlighten me? I am using cmake 2.6 patch 6 and 7.<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>Theo<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face=Arial><span style='font-size:10.0pt;
font-family:Arial'>Stillwater Supercomputing, Inc.<o:p></o:p></span></font></p>

</div>

</body>

</html>