On Tue, Mar 6, 2012 at 10:24 AM, Andrea Crotti
<[email protected]> wrote:
> On 03/06/2012 02:07 PM, Andrea Crotti wrote:
>>
>>
>>
>> I opened a thread some time ago about this, and I actually thought it
>> was a bug in the documentation, because then why everything works
>> otherwise?
>>
>> This simple example which I produced
>>
>> add_custom_target(a
>>  ${CMAKE_COMMAND} -E echo "a"
>>  )
>>
>> add_custom_target(b
>>  ${CMAKE_COMMAND} -E echo "b"
>>  DEPENDS a
>>  )
>>
>>
>> does exactly what would be expected, even if there files a or b don't
>> exist.
>> So I might suppose that this intra-target dependencies work but not
>> always,
>> is that correct?
>
>
> I tried to substitute the wrong DEPENDS with the add_dependencies and it
> seems to work now.
> That doesn't explain why it works on Windows and my other Linux box, but
> well if that's the correct
> way to do it I'll stick with that..
>
> --
>
> 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


The explanation is simple: if you have two targets and they run in
*random* order, then it will be "correct" 50% of the time... Or
perhaps 100% on one platform and 0% on another. That's likely what you
were seeing when you thought that it worked sometimes.

With the dependencies specified correctly with add_dependencies, you
should now see it work 100% of the time.
--

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

Reply via email to