CMake: Difference between revisions

From KitwarePublic
Jump to navigationJump to search
m (moved cross-compiling to development topics)
(Replace content with link to new CMake community wiki)
 
(254 intermediate revisions by 94 users not shown)
Line 1: Line 1:
http://www.cmake.org/Art/CMakeBanner.jpg
{{CMake/Template/Moved}}


Welcome to CMake, the cross-platform, open-source make system. CMake is used to control the software compilation process using simple platform and compiler independent configuration files. CMake generates native makefiles and workspaces that can be used in the compiler environment of your choice. CMake is quite sophisticated: it is possible to support complex environments requiring system configuration, pre-processor generation, code generation, and template instantiation.
This page has moved [https://gitlab.kitware.com/cmake/community/wikis/Home here].
 
 
==CMake ==
 
===Tutorials===
* [http://www.linuxjournal.com/article/6700 Cross-Platform Software Development Using CMake]<br>Tutorial that should get anybody up to speed with CMake
 
* [[CMake:Install Commands| How to write platform independent installation instructions]]
 
* [[CMake HowToDoPlatformChecks| How to write platform checks with CMake]]<br>Describes how to implement platform or configure checks with CMake.
 
* [[CMake HowToFindInstalledSoftware| How to find installed software with CMake]]<br>Describes how to search for and then use software packages  with CMake.
 
* [[CMake:HowToUseExistingOSXFrameworks | How to find and use existing frameworks on OS X]] A quick example to help OS X users find frameworks automatically.
 
* [[CMake:How To Build KDE4 Software | How to build KDE4 software with cmake]]
 
* [http://qtnode.net/wiki/Qt_with_cmake Qt with CMake] Explains how to use CMake to build software with Qt4 and how to use it for Qt3 and KDE3 applications
 
* [http://www.wxwidgets.org/wiki/index.php/CMake How to use CMake for building software with wxWidgets ]
 
* [http://www.call-with-current-continuation.org Chicken Scheme] -  is a Scheme-to-C compiler which supports all major C compilers and OSs. Its extensively commented build system is easy to understand and demonstrates many non-trivial CMake features, e.g. how to generate source files and executables that are needed by the build itself,  how to use ADD_CUSTOM_COMMAND to drive languages other than C/C++ and more.
 
* [[CMake:Eclipse| How to use CMake with Eclipse]] - Short Tutorial that describes one way of setting up your project to work with Eclipse 3.3 and CDT 4.0, Better know as Eclipse Europa. These instructions are written with OS X /Linux in mind but should be applicable to Windows Operating Systems
 
=== Development Topics===
* [[CMake Useful Variables|Useful CMake Variables]]
* [[CMake Platform Dependent Issues|Platform Dependent Issues]]
* [[CMake Cross Compiling| Cross compiling with CMake]]
* [[CMake Performance Tips|Performance Tips]]
* [[CMake Editors Support|Various Editors / IDEs support]]
* [[CMake Generator Specific Information|Generator Specific Information]]
* [[CMake User Contributed Macros| Macros contributed by Users]]
* [[CMake:For CMake Hackers|For CMake Hackers]]
 
===Converters from other buildsystems to CMake===
 
All converters listed here are not "complete", i.e. the generated CMake files are not 100% finished, in all cases some work is left for the developer.
 
* [http://websvn.kde.org/trunk/KDE/kdesdk/cmake/scripts/ am2cmake (requires Ruby) ] Converts automake/autotools/libtool based projects to CMake. This one has been used for converting the KDE buildsystem to CMake. It's specialized in converting KDE 4 and KDE 3, but works also for other projects.
 
* [http://emanuelgreisen.dk/stuff/kdevelop_am2cmake.php.tgz Alternative Automake2CMake (requires PHP)] Converts KDevelop projects that use automake to CMake.
 
* [[CMake:ConvertFromQmake | qmake converter (requires Ruby)]] Converts projects that use Qt's qmake.
 
* [http://websvn.kde.org/trunk/KDE/kdesdk/cmake/scripts/ gencmake (requires Ruby) ] Creates basic CMakeLists.txt files from looking at the existing files.
 
* [http://www.eskilson.se/vcproj2cmake.rb vcproj2cmake.rb (requires Ruby)] Creates CMakeLists.txt files by extracting info from Visual Studio project files.
 
===More Information===
 
* [[CMake:Articles|Articles about CMake]]
 
* Where can I [http://www.cmake.org/HTML/Download.html download CMake]?
 
* What are some [[CMake Projects|projects using CMake]]?
 
* [http://www.cmake.org/mailman/listinfo/cmake CMake Mailing List]
 
* [http://www.cmake.org/HTML/Documentation.html CMake Documentation]
 
* [http://www.cmake.org/HTML/Examples.html A Simple CMake Example]
 
* [[CMake FAQ|CMake Frequently asked questions]]
 
 
==CTest==
 
===Tutorials===
* [[CMake Testing With CTest|Testing With CTest]]<br>Introduces to testing with CTest, submitting dashboards, and using CMake to add tests to the test system.
 
* [[CMake Scripting Of CTest|CTest Scripting]]<br>Describes the scripting with CTest which can significantly simplify and automate testing and submitting dashboards.
 
* [[CMake Generating Testing Files|Generating Input Files For CTest]]<br>Describe more in details the concepts behind testing with CTest and also explans how to use CTest without using CMake.
 
===More Information===
* [[CTest:Submission Issues|Configuring CTest Submission Methods]]
* [[CTest:Nightly, Experimental, Continuous|CTest Nightly, Experimental, Continuous, ...]]
* [[CTest:Coverage]]
* [[Media:CTest Running Modes.pdf]]
* [[CTest:FAQ|CTest Frequently asked questions]]
 
 
==CPack==
===Tutorials===
* [[CMake:Packaging With CPack|Packaging with CPack]]<br>Introduction to CPack, installing and packaging of software.
===More Information===
* [[CPack:Generator Information|CPack Generator Information]]
 
 
 
{{CMake/Template/Footer}}

Latest revision as of 15:40, 30 April 2018


The CMake community Wiki has moved to the Kitware GitLab Instance.

This page has moved here.