CMake 2.0 Released

This new release includes:

  • A new platform independent install supporting pre install, post install, manifest, destdir…, and is much faster.
  • Add support for SWIG
  • Optional support for relative paths
  • INCLUDE and FIND_PACKAGE both check CMAKE_MODULE_PATH
  • IF command supports better expression support, like IF(A AND B AND C), and new tests EQUAL, STREQUAL.
  • MACRO’s now support variable arguments
  • FOREACH supports a RANGE of values genertor
  • CMake supports an automatic pre-load cmake file in the source tree of a project.
  • New command GET_TARGET_PROPERTY can give you the build location of a target.
  • Loaded commands have a crash signal handler to detect crashes not caused by cmake.
  • GET/SET_DIRECTORY_PROPERTY/PROPERTIES commands so that we can change include directories and get all sorts of information.
  • VERBOSE build option for visual studio IDE generators.
  • FIND_LIBRARY and FIND_PATH now look in CMAKE_LIBRARY_PATH and CMAKE_INCLUDE_PATH environment variables in addition to and before the PATH environment variable.
  • Each sub project in a project now creates a top level IDE project file so it can be loaded independently.
  • A saftey chech was added to make sure that files written using WRITE_FILE and FILE WRITE are not used as input files which can lead to infinite loops in the build.
  • Add support for adding object files and sources. This way you can use external program such as assembler or fortran to generate object files. Also star of fixing: Bug #757
  • New REMOVE_DEFINITION command, opposite to ADD_DEFINITIONS.
  • ccmake support for HOME and END keys. Also fix Bug #666, in CCMake when deleting something, it does not stop at the beginning of line.
  • Fixed externl projects for VS7 and VS6.
  • New support for import of modules without specifying a path.
  • New testing option to build and run an executable –build-and-test.
  • Support for shared library versions on UNIX.
  • SUBDIR command now supports PREORDER build option.
  • Add support for file names with +-~ in them for borland compiler.
  • Mac OSX bundle executable creation support with the ADD_EXECUTABLE command.
  • CTest Support for in-source builds.
  • CTest Skip tests that do not have defects.
  • CTest new option -I that adds the ability to run a limited sub-set of the tests.
  • CTest support for Valgrind and Purify.
  • CTest New testing script support, that allows the nightly testing process to be automated.
  • New Find modules: FindPHP4.cmake, FindPerlLibs.cmake, FindPike.cmake, FindRuby.cmake, FindSWIG.cmake, UseSWIG.cmake
  • Many bug fixes and other minor changes.

Questions or comments are always welcome!