summaryrefslogtreecommitdiffstats
path: root/Help
Commit message (Collapse)AuthorAgeFilesLines
* Allow toolchain files to specify an external toolchain.Stephen Kelly2013-11-192-0/+14
| | | | | | | | | Clang can compile code, but uses the gcc tools for other tasks such as linking. The -gcc-toolchain option can be used for that, but generalize so that other compilers can be treated the same. If such a location is specified, use it as a hint for finding the binutils executables.
* Add compiler target compile options.Stephen Kelly2013-11-192-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | For clang, this allows passing -target <triple> to the compiler, and for qcc, -V<arch> using toolchain files containing something like set(triple arm-linux-gnueabihf) set(CMAKE_C_COMPILER "/usr/bin/clang") set(CMAKE_C_COMPILER_TARGET ${triple}) set(CMAKE_CXX_COMPILER "/usr/bin/clang++") set(CMAKE_CXX_COMPILER_TARGET ${triple}) or set(arch gcc_ntoarmv7le) set(CMAKE_C_COMPILER /opt/qnx650/host/linux/x86/usr/bin/qcc) set(CMAKE_C_COMPILER_TARGET ${arch}) set(CMAKE_CXX_COMPILER /opt/qnx650/host/linux/x86/usr/bin/QCC) set(CMAKE_CXX_COMPILER_TARGET ${arch}) Both clang and qcc are inherently cross compiler( driver)s. When cross-compiling with clang, use the CMAKE_${lang}_COMPILER_TARGET as the _CMAKE_TOOLCHAIN_PREFIX to find the appropriate binutils. When cross-compiling with QNX qcc, use the CMAKE_${lang}_COMPILER_TARGET to set the appropriate _CMAKE_TOOLCHAIN_PREFIX.
* CTest: added documentation for the "Upload" submission PARTNils Gladitz2013-11-151-0/+1
|
* Help: Format manual/*.1.rst options as definition listsKitware Robot2013-11-146-417/+527
| | | | | Convert the command-line option documentation formatting from bullet lists to definition lists.
* Merge topic 'policy-summary-periods'Brad King2013-11-132-2/+2
|\ | | | | | | | | | | 49cbca6 CMP0038: Add missing '.' to policy summary line 7390002 CMP0039: Add missing '.' to policy summary line
| * CMP0038: Add missing '.' to policy summary lineBrad King2013-11-121-1/+1
| |
| * CMP0039: Add missing '.' to policy summary lineDaniele E. Domenichelli2013-11-121-1/+1
| |
* | Refactor tool selection for edit_cache (#14544)Brad King2013-11-121-1/+2
|/ | | | | | | | | Refactor edit_cache tool selection to ask each global generator for its preference. Teach the Ninja generator to always use cmake-gui because Ninja by design cannot run interactive terminal dialogs like ccmake. Teach the Makefile generator to use cmake-gui when also using an "extra" generator whose IDE has no terminal to run ccmake, and otherwise fall back to CMAKE_EDIT_COMMAND selection for normal Makefile build systems.
* Merge topic 'tll-target-policies'Brad King2013-11-084-0/+57
|\ | | | | | | | | | | | | 596b2a8 Disallow linking to utility targets (#13902). 301bb5c Disallow link-to-self (#13947). 05f5fde Disallow invalid target names (#13140)
| * Disallow linking to utility targets (#13902).Stephen Kelly2013-11-072-0/+18
| |
| * Disallow link-to-self (#13947).Stephen Kelly2013-11-072-0/+17
| |
| * Disallow invalid target names (#13140)Stephen Kelly2013-11-072-0/+22
| | | | | | | | | | Exclude Borland and NMake from the CMP0037 test. They do not accept the colon in a target name.
* | Merge topic 'doc-cmake-language'Brad King2013-11-083-2/+474
|\ \ | | | | | | | | | | | | | | | 79fd233 Help: Reference cmake-language.7 comment docs from cmake-developer.7 a931ee4 Help: Add cmake-language.7 manual
| * | Help: Reference cmake-language.7 comment docs from cmake-developer.7Brad King2013-11-081-2/+3
| | | | | | | | | | | | | | | | | | The cmake-language.7 manual now documents comment syntax. Reference it from cmake-developer.7 when discussing how to add comment-enclosed documentation to modules.
| * | Help: Add cmake-language.7 manualBrad King2013-11-082-0/+471
| |/
* | Help: Clarify execute_process COMMAND argument behaviorBrad King2013-11-071-0/+14
| | | | | | | | | | | | | | | | State in the execute_process how COMMAND arguments are passed to the child. Add a note at the end about how the command differs from add_custom_*(). Suggested-by: Alan W. Irwin
* | Help: Format execute_process command documentationBrad King2013-11-071-26/+39
|/ | | | | Use a code-block for the signature. Format the options as a definition list.
* Merge topic 'remove-cmake-i-wizard'Brad King2013-11-052-3/+2
|\ | | | | | | | | 0fa9aea Help: Drop mention of cmake -i wizard mode
| * Help: Drop mention of cmake -i wizard modeBrad King2013-11-042-3/+2
| | | | | | | | | | The parent commit removed support for this mode, so do not mention it in the documentation.
* | Help: Refine manual/*.1.rst usage summariesBrad King2013-11-045-14/+28
| | | | | | | | | | Use a parsed-literal block to list possible command-line signatures. Add an "Options" section header before the list of options.
* | Fix INTERFACE_LINK_LIBRARIES documentation typosBrad King2013-11-043-4/+4
| | | | | | | | | | | | | | Apply the changes from commit 603fe925 (Fix summary documentation of INTERFACE_LINK_LIBRARIES, 2013-11-04) and commit 0aa97b6b (Fix spelling in INTERFACE_LINK_LIBRARIES documentation, 2013-11-04) to the new location of the same documentation.
* | Merge topic 'policy-CMP0022-fixes-for-master'Brad King2013-11-041-7/+10
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b51696f CMP0022: Update target_link_libraries plain signature documentation 25b7f87 Merge branch 'policy-CMP0022-fixes' into policy-CMP0022-fixes-for-master 0a561a0 CMP0022: Warn about a given target at most once 23d21b7 Do not export INTERFACE_LINK_LIBRARIES from non-linkable targets ef10b87 CMP0022: Plain target_link_libraries must populate link interface 0e06788 CMP0022: Add test for target_link_libraries plain signature c0f4a61 CMP0022: Add unit test for null pointer check and message. 4b0cfa7 Merge branch 'output-CMP0022-entries' into policy-CMP0022-fixes
| * | CMP0022: Update target_link_libraries plain signature documentationBrad King2013-11-031-7/+10
| | | | | | | | | | | | | | | | | | Make the documentation change made by commit ef10b87c (CMP0022: Plain target_link_libraries must populate link interface, 2013-11-02) in the new location for the same documentation.
* | | Merge topic 'doc-CMAKE_INCLUDE_DIRECTORIES_BEFORE'Brad King2013-11-044-1/+19
|\ \ \ | | | | | | | | | | | | | | | | 12d10a0 Add missing documentation for include dirs related variables. (#12611)
| * | | Add missing documentation for include dirs related variables. (#12611)Stephen Kelly2013-11-024-1/+19
| | | | | | | | | | | | | | | | | | | | Document CMAKE_INCLUDE_DIRECTORIES_BEFORE and CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE.
* | | | Merge topic 'improve-tgt-INCLUDE_DIRECTORIES-docs'Brad King2013-11-041-5/+8
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | 8c6363a cmTarget: Improve INCLUDE_DIRECTORIES property docs (#13188).
| * | | cmTarget: Improve INCLUDE_DIRECTORIES property docs (#13188).Stephen Kelly2013-11-021-5/+8
| |/ / | | | | | | | | | Note that relative paths should not be added directly.
* | | Merge topic 'doc-rst-note-and-productionlist'Brad King2013-11-021-0/+10
|\ \ \ | |/ / |/| | | | | | | | 450b515 cmRST: Add support for the note and productionlist directives
| * | cmRST: Add support for the note and productionlist directivesBrad King2013-10-301-0/+10
| | | | | | | | | | | | | | | | | | Simply print out the lines as normal paragraph text. Teach the CMakeLib.testRST test to cover this syntax. Update the cmake-developer.7 manual to document support for the directives.
* | | Help: Limit reference manual toctree depth to 1Brad King2013-11-016-0/+36
| | | | | | | | | | | | | | | | | | Add a :maxdepth: option to all toctree directives to limit their depth to 1. We do not want subheadings from individual documents to pollute the already large lists of CMake Domain objects.
* | | Merge topic 'add-CMAKE_FIND_NO_INSTALL_PREFIX'Brad King2013-11-012-0/+14
|\ \ \ | | | | | | | | | | | | | | | | fe057ab Allow disabling adding the install prefix to the prefix search path.
| * | | Allow disabling adding the install prefix to the prefix search path.Stephen Kelly2013-10-312-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | In certain scenarios, it is preferable to keep a 'dirty' install prefix than to clear it, and to expect that content will not be found there. Add a CMAKE_FIND_NO_INSTALL_PREFIX variable that can be set to disable searching the install prefix.
* | | | Merge topic 'vs-generator-names'Brad King2013-10-317-30/+39
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | 29071fe VS: Add version year to generator names
| * | | VS: Add version year to generator namesBrad King2013-10-287-30/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rename the Visual Studio >= 10 generators to indicate the version year: Visual Studio 10 => Visual Studio 10 2010 Visual Studio 11 => Visual Studio 11 2012 Visual Studio 12 => Visual Stduio 12 2013 Report the names with the year to the list of available generators so that the cmake-gui drop-down shows the years. When selecting a generator from the "-G" option or from an existing CMAKE_GENERATOR cache entry, recognize names without the years for compatibility and map them to the names with years. Update the generator names in the cmake-generators.7 manual.
* | | | Help: Glob manual/*.rst in Sphinx configurationBrad King2013-10-3013-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Add the man page description line as explicit markup at the top of each Help/manual/*.rst file and scan it from conf.py to automatically generate the man_pages Sphinx configuration value. This reduces the number of places that need to be changed when a new manual is added.
* | | | Merge topic 'doc-organize-index'Brad King2013-10-291-0/+2
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | c9d5ccf Help: Add index document title
| * | | | Help: Add index document titleBrad King2013-10-291-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | Add an explicit title directive to set the HTML index page title instead of taking the first section header.
* | | | | Merge topic 'doc-organize-index'Brad King2013-10-291-10/+28
|\ \ \ \ \ | |/ / / / | | | / / | |_|/ / |/| | | 2c7cd95 Help: Organize top-level index
| * | | Help: Organize top-level indexBrad King2013-10-281-10/+28
| |/ / | | | | | | | | | | | | Divide the list of manuals into separate sections each with its own title.
* | | Merge topic 'Qt-auto-generators'Brad King2013-10-2814-0/+154
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9c87d9c Add automatic rcc invocation for Qt. 84218e1 Add automatic uic invocation for Qt. 94a0ca6 Record which files are skipped by automoc. 18fb758 Run the main executable created in the autogen tests. e485ba1 Rename the QtAutomoc tests to QtAutogen. 7ce65c3 Add extra checks for the AUTOMOC target property. 32771fc Update output messages for generic use. f371ab5 Rename RunAutomoc to RunAutogen. 85b3d6e Extract an SetupAutoMocTarget method. ca124a1 Rename the AutomocInfo.cmake file to be more generic. a342c9f Move some makefile definitions up away from moc-specific code. 98632ef Add the AUTOGEN_TARGETS_FOLDER and obsolete AUTOMOC_TARGETS_FOLDER. 63378ba Rename some variables to reflect broader scope. 97f1aa3 Rename method to reflect generic use. 4abb111 Rename local variable to reflect generic use. 03878c9 Move variable set to where it is used. ...
| * | Add automatic rcc invocation for Qt.Stephen Kelly2013-10-247-0/+71
| | | | | | | | | | | | | | | This replaces the need to invoke qt4_add_resources by allowing adding the source .qrc file directly to the target sources.
| * | Add automatic uic invocation for Qt.Stephen Kelly2013-10-247-0/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The source files are already processed by cmQtAutomoc to look for moc includes, so extend that to also look for ui_ includes and find corresponding .ui files to process. This replaces the need to invoke qt4_wrap_ui(). As the ui files are not likely to be part of the SOURCES of the target, store the options associated with them separately in the cmMakefile for querying during the autogen run.
| * | Add the AUTOGEN_TARGETS_FOLDER and obsolete AUTOMOC_TARGETS_FOLDER.Stephen Kelly2013-10-243-0/+11
| | |
* | | Merge topic 'compatible-interface-numbers'Brad King2013-10-265-3/+42
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ff6c401 cmTarget: Add interface for compatible numeric properties e4e20c1 cmTarget: Add enumeration for consistency to expect from properties. 9877769 cmTarget: Assign consistent content back to the property being evaluated. 816b4a8 cmTarget: Make consistentProperty return consistent content. 030800a cmTarget: Add a template to create correct implied content.
| * | | cmTarget: Add interface for compatible numeric propertiesStephen Kelly2013-10-245-3/+42
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using the boost MPL library, one can set a define to increase the limit of how many variadic elements should be supported. The default for BOOST_MPL_LIMIT_VECTOR_SIZE is 20: http://www.boost.org/doc/libs/1_36_0/libs/mpl/doc/refmanual/limit-vector-size.html If the foo library requires that to be set to 30, and the independent bar library requires it to be set to 40, consumers of both need to set it to 40. add_library(foo INTERFACE) set_property(TARGET foo PROPERTY INTERFACE_boost_mpl_vector_size 30) set_property(TARGET foo PROPERTY COMPATIBLE_INTERFACE_NUMBER_MAX boost_mpl_vector_size) target_compile_definitions(foo INTERFACE BOOST_MPL_LIMIT_VECTOR_SIZE=$<TARGET_PROPERTY:boost_mpl_vector_size>) add_library(bar INTERFACE) set_property(TARGET bar PROPERTY INTERFACE_boost_mpl_vector_size 40) # Technically the next two lines are redundant, but as foo and bar are # independent, they both set these interfaces. set_property(TARGET bar PROPERTY COMPATIBLE_INTERFACE_NUMBER_MAX boost_mpl_vector_size) target_compile_definitions(bar INTERFACE BOOST_MPL_LIMIT_VECTOR_SIZE=$<TARGET_PROPERTY:boost_mpl_vector_size>) add_executable(user) target_link_libraries(user foo bar) Because the TARGET_PROPERTY reads the boost_mpl_vector_size property from the HEAD of the dependency graph (the user target), and because that property appears in the COMPATIBLE_INTERFACE_NUMBER_MAX of the dependencies of the user target, the maximum value for it is chosen for the compile definition, ie, 40. There are also use-cases for choosing the minimum value of a number. In Qt, deprecated API can be disabled by version. Setting the definition QT_DISABLE_DEPRECATED_BEFORE=0 disables no deprecated API. Setting it to 0x501000 disables API which was deprecated before Qt 5.1 etc. If two dependencies require the use of API which was deprecated in different Qt versions, then COMPATIBLE_INTERFACE_NUMBER_MIN can be used to ensure that both can compile.
* | | Merge topic 'remove-pre-2.4-compatibility'Brad King2013-10-261-8/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | 7d47c69 Drop compatibility with CMake < 2.4 c7c44fc CTestTest*: Update minimum required CMake to 2.4
| * | | Drop compatibility with CMake < 2.4Brad King2013-10-231-8/+1
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Drop all behavior activated by setting CMAKE_BACKWARDS_COMPATIBILITY to a value lower than 2.4, and generate an error when projects or the user attempt to do so. In the error suggest using a CMake 2.8.x release. Teach cmake_minimum_required to warn about projects that do not require at least CMake 2.4. They are not supported by CMake >= 3.0. Replace the documentation of CMAKE_BACKWARDS_COMPATIBILITY with a reference to policy CMP0001.
* | | Merge topic 'minor-cleanups'Brad King2013-10-243-3/+3
|\ \ \ | | | | | | | | | | | | | | | | | | | | f3f49ff Docs: Fix typo b0686fd Docs: Fix typo.
| * | | Docs: Fix typoStephen Kelly2013-10-231-1/+1
| | | | | | | | | | | | | | | | opitions -> options.
| * | | Docs: Fix typo.Stephen Kelly2013-10-232-2/+2
| | | | | | | | | | | | | | | | dependee -> depender.