Merge CMake 2.8.1 to start branchy workflow

Merge the release branch into master to get its version number, tags,
and ChangeLog.  Revert the version on master from 2.9 back to 2.8.
Future releases will be prepared directly in master.

This is the starting point for a branchy workflow based on one described
by the "git help workflows" man page.  New development will be done on
local topic branches.  Topics will be published by merging them into one
of the integration branches:

 maint  = Maintenance of previous release
 master = Preparation of future release
 next   = Development of features ("next" to be merged into master)

In order to bootstrap the topic-based workflow from here, all changes in
master since the 2.8 release branch started will either be included in
the next release or reverted and recreated on a topic branch.
This commit is contained in:
Brad King 2010-05-17 13:36:19 -04:00
commit 98821a4e35
2 changed files with 328 additions and 2 deletions

View File

@ -337,9 +337,10 @@ ENDMACRO (CMAKE_BUILD_UTILITIES)
#-----------------------------------------------------------------------
# The CMake version number.
SET(CMake_VERSION_MAJOR 2)
SET(CMake_VERSION_MINOR 9)
SET(CMake_VERSION_PATCH 0)
SET(CMake_VERSION_MINOR 8)
SET(CMake_VERSION_PATCH 1)
#SET(CMake_VERSION_TWEAK 0)
#SET(CMake_VERSION_RC 1)
# Releases define a tweak level.
IF(DEFINED CMake_VERSION_TWEAK)

325
ChangeLog.manual Normal file
View File

