[CMake] add_custom_target and output file dependencies

David Cole david.cole at kitware.com
Thu Feb 10 10:48:44 EST 2011


Show us the surrounding code (i.e. -- the actual copy command)


On Thu, Feb 10, 2011 at 10:40 AM, Clifford Yapp <cliffyapp at gmail.com> wrote:

> I'm seeing an extremely strange behavior with
> add_custom_command/add_custom_target, and I'm not sure what's causing
> it.
>
> Background:  I'm trying to copy large numbers of files in batch lots
> during the make process, with a custom target that depends on a list
> of files and runs a single copy process (cmake -P file.cmake where
> file.cmake contains the list and the FILE(COPY command) to copy them
> all in one gulp if any of them changes.
>
> This works, but some of the copy processes do not terminate (i.e.
> multiple calls to make result in the copy happening each time, even
> though the files have already been copied.)  The termination failures
> appear to be consistent, but for the life of me I can't figure out
> what is causing them.  I have a list:
>
> SET(tclscripts_TCLSCRIPTS
>   ami.tcl
>   ampi.tcl
>   cad_clrpick.tcl
>   cad_dialog.tcl
>   chkexterns.tcl
>   fs_dialog.tk
>   helpcomm.tcl
>   helplib.tcl
>   hoc.tcl
>   html_library.tcl
>   libdm.tcl
>   menu_override.tcl
>   mouse.tcl
>   vmath.tcl
> )
>
> This list fails every time to terminate.  However, if I comment out
> either the first or the second entry (but NOT other entries, although
> my testing has not been exhaustive) it DOES terminate.  There is
> nothing special about either of the two first files that I can
> discover.  Also, if I comment out one of those two and add another
> file, the termination failure returns.
>
> It's not terribly critical, but it is rather disturbing that these
> copy commands keep getting run when I can't see any reason for it.
> Has anybody seen behavior like this?  How would I check what is
> triggering the copy?  I can try to cook up a more minimal test case if
> there is a need, but it's difficult to be sure I can reproduce it in a
> contained test because I don't know for sure what's happening.  Any
> help appreciated.
>
> Thanks,
> CY
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the CMake FAQ at:
> http://www.cmake.org/Wiki/CMake_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.cmake.org/mailman/listinfo/cmake
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20110210/93abc2a1/attachment.htm>


More information about the CMake mailing list