[CMake] cmake for cygwin
Bill Hoffman
bill.hoffman at kitware.com
Tue Oct 26 17:53:51 EDT 2010
>> So, I think the only way to fix this is to create a new policy. The
>> policy will warn all cygwin builds that CMake is no longer defining
>> WIN32 on cygwin. As with all policies, if a project has the minimum
>> required CMake set to the version of CMake that implements the policy
>> the new behavior will happen. I know this will not make Yaakov totally
>> happy as CMake based applications will not work unless they bump up the
>> version of CMake they require, but over time all will be well.
>
> Unacceptable, as this still requires changing each package's sources in
> order to set this policy to NEW. The point is to be able to build
> packages OOTB, today and not years from now.
I just don't see how we can do that without breaking someones hard work.
Saying that the code is already broken because it is not how you would
have liked it is not really that nice.
>
> Furthermore, allowing an option for how CMake should behave on Cygwin is
> asking for trouble, given how many people have misconceptions about
> Cygwin.
>
> I'm trying to make this simple. The remaining patch has been sitting in
> bug 10122 for months, and this is what the Cygwin community wants.
>
Backwards compatibility may not be important to you, but to CMake it is
very important. When a developer chooses to use CMake, I want to
respect that choice, and work as hard as I can to make sure I don't
break that code. CMake has been doing this for 10 years on cygwin,
wrong or right that is how it has been done. If there is code that
builds with CMake on cygwin today, your suggested change will break that
build.
The patch has been sitting in the bug for months because no one has
suggested a backwards compatible way of doing this. I have made several
offers, but you have rejected them as unacceptable. Do you have a
suggestion that will keep existing projects working and work for your
new projects?
The policy mechanism might not be ideal but in a year or so, all of this
would go away, and the meantime the patches you have to maintain for
cygwin ports would become trivial. The patch would basically have a set
cmake version at the top. I thought the command line option was a nice
compromise.
-Bill
More information about the CMake
mailing list