<!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.2900.2873" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY>
<DIV><FONT face=Arial size=2>I wrote a custom generator to do this. You must get
the source files from the CVS.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>(1) You can disable the custom build rules by
redefining :</FONT></DIV>
<DIV><FONT face="Courier New" size=2>void
cmLocalVisualStudio7GeneratorMP::AddVCProjBuildRule(cmTarget&
tgt)</FONT></DIV>
<DIV><FONT face="Courier New" size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>(2) For the source control part, a variable is
set in our low-level CMakeLists.txt files like this :</FONT></DIV>
<DIV><FONT face="Courier New" size=2>SET(SOURCE_CONTROL "MSSCCI:NXN alienbrain"
"Projectname")</FONT></DIV>
<DIV><FONT face=Arial size=2>Then in the custom generator it generates the
relative path to Projectname in order to bind the files. It works with
Alienbrain, only the files are binded and not the project files (which should
not be binded, only the CMakeLists.txt has to).</FONT></DIV>
<DIV><FONT face=Arial size=2>Note that the "SET" command is not the best choice,
since the error detection is performed during the generation process only (when
you click on OK button). </FONT></DIV>
<DIV><FONT face=Arial size=2>With a custom command the error can be detected at
the parsing time (Configure button). </FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2>Cheers,</FONT></DIV>
<DIV><FONT face=Arial size=2>Sylvain</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>----- Original Message ----- </FONT></DIV>
<DIV><FONT face=Arial size=2>From: "David Cole" <</FONT><A
href="mailto:david.cole@kitware.com"><FONT face=Arial
size=2>david.cole@kitware.com</FONT></A><FONT face=Arial
size=2>></FONT></DIV>
<DIV><FONT face=Arial size=2>To: "Sylvain Benner" <</FONT><A
href="mailto:benner@virtools.com"><FONT face=Arial
size=2>benner@virtools.com</FONT></A><FONT face=Arial size=2>></FONT></DIV>
<DIV><FONT face=Arial size=2>Cc: <</FONT><A
href="mailto:cmake@cmake.org"><FONT face=Arial
size=2>cmake@cmake.org</FONT></A><FONT face=Arial size=2>></FONT></DIV>
<DIV><FONT face=Arial size=2>Sent: Monday, June 05, 2006 1:45 PM</FONT></DIV>
<DIV><FONT face=Arial size=2>Subject: Re: [CMake] Question about Windows
support.</FONT></DIV>
<DIV><FONT face=Arial><BR><FONT size=2></FONT></FONT></DIV><FONT face=Arial
size=2>> How did you (1) disable the custom build rules for the
CMakeLists.txt <BR>> files and (2) add source control...? Do you do it by
hand after running <BR>> CMake or do you have a script that does it? Would
you mind posting <BR>> specific answers back to the list so that other Visual
Studio users can <BR>> benefit from your suggestions?<BR>> <BR>>
Thanks,<BR>> David<BR>> <BR>> <BR>> Sylvain Benner wrote:<BR>>
<BR>>> I've posted a way to handle precompiled headers the 1st June. You
<BR>>> should find it if you browse for the threads of june 2006, the name
of <BR>>> the thread is "Precompiled Headers".<BR>>> I don't know if
it's a good way to handle it but my main concern was <BR>>> to do a
CMakeLists.txt that is friendly to edit, quickly <BR>>> understandable and
with the possibility to add new properties easily, <BR>>> so I tried to it
this way.<BR>>><BR>>> A side note : If you are using CMake with a
lot of projects in VS IDE <BR>>> I suggest to disable custom build rules
for the CMakeLists.txt files <BR>>> and add the CMake GUI to the external
tools. The developpers use the <BR>>> front-end when they need to do it by
calling the GUI from the tools <BR>>> menu (I added source control so they
should know when they check out a <BR>>> CMakeLists.txt), it speeds up the
compilation time a bit and the <BR>>> "reload" popup will not interfere
with the compilation (it needs to <BR>>> cancel the compilation every time
and rerun it) which leads to a much <BR>>> more comfortable work
environment.<BR>>><BR>>> Sylvain<BR>>> ----- Original Message
----- From: "Bennett Smith" <</FONT><A href="mailto:idvlpsw@gmail.com"><FONT
face=Arial size=2>idvlpsw@gmail.com</FONT></A><FONT face=Arial
size=2>><BR>>> To: "William A. Hoffman" <</FONT><A
href="mailto:billlist@nycap.rr.com"><FONT face=Arial
size=2>billlist@nycap.rr.com</FONT></A><FONT face=Arial size=2>><BR>>>
Cc: <</FONT><A href="mailto:cmake@cmake.org"><FONT face=Arial
size=2>cmake@cmake.org</FONT></A><FONT face=Arial size=2>><BR>>> Sent:
Friday, June 02, 2006 7:41 PM<BR>>> Subject: Re: [CMake] Question about
Windows support.<BR>>><BR>>><BR>>>> Thank you for the
reply. This sounds very encouraging! I have<BR>>>> ordered
a copy of the book from Kitware about CMake. In order to
more<BR>>>> quickly come up to speed on how to do the things listed in
my original<BR>>>> post can you suggest any resources? Thus far
in my searching of the<BR>>>> mailing list archive I have not found
answers.<BR>>>><BR>>>> Cheers<BR>>>><BR>>>>
-- Bennett<BR>>>><BR>>>> On 6/2/06, William A. Hoffman
<</FONT><A href="mailto:billlist@nycap.rr.com"><FONT face=Arial
size=2>billlist@nycap.rr.com</FONT></A><FONT face=Arial size=2>>
wrote:<BR>>>><BR>>>>> At 12:38 PM 6/2/2006, Bennett Smith
wrote:<BR>>>>> >Hi,<BR>>>>> ><BR>>>>>
>I'm just starting to learn cmake, and am wondering what the level
of<BR>>>>> >on-going support is for the Windows platform. A
couple things that I<BR>>>>> >am hoping cmake can do
are:<BR>>>>> ><BR>>>>> >1. Handle generation of
library and executable targets with different<BR>>>>> >names for
debug and release configurations.<BR>>>>><BR>>>>> This
is done in CMake 2.4.2<BR>>>>><BR>>>>> >2. Handle
pre-compiled header files with Visual
C++.<BR>>>>><BR>>>>> This has been done, but is not
directly supported.<BR>>>>><BR>>>>><BR>>>>>
>3. Handle COM *.idl files and the invocation of
MIDL.<BR>>>>><BR>>>>> This can be done but is not
directly supported.<BR>>>>><BR>>>>> >4. Handle
manifest files in association with
executables.<BR>>>>><BR>>>>> CMake 2.4.2 does
this.<BR>>>>><BR>>>>><BR>>>>> >I have not
been able to find any discussion and/or examples of how<BR>>>>>
>cmake addresses these issues. I have searched through the
bug<BR>>>>> >database and it looks like there are some issues
related to the above<BR>>>>> >mentioned items. Some of
these issues were posted back in 2004, and<BR>>>>> >it doesn't
look like anyone has been actively working on
them.<BR>>>>><BR>>>>> The bug tracker is in serious need
of clean up.....<BR>>>>><BR>>>>><BR>>>>>
>In general, are people using cmake for Windows projects? Who are
the<BR>>>>> >active contributors to the windows specific aspects
of cmake? Can<BR>>>>> >anyone offer some historic
perspective on how well the Windows<BR>>>>> >platform is
supported by cmake in general?<BR>>>>><BR>>>>> Windows
Visual Studio is one of the major platforms for CMake, and
is<BR>>>>> very actively
supported.<BR>>>>><BR>>>>><BR>>>>>
-Bill<BR>>>>><BR>>>>><BR>>>><BR>>>><BR>>>>
-- <BR>>>> -- <BR>>>> Bennett Smith<BR>>>>
iDevelopSoftware, Inc.<BR>>>>
_______________________________________________<BR>>>> CMake mailing
list<BR>>>> </FONT><A href="mailto:CMake@cmake.org"><FONT face=Arial
size=2>CMake@cmake.org</FONT></A><BR><FONT face=Arial size=2>>>>
</FONT><A href="http://www.cmake.org/mailman/listinfo/cmake"><FONT face=Arial
size=2>http://www.cmake.org/mailman/listinfo/cmake</FONT></A><BR><FONT
face=Arial size=2>>>><BR>>><BR>>>
_______________________________________________<BR>>> CMake mailing
list<BR>>> </FONT><A href="mailto:CMake@cmake.org"><FONT face=Arial
size=2>CMake@cmake.org</FONT></A><BR><FONT face=Arial size=2>>> </FONT><A
href="http://www.cmake.org/mailman/listinfo/cmake"><FONT face=Arial
size=2>http://www.cmake.org/mailman/listinfo/cmake</FONT></A><BR><FONT
face=Arial size=2>>><BR>></FONT></BODY></HTML>