<font size=2 face="sans-serif">Well, Michael is right, it does work right
in Linux. I guess the nature of the question changes slightly then to become,
what I'm I not doing right for Visual Studio 9 2008, but that works in
Linux?</font>
<br>
<br><font size=2 face="sans-serif">-------------------------------------------------------------<br>
Aaron Wright</font>
<br>
<br>
<br>
<br>
<table width=100%>
<tr valign=top>
<td><font size=1 color=#5f5f5f face="sans-serif">From:</font>
<td><font size=1 face="sans-serif">Michael Wild <themiwi@gmail.com></font>
<tr valign=top>
<td><font size=1 color=#5f5f5f face="sans-serif">To:</font>
<td><font size=1 face="sans-serif">Aaron_Wright@selinc.com</font>
<tr>
<td valign=top><font size=1 color=#5f5f5f face="sans-serif">Cc:</font>
<td><font size=1 face="sans-serif">CMake List <cmake@cmake.org></font>
<tr valign=top>
<td><font size=1 color=#5f5f5f face="sans-serif">Date:</font>
<td><font size=1 face="sans-serif">04/22/2010 01:29 PM</font>
<tr valign=top>
<td><font size=1 color=#5f5f5f face="sans-serif">Subject:</font>
<td><font size=1 face="sans-serif">Re: [CMake] Why is this custom command
run twice?</font></table>
<br>
<hr noshade>
<br>
<br>
<br><tt><font size=2>Works fine for me, sorry to say ;-)<br>
<br>
Michael<br>
<br>
On 22. Apr, 2010, at 17:49 , Aaron_Wright@selinc.com wrote:<br>
<br>
> Interesting. I had a little typo in the first example, here's another
one. <br>
> You only need a file called "generated.txt.in" next to the
CMakeLists.txt <br>
> file.<br>
> <br>
> <br>
> CMAKE_MINIMUM_REQUIRED(VERSION 2.8)<br>
> <br>
> PROJECT(quick_test)<br>
> <br>
> ADD_CUSTOM_COMMAND(<br>
> OUTPUT "${PROJECT_BINARY_DIR}/generated.txt"<br>
> COMMAND ${CMAKE_COMMAND} -E copy <br>
> "${PROJECT_SOURCE_DIR}/generated.txt.in" <br>
> "${PROJECT_BINARY_DIR}/generated.txt"<br>
> DEPENDS "${PROJECT_SOURCE_DIR}/generated.txt.in")<br>
> <br>
> ADD_CUSTOM_COMMAND(<br>
> OUTPUT "${PROJECT_BINARY_DIR}/generated_used.stamp"<br>
> COMMAND ${CMAKE_COMMAND} -E touch <br>
> "${PROJECT_BINARY_DIR}/generated_used.stamp"<br>
> DEPENDS "${PROJECT_BINARY_DIR}/generated.txt"<br>
> COMMENT "Using generated.txt")<br>
> <br>
> ADD_CUSTOM_TARGET(<br>
> ${PROJECT_NAME}<br>
> DEPENDS "${PROJECT_BINARY_DIR}/generated_used.stamp")<br>
> <br>
> <br>
> This builds ok the first time, but then change the "generated.txt.in"
and <br>
> run the build twice and the second time you'll see "Using generated.txt"
<br>
> again, which I don't want to see. I've tried VS 2008 and NMake, using
<br>
> CMake 2.8 and 2.8.1.<br>
> -------------------------------------------------------------<br>
> Aaron Wright<br>
> <br>
> <br>
> <br>
> <br>
> From:<br>
> Michael Wild <themiwi@gmail.com><br>
> To:<br>
> Aaron_Wright@selinc.com<br>
> Cc:<br>
> cmake@cmake.org<br>
> Date:<br>
> 04/21/2010 11:41 PM<br>
> Subject:<br>
> Re: [CMake] Why is this custom command run twice?<br>
> Sent by:<br>
> cmake-bounces@cmake.org<br>
> <br>
> <br>
> <br>
> <br>
> On 22. Apr, 2010, at 5:12 , Aaron_Wright@selinc.com wrote:<br>
> <br>
>> I'm trying to do something a little weird, and I'm almost there
but not <br>
>> quite. I'm trying to generate a file and then run a command based
on <br>
> that <br>
>> file. I only want the command to run when the file changes and
thus the <br>
>> generated file changes. Instead the first build I get both custom
<br>
> commands <br>
>> run, and then on a second build, the second custom command runs
again, <br>
>> which is not what I want. <br>
>> <br>
>> This is what I got (just an example):<br>
>> <br>
>> <br>
>> ADD_CUSTOM_COMMAND(<br>
>> OUTPUT "${PROJECT_BINARY_DIR}/generated.txt"<br>
>> COMMAND ${CMAKE_COMMAND} -E touch <br>
> "${PROJECT_BINARY_DIR}/generated.txt"<br>
>> DEPENDS "${PROJECT_SOURCE_DIR}/generated.txt")<br>
>> <br>
>> ADD_CUSTOM_COMMAND(<br>
>> OUTPUT "${PROJECT_BINARY_DIR}/generated_used.stamp"<br>
>> COMMAND ${CMAKE_COMMAND} -E touch <br>
>> "${PROJECT_BINARY_DIR}/generated_used.stamp"<br>
>> DEPENDS "${PROJECT_BINARY_DIR}/generated.txt"<br>
>> COMMENT "Using generated.txt")<br>
>> <br>
>> ADD_CUSTOM_TARGET(<br>
>> ${PROJECT_NAME}<br>
>> DEPENDS "${PROJECT_BINARY_DIR}/generated_used.stamp")<br>
>> <br>
>> <br>
>> What I'm I missing? Thanks<br>
> <br>
> Your example works fine for me (using CMake 2.8.1 and Unix Makefiles
<br>
> generator on Mac OS X 10.6.2).<br>
> <br>
> Michael<br>
> <br>
> _______________________________________________<br>
> Powered by </font></tt><a href=www.kitware.com><tt><font size=2>www.kitware.com</font></tt></a><tt><font size=2><br>
> <br>
> Visit other Kitware open-source projects at <br>
> </font></tt><a href=http://www.kitware.com/opensource/opensource.html><tt><font size=2>http://www.kitware.com/opensource/opensource.html</font></tt></a><tt><font size=2><br>
> <br>
> Please keep messages on-topic and check the CMake FAQ at: <br>
> </font></tt><a href=http://www.cmake.org/Wiki/CMake_FAQ><tt><font size=2>http://www.cmake.org/Wiki/CMake_FAQ</font></tt></a><tt><font size=2><br>
> <br>
> Follow this link to subscribe/unsubscribe:<br>
> </font></tt><a href=http://www.cmake.org/mailman/listinfo/cmake><tt><font size=2>http://www.cmake.org/mailman/listinfo/cmake</font></tt></a><tt><font size=2><br>
> <br>
<br>
</font></tt>
<br>