summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'pch-no-Fortran' into release-3.17Brad King2020-06-032-11/+15
|\ | | | | | | | | | | | | 10c88c4337 PCH: Do not enable GNU or Intel PCH settings for Fortran Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4843
| * PCH: Do not enable GNU or Intel PCH settings for FortranBrad King2020-06-022-11/+15
| | | | | | | | | | | | | | | | | | The PCH settings are shared by C and CXX languages but do not make sense for Fortran. In particular, `CMAKE_PCH_EXTENSION` should not be set because it can overwrite the value set for C/C++ languages, which may have a different compiler vendor than the Fortran compiler. Fixes: #20752
* | Merge topic 'vs-sln-version-16' into release-3.17Brad King2020-06-031-1/+1
|\ \ | | | | | | | | | | | | | | | | | | b69010b719 VS: Fix .sln support for VS Version Selector with VS 2019 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4844
| * | VS: Fix .sln support for VS Version Selector with VS 2019Brad King2020-06-021-1/+1
| |/ | | | | | | | | | | VS 2019 changed the naming pattern used by 2015 and 2017. Fixes: #20783
* | Merge branch 'release-3.16' into release-3.17Brad King2020-06-010-0/+0
|\ \
| * | CMake 3.16.8v3.16.8Brad King2020-06-011-1/+1
| | |
| * | Merge branch 'backport-3.16-pch-fix-bad-ClearSourcesCache' into release-3.16Brad King2020-05-293-5/+22
| |\ \ | | | | | | | | | | | | Merge-request: !4815
* | \ \ Merge topic 'pch-fix-bad-ClearSourcesCache' into release-3.17Brad King2020-06-013-5/+22
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 902858367f Merge branch 'backport-3.16-pch-fix-bad-ClearSourcesCache' fa7b041eca PCH: Fix logic error that incorrectly clears sources during VS generation Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4815
| * \ \ \ Merge branch 'backport-3.16-pch-fix-bad-ClearSourcesCache'Brad King2020-05-293-5/+22
| |\ \ \ \ | | | |/ / | | |/| / | | |_|/ | |/| |
| | * | PCH: Fix logic error that incorrectly clears sources during VS generationBrad King2020-05-293-5/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 729d997f10 (Precompile Headers: Add REUSE_FROM signature, 2019-08-30, v3.16.0-rc1~101^2), `GetPchFileObject` handles the case that it is called first for another target's `REUSE_FROM` by calling `AddSource` to make sure `GetObjectName` can produce the correct object name. However, `AddSource` causes `ClearSourcesCache` to be called, which since commit a9f4f58f0c (cmGeneratorTarget: Clear AllConfigSources in ClearSourcesCache, 2020-05-15, v3.16.7~2^2) now correctly erases the `AllConfigSources` structure. This is okay during `AddPchDependencies`, but there is another code path in which it is problematic. When the Visual Studio generator's `WriteAllSources` method is looping over the sources, the `cmake_pch.cxx` source is encountered first. This causes `OutputSourceSpecificFlags` to call `GetPchCreateCompileOptions`, which calls `GetPchFile`, which under MSVC with `CMAKE_LINK_PCH` calls `GetPchFileObject`. That leads to `ClearSourcesCache` erasing the structure over which `WriteAllSources` is iterating! This bug is caught by our `RunCMake.PrecompileHeaders` test when run with the VS generator as of the commit that exposed it by fixing `ClearSourcesCache`. However, that change was backported to the CMake 3.16 series after testing only with later versions versions that contain commit a55df20499 (Multi-Ninja: Add precompile headers support, 2020-01-10, v3.17.0-rc1~136^2). By adding proper multi-config support for PCH, that commit taught `cmLocalGenerator::AddPchDependencies` to call `GetPchFile` with the real set of configurations instead of just the empty string. This allows the `GetPchFile` cache of PCH sources to be populated up front so that the later calls to it in the `WriteAllSources` loop as described above do not actually call `GetPchFileObject` or `ClearSourcesCache`. That hid the problem. Fix this by re-ordering calls to `AddPchDependencies` to handle `REUSE_FROM` targets only after the targets whose PCH they re-use. Remove the now-unnecessary call to `AddSource` from `GetPchFileObject` so that `ClearSourcesCache` is never called during `WriteAllSources`. Update the PchReuseFrom test case to cover an ordering of targets that causes generators to encounter a `REUSE_FROM` target before the target whose PCH it re-uses. Fixes: #20770
* | | | Merge topic 'ninja-multi-export-all-symbols' into release-3.17Brad King2020-06-012-1/+4
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6fc4bfa11c Ninja Multi-Config: Fix bug in CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Alex Reinking <alex_reinking@berkeley.edu> Merge-request: !4825
| * | | | Ninja Multi-Config: Fix bug in CMAKE_WINDOWS_EXPORT_ALL_SYMBOLSKyle Edwards2020-05-292-1/+4
|/ / / / | | | | | | | | | | | | Fixes: #20775
* | | | Merge topic 'FindSubversion-xcode-removed' into release-3.17Brad King2020-05-291-2/+11
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | 2c0db404d1 FindSubversion: Do not accept macOS stub without Xcode implementation Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4813
| * | | FindSubversion: Do not accept macOS stub without Xcode implementationBrad King2020-05-281-2/+11
|/ / / | | | | | | | | | | | | Xcode no longer provides a `svn` implementation, but the `/usr/bin/svn` stub may still exist.
* | | CMake 3.17.3v3.17.3Brad King2020-05-281-1/+1
| | |
* | | Merge topic 'openssl-3.0.0' into release-3.17Brad King2020-05-281-0/+9
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 61d746e592 FindOpenSSL: Detect OpenSSL 3.0.0 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4805
| * | | FindOpenSSL: Detect OpenSSL 3.0.0Vitezslav Cizek2020-05-271-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The OpenSSL versioning is changing with the upcoming 3.0.0 release. https://www.openssl.org/blog/blog/2018/11/28/version/ Since 3.0.0, the patch letters are being dropped. The new format is: MAJOR.MINOR.PATCH The OPENSSL_VERSION variable can now be directly derived from the new OPENSSL_VERSION_STR macro. https://www.openssl.org/docs/manmaster/man3/OPENSSL_VERSION_NUMBER.html
* | | | Merge topic 'fix-cpack-deb-generating-empty-paragraph' into release-3.17Brad King2020-05-283-12/+12
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6ba842163c CPack-deb: don't add a line with a dot to pkg desc Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4806
| * | | | CPack-deb: don't add a line with a dot to pkg descJonathan Verner2020-05-273-12/+12
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, if the package description ends with a newline (typically if it is read from a file) cpack -deb adds a single line with a dot at the end which leads to a violation of the `extended-description-contains-empty-paragraph` debian policy. This commit fixes the above behaviour. Fixes: #20763
* | | | Merge topic 'ctest-repeat-notrun' into release-3.17Brad King2020-05-276-6/+54
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bbb62dcc72 CTest: Make sure NOT_RUN tests show up in the failed test log c503251997 Tests: Add coverage of ctest_test RETURN_VALUE and REPEAT Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4801
| * | | | CTest: Make sure NOT_RUN tests show up in the failed test logRobert Maynard2020-05-276-1/+33
| | | | | | | | | | | | | | | | | | | | Issue: #20543
| * | | | Tests: Add coverage of ctest_test RETURN_VALUE and REPEATRobert Maynard2020-05-271-5/+21
| |/ / /
* | | | Merge branch 'release-3.16' into release-3.17Brad King2020-05-270-0/+0
|\ \ \ \ | | |_|/ | |/| |
| * | | CMake 3.16.7v3.16.7Brad King2020-05-271-1/+1
| | | |
| * | | Merge branch 'vs-sln-version' into release-3.16Brad King2020-05-191-0/+1
| |\ \ \ | | | | | | | | | | | | | | | Merge-request: !4765
| * \ \ \ Merge branch 'fix-ClearSourcesCache' into release-3.16Brad King2020-05-151-0/+1
| |\ \ \ \ | | | |_|/ | | |/| | | | | | | Merge-request: !4751
| * | | | Merge branch 'backport-3.16-FindPkgConfig-isystem' into release-3.16Brad King2020-05-151-0/+6
| |\ \ \ \ | | | | | | | | | | | | | | | | | | Merge-request: !4752
* | \ \ \ \ Merge topic 'doc-updates' into release-3.17Brad King2020-05-252-7/+9
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b3e4fb5144 Help: clarify add_definitions() and add_compile_definitions() behavior Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4786
| * | | | | | Help: clarify add_definitions() and add_compile_definitions() behaviorMarc Chevrier2020-05-242-7/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: #20736
* | | | | | | Merge topic 'ninja-multi-install' into release-3.17Brad King2020-05-256-6/+117
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dddb4f02f7 Ninja Multi-Config: Make "install" targets depend on default configs Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4778
| * | | | | | Ninja Multi-Config: Make "install" targets depend on default configsKyle Edwards2020-05-226-6/+117
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | And add an "install:all" target. Fixes: #20713
* | | | | | | Merge topic 'cuda-default-runtime' into release-3.17Brad King2020-05-2212-7/+65
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | e55b21e24e CUDA: Compute CMAKE_CUDA_RUNTIME_LIBRARY default from toolchain 1086e930dc CUDA: Propagate CMAKE_CUDA_RUNTIME_LIBRARY state to try_compile a4ea293153 Help: Correct CMAKE_CUDA_RUNTIME_LIBRARY applicability Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4762
| * | | | | | CUDA: Compute CMAKE_CUDA_RUNTIME_LIBRARY default from toolchainRobert Maynard2020-05-2110-6/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 0d0145138f (CUDA: Add abstraction for cuda runtime selection, 2019-11-29, v3.17.0-rc1~83^2) we add CUDA runtime library selection flags by default. To maintain backwards compatibility the default CUDA runtime library needs to be computed based on what libraries are found on the initial compiler invocation. For example a toolchain could establish initial flags that have all CUDA compilations using the runtime version, and if we don't detect this we will try to link to both the static and shared runtime. Co-Author: Brad King <brad.king@kitware.com> Fixes: #20708
| * | | | | | CUDA: Propagate CMAKE_CUDA_RUNTIME_LIBRARY state to try_compileRobert Maynard2020-05-202-0/+4
| | | | | | |
| * | | | | | Help: Correct CMAKE_CUDA_RUNTIME_LIBRARY applicabilityRobert Maynard2020-05-201-1/+1
| | | | | | |
* | | | | | | Merge topic 'FindPython-debug-library-lookup' into release-3.17Brad King2020-05-211-2/+8
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 71e6854b22 FindPython: use CMAKE specific variables to look-up debug library Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4764
| * | | | | | FindPython: use CMAKE specific variables to look-up debug libraryMarc Chevrier2020-05-181-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: #20714
* | | | | | | Merge topic 'vs-sln-version' into release-3.17Brad King2020-05-201-0/+1
|\ \ \ \ \ \ \ | | |_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 88ad02f1ec VS: Restore .sln support for VS Version Selector Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4765
| * | | | | | VS: Restore .sln support for VS Version SelectorBrad King2020-05-191-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 3b51343ea1 (VS: Emit UTF-8 BOM for generated solution files, 2019-08-19, v3.16.0-rc1~237^2) the `.sln` file does not work with the VS Version Selector. Add a newline after the BOM to restore support. Fixes: #20725
* | | | | | | Merge topic 'fix-ClearSourcesCache' into release-3.17Brad King2020-05-181-0/+1
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | / / | | |_|_|/ / | |/| | | | | | | | | | | | | | | | a9f4f58f0c cmGeneratorTarget: Clear AllConfigSources in ClearSourcesCache Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4751
| * | | | | cmGeneratorTarget: Clear AllConfigSources in ClearSourcesCacheBrad King2020-05-151-0/+1
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit 40aa6c059c (cmGeneratorTarget: Add method to collect all sources for all configs, 2017-04-10, v3.9.0-rc1~268^2~5) we forgot to update `ClearSourcesCache` to also clear `AllConfigSources`. This leads to subtle cases where code paths like PCH handling that add sources during generation break depending on ordering. Suggested-by: Christian Fersch Fixes: #20712, #20702
* | | | | Merge topic 'backport-3.16-FindPkgConfig-isystem' into release-3.17Brad King2020-05-151-0/+6
|\ \ \ \ \ | | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | 3719ddd3f3 Help: Add 3.16.7 release note for FindPkgConfig '-isystem' fix Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4752
| * | | | Help: Add 3.16.7 release note for FindPkgConfig '-isystem' fixBrad King2020-05-151-0/+6
| | |/ / | |/| | | | | | | | | | | | | | Add a release note for the change in commit 4d446c68d1 (FindPkgConfig: also handle "-isystem" prefixes for include directories, 2020-04-30).
* | | | Merge branch 'release-3.16' into release-3.17Brad King2020-05-150-0/+0
|\ \ \ \ | |/ / /
| * | | Merge branch 'backport-3.16-objc-env-vars' into release-3.16Brad King2020-05-146-18/+61
| |\ \ \
| * \ \ \ Merge branch 'pch-msvc-pragma' into release-3.16Brad King2020-05-111-7/+5
| |\ \ \ \ | | | | | | | | | | | | | | | | | | Merge-request: !4736
| * \ \ \ \ Merge branch 'vs-pch-compile-opts' into release-3.16Brad King2020-05-112-1/+4
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | Merge-request: !4734
| * \ \ \ \ \ Merge branch 'FindGTK2-harfbuzz-target' into release-3.16Brad King2020-05-091-3/+6
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Merge-request: !4725
| * \ \ \ \ \ \ Merge branch 'backport-3.16-FindPkgConfig-isystem' into release-3.16Brad King2020-05-062-9/+63
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge-request: !4693
| * \ \ \ \ \ \ \ Merge branch 'CheckLanguage-cuda-host' into release-3.16Brad King2020-05-052-10/+10
| |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge-request: !4711