summaryrefslogtreecommitdiffstats
path: root/Help
Commit message (Collapse)AuthorAgeFilesLines
* Help: Format and clarify source_group() documentation (#14631)Brad King2013-12-051-14/+30
| | | | | Refine the .rst formatting. Document the FILES option explicitly and specify how it treats relative paths.
* Merge topic 'minor-cleanups'Brad King2013-12-051-5/+5
|\ | | | | | | | | | | | | 259bf09 Make the cmStrictTargetComparison operate on const cmTarget*. 8cc3cdb Help: Fix up the VISIBILITY_INLINES_HIDDEN docs. 1396ab8 Don't generate self-references for system include directories.
| * Help: Fix up the VISIBILITY_INLINES_HIDDEN docs.Stephen Kelly2013-12-031-5/+5
| | | | | | | | | | Resolve some sentence fragments, remove a copy-pasto from other docs and use a link to the CMAKE_VISIBILITY_INLINES_HIDDEN variable.
* | Merge topic 'cleanup-build-commands'Brad King2013-12-055-0/+44
|\ \ | | | | | | | | | | | | | | | e420124 CMakeDetermineCompilerId: Use CMAKE_VS_(DEVENV|MSBUILD|MSDEV)_COMMAND 0c55729 VS: Add CMAKE_VS_(DEVENV|MSBUILD|MSDEV)_COMMAND variables
| * | VS: Add CMAKE_VS_(DEVENV|MSBUILD|MSDEV)_COMMAND variablesBrad King2013-12-045-0/+44
| | | | | | | | | | | | | | | | | | | | | | | | Since commit 5f5c92b9 (VS: Add internal APIs to find MSBuild, devenv/VCExpress, and msdev, 2013-11-13) the VS generators have known how to lookup the locations of their build tools directly. Expose this information to CMake language code by defining new variables to hold the paths to these tools.
* | | Merge topic 'cmake-toolchains-manual'Brad King2013-12-0319-14/+230
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | c45b5ce Help: Add cmake-toolchains.7 manual 3e3f8b4 Help: Document the CMAKE_FIND_ROOT_PATH* variables. 531c108 Help: Document the CMAKE_TOOLCHAIN_FILE.
| * | Help: Add cmake-toolchains.7 manualStephen Kelly2013-12-032-0/+161
| | | | | | | | | | | | Create a manual for toolchain related docs.
| * | Help: Document the CMAKE_FIND_ROOT_PATH* variables.Stephen Kelly2013-11-2713-11/+56
| | | | | | | | | | | | | | | Add a replacement template for the variables, and link to them from the documentation for the find_* commands.
| * | Help: Document the CMAKE_TOOLCHAIN_FILE.Stephen Kelly2013-11-275-3/+13
| | | | | | | | | | | | Link to the new docs from existing references to the variable.
* | | Merge topic 'doc-pdb-not-for-static-libs'Brad King2013-12-028-22/+54
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | c0897cf Help: Document PDB behavior w.r.t. static libraries explicitly (#14600) 09c05f3 Help: Format PDB_NAME and PDB_OUTPUT_DIRECTORY documentation cb7b907 Help: Document CMAKE_PDB_OUTPUT_DIRECTORY_<CONFIG> variable
| * | | Help: Document PDB behavior w.r.t. static libraries explicitly (#14600)Brad King2013-12-027-9/+26
| | | | | | | | | | | | | | | | | | | | | | | | Document PDB_NAME and PDB_OUTPUT_DIRECTORY as applying only to shared libraries and executables. Add an explicit note to explain why they do not work for static libraries.
| * | | Help: Format PDB_NAME and PDB_OUTPUT_DIRECTORY documentationBrad King2013-12-025-18/+22
| | | | | | | | | | | | | | | | Add reStructuredText inline markup.
| * | | Help: Document CMAKE_PDB_OUTPUT_DIRECTORY_<CONFIG> variableBrad King2013-12-022-0/+11
| |/ /
* | | Merge topic 'INTERFACE_AUTOUIC_OPTIONS'Brad King2013-12-025-2/+27
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 98093c4 QtAutoUic: Add INTERFACE_AUTOUIC_OPTIONS target property. 02542b4 QtAutoUic: Handle new -include command line parameter. 1242f4e Genex: Add {UPPER,LOWER}_CASE and MAKE_C_IDENTIFIER. 754b321 QtAutogen: Use config without prefix in map key.
| * | | QtAutoUic: Add INTERFACE_AUTOUIC_OPTIONS target property.Stephen Kelly2013-11-274-2/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Transitively consume the property from linked dependents. Implement configuration-specific support by following the pattern set out for compile definitions and includes in cmQtAutoGenerators. Implement support for origin-tracking with CMAKE_DEBUG_TARGET_PROPERTIES. This is motivated by the needs of KDE, which provides a separate translation system based on gettext instead of the Qt linguist translation system. The Qt uic tool provides command line options for configuring the method used to translate text, and to add an include directive to the generated file to provide the method. http://thread.gmane.org/gmane.comp.kde.devel.frameworks/7930/focus=7992 Implement the interface to provide the uic options as a usage-requirement on the KI18n target, as designed for KDE.
| * | | Genex: Add {UPPER,LOWER}_CASE and MAKE_C_IDENTIFIER.Stephen Kelly2013-11-271-0/+6
| |/ /
* | | Merge topic 'export-includes'Brad King2013-12-022-0/+26
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5838aba Export: Report error on relative include with genex. 7a3e45b Export: Prefix relative items with genexes in INSTALL_INTERFACE. f088a32 Export: Process INSTALL_INTERFACE in INCLUDES DESTINATION. 9eedc85 Export: Process relative includes after genex evaluation. 80790f3 Export: Test existing behavior of exporting includes with genexes. 38afc82 target_include_directories: Allow relative path with genex
| * | | Export: Report error on relative include with genex.Stephen Kelly2013-11-262-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Diagnostics which check the sanity of exported include paths previously skipped over any path containing a generator expression. Introduce a policy to issue an error message in such cases. The export files created in the OLD behavior are not usable, because they contain relative paths or paths to the source or build location which are not suitable for use on installation. CMake will report an error on import.
* | | | Merge topic 'KateProjectGenerator2'Brad King2013-12-022-0/+27
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | b54c336 kate: add some documentation 9414217 kate: insert build targets 644e012 kate: add project generator for the Kate project plugin
| * | | kate: add some documentationAlex Neundorf2013-11-252-0/+27
| |/ / | | | | | | | | | Alex
* | | Merge topic 'ninja-compile-link-pool'Brad King2013-11-267-0/+70
|\ \ \ | | | | | | | | | | | | | | | | 7605e37 Ninja: job pool support for compiling and linking
| * | | Ninja: job pool support for compiling and linkingPeter Kümmel2013-11-257-0/+70
| |/ / | | | | | | | | | | | | Could be tested by setting the environment variable NINJA_STATUS=[%r]
* | | Merge topic 'minor-cleanups'Brad King2013-11-262-2/+2
|\ \ \ | | | | | | | | | | | | | | | | | | | | ebeb31d Help: Fix typo in CMP0040 docs. 97b0abb Help: Fix typo in genex docs.
| * | | Help: Fix typo in CMP0040 docs.Stephen Kelly2013-11-261-1/+1
| | | | | | | | | | | | | | | | 'report and error' -> 'report an error'
| * | | Help: Fix typo in genex docs.Stephen Kelly2013-11-261-1/+1
| |/ / | | | | | | | | | would be require -> would require
* | | cmQtAutogen: Allow specifying depends for autogen targets.Stephen Kelly2013-11-252-0/+15
|/ / | | | | | | | | Test this by generating files with a custom target, which moc requires to be present when it is run.
* | Help: Organize and revise the cmake-generators.7 manualBrad King2013-11-2515-142/+122
| | | | | | | | | | | | | | | | | | | | | | Move "extra" generators to their own section instead of duplicating them for each corresponding main generator. Divide the list of main generators into command-line and IDE sections and sort the names within each section. Document the environment from which each kind of generator may be used. Add a section to each "extra" generator documenting which main generators may be used with it.
* | Help: Document $ENV{VAR} syntax in cmake-language.7 manualBrad King2013-11-251-0/+3
| |
* | Merge topic 'cross-compiling-toolchain-variables'Brad King2013-11-225-8/+26
|\ \ | | | | | | | | | | | | 7521da2 Introduce CMAKE_STAGING_PREFIX variable.
| * | Introduce CMAKE_STAGING_PREFIX variable.Stephen Kelly2013-11-215-8/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This variable can be useful in cross-compiling contexts where the sysroot is read-only or where the sysroot should otherwise remain pristine. If the new CMAKE_STAGING_PREFIX variable is set, it is used instead of CMAKE_INSTALL_PREFIX when generating the installation rules in cmake_install.cmake. This way, the CMAKE_INSTALL_PREFIX variable always refers to the installation prefix on the target device, regardless of whether host==target. If any -rpath paths passed to the linker contain the CMAKE_STAGING_PREFIX, the matching path fragments are replaced with the CMAKE_INSTALL_PREFIX. Matching paths in the -rpath-link are not transformed. The cross-prefix usr-move workaround is assumed not to require extension regarding CMAKE_STAGING_PREFIX. The staging area is a single prefix, so there is no scope for cross-prefix symlinks. The CMAKE_INSTALL_PREFIX is still used to determine the workaround path, and that variable remains the relevant one even if CMAKE_STAGING_PREFIX is used. If the generated export files are deployed to the target, the workaround will still be in place, and still be employed if required.
* | | Help: Reformat cmake-generator-expressions.7 manualStephen Kelly2013-11-211-77/+171
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use definition lists instead of a preformatted block to enumerate the genex documentation. Consistently capitalize the description. Use ``...`` to format genex parameters in the description. Turn references to commands into links. Add high level documentation about the motivation for generator expressions. Regroup expressions into subsections for different genex types. Add a high-level description and example of the expressions in each section. Explode the documentation for filesystem artifacts, instead of only referring to the variations.
* | | Merge topic 'missing-target-error'Brad King2013-11-212-0/+17
|\ \ \ | | | | | | | | | | | | | | | | a02f3d2 Add policy CMP0040 to disallow custom commands on missing targets
| * | | Add policy CMP0040 to disallow custom commands on missing targetsNils Gladitz2013-11-212-0/+17
| | | |
* | | | Merge topic 'find_backtrace'Brad King2013-11-212-0/+2
|\ \ \ \ | |/ / / |/| | | | | | | | | | | c6f339c Add FindBacktrace.cmake module.
| * | | Add FindBacktrace.cmake module.Vadim Zhukov2013-10-162-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It designed to search for implementation of backtrace(3) routine. Currently it is used in OpenBSD Ports for building Clementine music player. A lot of input from brad.king@ and neundorf@.
* | | | Merge topic 'dev/better-eclipse-language-support'Brad King2013-11-202-0/+9
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | a990722 eclipse: Support custom natures via a global property 51726cc eclipse: Add natures for Eclipse based on enabled languages 4a352d4 Notify extra generators about languages
| * | | eclipse: Support custom natures via a global propertyBen Boeckel2013-11-192-0/+9
| | | | | | | | | | | | | | | | | | | | This is useful for enabling natures not recognized by the Eclipse generator directly in a project.
* | | | Merge topic 'macro-args-docs'Brad King2013-11-194-14/+51
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | f0db2e3 Help: Document macro argument caveats in more detail
| * | | | Help: Document macro argument caveats in more detailDaniele E. Domenichelli2013-11-194-14/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add notes about macro arguments in the foreach, if, and list commands. Add a section to the macro command documentation explaining in detail how macro arguments are not variables.
* | | | | Merge topic 'cross-compiling-toolchain-variables'Brad King2013-11-195-2/+48
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7cd65c9 Add CMAKE_SYSROOT variable to set --sysroot when cross compiling. 5096967 Allow toolchain files to specify an external toolchain. 76552d5 Add compiler target compile options. f41ecd1 CMakeDetermineCompilerId: Look for internal file only on host
| * | | | Add CMAKE_SYSROOT variable to set --sysroot when cross compiling.Stephen Kelly2013-11-193-2/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As CMAKE_ROOT_FIND_PATH can be a list, a new CMAKE_SYSROOT is introduced, which is never a list. The contents of this variable is passed to supporting compilers as --sysroot. It is also accounted for when processing implicit link directories reported by the compiler, and when generating RPATH information.
| * | | | 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.
* | | | | Merge topic 'cleanup-build-commands'Brad King2013-11-194-33/+79
|\ \ \ \ \ | | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4cce44b Help: Document the CMAKE_MAKE_PROGRAM variable in more detail 558c74d VS: Switch to internal CMAKE_MAKE_PROGRAM lookup by generators 5229f2d Tests: Do not use an explicit make program for VS generators 72dd738 Tests: Fix MFC test heuristic for empty CMAKE_TEST_MAKEPROGRAM fd6076d Tests: Pass CMAKE_MAKE_PROGRAM instead of --build-makeprogram 68031ab Tests: Configure SubProject-Stage2 test more robustly 003d10c Tests: Simplify VSExcludeFromDefaultBuild configuration e47d934 Tests: Simplify VSProjectInSubdir configuration e965cb1 Tests: Simplify CTest.BuildCommand.ProjectInSubdir configuration 72bf255 Tests: Pass --build-options to every test 4d1d772 ctest: Teach --build-options to allow zero options 96966b5 ctest: Make the --build-makeprogram optional for --build-and-test 91a0211 Simplify some calls to cmGlobalGenerator::Build 123a060 Teach GenerateBuildCommand to find its own make program 5f5c92b VS: Add internal APIs to find MSBuild, devenv/VCExpress, and msdev 4ac75fd Prefer CMAKE_MAKE_PROGRAM over CMAKE_BUILD_TOOL (#14548) ...
| * | | | Help: Document the CMAKE_MAKE_PROGRAM variable in more detailBrad King2013-11-181-6/+47
| | | | | | | | | | | | | | | | | | | | | | | | | Explain how it is set for each group of generators. Also explain the build-time selection behavior used by Visual Studio generators.
| * | | | ctest: Make the --build-makeprogram optional for --build-and-testBrad King2013-11-181-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GenerateBuildCommand now knows how to lookup CMAKE_MAKE_PROGRAM or choose a generator-provided default build tool. Therefore the --build-makeprogram can now be optional and simply override the default selection when provided. Note that with --build-nocmake we now need to load the cache in order to make the CMAKE_MAKE_PROGRAM entry available to GenerateBuildCommand.
| * | | | Prefer CMAKE_MAKE_PROGRAM over CMAKE_BUILD_TOOL (#14548)Brad King2013-11-182-11/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Historically these were both added for the Makefile and Visual Studio generators, respectively. Later the VS generators started using the CMAKE_MAKE_PROGRAM cache entry to find the IDE build tool, and the CMAKE_BUILD_TOOL was simply set as an alias. Fix the documentation to explain that CMAKE_MAKE_PROGRAM is the modern variable and that CMAKE_BUILD_TOOL is the compatibility alias, not the other way around. Replace uses of CMAKE_BUILD_TOOL with CMAKE_MAKE_PROGRAM in CMake-provided modules. Nothing needs to lookup CMAKE_BUILD_TOOL in the cache, so simply set it as a normal variable.
| * | | | build_command: Return a "cmake --build" command-lineBrad King2013-11-151-19/+26
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Re-implement the build_command() command to use "cmake --build" instead of generating a native build tool invocation directly. This command will internally invoke the proper native build tool. This avoids requiring cmGlobalGenerator::GenerateBuildCommand to produce a string so that it can be later refactored to produce a vector with no quoting or escaping. It will also allow us to later teach CMake to delay the decision about which build tool to invoke until after the project build system is generated to disk. For example, on Visual Studio 10 and above the preferred command-line tool is MSBuild, but we need to fall back to devenv if the .sln has Intel Fortran .vfproj files.
* | | | Merge topic 'forbid-reserved-targets'Brad King2013-11-191-6/+11
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | 3900fcf CMP0037: Extend policy to reserved names and custom targets
| * | | CMP0037: Extend policy to reserved names and custom targetsNils Gladitz2013-11-191-6/+11
| |/ / | | | | | | | | | | | | | | | | | | | | | Teach add_custom_target to check the policy too. Extend the policy to disallow reserved target names that we use for builtin targets like "all". Extend the RunCMake.CMP0037 test to cover these cases.