CMake Version Compatibility Matrix: Difference between revisions

From KitwarePublic
Jump to navigationJump to search
(Add matrix for standard modules)
(→‎Standard CMake Modules: Add section "additional notes", mention policies)
Line 5,535: Line 5,535:
| style="background-color:green;" | X
| style="background-color:green;" | X
|}
|}
=== Additional Notes about compatibility ===
When writing CMake code that is to be compatible with previous releases of CMake, not only look out for changes in the API, but also consider changes in behavior between different versions of CMake. When such a change in behavior occurs, it is often documented  in the description of CMake-[http://www.cmake.org/cmake/help/cmake-2-8-docs.html#section_Policies Policies].

Revision as of 14:34, 4 December 2010

Compatibility across different CMake versions

Below you can find a list of features and when they were introduced to cmake. The features are grouped by their respective section in the documentation. Entries marked in green show available, fully upwards-compatible features. Entries in yellow mark changes in features that are available in higher versions of CMake, but not in this version. Entries in red mark incompatible changes or not available features.


Options

CMake Option 2.8.3 2.8.2 2.8.1 2.8.0 2.6-patch 4 2.6-patch 3 2.6-patch 2 2.6-patch 1 2.6-patch 0
-C <initial-cache> X X X X X X X X X
-D <var>:<type>=<value> X X X X X X X X X
-U <globbing_expr> X X X X X X X X X
-G <generator-name> X X X X X X X X X
-Wno-dev X X X X X X X X X
-Wdev X X X X X X X X X
-E X X X X X X X X X
-i X X X X X X X X X
-L[A][H] X X X X X X X X X
--build <dir> X X X X - - - - -
-N X X X X X X X X X
-P <file> X X X X X X X X X
--graphviz=[file] X X X X X X X X X
--system-information [file] X X X X X X X X X
--debug-trycompile X X X X X X X X X
--debug-output X X X X X X X X X
--trace X X X X X X X - -
--help-command cmd [file] X X X X X X X X X
--help-command-list [file] X X X X X X X X X
--help-commands [file] X X X X X X X X X
--help-compatcommands [file] X X X X X X X X X
--help-module module [file] X X X X X X X X X
--help-module-list [file] X X X X X X X X X
--help-modules [file] X X X X X X X X X
--help-custom-modules [file] X X X X X X X X X
--help-policy cmp [file] X X X X X X X X -
--help-policies [file] X X X X X X X X -
--help-property prop [file] X X X X X X X X X
--help-property-list [file] X X X X X X X X X
--help-properties [file] X X X X X X X X X
--help-variable var [file] X X X X X X X X X
--help-variable-list [file] X X X X X X X X X
--help-variables [file] X X X X X X X X X
--copyright [file] X X X X X X X X X
--help X X X X X X X X X
--help-full [file] X X X X X X X X X
--help-html [file] X X X X X X X X X
--help-man [file] X X X X X X X X X
--version [file] X X X X X X X X X

Note: Commands available with the -E option are not tracked by this overview.


Commands

CMake Option 2.8.3 2.8.2 2.8.1 2.8.0 2.6-patch 4 2.6-patch 3 2.6-patch 2 2.6-patch 1 2.6-patch 0
add_custom_command X X X X X X X X X
add_custom_target X X X X X X (missing: option SOURCES) X X X
add_definitions X X X X X X X X X
add_dependencies X X X X X X X X X
add_executable X X X X X X X X X
add_library X X X X X X X X (missing: add library type UNKNOWN) X
add_subdirectory X X X X X X X X X
add_test X X X X X - X X X
aux_source_directory X X X X X X X X X
break X X X X X X X X X
build_command X X X X (missing: supports options CONFIGURATION, PROJECT_NAME, and TARGET) X X X X X
cmake_minimum_required X X X (missing: optional .tweak to version) X X X X X X
cmake_policy X X X X X X X X (missing: support GET) X
configure_file X X X (missing: DOWNLOAD supports options EXPECTED_MD5 and SHOW_PROGRESS) X X X X X X
create_test_sourcelist X X X X X X X X X
define_property X X X X X X X X X
else X X X X X X X X X
elseif X X X X X X X X X
enable_language X X X X X X X X X
enable_testing X X X X X X X X X
endforeach X X X X X X X X X
endfunction X X X X X X X X X
endif X X X X X X X X X
endmacro X X X X X X X X X
endwhile X X X X X X X X X
execute_process X X X X X X X X X
export X X X X X (missing: PACKAGE) X X X X
file X X X X X (missing: RENAME, COPY, INSTALL) X X X (missing: GLOB_RECURSE supports FOLLOW_SYMLINKS) X
find_file X X X X X X X X X (missing: option HINTS)
find_library X X X X X X X X X (missing: option HINTS)
find_package X X (missing: sets variable <package>_CONSIDERED_CONFIGS) X X (change: doesn't search in <package>_DIR when considering CMAKE_ENVIRONMENT_PATH) X (missing: option NO_CMAKE_PACKAGE_REGISTRY) X (missing: option NO_POLICY_SCOPE; change: don't continue, if <package>_DIR is set incorrectly; doesn't check PACKAGE_VERSION_UNSUITABLE; fewer search-paths) X X (missing: sets variable PACKAGE_FIND_VERSION_TWEAK and PACKAGE_FIND_VERSION_COUNT) X (missing: option HINTS)
find_path X X X X X X X X X (missing: option HINTS)
find_program X X X X X X X X X (missing: option HINTS)
fltk_wrap_ui X X X X X X X X X
foreach X X X X X (missing: IN LISTS, IN ITEMS) X X X X
function X X X X X X X X X
get_cmake_property X X X X X X X X X
get_directory_property X X X X X X X X X
get_filename_component X X X X X X (missing: option REALPATH) X X X
get_property X X X X X (missing: CACHE) X X X X
get_source_file_property X X X X X X X X X
get_target_property X X X X X X X X X
get_test_property X X X X X X X X X
if X X X X (missing: IS_SYMLINK) X (missing: allow constants, parenthesis) X X X (missing: TARGET, VERSION_LESS, VERSION_EQUAL, VERSION_GREATER) X
include X X X X X X (missing: option NO_POLICY_SCOPE) X X X
include_directories X X X X X X X X X
include_external_msproject X X X (change: prefix created target with "INCLUDE_EXTERNAL_MSPROJECT_") X X X X X X
include_regular_expression X X X X X X X X X
install X X X X X (missing: DIRECTORY supports OPTIONAL) X X X X
link_directories X X X X X X X X X
list X X X X X X X X X
load_cache X X X X X X X X X
load_command X X X X X X X X X
macro X X X X X X X X X
mark_as_advanced X X X X X X X X X
math X X X X X X X X X
message X X X X X (missing: WARNING, AUTHOR_WARNING) X X X X
option X X X X X X X X X
output_required_files X X X X X X X X X
project X X X X X X (missing: custom languages supported) X X X
qt_wrap_cpp X X X X X X X X X
qt_wrap_ui X X X X X X X X X
remove_definitions X X X X X X X X X
return X X X X X X X X (missing: returns from file) X
separate_arguments X X X X X (missing: UNIX_COMMAND, WINDOWS_COMMAND) X X X X
set X X X X X X X X X
set_directory_properties X X X X X X X X X
set_property X X X X X (missing: CACHE) X X X X
set_source_files_properties X X X X X X X X X
set_target_properties X X X X X X (missing: support VS_SCC_PROJECTNAME, VS_SCC_LOCALPATH, VS_SCC_PROVIDER) X X X
set_tests_properties X X X X X X X X X
site_name X X X X X X X X X
source_group X X X X X X X X X
string X X X X X (missing: RANDOM supports RANDOM_SEED) X X X X
target_link_libraries X X X X X X X X (missing: option LINK_INTERFACE_LIBRARIES) X
try_compile X X X X X X X X X
try_run X X X X X X X X X
unset X X X X X X - - -
variable_watch X X X X X X X X X
while X X X X X X X X X


Properties

Properties of Global Scope

CMake Option 2.8.3 2.8.2 2.8.1 2.8.0 2.6-patch 4 2.6-patch 3 2.6-patch 2 2.6-patch 1 2.6-patch 0
ALLOW_DUPLICATE_CUSTOM_TARGETS X X X X X X X X X
DEBUG_CONFIGURATIONS X X X X X X - - -
DISABLED_FEATURES X X X X X X X X X
ENABLED_FEATURES X X X X X X X X X
ENABLED_LANGUAGES X X X X X X X X -
FIND_LIBRARY_USE_LIB64_PATHS X X X X X X X X X
FIND_LIBRARY_USE_OPENBSD_VERSIONING X X X X - - - - -
GLOBAL_DEPENDS_DEBUG_MODE X X X X X X X X X
GLOBAL_DEPENDS_NO_CYCLES X X X X - - - - -
IN_TRY_COMPILE X X X X X X X X X
PACKAGES_FOUND X X X X X X X X X
PACKAGES_NOT_FOUND X X X X X X X X X
PREDEFINED_TARGETS_FOLDER X - - - - - - - -
REPORT_UNDEFINED_PROPERTIES X X X X X X X X X
RULE_LAUNCH_COMPILE X X X X - - - - -
RULE_LAUNCH_CUSTOM X X X X - - - - -
RULE_LAUNCH_LINK X X X X - - - - -
RULE_MESSAGES X X X X - - - - -
TARGET_ARCHIVES_MAY_BE_SHARED_LIBS X X X X X X X X X
TARGET_SUPPORTS_SHARED_LIBS X X X X X X X X X
USE_FOLDERS X - - - - - - - -
__CMAKE_DELETE_CACHE_CHANGE_VARS_ X X X X X X X X X

Properties on Directories

CMake Option 2.8.3 2.8.2 2.8.1 2.8.0 2.6-patch 4 2.6-patch 3 2.6-patch 2 2.6-patch 1 2.6-patch 0
ADDITIONAL_MAKE_CLEAN_FILES X X X X X X X X X
CACHE_VARIABLES X X X X X X X X -
CLEAN_NO_CUSTOM X X X X X X X X X
COMPILE_DEFINITIONS X X X X X X X X X
COMPILE_DEFINITIONS_<CONFIG> X X X X X X X X X
DEFINITIONS X X X X X X X X (deprecated: use COMPILE_DEFINITIONS instead) X (TODO: really added in 2.6.1? missing from doc before 2.6.1, but compatibility feature for 2.4)
EXCLUDE_FROM_ALL X X X X X X X X X
IMPLICIT_DEPENDS_INCLUDE_TRANSFORM X X X X X X X X -
INCLUDE_DIRECTORIES X X X X X X X X -
INCLUDE_REGULAR_EXPRESSION X X X X X X X X -
INTERPROCEDURAL_OPTIMIZATION X X X X - - - - -
INTERPROCEDURAL_OPTIMIZATION_<CONFIG> X X X X - - - - -
LINK_DIRECTORIES X X X X X X X X -
LISTFILE_STACK X X X X X X X X X
MACROS X X X X X X X X -
PARENT_DIRECTORY X X X X X X X X -
RULE_LAUNCH_COMPILE X X X X - - - - -
RULE_LAUNCH_CUSTOM X X X X - - - - -
RULE_LAUNCH_LINK X X X X - - - - -
TEST_INCLUDE_FILE X X X X X X X X X
VARIABLES X X X X X X X X -

Properties on Targets

CMake Option 2.8.3 2.8.2 2.8.1 2.8.0 2.6-patch 4 2.6-patch 3 2.6-patch 2 2.6-patch 1 2.6-patch 0
<CONFIG>_OUTPUT_NAME X X X X (deprecated: use OUTPUT_NAME_<CONFIG>) X X X X X
<CONFIG>_POSTFIX X X X X X X - - -
ARCHIVE_OUTPUT_DIRECTORY X X X X X X X X X
ARCHIVE_OUTPUT_DIRECTORY_<CONFIG> X X X - - - - - -
ARCHIVE_OUTPUT_NAME X X X X - - - - -
ARCHIVE_OUTPUT_NAME_<CONFIG> X X X X - - - - -
BUILD_WITH_INSTALL_RPATH X X X X X X X X X
CLEAN_DIRECT_OUTPUT - - - - (removed?) X X X X X
COMPILE_DEFINITIONS X X X X X X X X X
COMPILE_DEFINITIONS_<CONFIG> X X X X X X X X X
COMPILE_FLAGS X X X X X X X X X
DEBUG_POSTFIX X X X X X X X X X
DEFINE_SYMBOL X X X X X X X X X
ENABLE_EXPORTS X X X X X X X X X
EXCLUDE_FROM_ALL X X X X X X X X X
EchoString X X X X X X X X X
FOLDER X - - - - - - - -
FRAMEWORK X X X X X X X X X
Fortran_MODULE_DIRECTORY X X X X X X X X X
GENERATOR_FILE_NAME X X X X X X X X X
HAS_CXX X X X X (deprecated: set LINKER_LANGUAGE instead) X X X X X
IMPLICIT_DEPENDS_INCLUDE_TRANSFORM X X X X X X X X -
IMPORTED X X X X X X X X X
IMPORTED_CONFIGURATIONS X X X X X X X X X
IMPORTED_IMPLIB X X X X X X X X X
IMPORTED_IMPLIB_<CONFIG> X X X X X X X X X
IMPORTED_LINK_DEPENDENT_LIBRARIES X X X X X X X X X
IMPORTED_LINK_DEPENDENT_LIBRARIES_<CONFIG> X X X X X X X X X
IMPORTED_LINK_INTERFACE_LANGUAGES X X X X - - - - -
IMPORTED_LINK_INTERFACE_LANGUAGES_<CONFIG> X X X X - - - - -
IMPORTED_LINK_INTERFACE_LIBRARIES X X X X X X X X X
IMPORTED_LINK_INTERFACE_LIBRARIES_<CONFIG> X X X X X X X X X
IMPORTED_LINK_INTERFACE_MULTIPLICITY X X X X - - - - -
IMPORTED_LINK_INTERFACE_MULTIPLICITY_<CONFIG> X X X X - - - - -
IMPORTED_LOCATION X X X X X X X X X
IMPORTED_LOCATION_<CONFIG> X X X X X X X X X
IMPORTED_NO_SONAME X - - - - - - - -
IMPORTED_NO_SONAME_<CONFIG> X - - - - - - - -
IMPORTED_SONAME X X X X X X X X X
IMPORTED_SONAME_<CONFIG> X X X X X X X X X
IMPORT_PREFIX X X X X X X X X X
IMPORT_SUFFIX X X X X X X X X X
INSTALL_NAME_DIR X X X X X X X X X
INSTALL_RPATH X X X X X X X X X
INSTALL_RPATH_USE_LINK_PATH X X X X X X X X X
INTERPROCEDURAL_OPTIMIZATION X X X X - - - - -
INTERPROCEDURAL_OPTIMIZATION_<CONFIG> X X X X - - - - -
LABELS X X X X - - - - -
LIBRARY_OUTPUT_DIRECTORY X X X X X X X X X
LIBRARY_OUTPUT_DIRECTORY_<CONFIG> X X X - - - - - -
LIBRARY_OUTPUT_NAME X X X X - - - - -
LIBRARY_OUTPUT_NAME_<CONFIG> X X X X - - - - -
LINKER_LANGUAGE X X X X X (default value changed) X X X X
LINK_FLAGS X X X X X X X X X
LINK_FLAGS_<CONFIG> X X X X X X X X X
LINK_INTERFACE_LIBRARIES X X X X X X X X X
LINK_INTERFACE_LIBRARIES_<CONFIG> X X X X X X X X X
LINK_INTERFACE_MULTIPLICITY X X X X - - - - -
LINK_INTERFACE_MULTIPLICITY_<CONFIG> X X X X - - - - -
LINK_SEARCH_END_STATIC X X X X X X X X X
LOCATION X X X X X X X (missing: semantic for imported targets) X X
LOCATION_<CONFIG> X X X X X X X X X
MACOSX_BUNDLE X X X X X X X X X
MACOSX_BUNDLE_INFO_PLIST X X X X X X X X -
MACOSX_FRAMEWORK_INFO_PLIST X X X X X X X - -
MAP_IMPORTED_CONFIG_<CONFIG> X X X X X X X X X
OSX_ARCHITECTURES X X X - - - - - -
OSX_ARCHITECTURES_<CONFIG> X X X - - - - - -
OUTPUT_NAME X X X X X X X X X
OUTPUT_NAME_<CONFIG> X X X X - - - - -
POST_INSTALL_SCRIPT X X X X X X X X X
PREFIX X X X X X X X X X
PRE_INSTALL_SCRIPT X X X X X X X X X
PRIVATE_HEADER X X X X X X X X X
PROJECT_LABEL X X X X X X - - -
PUBLIC_HEADER X X X X X X X X X
RESOURCE X X X X X X X X X
RULE_LAUNCH_COMPILE X X X X - - - - -
RULE_LAUNCH_CUSTOM X X X X - - - - -
RULE_LAUNCH_LINK X X X X - - - - -
RUNTIME_OUTPUT_DIRECTORY X X X X X X X X X
RUNTIME_OUTPUT_DIRECTORY_<CONFIG> X X X - - - - - -
RUNTIME_OUTPUT_NAME X X X X - - - - -
RUNTIME_OUTPUT_NAME_<CONFIG> X X X X - - - - -
SKIP_BUILD_RPATH X X X X X X X X X
SOURCES X X X X X X X X X
SOVERSION X X X X X X X X X
STATIC_LIBRARY_FLAGS X X - - - - - - -
STATIC_LIBRARY_FLAGS_<CONFIG> X X X X X X X X X
SUFFIX X X X X X X X X X
TYPE X X X X X X - - -
VERSION X X X X X X X X X
VS_KEYWORD X X X X X X - - -
VS_SCC_LOCALPATH X X X X X X - - -
VS_SCC_PROJECTNAME X X X X X X - - -
VS_SCC_PROVIDER X X X X X X - - -
WIN32_EXECUTABLE X X X X X X X X X
XCODE_ATTRIBUTE_<an-attribute> X X X X X X X X X

Properties on Tests

CMake Option 2.8.3 2.8.2 2.8.1 2.8.0 2.6-patch 4 2.6-patch 3 2.6-patch 2 2.6-patch 1 2.6-patch 0
ATTACHED_FILES X X X - - - - - -
ATTACHED_FILES_ON_FAIL X X X - - - - - -
COST X X X - - - - - -
DEPENDS X X X - - - - - -
ENVIRONMENT X X X X - - - - -
FAIL_REGULAR_EXPRESSION X X X X X X X X X
LABELS X X X X - - - - -
MEASUREMENT X X X X X X X X X
PASS_REGULAR_EXPRESSION X X X X X X X X X
PROCESSORS X X X - - - - - -
REQUIRED_FILES X X X - - - - - -
RESOURCE_LOCK X X - - - - - - -
RUN_SERIAL X X X - - - - - -
TIMEOUT X X X X X X X X X
WILL_FAIL X X X X X X X X X

Properties on Source Files

CMake Option 2.8.3 2.8.2 2.8.1 2.8.0 2.6-patch 4 2.6-patch 3 2.6-patch 2 2.6-patch 1 2.6-patch 0
ABSTRACT X X X X X X X X X
COMPILE_DEFINITIONS X X X X X X X X X
COMPILE_DEFINITIONS_<CONFIG> X X X X X X X X X
COMPILE_FLAGS X X X X X X X X X
EXTERNAL_OBJECT X X X X X X X X X
GENERATED X X X X X X X X X
HEADER_FILE_ONLY X X X X X X X X X
KEEP_EXTENSION X X X X X X X X X
LABELS X X X X - - - - -
LANGUAGE X X X X X X X X X
LOCATION X X X X X X X X X
MACOSX_PACKAGE_LOCATION X X X X X X X X X
OBJECT_DEPENDS X X X X X X X X X
OBJECT_OUTPUTS X X X X X X X X X
SYMBOLIC X X X X X X X X X
WRAP_EXCLUDE X X X X X X X X X

Properties on Cache Entries

CMake Option 2.8.3 2.8.2 2.8.1 2.8.0 2.6-patch 4 2.6-patch 3 2.6-patch 2 2.6-patch 1 2.6-patch 0
ADVANCED X X X X - - - - -
HELPSTRING X X X X - - - - -
MODIFIED X X X X - - - - -
STRINGS X X X X - - - - -
TYPE X X X X - - - - -
VALUE X X X X - - - - -

Standard CMake Modules

CMake Option 2.8.3 2.8.2 2.8.1 2.8.0 2.6-patch 4 2.6-patch 3 2.6-patch 2 2.6-patch 1 2.6-patch 0
AddFileDependencies X X (missing: copy_resolved_framework_into_bundle) X X X X X X X
BundleUtilities X X X X X X X - -
CMakeASM-ATTInformation - - - - (deprecated) X X - - -
CMakeASM_MASMInformation - - - - (deprecated) X X - - -
CMakeBackwardCompatibilityCXX X X X X X X X X X
CMakeDependentOption X X X X X X X X X
CMakeDetermineASM-ATTCompiler - - - - (deprecated) X X X X X
CMakeDetermineASMCompiler - - - - (deprecated) X X X X X
CMakeDetermineASM_MSASMCompiler - - - - (deprecated) X X - - -
CMakeDetermineVSServicePack X X X X - - - - -
CMakeExportBuildSettings - - - - (deprecated) X X X X X
CMakeFindFrameworks X X X X X X X X X
CMakeForceCompiler X X X X (missing: CMAKE_FORCE_Fortran_COMPILER) X X X X X
CMakeParseArguments X - - - - - - - -
CMakeImportBuildSettings - - - - (deprecated) X X X X X
CMakeJavaInformation - - - - (deprecated) X X X X X
CMakePrintSystemInformation X X X X X X X X X
CMakeVerifyManifest X X X X - - - - -
CPack X X X X (missing: CPACK_DMG_VOLUME_NAME, CPACK_DMG_FORMAT, CPACK_DMG_DS_STORE, CPACK_DMG_BACKGROUND_IMAGE, CPACK_COMMAND_HDIUTIL, CPACK_COMMAND_SETFILE, CPACK_COMMAND_REZ, CPACK_BUNDLE_NAME, CPACK_BUNDLE_PLIST, CPACK_BUNDLE_ICON, CPACK_BUNDLE_STARTUP_SCRIPT) X (missing: CPACK_NSIS_PACKAGE_NAME) X X X X
CPackDeb X X (missing: CPACK_DEBIAN_PACKAGE_HOMEPAGE, CPACK_DEBIAN_PACKAGE_SHLIBDEPS, CPACK_DEBIAN_PACKAGE_DEBUG, CPACK_DEBIAN_PACKAGE_PREDEPENDS, CPACK_DEBIAN_PACKAGE_ENHANCES, CPACK_DEBIAN_PACKAGE_BREAKS, CPACK_DEBIAN_PACKAGE_CONFLICTS, CPACK_DEBIAN_PACKAGE_PROVIDES, CPACK_DEBIAN_PACKAGE_REPLACES) X X - - - - -
CPackRPM X X (missing: CPACK_RPM_PACKAGE_URL, CPACK_RPM_PACKAGE_SUGGESTS, CPACK_RPM_PACKAGE_OBSOLETES, CPACK_RPM_PACKAGE_RELOCATABLE, CPACK_RPM_CHANGELOG_FILE) X (missing: CPACK_RPM_COMPRESSION_TYPE) X (missing: CPACK_RPM_PACKAGES_PROVIDES, CPACK_RPM_USER_BINARY_SPECFILE, CPACK_RPM_GENERATE_USER_BINARY_SPECFILE_TEMPLATE, CPACK_RPM_PRE_INSTALL_SCRIPT_FILE, CPACK_RPM_PRE_UNINSTALL_SCRIPT_FILE, CPACK_RPM_POST_INSTALL_SCRIPT_FILE, CPACK_RPM_POST_UNINSTALL_SCRIPT_FILE) X X X X X
CTest X X X X X X X X X
CTestScriptMode X X X X - - - - -
CheckCCompilerFlag X X X X X X X X X
CheckCSourceCompiles X X X X X (missing: FAIL_REGEX) X X X X
CheckCSourceRuns X X X X X X X X X
CheckCXXCompilerFlag X X X X X X X X X
CheckCXXSourceCompiles X X X X X (missing: FAIL_REGEX) X X X X
CheckCXXSourceRuns X X X X X X X X X
CheckFortranFunctionExists X X X X X X X X X
CheckFunctionExists X X X X X X X X X
CheckIncludeFile X X X X X X X X X
CheckIncludeFileCXX X X X X X X X X X
CheckIncludeFiles X X X X X X X X X
CheckLibraryExists X X X X X X X X X
CheckStructHasMember X X X X X X X X X
CheckSymbolExists X X X X X X X X X
CheckTypeSize X X X X (missing: CMAKE_EXTRA_INCLUDE_FILES) X X X X X
CheckVariableExists X X X X X X X X X
Dart X X X X X X X X X
Documentation X X X X X X X X X
ExternalProject X X (missing: ExternalProject_Add_StepTargets; missing in ExternalProject_Add: LOG_*, STEP_TARGETS; missing in ExternalProject_Add_Step: LOG) X (missing in ExternalProject_Add: SVN_USERNAME, SVN_PASSWORD, GIT_REPOSITORY, GIT_TAG, URL_MD5) X (missing in ExternalProject_Add: TIMEOUT) - - - - -
FeatureSummary X (deprecated: set_feature_info, print_enabled_features, print_disabled_features) X (missing: feature_summary, set_package_info, add_feature_info) X X X X X X X
FindALSA X X X X - - - - -
FindASPELL X X X X X X X X X
FindAVIFile X X X X X X X X X
FindBISON X X (missing: find_package version support) X X - - - - -
FindBLAS X X X X X X X X X (missing: BLA_STATIC, BLA_VENDOR, BLA_F95)
FindBZip2 X X (deprecated: BZIP2_DEFINITIONS) X X X X X X X
FindBoost X X (missing: Boost_NO_SYSTEM_PATHS, Boost_USE_STATIC_RUNTIME, Boost_USE_DEBUG_PYTHON, Boost_USE_STLPORT, Boost_USE_STLPORT_DEPRECATED_NATIVE_IOSTREAMS, Boost_THREADAPI, Boost_REALPATH X X X (missing: Boost_DETAILED_FAILURE_MSG) X (deprecated: Boost_USE_MULTITHREAD) X (missing: Boost_USE_MULTITHREADED, Boost_DEBUG, Boost_COMPILER, Boost_${COMPONENT}_*) X X (missing: BOOSTROOT)
FindBullet X X X X - - - - -
FindCABLE X X X X X X X X X
FindCUDA X X X X - - - - -
FindCURL X X X X X X X X X
FindCVS X X X X X X X X X
FindCoin3D X X X X X X - - -
FindCups X X X X X X X X X
FindCurses X X X X X X X X X
FindCxxTest X (deprecated: CXXTEST_USE_PYTHON, CXXTEST_INCLUDE_DIR) X (missing: CXXTEST_TESTGEN_ARGS, CXXTEST_TESTGEN_EXECUTABLE, CXXTEST_TESTGEN_INTERPRETER, CXXTEST_INCLUDE_DIRS) X X X X - - -
FindCygwin X X X X X X X X X
FindDCMTK X X X X X X X X X
FindDart X X X X X X X X X
FindDevIL X X X X X X - - -
FindDoxygen X X X X X X (deprecated: DOXYGEN, DOT) X (missing: DOXYGEN_SKIP_DOT, DOXYGEN_DOT_FOUND) X X
FindEXPAT X X X X X X X X X
FindFLEX X X (missing: find_package version support) X X - - - - -
FindFLTK X X X X X X X (missing: FLTK_SKIP_OPENGL, FLTK_SKIP_FORMS, FLTK_SKIP_IMAGES, FLTK_SKIP_FLUID) X X
FindFLTK2 X X X X X X X X X
FindFreetype X X X X X X X X X
FindGCCXML X X X X X X X X X
FindGDAL X X X X X X X X X
FindGIF X X X X X X X X X
FindGLUT X X X X X X X X X
FindGTK X X X X X X X X X
FindGTK2 X X (missing: GTK2_ADDITIONAL_SUFFIXES) X X - - - - -
FindGTest X X X X - - - - -
FindGettext X X X X X X X X X
FindGit X X - - - - - - -
FindGnuTLS X X X X - - - - -
FindGnuplot X X X X X X X X X
FindHDF5 X X X (deprecated: HDF5_INCLUDE_DIR) X (missing: HDF5_INCLUDE_DIRS) - - - - -
FindHSPELL X X X (missing: HSPELL_VERSION_STRING, HSPELL_*_VERSION) X X X X X X
FindHTMLHelp X X X X X X X X X
FindITK X X X X X X X X X
FindImageMagick X X X X X X X (deprecated component: Magick) X (missing component: MagickCore) X (missing: find_package components support)
FindJNI X X X X (missing: JNI_FOUND) X X X X X
FindJPEG X X X X X X X X X
FindJasper X X X X X X X X X
FindJava X X (missing: find_package version support) X (deprecated: JAVA_RUNTIME, JAVA_COMPILE, JAVA_ARCHIVE) X (missing: Java_VERSION*, Java_JAVA_EXECUTABLE, Java_JAVAC_EXECUTABLE, Java_JAR_EXECUTABLE) X X X X (deprecated: JAVA_AWT_LIB_PATH, JAVA_JVM_LIB_PATH) X (missing: JNI_INCLUDE_DIRS, JNI_LIBRARIES, JAVA_AWT_LIBRARY, JAVA_JVM_LIBRARY
FindKDE3 X X X X X X X X X
FindKDE4 X X X X X X X X X
FindLAPACK X X X X X X X X X (missing: LAPACK95_FOUND, BLA_STATIC, BLA_VENDOR, BLA_F95)
FindLATEX X X X X X X X X X
FindLibArchive X - - - - - - - -
FindLibXml2 X X X X X X X X (missing: LIBXML2_XMLLINT_EXECUTABLE) X
FindLibXslt X X X X X X X X X
FindLua50 X X X X X X X (deprecated: LUA_FOUND) X (missing: LUA50_FOUND) X
FindLua51 X X X X X X X (deprecated: LUA_FOUND) X (missing: LUA51_FOUND) X
FindMFC X X X X X X X X X
FindMPEG X X X X X X X X X
FindMPEG2 X X X X X X X X X
FindMPI X X X X X X X X X
FindMatlab X X X X X X X X X
FindMotif X X X X X X X X X
FindOpenAL X X X X X X X X X
FindOpenGL X X X X X X X X X
FindOpenMP X X X X X X - - -
FindOpenSSL X X X X X X X X X
FindOpenSceneGraph X X X X X X - - -
FindOpenThreads X X X X X X X X X
FindPHP4 X X X X X X X X X
FindPNG X X X X X X X X X
FindPackageHandleStandardArgs X X (missing: complex mode(version support, config-mode, fail-message)) X X X X X X X
FindPackageMessage X X X X X X X X X
FindPerl X X (missing: find_package version support) X X X X X X X
FindPerlLibs X X X X X (missing: PERLLIBS_FOUND, PERL_LIBRARY, PERL_SITESEARCH, PERL_SITELIB, PERL_VENDORARCH, PERL_VENDORLIB, PERL_ARCHLIB, PERL_PRIVLIB, PERL_EXTRA_C_FLAGS) X X X X
FindPhysFS X X X X X X X X X
FindPike X X X X X X X X X
FindPkgConfig X X X (missing: option QUIET) X X X X X X
FindPostgreSQL X - - - - - - - -
FindProducer X X X X X X X X X
FindProtobuf X X X X - - - - -
FindPythonInterp X X X X X X X X X
FindPythonLibs X X X X X (missing: PYTHON_INCLUDE_DIRS) X X X X
FindQt X X X X X X X X X
FindQt3 X X X X X X X X X
FindQt4 X X (missing: QT_IMPORTS_DIR) X X (missing: QT_USE_IMPORTED_TARGETS, QT_USE_QTMULTIMEDIA, QT_USE_QTDECLARATIVE, QT_QTMULTIMEDIA_*, QT_QTDECLARATIVE_*, QT_DESIGNER_EXECUTABLE, QT_LINGUIST_EXECUTABLE) X (missing: find_package version support, QT_USE_QTSCRIPTTOOLS, QT_QTSCRIPTTOOLS_*, QT_MAC_USE_COCOA; QT4_ADD_DBUS_ADAPTOR: classname support; changed: QT4_GENERATE_DBUS_INTERFACE: OPTIONS) X (missing: find_package components support) (deprecated: QT_QT_INCLUDE_DIR) X (missing: QT_USE_QAXCONTAINER, QT_USE_QAXSERVER, QT_QAXCONTAINER_*, QT_QAXSERVER_*, QT_BINARY_DIR, QT_TRANSLATIONS_DIR) X (changed: QT4_CREATE_TRANSLATION: directories, OPTIONS) X
FindQuickTime X X X X X X X X X
FindRTI X X X X X X - - -
FindRuby X X (missing: find_package version support) X X (deprecated: RUBY_INCLUDE_PATH) X (missing: RUBY_INCLUDE_DIRS, RUBY_VERSION, RUBY_FOUND) X X X X
FindSDL X X X X X X X X X
FindSDL_image X X X X X X X X X
FindSDL_mixer X X X X X X X X X
FindSDL_net X X X X X X X X X
FindSDL_sound X X X X X X X X X
FindSDL_ttf X X X X X X X X X
FindSWIG X X (missing: find_package version support) X X X X X X X
FindSelfPackers X X X X X X X X X
FindSquish X X (missing: SQUISH_VERSION_*) X X X X - - -
FindSubversion X X (missing: SUBVERSION_FOUND; missing: find_package version support) X X X X X X X
FindTCL X X X X X X X X X
FindTIFF X X X X X X X X X
FindTclStub X X X X X X X (missing: TTK_STUB_LIBRARY) X X
FindTclsh X X X X X X X X X
FindThreads X (deprecated: CMAKE_THREAD_PREFER_PTHREADS) X (missing: CMAKE_THREAD_PREFER_PTHREAD) X (missing: CMAKE_THREAD_PREFER_PTHREADS) X X X X X X
FindUnixCommands X X X X X X X X X
FindVTK X X X X X X X X X
FindWget X X X X X X X X X
FindWish X X X X X X X X X
FindX11 X X X (missing: Xi support) X (missing: X11_X11_INCLUDE_PATH, X11_X11_LIB) X X X X X
FindXMLRPC X X X X X X X X X
FindZLIB X (deprecated: ZLIB_*_VERSION) X (missing: ZLIB_VERSION_MAJOR, ZLIB_VERSION_MINOR, ZLIB_VERSION_PATCH) X (missing: ZLIB_VERSION_STRING, ZLIB_*_VERSION) X X X X X X
Findosg X X X X X X X X X
FindosgAnimation X X X X X X - - -
FindosgDB X X X X X X X X X
FindosgFX X X X X X X X X X
FindosgGA X X X X X X X X X
FindosgIntrospection X X X X X X X X X
FindosgManipulator X X X X X X X X X
FindosgParticle X X X X X X X X X
FindosgProducer X X X X X X X X X
FindosgShadow X X X X X X X X X
FindosgSim X X X X X X X X X
FindosgTerrain X X X X X X X X X
FindosgText X X X X X X X X X
FindosgUtil X X X X X X X X X
FindosgViewer X X X X X X X X X
FindosgVolume X X X X X X - - -
FindosgWidget X X X X X X - - -
Findosg_functions X X X X X X - - -
FindwxWidgets X X (missing: wxWidgets_CONFIG_OPTIONS) X (missing: wxWidgets_EXCLUDE_COMMON_LIBRARIES) X X (missing: wxWidgets_DEFINITIONS_DEBUG) X X X X
FindwxWindows X X X X X X X X X
FortranCInterface X X X X (deprecated: test_fortran_mangling, discover_fortran_mangling, discover_fortran_module_mangling) X (missing: FortranCInterface_GLOBAL_FOUND, FortranCInterface_MODULE_FOUND, FortranCInterface_HEADER, FortranCInterface_VERIFY) X - - -
GetPrerequisites X X X X X (missing: gp_resolved_file_type) X X X (missing: gp_item_default_embedded_path, gp_resolve_item) X
ITKCompatibility - - - - (deprecated) X X X X X
InstallRequiredSystemLibraries X X X X X X X X X
MacroAddFileDependencies X X X X X (missing: QUIT) X X X X
Qt4ConfigDependentSettings X X X - - - - - -
Qt4Macros X X X - - - - - -
SelectLibraryConfigurations X X X X - - - - -
SquishTestScript X X X X X X - - -
TestBigEndian X X X X X X X X X
TestCXXAcceptsFlag X X X X X X X X X
TestForANSIForScope X X X X X X X X X
TestForANSIStreamHeaders X X X X X X X X X
TestForSSTREAM X X X X X X X X X
TestForSTDNamespace X X X X X X X X X
UseEcos X X X X X X X X X
UsePkgConfig X X X X X X X X X
UseQt4 X X X X X X X X X
UseSWIG X X X X X X X X X
Use_wxWindows X X X X X X X X X
UsewxWidgets X X X X X X X X X


Additional Notes about compatibility

When writing CMake code that is to be compatible with previous releases of CMake, not only look out for changes in the API, but also consider changes in behavior between different versions of CMake. When such a change in behavior occurs, it is often documented in the description of CMake-Policies.