[cmake-developers] [CMake 0015222]: Need a way to determine when features were introduced into cmake
Mantis Bug Tracker
mantis at public.kitware.com
Tue Oct 28 08:08:50 EDT 2014
The following issue has been SUBMITTED.
======================================================================
http://www.cmake.org/Bug/view.php?id=15222
======================================================================
Reported By: Charles Karney
Assigned To:
======================================================================
Project: CMake
Issue ID: 15222
Category: CMake
Reproducibility: always
Severity: feature
Priority: normal
Status: new
======================================================================
Date Submitted: 2014-10-28 08:08 EDT
Last Modified: 2014-10-28 08:08 EDT
======================================================================
Summary: Need a way to determine when features were
introduced into cmake
Description:
Authors of cmake scripts face a challenge ensuring that their scripts
are portable. This is exacerbated by
* cmake is constantly evolving (which is good!);
* their cmake scripts are run by a diverse set of users (also good!);
* authors have little control over the version of cmake that end-users
have installed;
* the relationship with end-users is even more tenuous with the
package-config scripts (which are not read by the builder of the
package but by a developer using the package).
There is cmake_minimum_required, but authors would normally not want to
set this to too recent a version.
The problem is that it's difficult to know when a particular feature
appeared in cmake. There's no single changelog (and the format of the
changelog doesn't make it easy to search in). Frequently I'm left doing
a binary search in the documentation! Sometimes I need install old
versions to check their behavior.
For example I just noticed that install (TARGET ...) also an INCLUDES
DESTINATION option. This seemed like a feature I should be using until
I noticed that it only appeared in 2.8.12 (or thereabouts).
Suggestions:
* Have a developer mode where cmake behaves as though it were at the
version given by cmake_minimum_required. (Probably this is
unfeasible?)
* In the documentation, specify when each command, command option,
variable, etc., was introduced. (Might junk up the documentation.)
* Split this information off into a separate document. (My favored
solution.)
Steps to Reproduce:
N/A
Additional Information:
N/A
======================================================================
Issue History
Date Modified Username Field Change
======================================================================
2014-10-28 08:08 Charles Karney New Issue
======================================================================
More information about the cmake-developers
mailing list