Tyler Roscoe wrote:
Even if it were a policy, any project that tries to do this would get
the warning.  Yes, it could temporarily avoid the warning by setting
the policy to OLD, but it should *still* be updated to the NEW
behavior!  Again, policies are not used for choosing among desirable
behaviors.

I don't understand this. Are we debating semantics (whether the
multiple-add_subdirectory() behavior is "desirable")? Are policies to be
used for choosing between undesirable, now-deprecated behavior and
desirable behavior?

Replace the word "desirable" with "supported".  One day we will release
a CMake that does not implement the OLD behavior for a given policy.

It seems to me that 2.6.4 introduced some changed/improved some
behavior. CMake policies are designed to help insulate CMake users from
changes in behavior. Because I cannot insulate myself from this change,
I am stuck between not upgrading to the latest CMake and rewriting my
scripts. Isn't *this* the kind of thing policies are designed to
address?

Yes, it is exactly what policies are meant to do.  As I said in my
previous post we didn't think any real project could be using the
behavior and thought this change was just a bug fix to help new
projects avoid subtle problems.  That's why we didn't bother with
a policy.

Consider the missing policy a bug.  We can fix the bug by adding
a policy in 2.6.5.  That doesn't mean you can just set it to OLD
and never change your project though.  A future CMake (say 3.0)
won't support it.

-Brad
_______________________________________________
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