summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'optimize-static-library-deps'Kyle Edwards2020-08-1347-8/+559
|\ | | | | | | | | | | | | 2e42651dff Add option to optimize link dependencies for static libraries Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5103
| * Add option to optimize link dependencies for static librariesKyle Edwards2020-08-1247-8/+559
| | | | | | | | | | | | | | | | | | Add an `OPTIMIZE_DEPENDENCIES` target property and supporting `CMAKE_OPTIMIZE_DEPENDENCIES` variable to optionally enable pruning and flattening of outgoing dependencies from static libraries. Since they do not actually link, they only depend on side effects of their dependencies. Therefore we can drop dependencies that contribute no side effects.
* | CMake Nightly Date StampKitware Robot2020-08-131-1/+1
| |
* | Merge branch 'release-3.18'Brad King2020-08-120-0/+0
|\ \
| * \ Merge topic 'FindRuby_document_deprecated_variables' into release-3.18Brad King2020-08-121-2/+13
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | e7fe0b24c4 FindRuby: Add documentation for deprecated variables Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5120
* | \ \ Merge topic 'FindRuby_document_deprecated_variables'Brad King2020-08-121-2/+13
|\ \ \ \ | | |/ / | |/| | | | | | | | | | | | | | | | | | e7fe0b24c4 FindRuby: Add documentation for deprecated variables Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5120
| * | | FindRuby: Add documentation for deprecated variablesDaniele E. Domenichelli2020-08-121-2/+13
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | Since commit e672db628b (FindRuby: Rename variables to match case of module name, 2020-03-11, v3.18.0-rc1~546^2), the upper-case-prefixed variable names are for compatibility only but still exist. Put them back in the documentation. Issue: #21064
* | | Merge branch 'release-3.18'Brad King2020-08-120-0/+0
|\ \ \ | |/ /
| * | Merge topic 'msvc_c11' into release-3.18Brad King2020-08-123-12/+40
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | f7347f28c7 MSVC: Record support for C11 and c_restrict Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5115
* | \ \ Merge topic 'msvc_c11'Brad King2020-08-123-12/+40
|\ \ \ \ | | |/ / | |/| | | | | | | | | | | | | | | | | | f7347f28c7 MSVC: Record support for C11 and c_restrict Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5115
| * | | MSVC: Record support for C11 and c_restrictRaul Tambre2020-08-113-12/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | MSVC >=19.27 supports a C11 switch. The `c_restrict` feature has also been implemented. Fixes: #21069
* | | | Merge branch 'release-3.18'Brad King2020-08-120-0/+0
|\ \ \ \ | | |/ / | |/| |
| * | | Merge topic 'FindPython-manage-SOABI-in-all-versions' into release-3.18Brad King2020-08-122-12/+20
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 951640f1f9 FindPython: manage SOABI for all Python versions Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5119
* | \ \ \ Merge topic 'FindPython-manage-SOABI-in-all-versions'Brad King2020-08-122-12/+20
|\ \ \ \ \ | | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | 951640f1f9 FindPython: manage SOABI for all Python versions Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5119
| * | | | FindPython: manage SOABI for all Python versionsMarc Chevrier2020-08-112-12/+20
| | | | | | | | | | | | | | | | | | | | Fixes: #21070
* | | | | CMake Nightly Date StampKitware Robot2020-08-121-1/+1
| | | | |
* | | | | Merge branch 'release-3.18'Brad King2020-08-110-0/+0
|\ \ \ \ \ | | |/ / / | |/| | |
| * | | | Merge topic 'gitlab-ci-tag-cmake' into release-3.18Brad King2020-08-111-0/+3
| |\ \ \ \ | | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | 778ea72b59 gitlab-ci: add 'cmake' tag to all jobs Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5121
* | | | | Merge topic 'gitlab-ci-tag-cmake'Brad King2020-08-111-0/+3
|\ \ \ \ \ | | |/ / / | |/| | / | |_|_|/ |/| | | | | | | | | | | 778ea72b59 gitlab-ci: add 'cmake' tag to all jobs Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5121
| * | | gitlab-ci: add 'cmake' tag to all jobsBrad King2020-08-111-0/+3
| | | | | | | | | | | | | | | | | | | | This will give us more granular control over which runners accept jobs for CMake.
* | | | Merge topic 'findlapack-quiet'Brad King2020-08-111-296/+276
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c156704ff0 FindLAPACK: Use find_package_handle_standard_args Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5110
| * | | | FindLAPACK: Use find_package_handle_standard_argsSeth R Johnson2020-08-071-296/+276
| | | | | | | | | | | | | | | | | | | | LAPACK previously used custom and verbose output messages.
* | | | | Merge topic 'bootstrap-ninja'Brad King2020-08-116-76/+315
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 491dddfbde Bootstrap: Add support for Ninja Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3652
| * | | | | Bootstrap: Add support for NinjaKyle Edwards2020-08-106-76/+315
| |/ / / /
* | | | | Merge branch 'release-3.18'Brad King2020-08-110-0/+0
|\ \ \ \ \ | | |_|/ / | |/| | |
| * | | | Merge topic 'findhdf5-fix-nohl' into release-3.18Brad King2020-08-111-1/+0
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | e038107ee7 FindHDF5: fix compiler detection when HL is disabled Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5112
* | \ \ \ \ Merge topic 'findhdf5-fix-nohl'Brad King2020-08-111-1/+0
|\ \ \ \ \ \ | | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | e038107ee7 FindHDF5: fix compiler detection when HL is disabled Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5112
| * | | | | FindHDF5: fix compiler detection when HL is disabledSeth R Johnson2020-08-101-1/+0
| | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A valid HDF5 installation with the "high level" extensions not configured will *fail* to be correctly detected by CMake since commit d9e39f3f89 (FindHDF5: check that compiler wrapper can compile a minimal program, 2020-02-10, v3.18.0-rc1~744^2~1): ``` /.../hdf5/cmake_hdf5_test.c:2:10: fatal error: 'hdf5_hl.h' file not found ``` This does not stop the configuration but does prevent flags and libraries from being recognized.
* | | | | Merge branch 'release-3.18'Brad King2020-08-110-0/+0
|\ \ \ \ \ | | |/ / / | |/| | |
| * | | | Merge topic 'osx-archs-apple-only' into release-3.18Brad King2020-08-111-0/+3
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 70ce1ad64a PCH: Avoid Apple-specific architecture flags on other platforms Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5118
* | \ \ \ \ Merge topic 'osx-archs-apple-only'Brad King2020-08-111-0/+3
|\ \ \ \ \ \ | | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | 70ce1ad64a PCH: Avoid Apple-specific architecture flags on other platforms Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5118
| * | | | | PCH: Avoid Apple-specific architecture flags on other platformsBrad King2020-08-101-0/+3
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit f593b354da (PCH: Add support for multi architecture iOS projects, 2020-04-02, v3.18.0-rc1~414^2) the `OSX_ARCHITECTURES` target property (and corresponding `CMAKE_OSX_ARCHITECTURES` variable) affects flags on non-Apple platforms by accident. Add a missing condition to avoid this. Fixes: #21072
* | | | | Merge branch 'release-3.17'Brad King2020-08-110-0/+0
|\ \ \ \ \
| * \ \ \ \ Merge branch 'backport-3.17-automoc-path-prefix-off' into release-3.17Brad King2020-08-104-5/+7
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | Merge-request: !5105
* | \ \ \ \ \ Merge branch 'release-3.16'Brad King2020-08-110-0/+0
|\ \ \ \ \ \ \
| * \ \ \ \ \ \ Merge branch 'backport-3.16-automoc-path-prefix-off' into release-3.16Brad King2020-08-104-5/+7
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge-request: !5105
* | \ \ \ \ \ \ \ Merge branch 'release-3.18'Brad King2020-08-110-0/+0
|\ \ \ \ \ \ \ \ \ | | |_|_|_|_|/ / / | |/| | | | | | |
| * | | | | | | | Merge topic 'automoc-path-prefix-off' into release-3.18Brad King2020-08-115-5/+15
| |\ \ \ \ \ \ \ \ | | |_|_|_|_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5b5be34811 Help: Add 3.18.2 release note about AUTOMOC_PATH_PREFIX default change db659e18bc Merge branch 'backport-3.17-automoc-path-prefix-off' e503fbe38a Merge branch 'backport-3.16-automoc-path-prefix-off' 4c33b305a0 Autogen: Turn off moc path prefix generation by default 56510b7d85 Merge branch 'backport-test-FindPkgConfig-isolate-env' into release-3.17 effc9a1032 Merge branch 'backport-3.17-automoc_timestamp_deps' into release-3.17 507fecd7e2 Merge branch 'ninja-multi-rsp-remove-path' into release-3.17 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5105
* | | | | | | | | Merge topic 'automoc-path-prefix-off'Brad King2020-08-115-5/+15
|\ \ \ \ \ \ \ \ \ | | |/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5b5be34811 Help: Add 3.18.2 release note about AUTOMOC_PATH_PREFIX default change db659e18bc Merge branch 'backport-3.17-automoc-path-prefix-off' e503fbe38a Merge branch 'backport-3.16-automoc-path-prefix-off' 4c33b305a0 Autogen: Turn off moc path prefix generation by default Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5105
| * | | | | | | | Help: Add 3.18.2 release note about AUTOMOC_PATH_PREFIX default changeJoerg Bornemann2020-08-101-0/+8
| | | | | | | | |
| * | | | | | | | Merge branch 'backport-3.17-automoc-path-prefix-off'Brad King2020-08-104-5/+7
| |\ \ \ \ \ \ \ \ | | | |_|_|_|/ / / | | |/| | | | | |
| | * | | | | | | Merge branch 'backport-3.16-automoc-path-prefix-off'Brad King2020-08-104-5/+7
| | |\ \ \ \ \ \ \ | | | | |_|/ / / / | | | |/| | / / / | | | |_|_|/ / / | | |/| | | | |
| | | * | | | | Autogen: Turn off moc path prefix generation by defaultJoerg Bornemann2020-08-104-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change the default value of `CMAKE_AUTOMOC_PATH_PREFIX` to `OFF` to restore compatibility with behavior of CMake 3.15 and below. C++ source files that are generated by Qt's meta object compiler (moc) include the header file that was passed as input argument to moc. This is usually a path relative to the source directory, for example #include "../../source/dir/myobject.h" That is problematic for reproducible builds as described in #18815. To cope with that, the target property AUTOMOC_PATH_PREFIX was introduced in CMake 3.16 by commit d018d27c10 (Autogen: Add moc path prefix generation (AUTOMOC_PATH_PREFIX), 2019-09-13, v3.16.0-rc1~94^2~4). The property is default-initialized from the variable `CMAKE_AUTOMOC_PATH_PREFIX`, which defaults to `ON`. If this property is ON, and myobject.h is located in an include directory of the target, moc-generated C++ files include the file without the "path prefix": #include "myobject.h" This behavior, however, can break projects that have equally named header files in different include directories. As "not breaking existing projects" trumps "have reproducible builds by default" we change the default of `CMAKE_AUTOMOC_PATH_PREFIX` to `OFF`. Also, it is now possible to pass `-DCMAKE_AUTOMOC_PATH_PREFIX=ON` on the CMake command line. Before, it was overridden in `CMakeGenericSystem`. Fixes: #20598 Issue: #18815
* | | | | | | | CMake Nightly Date StampKitware Robot2020-08-111-1/+1
| | | | | | | |
* | | | | | | | Merge topic 'build-interface-targets'Brad King2020-08-1070-281/+581
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bafa9fe887 fileapi: Add INTERFACE libraries with SOURCES to codemodel-v2 4391913133 Add INTERFACE libraries to generated buildsystem if they have SOURCES afb998704e Remove filtering of allowed INTERFACE library properties e7edba2baf Makefiles: Use IsInBuildSystem in global generator target type checks Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5078
| * | | | | | | | fileapi: Add INTERFACE libraries with SOURCES to codemodel-v2Brad King2020-08-0714-3/+263
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | INTERFACE libraries with SOURCES now appear in the generated buildsystem, so include them in the codemodel output too. We do not need to bump the `codemodel-v2` object kind minor version because that was already done in post-3.18 development by commit 7d6861f367 (fileapi: Extend codemodel targets with language standard, 2020-06-18). Fixes: #18608
| * | | | | | | | Add INTERFACE libraries to generated buildsystem if they have SOURCESBrad King2020-08-0748-94/+303
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | INTERFACE libraries were created with the intention of collecting usage requirements for use by other targets via `target_link_libraries`. Therefore they were not allowed to have SOURCES and were not included in the generated buildsystem. In practice, this has become limiting: * Header-only libraries do have sources, they just do not compile. Developers should be able to edit those sources (the header files) in their IDE. * Header-only libraries may need to generate some of their header files via custom commands. Some projects work around these limitations by pairing each interface library with an `add_custom_target` that makes the header files and custom commands appear in the generated buildsystem and in IDEs. Lift such limitations by allowing INTERFACE libraries to have SOURCES. For those with sources, add a corresponding build target to the generated buildsystem. Fixes: #19145
| * | | | | | | | Remove filtering of allowed INTERFACE library propertiesBrad King2020-08-0311-163/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously we disallowed use of arbitrary properties on INTERFACE libraries. The goal was to future-proof projects using them by not allowing properties to be set that may affect their future inclusion in the generated buildsystem. In order to prepare to actually include INTERFACE libraries in the generated buildsystem, drop the filter and allow arbitrary properties to be set. Issue: #19145
| * | | | | | | | Makefiles: Use IsInBuildSystem in global generator target type checksBrad King2020-08-031-21/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Follow up from commit 422d9a0ab2 (Factor out generator checks for filtering out interface libraries, 2020-07-20) with more uses of `IsInBuildSystem`.
* | | | | | | | | Merge topic 'runcmake-make-english'Brad King2020-08-101-0/+3
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3d2ab71d42 Tests: Set LC_MESSAGES for RunCMake.Make Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5114