@ -0,0 +1,325 @@
Changes in CMake 2.8.1
- Fix failing test on cygwin
- Add a new serach path for MPICH2
Changes in CMake 2.8.1 RC 5
- Fix FindQt4 to work with OpenGL on the mac
- Add .git .bzr and .hg to the list of default CPack ignore directories.
Changes in CMake 2.8.1 RC 4
- CTest: Do not hide test GUI windows (fixes 2.8.0 regression)
- Documentation: Clarify CMAKE_MODULE_PATH variable
- FindQt4: Add support for QtDeclartive module
- FortranCInterface: Fix PathScale detection
- Suppress GNU flag -fPIC on Windows (fixes 2.8.1-rc1 regression)
Changes in CMake 2.8.1 RC 3
- Add CMAKE_XCODE_ATTRIBUTE_<attr> interface to set compiler (#9125)
- Fix Eclipse files for targets in subdirectories (#9978)
- Fix custom command rule hashes to avoid extra rebuilds
- Print non-make generator name in initial compiler test
Changes in CMake 2.8.1 RC 2
- CPack: Avoid deleting long PATH values with NSIS (#10257)
- CTest: Fix and test cost-based test scheduler
- CTest: Fix and test git updates for case of out-dated index
- CTest: Fix regression caused by fix for (#2336) in rc1
- CTest: Setup command-line dashboard support with Git
- FindCUDA: Improve docs, use -rpath on Apple, fix dependency scanning
- Fix OS X deployment-target and sysroot defaults (#9959,#9898,#10155)
- Recognize the Compaq Fortran compiler
Changes in CMake 2.8.1 RC 1
- Add "NMake Makefiles JOM" generator
- Add PathScale compiler support
- Add per-configuration OUTPUT_DIRECTORY properties
- Add per-target OSX_ARCHITECTURES property
- check_type_size(): Handle mixed-size universal binaries
- CPack: Document Mac generators
- CPack: Improve RPM spec files
- Create CMAKE_FORCE_Fortran_COMPILER for cross-compiling
- CTest: Add --http1.0 command-line option
- CTest: Add --timeout command-line option
- CTest: Do not munge UTF-8 output in XML files
- CTest: Document CTEST_USE_LAUNCHERS option
- CTest: Fix killing of whole test process trees
- CTest: Handle failure of running invalid executables
- CTest: Honor the -C arg to ctest (#2336)
- CTest: Improve host system introspection
- CTest: Optionally randomize test order (--schedule-random)
- CTest: Skip tests with unsatisfied REQUIRED_FILES test property
- CTest: Submit arbitrary results with ATTACHED_FILES test property
- ctest_build(): Enhance signature
- ctest_start(): Add APPEND option
- ctest_start(): Move CTEST_CHECKOUT_COMMAND from ctest_update
- ctest_update(): Submit global tree revision in Update.xml
- Cygwin: Do not export all symbols from DLLs (#10122)
- Cygwin: Name DLLs with SOVERSION, not VERSION (#10122)
- Detect 32/64-bit Windows with Intel compiler
- Eclipse generator enhancements
- ExternalProject: Add TIMEOUT parameter
- FindCUDA: Respect CUDA version differences
- FindCURL: Find import libraries on Windows
- FindDCMTK: Look in more places
- FindGTest: Handle spaces better (#10065)
- FindGTK2: Look in fink locations on Mac OS X
- FindHDF5: Follow find-module API conventions
- FindJava: Support for versioned find
- FindJNI: Honor find_package() REQUIRED and QUIET options
- FindMPI: Improve Windows support
- FindOpenSSL: Fix MinGW support
- FindPythonLibs: Look in config for static library
- FindQt4: Misc enhancements, sync with KDE vesion
- FindRuby: Fix version convention on Windows
- FindX11: Improve documentation
- Fortran: Detect address size (#10119)
- FortranCInterface: Honor user flags
- Improve VS 2010 beta2 support
- link_directories(): Treat relative paths consistently (CMP0015)
- Modernize FindLibXslt and FindLibXml.cmake
- Refactor platform info to simplify adding new compilers
- Support cross-compiling versioned DLLs
- UseQt4: Provide dependencies only for static Qt (#10021)
- Address issues:
#2336, #3571, #5041, #7541, #8725, #9011, #9042, #9054, #9163,
#9171, #9450, #9697, #9764, #9782, #9792, #9862, #9894, #9913,
#9916, #9917, #9918, #9949, #9965, #9970, #9982, #9985, #10003,
#10014, #10021, #10032, #10055, #10060, #10065, #10114, #10119,
#10122, #10126, #10136.
Changes in CMake 2.8.0 Release
- CPack: Honor CPACK_NSIS_DISPLAY_NAME (fixes regression)
Changes in CMake 2.8.0 RC 7
- Partially sync FindQt4 with KDE version
- Improve implementation of fix for #9090
- Fix CTest infinite loop when test executable could not be found
- Fix #9833: Document ctest --help-command
- FindCUDA: Fix -fPIC from being used on executable object files
- Fix #9654: %files section in spec file should not list directories
- Fix #9851: Better STRING(RANDOM) seeding
- Fix double bootstrap build for in source builds
- Fix CTest to use allowed value for valgrind --num-callers
- Remove non-language implicit link dependencies
- Implement LINK_FLAGS_<CONFIG> property on Xcode
Changes in CMake 2.8.0 RC 6
- Partially sync FindQt4 with KDE version
- Fix #9090: Teach CTest subdirs() command to handle absolute paths
- Fix CTest bug that could start a test twice
Changes in CMake 2.8.0 RC 5
- CTest now detects cycles in test dependency graph
- Warn on set(PARENT_SCOPE) at top scope
- Fix Xcode <= 2.0 projects with CMAKE_BUILD_TYPE
- Fix flags for Intel Fortran on Windows
- Fix #2199: UseSWIG documentation for swig_generated_file_fullname
- Fix #7915: UseSWIG interaction with JNI
- Fix #8971: FindOpenSSL now works on windows
- Fix #9124: CPackDeb documentation
- Fix #9722: cmake-gui reports error when not able to create build directory
- Fix #9767: Match more valgrind-reported leaks in CTest memcheck
- Fix #9777: Sync CMakeDetermineJavaCompiler paths with FindJava
- Fix #9793: FindJNI should find matching jni.h and jni_md.h
- Fix #9817: FindJNI on Solaris
- Fix FindHDF5 when hdf5.h exists without H5pubconf.h
- Fix FindZLIB to follow variable name conventions
- Fix invalid use of auto_ptr on array
- Mention temp var convention in Modules/readme.txt documentation
Changes in CMake 2.8.0 RC 4
- Fix try_compile when file cannot be found
- Add new module to test manifest installation issues on windows.
- Add more test coverage
-Improvements in finding MPI on windows. ENH: reorganized searching mpi for mpi components (include,lib,bin) using a single set of search paths instead of seperately mainted lists of paths for each.
- Look for nvcc in the 32 bit bin directory before the 64 bin directory.
- BUG: hardcore some values so output matches cmVS10CLFlagTable.h (addresses bug #9753)
- Avoid Intel linker crash in BuildDepends test
- Fix Intel Fortran SHARED libraries on Linux
- Fix working dir issue for ctest
- Fix if() command and CMP0012 OLD/NEW behavior
- Allow for /D to change install directory on the command line for NSIS
- Move SetErrorMode around calls to generate and configure instead of setting it for the whole application for cmake-gui on windows. Allows for bad installs of windows shell programs to not break file completion.
- Fix Intel and MinGW Fortran DLL import libraries
- Fix Xcode dylib version default
- Fix the showing of non-cpp files in the IDE for VS 10
- Fix optionally-valued booleans in VS 10 flag table
- Detect and set Unicode character set in VS 10
- Add support for the g95 Fortran compiler
- Test all target types in Fortran
- Add Xcode file association for Fortran
- Fix VS 10 flag table for precompiled headers
- Fix VS 10 .sln files for Windows Explorer
- Fix Microsoft.Cpp.$(Platform).user.props in VS10b2
- Fix up file(DOWNLOAD ) a bit, better error checking and uses of long not double for timeout as curl needs, bug# 9748
- Add a VS 10 Win64 generator
- Fix for bug#9686 convert java_home to a cmake path before using.
- fix for bug# 9751, add check for MSVC10
- Fix for bugs #9756, #9690 and #9755, header files were not included, and link_directories we incorrect
- Add a module to test an install tree to verify that the MS CRT version is correct.
- Fix seg fault for empty ENV{} call bug #9747
- Better fix for finding the MSBuild that matches the VS 10 install.
- make testing the CodeBlocks and Eclipse generators easier by not requiring the CMAKE_EDIT_COMMAND variable
- Do not link library dependencies in VS solutions
- Ctest was broken for subdirs. Restored working directory state for tests so that their executables could be found.
- Fixes version detection using osg/Version on Mac OSX when OSG is installed as a framework
- Avoid C++ linker language in VS Fortran project
- Avoid duplicate ZERO_CHECK in VS solutions
- Fixed bug 8319, search for the Python shared library in the standard locations.
- Fix bug#9714, should not crash when version file is not where it should be...
- Fix ctest output alignment for cases where total tests run is not the same width as max test index.
- make it more robust wrt. #9621
- Add another possible error message that curl might emit with an empty drop location.
- Fix issue #5668 - use CollapseFullPath when determining if covered file is within source or binary tree. Allows gcc/gcov coverage analysis using MinGW on Windows.
- CTest-side support for compiler name and compiler version information. Requires CDash update to show on CDash.
- Add a bunch more testing coverage.
Changes in CMake 2.8.0 RC 3
- CTest Added OS Platform (cpu architecture) detection support to windows system
- Several minor FindBoost changes to address posts on mailing list
- Resolve #9685: Fix include dir to be correct path for gnutils
- Fix color check for dependency scanning
- Remove CMP00015 for now as it breaks more things than it fixes
- Reduce duration of ctest_sleep arguments. Add SmallAndFast project. Replace kwsys with SmallAndFast to make CTestTest faster. (I will keep an eye on coverage results after this commit and make sure we still have equivalent ctest coverage.)
- Do not use -fPIC to link executables
- Split Borland compiler information files
- Trimmed off the newline from sw_vers output on mac, it could cause xml parsing errors if left in
- Check for openssl-linked option with Qt 4.4+ before making ssl a dependency.
- Make Complex test of CMakeLib more optional
- Modernize FindVTK module
- Fix find_package() when <pkg>_DIR is wrong
- Do not collapse path of NOTFOUND values
- More robust implicit link line detection regex
- fix Xcode 30 generator
- Use the correct CMake (the freshly built one) to drive the CMakeWizardTest.
- Support more special characters in file(STRINGS)
- Log implicit link line detection regex
- speedup C dependency scanning even more
- Avoid non-root copies of root-only targets
- Added better OS information for Mac OS X
- Use work-around from bug 4772 for C++ and Fortran
- FortranCInterface: Mangling for Intel on Windows
- cmake-gui don't allow consecutive generates without a configure.
- Fix Preprocess test for Intel on Windows
- Teach intel compiler on windows to place .lib files and .pdb files.
- CPack: Fix bash-isms in launch script
- BUG: #0009648 Change "The following tests FAILED" message to print on stdout rather than stderr
- Avoid (Unix|Windows)Paths.cmake multiple include
- When getting include dirs for moc, also watch for framework includes and use -F instead of -I.
- Find locally installed software first
- Add '#!/bin/sh' to cygwin-package.sh
- Fix permsissions of installed SquishRunTestCase.sh
- Fix module docs to be manpage (groff) friendly
- Support GNU/kFreeBSD
- Remove old Encoding field from CMake.desktop
- FindQt3: Prefer (moc|uic)-qt3 names over (moc|uic)
- Match width of ctest "Start xx: " line to line up with the end test line
- Remove old license from FindPkgConfig.cmake module
- Test target link information invalidation
- Invalidate target link info when necessary
- Use new style header generation and get rid of OBJECT_DEPENDS in tutorial
- Fix issue #8649 - move the location of CPACK_NSIS_EXTRA_INSTALL_COMMANDS so that it is not excluded from execution when 'Do not create shortcuts' is checked.
- add the additional features for the dbus macros from KDE's FindQt4.cmake
fc9f7a5 Fix warnings in CMake source code.
- Correct some typos in error messages in the string command. Add a test that covers more of the code implemented in cmStringCommand.cxx, especially the error handlers.
- Create INTERPROCEDURAL_OPTIMIZATION build feature
- Document CMAKE_CURRENT_LIST_FILE more precisely
- Fix the documentation to say what it really does. Bug #9638
- document how the minimum version can be specified
- Fix warnings in CMake source code. Suppress rampant warnings emanating from Qt files.
- Add documentation for Cocoa flag and move Motif under X11 flag.
Changes in CMake 2.8.0 RC 2
- Fix FindQt4 so that QtHelp depends on QtNetwork
- Add missing copyright notice to CMake.cmake module
- Add alternative _UTILITY targets to all VS solutions
- FindGTest.cmake some bugfixes, also added public function for closer integration btwn GoogleTest & CTest, contributed by Dan Blezek.
- Eliminate ExternalProject's use of CMAKE_CFG_INTDIR subdir for Makefile generators. It was causing problems with parallel make -j invocations. Keep it for multi-configuration build systems so that Debug and Release stamp files remain separate.
- Fix for bug #9611, some more paths for OpenJDK.
- Fix get_filename_component() registry view with wow64
- Fix warnings in CMake source code.
- Fix module definition file reference for VS6 NMake
- Fix for bug #9611 do not hard code archs for search paths of java, look at the machine type.
- Fix bug#9619 add a link to module maintainers page in readme.txt for Modules
- Add cmake-help-command function to emacs-mode
- Add initial XL C compiler flags for safer builds
- Split XL compiler information files
- Fix default install prefix on Haiku
- Fix use of module .def files for MS tools
- Add StringProperty options includeing /def: for VS 10 flag table
- Convert copyright to OSI BSD and clean up licenses
- ENH: Added ctest test coverage for a test timeout
- CTest honors test timeouts again.
- Remove ctest_submit from CTestTestParallel
- Fix shared library creation flag for XL on Linux
- Fix BUG: 0009612: --output-on-failure option doesn't work with
the new parallel CTest handler
- Removed support for cutil library and header file.
- Fixed CUDA_PROPAGATE_HOST_FLAGS, added path for Mac SDK.
- Make sure LINK_FLAGS are seen by generator, fix for part of bug#9613
- Fix issue #9412 - remove RPATH from files copied by
BundleUtilities.cmake on Linux. Thank
- Fix support for OLD behavior of policy CMP0002
- Fix issue #8818 - escape quotes in the license file when using the
DragNDrop cpack genera
- Fix .vfproj file version for Intel Fortran 10.1
- Use BeAPI for per-user package registry on Haiku
- Correct comments and use ASM${ASM_DIALECT} env. var instead of ASM
env. var to initialize
- Fix bug #9529.
- Fix Windows GUI implib and image version in VS 6
- Convert newlines from CRLF to LF
- Oops. Last commit did not create subdir before doing a touch on a
file in it. So it fails of a type that is expected to have a
location...
- Policies 14 and 15 will be first released in 2.8.0
- Document full version number with policy default
- Simplify bootstrap script source dir detection
- Documentation fixes, new CUDA_PROPAGATE_HOST_FLAGS, changed output
directory.
Changes in CMake 2.8.0 RC 1
- Qt based GUI cmake-gui is now the default GUI, MFC CMakeSetup is no
longer included in CMake. ccmake is still supported.
- cmake-gui supports multi-state values options.
- CMake now has cmake --build command that can build any CMake generated
project from the command line.
- Visual Studio 2010 beta support has been added.
- KDevelop generator now has color output for builds.
- CTest supports running tests in parallel with a -j N option.
- A new CTest CTEST_USE_LAUNCHERS option can be used to get better
dashboard error reports with make based tools.
- CTest has support for sub-projects and labels which can interact
with CDash.
- CTest now supports Git, Mercurial, and Bazaar.
- It is now possible to use DESTDIR in CPack for any CMake based projects
giving more flexibility on the final path names.
- The CPack Deb generator now computes the arch instead of hard coding it.
- Fortran/C mixed language projects made much easier. CMake now
automatically can compute the run time libraries for a compiler. In
addition, a new FortranCInterface module can determine the correct
name mangling needed to mix C and Fortran.
- Intel compiler support added to OSX, and support for embedded
manifests in the windows intel compiler was added.
- Depend scanning is now much faster with makefiles.
- Many FindQt4 improvements to stay working with current Qt releases
- FindMPI has improvements for windows.
- FindBoost has been updated to work with the most recent boost releases.
- New External Project Module. The 'ExternalProject_Add' function
creates a custom target to drive download, update/patch, configure,
build, install and test steps of an external project.
- xmlrpc dependancy has been removed
- CMAKE_OSX_DEPLOYMENT_TARGET cache variable has been created to set the
deployment OS for a build on OSX.
- Several new policies were added:
CMP0012
The if() command can recognize named boolean constants.
CMP0013
Duplicate binary directories are not allowed.
CMP0014
Input directories must have CMakeLists.txt.
CMP0015
The set() CACHE mode and option() command make the cache value
visible.
- Lots of bug fixes.