summaryrefslogtreecommitdiffstats
path: root/Help
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | | | AIX: Do not enable runtime linking by default anymoreBrad King2019-07-171-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We've long created shared objects on AIX using the linker's `-G` option (also offered by the XL front-end). The `-G` option implies `-brtl` and enables runtime linking. This has been largely unnecessary because we provide all dependencies on the link line and both XL and GNU compilers offer builtin behavior to export symbols. Since commit 0f150b69d3 (AIX: Explicitly compute shared object exports for both XL and GNU, 2019-07-11) we compute exports explicitly and consistently. Therefore runtime linking is no longer necessary for shared objects. We've also long created executables on AIX using the linker's `-brtl` option to enable runtime linking in case they load plugins at runtime. Since commit 9f5c2040bf (AIX: Explicitly compute executable exports for both XL and GNU, 2019-07-12) and commit 2fa920c0cd (AIX: Create import library for executables with exports, 2019-07-16) we now provide the linker enough information to fully resolve symbols in plugins up front. Therefore runtime linking is no longer necessary for executables. Drop use of `-G` for creating shared objects and use the XL `-qmkshrobj` and GCC `-shared` options instead. Both invoke the linker with the `-bM:SRE -bnoentry` options to create a shared object without runtime linking enabled. Also drop use of `-brtl` for creating executables. Issue: #19163
* | | | | | | Merge topic 'aix-exe-implib'Brad King2019-07-175-2/+24
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2fa920c0cd AIX: Create import library for executables with exports Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3561
| * | | | | | | AIX: Create import library for executables with exportsBrad King2019-07-165-2/+24
| | |_|/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On AIX, plugins meant to be loaded into executables via `dlopen` must be linked with access to a list of symbols exported from the executable in order to use them (when not using runtime linking). The AIX linker supports specifying this list as an "import file" passed on the command line either via the `-bI:...` option or (with a leading `#! .` line) as a normal input file like any other library file. The linker import file plays the same role on AIX as import libraries do on Windows. Teach CMake to enable its import library abstraction on AIX for executables with the `ENABLE_EXPORTS` target property set. Teach our internal `ExportImportList` script to optionally generate a leading `#! .` line at the top of the generated export/import list. Update our rule for linking an executable with exports to generate a public-facing "import library" implemented as an AIX linker import file. With this approach, our existing infrastructure for handling import libraries on Windows will now work for AIX linker import files too: * Plugins that link to their executable's symbols will be automatically linked using the import file on the command line. * The executable's import file will be (optionally) installed and exported for use in linking externally-built plugins. This will allow executables and their plugins to build even if we later turn off runtime linking. Issue: #19163
* | | | | | | Merge topic 'cmake-qch-no-version-in-filename'Brad King2019-07-171-0/+8
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0518e675ea CMake.qch: Don't include the version in the file name Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3558
| * | | | | | | CMake.qch: Don't include the version in the file nameCraig Scott2019-07-171-0/+8
| | |_|_|_|/ / | |/| | | | | | | | | | | | Fixes: #19374
* | | | | | | Merge topic 'project-version-0'Brad King2019-07-173-0/+31
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0ba5891ead project: Keep leading `0` in PROJECT_VERSION components 5f84669806 Tests: Factor out RunCMake.project helper macro into module b1f387a7ea Refactor: Use raw string literals instead of escaping 41b85968d8 Refactor: Use initializer lists instead of `push_back` series 45e85dd2b2 Refactor: Add some `const` to vars 90f91e4d21 Refactor: Replace a "magic" number w/ a named constant 638383c38f Refactor: Eliminate one-time-used variables 9b6a53292f Refactor: Eliminate `sep` from the loop Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3517
| * | | | | | project: Keep leading `0` in PROJECT_VERSION componentsAlex Turbov2019-07-163-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce CMake policy `CMP0096` to make `project()` keep leading zeros in version components. As a side effect, it now allows really long version numbers. Fixes: #19421 Co-Author: Brad King <brad.king@kitware.com>
* | | | | | | Help: Clarify ENABLE_EXPORTS per-platform link behaviorBrad King2019-07-161-9/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Spell out the behavior on each platform in a bullet list.
* | | | | | | Help: Simplify CMAKE_ENABLE_EXPORTS documentationBrad King2019-07-161-18/+4
| |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In real projects the variable form should rarely be used because the decision to export symbols from an executable is very specific. Remove its main description, which duplicates the `ENABLE_EXPORTS` target property, and simply reference the property instead.
* | | | | | Merge topic 'FindBISON-CMP0088-SourcePath'Brad King2019-07-151-0/+8
|\ \ \ \ \ \ | | |_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | f84d2045e9 FindBISON: Fix CMP0088 NEW behavior for non-absolute input paths Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3549
| * | | | | FindBISON: Fix CMP0088 NEW behavior for non-absolute input pathsBrian Carlson2019-07-121-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that the working directory is in the build tree, relative input paths must be converted to an absolute path to remain relative to the source directory. Fixes: #19472
* | | | | | Merge topic 'cmake-e-true-false'Brad King2019-07-122-0/+11
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b8828ecbba cmake -E: Add true and false commands Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3542
| * | | | | | cmake -E: Add true and false commandsKyle Edwards2019-07-112-0/+11
| | | | | | |
* | | | | | | Merge topic 'ctest_make_program__propagated_to_cmake_configure_pass'Brad King2019-07-122-1/+8
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cd681f1f41 ctest: propagate make program to cmake Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3483
| * | | | | | ctest: propagate make program to cmakeRobert Maynard2019-07-112-1/+8
| | | | | | |
* | | | | | | Merge topic 'eclipse-resource-encoding'Brad King2019-07-113-0/+13
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 09c1991895 Eclipse: Add option to set the resource encoding Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3525
| * | | | | | | Eclipse: Add option to set the resource encodingMartin Gerhardy2019-07-093-0/+13
| | |_|/ / / / | |/| | | | |
* | | | | | | Merge topic 'docs-file-GLOB-case-sensitivity'Craig Scott2019-07-111-0/+5
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c65f296960 Help: Mention file(GLOB)'s case-sensitivity Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3516
| * | | | | | | Help: Mention file(GLOB)'s case-sensitivitySteve Mokris2019-07-101-0/+5
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | Based on the KWSYS_GLOB_CASE_INDEPENDENT flag in `Source/kwsys/Glob.cxx`.
* | | | | | | Merge topic 'docs-message-cmake-gui'Craig Scott2019-07-101-6/+6
|\ \ \ \ \ \ \ | | |_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 42a9e61056 message() help: Clarify how logs are displayed in various tools Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3523
| * | | | | | message() help: Clarify how logs are displayed in various toolsFrank Dana2019-07-091-6/+6
| | | | | | |
| * | | | | | Merge branch 'loglevel-option-case-consistency' into release-3.15Craig Scott2019-07-091-2/+2
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Merge-request: !3521
| * \ \ \ \ \ \ Merge branch 'docs-misc-trivial-cleanups' into release-3.15Craig Scott2019-07-045-39/+39
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge-request: !3498
* | \ \ \ \ \ \ \ Merge topic 'add_cmake_find_use_package_registry'Craig Scott2019-07-0914-44/+148
|\ \ \ \ \ \ \ \ \ | |_|_|_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 447a96f590 vim: Update cmake.vim to include the CMAKE_FIND_USE variables 1d00ba9ccf Find: find_package prefers variable CMAKE_FIND_USE_REGISTRY 704e3a2ca8 Find: Correct spelling and layout issues in CMAKE_FIND_USE_ docs Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3487
| * | | | | | | | Find: find_package prefers variable CMAKE_FIND_USE_REGISTRYRobert Maynard2019-07-0911-7/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CMake's find control flags should all have a consistent name. To make this happen we are introducing `CMAKE_FIND_USE_REGISTRY` and deprecating `CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY`.
| * | | | | | | | Find: Correct spelling and layout issues in CMAKE_FIND_USE_ docsRobert Maynard2019-07-099-38/+78
| | | | | | | | |
* | | | | | | | | Merge topic 'loglevel-option-case-consistency'Craig Scott2019-07-091-2/+2
|\ \ \ \ \ \ \ \ \ | | |_|_|/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 14ed40d670 Help: Use consistent levels for cmake --loglevel and message() Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3521
| * | | | | | | | Help: Use consistent levels for cmake --loglevel and message()Craig Scott2019-07-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The message() command requires uppercase log levels. Even though the cmake --loglevel option is not case sensitive, show the supported values as uppercase to match the message() docs as closely as possible, since they are related to the same feature. Also fixes the wrong string being shown for the warning level by cmake --help.
* | | | | | | | | Merge topic 'doc-SKIP_RETURN_CODE-range'Craig Scott2019-07-091-1/+2
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 365ee32db8 Help: Valid range for test property, SKIP_RETURN_CODE, is 0 to 255, inclusive Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3507
| * | | | | | | | | Help: Valid range for test property, SKIP_RETURN_CODE, is 0 to 255, inclusiveStephen Manz2019-07-021-1/+2
| | | | | | | | | |
* | | | | | | | | | Merge topic 'threads-are-good'Brad King2019-07-082-0/+9
|\ \ \ \ \ \ \ \ \ \ | |_|_|_|_|_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 08cd7f6a02 Swift: support multithreaded compilation Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3506
| * | | | | | | | | Swift: support multithreaded compilationSaleem Abdulrasool2019-07-022-0/+9
| |/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Query the number of logical CPUs available to enable parallel compilation for Swift.
* | | | | | | | | Merge topic 'docs-misc-trivial-cleanups'Craig Scott2019-07-045-39/+39
|\ \ \ \ \ \ \ \ \ | | |_|_|_|/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d5b722bbbd Help: Remove mention of CMAKE_INSTALL_DO_STRIP ddc7ea4696 Help: Clarify how to provide multiple targets with cmake --target c509f38b7b Help: Add missing xref for CMAKE_EXECUTE_PROCESS_COMMAND_ECHO 9cc6befe1b Help: Improve formatting of list(TRANSFORM) sub-options 074fbdb73f Help: Clean up trivial typos and grammar Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Brad King <brad.king@kitware.com> Merge-request: !3498
| * | | | | | | | Help: Remove mention of CMAKE_INSTALL_DO_STRIPCraig Scott2019-07-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It isn't yet clear whether we want to make this part of the documented API for the install script. Remove it from the docs before it appears in an official release for now. Relates: #18997
| * | | | | | | | Help: Clarify how to provide multiple targets with cmake --targetCraig Scott2019-07-031-1/+2
| | | | | | | | |
| * | | | | | | | Help: Add missing xref for CMAKE_EXECUTE_PROCESS_COMMAND_ECHOCraig Scott2019-07-031-0/+2
| | | | | | | | |
| * | | | | | | | Help: Improve formatting of list(TRANSFORM) sub-optionsCraig Scott2019-07-031-17/+17
| | | | | | | | |
| * | | | | | | | Help: Clean up trivial typos and grammarCraig Scott2019-07-035-20/+17
| | |/ / / / / / | |/| | | | | |
* | | | | | | | Merge topic 'doc-toolchain-file-CMAKE_SOURCE_DIR'Craig Scott2019-07-031-0/+8
|\ \ \ \ \ \ \ \ | |_|/ / / / / / |/| | | / / / / | | |_|/ / / / | |/| | | | | | | | | | | | | | | | | | | 16434fe303 Help: Discourage using CMAKE_SOURCE_DIR in toolchain files Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3495
| * | | | | | Help: Discourage using CMAKE_SOURCE_DIR in toolchain filesOleg Chernovskiy2019-07-021-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: #19390
* | | | | | | Merge topic 'cross_ref_CUDAHOSTCXX_in_CMAKE_CUDA_HOST_COMPILER'Brad King2019-07-021-1/+2
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d3ebef4f70 CMAKE_CUDA_HOST_COMPILER: Document it takes priority over CUDAHOSTCXX Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3490
| * | | | | | | CMAKE_CUDA_HOST_COMPILER: Document it takes priority over CUDAHOSTCXXRobert Maynard2019-06-271-1/+2
| | | | | | | |
* | | | | | | | Add deprecation warnings for policies CMP0067 and belowBrad King2019-07-011-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The OLD behaviors of all policies are deprecated, but only by documentation. Add an explicit deprecation diagnostic for policies introduced in CMake 3.8 and below to encourage projects to port away from setting policies to OLD.
* | | | | | | | Merge topic 'docs-project-code-injection'Craig Scott2019-07-011-13/+18
|\ \ \ \ \ \ \ \ | |/ / / / / / / |/| / / / / / / | |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | 42294f43bd Help: move code injection vars to their own section 9e0775cb6a Help: Remove self-references from project() docs Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3494
| * | | | | | Help: move code injection vars to their own sectionCraig Scott2019-06-301-8/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The docs for CMAKE_PROJECT_<projName>_INCLUDE and CMAKE_PROJECT_INCLUDE did not define the order of inclusion if both were set.
| * | | | | | Help: Remove self-references from project() docsCraig Scott2019-06-291-5/+5
| |/ / / / /
| * | | | | Merge branch 'doc-CMAKE_FRAMEWORK-crossref' into release-3.15Brad King2019-06-261-1/+3
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | Merge-request: !3478
| * \ \ \ \ \ Merge branch 'doc-typos-cmake_parse_arguments' into release-3.15Brad King2019-06-241-8/+8
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Merge-request: !3468
| * \ \ \ \ \ \ Merge branch 'doc-IMPORTED_LOCATION' into release-3.15Brad King2019-06-211-4/+11
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge-request: !3466
* | \ \ \ \ \ \ \ Merge topic 'vs-dpi-aware'Brad King2019-06-273-0/+21
|\ \ \ \ \ \ \ \ \ | |_|_|_|_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cd92f8f8bf VS: Add VS_DPI_AWARE target property Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3418