[CMake] Re: General modernization facility

Brandon Van Every bvanevery at gmail.com
Tue Dec 18 14:23:59 EST 2007


On Dec 18, 2007 1:44 PM, Rodolfo Schulz de Lima <rodolfo at rodsoft.org> wrote:
> Brandon Van Every wrote:
>
> > How about include(ForwardsCompatibility).  That would make the intent
> > really clear.
>
> IMHO a better solution would be to specify which CMAKE version is
> expected to parse the CMakeFiles.txt.

Well, maybe "ForwardsCompatibility" doesn't make the intent as clear
as I thought.  The actual intent is for different CMake behaviors to
exist side-by-side.  Default behavior is whatever CMake currently
does; usually pretty conservative in the interest of backwards
compatibility.  But the user could select a behavior like
set_properties(GLOBAL PROPERTIES CMAKE_REQUIRE_BOOL TRUE).  That could
be available in CMake 2.6.1, for instance.  "Parse it like 2.6.1"
doesn't mean anything; it could be the default parsing or the
CMAKE_REQUIRE_BOOL parsing.  You'd need to have an option like
CMAKE_REQUIRE_BOOL being used for a long time.  You couldn't make it
the default until CMake 2.8.0 or 2.10.0 or some such, after lots of
people have voted with their feet and the old behavior is clearly
legacy.

> Hint: there's already the
> cmake_minimum_required command (at least in cmake-cvs, that is)...

cmake_minimum_required has been around for awhile now.  It does not
solve the problem.


Cheers,
Brandon Van Every


More information about the CMake mailing list