summaryrefslogtreecommitdiffstats
path: root/Help/variable
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'doc-CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT'Brad King2016-11-222-0/+16
|\ | | | | | | | | df9fea7f Help: Document CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT variable
| * Help: Document CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT variableBrad King2016-11-212-0/+16
| | | | | | | | | | | | This variable documentation was simply missing. Suggested-by: Craig Scott <craig.scott@crascit.com>
* | Android: Add CMAKE_<LANG>_ANDROID_TOOLCHAIN_MACHINEBrad King2016-11-143-2/+13
| | | | | | | | | | | | | | | | Expose the binutils' machine name (typically used as a prefix on the tool names) publicly. This is expected to match the `gcc -dumpmachine` value. Suggested-by: Ruslan Baratov <ruslan_baratov@yahoo.com>
* | Android: Add CMAKE_ANDROID_NDK_TOOLCHAIN_HOST_TAG variableBrad King2016-11-141-0/+6
| | | | | | | | | | | | | | | | | | The NDK provides prebuilt toolchain files in directories named for the host architecture. The NDK build system calls this `HOST_TAG`. Expose the value publicly for use by clients that need to pass it to external tools. Suggested-by: Ruslan Baratov <ruslan_baratov@yahoo.com>
* | Android: Always set CMAKE_ANDROID_NDK_TOOLCHAIN_VERSIONBrad King2016-11-141-0/+3
| | | | | | | | | | | | | | | | | | When this variable is not set by the user or toolchain file, set it to the default selected. This will be useful for client code that needs to pass the value to an external tool that needs to find the same toolchain in the NDK. Leave it empty for a standalone toolchain. Suggested-by: Ruslan Baratov <ruslan_baratov@yahoo.com>
* | Sublime: Add option to specify env vars for the .sublime-projectBruno Pedrosa2016-10-271-0/+25
| | | | | | | | | | | | | | Create a `CMAKE_SUBLIME_TEXT_2_ENV_SETTINGS` variable to control addition of env vars in the `.sublime-project`. Closes: #16387
* | Merge topic 'vs-host-x64-tools'Brad King2016-10-141-0/+10
|\ \ | | | | | | | | | | | | | | | d079e71c VS: Provide an option to use x64 host tools 779939a0 Help: Document VS and Xcode toolset selection
| * | VS: Provide an option to use x64 host toolsBrad King2016-10-141-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Visual Studio provides toolchains that are themselves built for 32-bit or 64-bit host architectures. By default it uses the 32-bit tools, but it can be told to prefer the 64-bit tools on 64-bit hosts. Extend the `CMAKE_GENERATOR_TOOLSET` specification to provide a way to request use of the 64-bit host tools. Closes: #15622
* | | Sublime: Exclude build tree from source tree project only optionallyBruno Pedrosa2016-10-121-0/+7
|/ / | | | | | | | | | | | | | | Create a `CMAKE_SUBLIME_TEXT_2_EXCLUDE_BUILD_TREE` variable to control addition of the build tree to `folder_exclude_patterns` in the `.sublime-project`. Change the default of this behavior to OFF. Closes: #16351
* | Merge topic 'codelite-global-setting'Brad King2016-10-071-2/+3
|\ \ | |/ | | | | | | | | 80574a38 Codelite: Consume the CMAKE_CODELITE_USE_TARGETS setting globally f59e8779 cmGlobalGenerator: Add API to get settings from top-level cmMakefile
| * Codelite: Consume the CMAKE_CODELITE_USE_TARGETS setting globallyStephen Kelly2016-10-071-2/+3
| |
* | Add a BUILD_RPATH target property specifying build-tree RPATH entriesRuslan Baratov2016-10-031-0/+10
|/ | | | | | Users may need to add custom `RPATH` entries to be able to run binaries from their build tree without setting `LD_LIBRARY_PATH`. Provide a way to do this that does not affect the install-tree `RPATH`.
* Merge topic 'codelite-organize-by-target'Brad King2016-09-271-0/+7
|\ | | | | | | | | cbe48879 CodeLite: Optionally use targets to create (sub)project files
| * CodeLite: Optionally use targets to create (sub)project filesMinze Zwerver2016-09-261-0/+7
| | | | | | | | | | | | The basic codelite generator creates .project files based on the `project()` stanza. Add a `CMAKE_CODELITE_USE_TARGETS` option to use the targets instead.
* | Xcode: Add option to set Swift language versionBrad King2016-09-261-0/+5
|/ | | | | | | | | | Create a new CMAKE_Swift_LANGUAGE_VERSION variable to specify the SWIFT_VERSION attribute in a generated Xcode project. Ideally this would be a `<LANG>_STANDARD` property but since Swift support is very minimal we should reserve that property for more complete treatment later. Issue: #16326
* find_package: Optionally sort globbed directories in a meaningful orderPierluigi Taddei2016-09-152-0/+52
| | | | | | | | | | | | Add `CMAKE_FIND_PACKAGE_SORT_{ORDER,DIRECTION}` variables to specify sort order and direction. When multiple package with the same name have been found in the same location sorting option can be used to force a specific version to be loaded (e.g. libA_1.12.0 instead of libA_1.1.0). Currently sorting by NAME and by NATURAL order have been implemented. Natural ordering makes use of the `strverscmp(3)` ordering.
* Help: Clarify documentation of CMAKE_COMPILER_IS_GNU{CC,CXX,G77}Brad King2016-09-144-15/+15
| | | | Closes: #16308
* VS15: Add Visual Studio 15 generatorBrad King2016-09-071-1/+1
| | | | | | | | | | | | | | | | Call the generator "Visual Studio 15" without any year because the preview version of VS 15 does not provide a year in the product name. Copy cmGlobalVisualStudio14Generator to cmGlobalVisualStudio15Generator and update version numbers accordingly. Add the VS15 enumeration value. Note that we do not need to add a MSVC15 variable or v150 toolset because Visual Studio 15 comes with an updated version of the v140 toolset and remains ABI-compatible. Teach tests VSExternalInclude, RunCMake.GeneratorPlatform, and RunCMake.GeneratorToolset to treat VS 15 as they do VS 10-14. Closes: #16143
* Help: Clarify meaning of MSVC<NN> variablesBrad King2016-09-066-18/+12
| | | | They correspond to toolsets, not VS IDE versions.
* Document XCODE variableRuslan Baratov2016-08-311-0/+4
|
* Android: Add `ANDROID` variable to indicate the targetBrad King2016-08-231-0/+5
| | | | | Allow projects to use `if(ANDROID)` to condition their Android-specific code paths.
* Help: Document cross compiling for AndroidBrad King2016-08-2311-6/+131
| | | | | | CMake now supports cross compiling for Android using the NDK or a standalone toolchain. Document the associated variables and how how to write toolchain files for Android.
* Add additional <= and >= comparison operatorsChuck Atkins2016-08-091-5/+5
| | | | | This adds the LESS_EQUAL, GREATER_EQUAL, and associated STR and VERSION equivalents to use the combined <= and >= functionality.
* Help: Fix CMAKE_INSTALL_PREFIX documented default on WindowsBrad King2016-08-011-1/+1
| | | | Fixes #16211.
* Honor CMAKE_*_LINKER_FLAGS[_<CONFIG>]_INIT set in toolchain filesBrad King2016-07-148-0/+84
| | | | | | | | | | | | | | Document these variables. Change our convention for setting these variables from: set(CMAKE_EXE_LINKER_FLAGS_INIT "...") to string(APPEND CMAKE_EXE_LINKER_FLAGS_INIT " ...") so that any value previously set by a toolchain file will be used.
* Honor CMAKE_<LANG>_FLAGS[_<CONFIG>]_INIT set in toolchain filesBrad King2016-07-066-2/+59
| | | | | | | | | | | | | | | | | | | | | | | Document these variables. Change our convention for setting these variables from: set(CMAKE_C_FLAGS_INIT "...") to string(APPEND CMAKE_C_FLAGS_INIT " ...") so that any value previously set by a toolchain file will be used. Automate the conversion with: sed -i 's/set *(\(CMAKE_\(C\|CXX\|Fortran\|RC\|ASM\|${[^}]\+}\)_FLAGS\(_[^_]\+\)\?_INIT \+"\)/string(APPEND \1 /' \ Modules/Compiler/*.cmake Modules/Platform/*.cmake and follow up with some manual fixes (e.g. to cases that already meant to append). Also revert the automated changes to contexts that are not protected from running multiple times.
* Merge topic 'doc-updates'Brad King2016-07-011-0/+16
|\ | | | | | | | | | | c05d240e Help: Document CMAKE_TRY_COMPILE_PLATFORM_VARIABLES example dab3ccf2 InstallRequiredSystemLibraries: Document UCRT option use case
| * Help: Document CMAKE_TRY_COMPILE_PLATFORM_VARIABLES exampleBrad King2016-06-301-0/+16
| | | | | | | | Suggested-by: Hendrik Sattler <post@hendrik-sattler.de>
* | try_compile: Add policy CMP0066 to honor CMAKE_<LANG>_FLAGS_<CONFIG>Brad King2016-06-291-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the `try_compile` source file signature we propagate the caller's value of `CMAKE_<LANG>_FLAGS` into the test project. Extend this to propagate `CMAKE_<LANG>_FLAGS_<CONFIG>` too instead of always using the default value in the test project. This will be useful, for example, to allow the MSVC runtime library to be changed (e.g. `-MDd` => `-MTd`). However, some projects may currently depend on this not being done, so we need to activate the behavior using a policy. This change was originally made by commit v3.6.0-rc1~160^2 (try_compile: Honor CMAKE_<LANG>_FLAGS_<CONFIG> changes, 2016-04-11) but without the policy and so had to be reverted during the 3.6 release candidate cycle. Fixes #16174.
* | Add options to run `ldd -u -r` as a "link-what-you-use" toolBill Hoffman2016-06-171-0/+6
|/ | | | | | | Create a LINK_WHAT_YOU_USE target property and corresponding CMAKE_LINK_WHAT_YOU_USE variable to enable this behavior. Extend link commands by running `ldd -u -r` to detect shared libraries that are linked but not needed.
* try_compile: Optionally forward custom platform variables to test projectBrad King2016-05-251-0/+10
| | | | | | | | | Add a `CMAKE_TRY_COMPILE_PLATFORM_VARIABLES` variable to specify a list of custom variables to be forwarded to a `try_compile` test project. This will be useful for platform information modules or toolchain files to forward some platform-specific set of variables from the host project (perhaps set in its cache) to the test project so that it can build the same way.
* Add a variable to specify language-wide system include directoriesBrad King2016-05-252-0/+16
| | | | | | | Create a `CMAKE_<LANG>_STANDARD_INCLUDE_DIRECTORIES` variable to specify system include directories for for `<LANG>` compiler command lines. This plays a role for include directories as the existing `CMAKE_<LANG>_STANDARD_LIBRARIES` variable does for link libraries.
* Help: Document CMAKE_<LANG>_STANDARD_LIBRARIES variableBrad King2016-05-242-7/+10
| | | | | Also drop documentation of non-existent CMAKE_STANDARD_LIBRARIES variable.
* Ninja: Support embedding of CMake as subninja projectNicolas Despres2016-05-171-0/+27
| | | | | | Add a `CMAKE_NINJA_OUTPUT_PATH_PREFIX` variable. When it is set, CMake generates a `build.ninja` file suitable for embedding into another ninja project potentially generated by an alien generator.
* Merge topic 'AddDocumentationForEclipseVariables'Brad King2016-04-184-0/+40
|\ | | | | | | | | 7b3a1069 Help: Document Eclipse-generator related variables (#15827)
| * Help: Document Eclipse-generator related variables (#15827)Alex Neundorf2016-04-184-0/+40
| |
* | Solaris: Add a CMAKE_HOST_SOLARIS variable (#16061)Stafen Teleman2016-04-151-0/+6
|/
* Add options to run clang-tidy with the compilerDaniel Pfeifer2016-04-131-0/+6
| | | | | | Create a <LANG>_CLANG_TIDY target property (initialized by a CMAKE_<LANG>_CLANG_TIDY variable) to specify a clang-tidy command line to be run along with the compiler.
* Merge topic 'ctest-run-submodule-sync'Brad King2016-04-051-0/+5
|\ | | | | | | | | | | | | | | c18d91ad Help: add release notes for topic 'ctest-run-submodule-sync' 7f560743 cmCTestGIT: run `git submodule sync` before updating submodules 06b310b5 cmCTestGIT: add an option to initialize submodules on update 56c1ea40 cmCTestGIT: fix git version references
| * cmCTestGIT: add an option to initialize submodules on updateBen Boeckel2016-04-011-0/+5
| | | | | | | | | | | | | | Currently, CTest will not initialize any submodules within the already checked out source tree. Add an option to do so. The use case for not doing so is that some submodules may not be necessary for the current test and keeping network usage down may be important.
* | Fix spelling typos in comments and documentation (#16037)Felix Geyer2016-03-292-2/+2
|/ | | | | The Debian package checker tool (lintian) detected several typos in CMake.
* Makefile: Optionally scan only source and build trees for dependenciesAttila Krasznahorkay2016-03-221-0/+10
| | | | Add a `CMAKE_DEPENDS_IN_PROJECT_ONLY` variable to activate the behavior.
* Add support for Bruce C Compiler (BCC)Paweł Stankowski2016-03-211-0/+1
| | | | Revise C compiler detection code to be K&R compatible.
* Drop Visual Studio 6 generatorBrad King2016-03-095-18/+6
| | | | | | This generator has been deprecated since CMake 3.3. Remove it. Update documentation, modules, and tests to drop content specific to this generator.
* try_compile: Add option to control type of targetBrad King2016-02-191-0/+15
| | | | | | | Create a `CMAKE_TRY_COMPILE_TARGET_TYPE` option to specify use of `add_library(... STATIC ...)` for the generated test project. This will be useful for cross-compiling toolchains that cannot link a binary without custom flags or scripts.
* Merge topic 'vs-win10-sdk'Brad King2016-01-251-1/+2
|\ | | | | | | | | d7e863c1 VS: Do not fail on Windows 10 with VS 2015 if no SDK is available (#15929)
| * VS: Do not fail on Windows 10 with VS 2015 if no SDK is available (#15929)Brad King2016-01-211-1/+2
| | | | | | | | | | | | | | | | | | | | | | Since commit v3.4.0-rc1~5^2~1 (VS: Add support for selecting the Windows 10 SDK, 2015-09-30) the VS 2015 generator requires a Windows 10 SDK to be available when CMAKE_SYSTEM_VERSION specifies Windows 10 (e.g. when building on a Windows 10 host). Howewver, it is possible to install VS 2015 without any Windows 10 SDK. Instead of failing with an error message about the lack of a Windows 10 SDK, simply tolerate this case and use the default Windows 8.1 SDK. Since building for Windows Store still requires the SDK, retain the diagnostic in that case.
* | Help: Document the CMAKE_EXPORT_COMPILE_COMMANDS variableSebastian Schuberth2016-01-151-0/+30
| |
* | Xcode: Parse variant and genex for CMAKE_XCODE_ATTRIBUTE (#14947)Gregor Jasny2016-01-031-0/+6
| |
* | Xcode: Add support for combined install on iOSRuslan Baratov2015-12-101-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | This patch solves the problem of installing both: Device and Simulator libraries on iOS. Before only one of them was installed. If the IOS_INSTALL_COMBINED property is set on a target, a special install hook will be activated which builds the corresponding target and combines both at the install location. The original patch was contributed by Ruslan Baratov, and polished by Gregor Jasny.