Also, improve the documentation of the fixup_bundle and fixup_bundle_item functions to clarify that plugin type "libs" need to be copied into the bundle *before* calling fixup_bundle. Commit e93a4b4d3421ced7b8c852b76c0dcb427f798df8 changed the way that the libs parameter to fixup_bundle is interpreted. Before the commit, the libs were copied into the bundle first and then fixed up. After the commit, the copy was skipped, assuming the libs were in the bundle in the first place, and then the fixups occurred as before. However, before the commit, it was possible to name a lib from outside the bundle, and have it copied in and then fixed up. Its resolved embedded name was always inside the bundle before. After, its resolved embedded name was just the same as its resolved name, which is in its original location, and not necessarily inside the bundle. This manifested itself as a problem with the ParaView call to fixup_bundle and its many plugins. Previously, ParaView had simply passed in the list of plugin file names as they existed in the build tree, and left the copying into the bundle up to the fixup_bundle function. When built with CMake 2.8.3 (the first version to contain the above named commit) the fixup_bundle call would inadventently fixup libraries in the build tree, not libraries that were in the bundle. Furthermore, the plugins would not be in the final bundle. This points out the fact that the fix for the bugs made by the above commit was a backwards-incompatible change in behavior. This commit makes it an error to try to fixup an item that is not already inside the bundle to make the change in behavior apparent to folks who were depending on the prior copy-in behavior: now, they should get an error, and hopefully, reading the new and improved documentation, should be able to resolve it in their projects by adding code to install or copy in such libraries prior to calling fixup_bundle. Whew.
This is CMake, the cross-platform, open-source make system. CMake is distributed under the BSD License, see Copyright.txt. For documentation see the Docs/ directory once you have built CMake or visit http://www.cmake.org. Building CMake ============== Supported Platforms ------------------- MS Windows, Mac OS X, Linux, FreeBSD, Solaris, HP-UX, IRIX, BeOS, QNX Other UNIX-like operating systems may work too out of the box, if not it shouldn't be a major problem to port CMake to this platform. Contact the CMake mailing list in this case: http://www.cmake.org/mailman/listinfo/cmake If you don't have any previous version of CMake already installed -------------------------------------------------------------- * UNIX/Mac OSX/MinGW/MSYS/Cygwin: You need to have a compiler and a make installed. Run the bootstrap script you find the in the source directory of CMake. You can use the --help option to see the supported options. You may want to use the --prefix=<install_prefix> option to specify a custom installation directory for CMake. You can run the bootstrap script from within the CMake source directory or any other build directory of your choice. Once this has finished successfully, run make and make install. So basically it's the same as you may be used to from autotools-based projects: $ ./bootstrap; make; make install * Other Windows: You need to download and install a binary release of CMake in order to build CMake. You can get these releases from http://www.cmake.org/HTML/Download.html . Then proceed with the instructions below. You already have a version of CMake installed --------------------------------------------- You can build CMake as any other project with a CMake-based build system: run the installed CMake on the sources of this CMake with your preferred options and generators. Then build it and install it. For instructions how to do this, see http://www.cmake.org/HTML/RunningCMake.html
Description
Languages
C
42.4%
C++
30.2%
CMake
14.3%
PostScript
5.3%
reStructuredText
4%
Other
3.4%