Commit Graph

45683 Commits

Author SHA1 Message Date
Marc Chevrier
81beb28752 FindPython: fix handling when FIND_VIRTUALENV == FIRST
Fixes: #20525
2020-04-01 10:36:46 -04:00
Brad King
b7d8c91822 CMake 3.16.5 v3.16.5 2020-03-04 08:50:44 -05:00
Brad King
75d5232e18 Merge branch 'doc-rel-3.16-updates' into release-3.16
Merge-request: !4425
2020-03-04 08:49:19 -05:00
Brad King
d25d8e9eef Help: Update CMake 3.16 release notes for 3.16.5 2020-02-27 08:52:52 -05:00
Brad King
4e6b14c985 Merge branch 'backport-3.16-FindPython-cache-cleanup' into release-3.16
1dc524f2 FindPython: Do not cache computed result variables in CMake 3.16
602d1d82 FindPython: Mark non-public cache entries INTERNAL in CMake 3.16

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4399
2020-02-27 08:33:11 -05:00
Marc Chevrier
1dc524f202 FindPython: Do not cache computed result variables in CMake 3.16
Since commit 06d9e67fbd (FindPython: Add capability to specify directly
artifacts, 2019-08-15, v3.16.0-rc1~157^2) we accidentally add the result
variables `Python*_LIBRARY_RELEASE` and `Python*_LIBRARY_DEBUG` to the
cache.  They are always computed from other results and so should not be
presented to users in cmake-gui and ccmake to edit.

Issue: #20362
2020-02-26 08:09:21 -05:00
Marc Chevrier
602d1d8201 FindPython: Mark non-public cache entries INTERNAL in CMake 3.16
Since commit 06d9e67fbd (FindPython: Add capability to specify directly
artifacts, 2019-08-15, v3.16.0-rc1~157^2) we accidentally expose cache
entries named `_Python...` to users in cmake-gui and ccmake.  Mark those
entries as `INTERNAL` to hide them.

Issue: #20362
2020-02-26 08:09:16 -05:00
Brad King
ede4497cb2 Merge branch 'FindPkgConfig-scope' into release-3.16
Merge-request: !4388
2020-02-24 14:45:34 -05:00
Brad King
0aa91f9a66 Merge branch 'backport-cuda-non-device-link' into release-3.16
Merge-request: !4376
2020-02-24 13:36:24 -05:00
Francisco Facioni
738f3f23aa Ninja: Do not use nvcc response files with non-nvcc tools
Since commit d91b5a72cd (Ninja: Add support for CUDA nvcc response
files, 2019-05-30, v3.15.0-rc1~8^2) we use NVCC's `--options-file`
option to avoid long link command lines via a response file.  However,
for non-device linking the host tools are used and the option does not
make sense.  Update the logic to use `--options-file` only for device
linking.  Linking with the host tools already has its own logic for
response files.

Fixes: #19954
2020-02-24 13:31:33 -05:00
Rolf Eike Beer
c3e0d1ffe9 FindPkgConfig: set policies CMP0054 and CMP0057 to new
One may encounter warnings if FindPkgConfig is used in any project, even
indirectly, that has set any of these policies to old explicitely or requires
an older version.
2020-02-24 16:42:34 +01:00
Brad King
0f0d8f5b6f Merge branch 'backport-3.16-install-default-fix' into release-3.16 2020-02-12 09:01:23 -05:00
Brad King
44a698cd45 Merge branch 'release-3.15' into release-3.16 2020-02-11 14:53:47 -05:00
Kyle Edwards
9442ae5083 install: Fix regression when using default destinations
In commit 9fc20a4f3e (install: Add sane set of defaults for DESTINATION
and file type parameters, 2018-11-02, v3.14.0-rc1~410^2~1), a regression
was introduced, in which an `install(TARGETS)` with a
RUNTIME/LIBRARY/ARCHIVE DESTINATION but no PUBLIC_HEADER/PRIVATE_HEADER
DESTINATION would then install the headers.  The old behavior did not do
this.  Restore the old behavior.

Fixes: #20326
2020-02-11 08:34:16 -05:00
Brad King
37fa69202e Merge branch 'backport-3.16-link-line-backtrace' into release-3.16
Merge-request: !4344
2020-02-10 16:18:22 -05:00
Brad King
e756328434 Propagate backtraces from LINK_LIBRARIES through to link line items
Since commit d4d0dd0f6a (cmLinkLineComputer: Add ComputeLinkLibs
overload with backtraces, 2019-09-13, v3.16.0-rc1~87^2~4), backtraces
have been collected by `ComputeLinkLibs` by looking back through the
link implementation libraries for one matching the text of the link line
item.  This is slow in projects with long link lines.

Instead, teach `cmComputeLinkDepends` and `cmComputeLinkInformation` to
carry backtrace information explicitly along with the text of each item.

Fixes: #20322
2020-02-10 16:11:38 -05:00
Brad King
3eae0aabd2 Merge branch 'libarchive-win-codepage' into release-3.16
Merge-request: !4332
2020-02-06 15:06:12 -05:00
Brad King
16e31523ba libarchive: Add support for UTF-8 locale on Windows
Backport libarchive upstream commit `c46e7993` (windows: Support UTF-8
locale, 2018-07-23, v3.4.0~105^2).

Fixes: #20320
2020-02-06 15:04:47 -05:00
Brad King
f7c54d2049 libarchive: Fix WideCharToMultiByte output buffer size
Fix `archive_string_append_from_wcs_in_codepage` to account for the
already-used portion of the buffer when computing the size of the
remaining buffer for ``WideCharToMultiByte` output.
2020-02-06 15:04:47 -05:00
Brad King
44b8937b76 CMake 3.16.4 v3.16.4 2020-02-05 09:19:24 -05:00
Brad King
4b1a6a4722 Merge topic 'vs-version-for-unity' into release-3.16
9135954e2f VS: Do not use native unity builds on VS 2017 versions less than 15.8

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4324
2020-02-05 08:33:50 -05:00
Brad King
9135954e2f VS: Do not use native unity builds on VS 2017 versions less than 15.8
VS 2017 version 15.8 introduced support for unity builds implemented
in part by the `$(VCTargetsPath)/Microsoft.Cpp.Unity.targets` file.
Do not enable unity builds on VS 15 versions that do not have that file.

Fixes: #20284
2020-02-04 11:46:18 -05:00
Brad King
ebea30a1ed CMake 3.15.7 v3.15.7 2020-02-04 09:02:13 -05:00
Brad King
24d57c2257 Merge topic 'android-ndk-r19-binutils' into release-3.16
e3d3b7ddeb Android: Fix binutils selection with NDK r19+ unified toolchain

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4318
2020-02-04 08:26:39 -05:00
Brad King
e3d3b7ddeb Android: Fix binutils selection with NDK r19+ unified toolchain
In commit 97bca2f9fa (Android: Use unified toolchain in NDK r19+,
2019-07-26, v3.16.0-rc1~342^2) we hard-coded use of the unified
toolchain for NDK r19+ and skipped most of the old detection logic.
However, in that fast path we left out setting `_CMAKE_TOOLCHAIN_PREFIX`
for `CMakeFindBinutils` to select the matching binutils.  Add it.

Fixes: #20038
2020-02-03 14:35:12 -05:00
Brad King
203abaf0e9 Merge topic 'aix-skip-exports' into release-3.16
a17f6eff43 AIX: Restore pre-3.16 undocumented method to suppress exports with XL

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4303
2020-01-31 09:13:59 -05:00
Brad King
a17f6eff43 AIX: Restore pre-3.16 undocumented method to suppress exports with XL
In commit 0f150b69d3 (AIX: Explicitly compute shared object exports for
both XL and GNU, 2019-07-11, v3.16.0-rc1~418^2~2) we dropped use of the
old `CMAKE_XL_CreateExportList` cache entry for XL exports.  However,
some people were setting the value to an empty string as a way to
disable automatic export of symbols.  Restore this behavior when the
option is explicitly set to an empty string.

Issue: #20290
2020-01-30 11:38:17 -05:00
Brad King
f972b929d6 Merge topic 'vs-16.4-custom-command-inputs' into release-3.16
58b0674687 VS: Tell VS 16.4 not to verify SYMBOLIC custom command inputs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4297
2020-01-29 10:36:40 -05:00
Brad King
3c5f0037f7 Merge branch 'vs-16.4-custom-command-inputs' into release-3.15
Merge-request: !4297
2020-01-28 13:59:27 -05:00
Brad King
58b0674687 VS: Tell VS 16.4 not to verify SYMBOLIC custom command inputs
Extend the fix from commit 0578239d3a (VS: Tell VS 16.4 not to verify
SYMBOLIC custom command outputs, 2019-09-23, v3.15.4~2^2) to apply to
SYMBOLIC *inputs* too.  This is needed when there is a chain of custom
commands that use symbolic paths for ordering.

Fixes: #20179
2020-01-28 13:52:05 -05:00
Brad King
89ed119c0f Merge topic 'cpack-deb-fix-description' into release-3.16
baec299ecd CPack: Fix regression in Deb description

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4271
2020-01-27 09:27:36 -05:00
Kyle Edwards
baec299ecd CPack: Fix regression in Deb description
Fixes: #20254
2020-01-24 08:50:43 -05:00
Brad King
7458892522 Merge topic 'get-runtime-dependencies-keyword-args' into release-3.16
4c8a917a87 file(GET_RUNTIME_DEPENDENCIES): Tolerate empty list arguments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4262
2020-01-23 10:02:44 -05:00
Brad King
70adbc0c3e Merge topic 'findmpi-documentation' into release-3.16
95a501addb Help: Add more variable documentation to FindMPI

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4263
2020-01-23 10:01:56 -05:00
Kyle Edwards
95a501addb Help: Add more variable documentation to FindMPI 2020-01-22 14:46:09 -05:00
Kyle Edwards
4c8a917a87 file(GET_RUNTIME_DEPENDENCIES): Tolerate empty list arguments
Also list all keywords that were missing values instead of only the
first one.
2020-01-22 13:05:46 -05:00
Brad King
39c357b9c4 Merge topic 'msvc-runtime-library-masm' into release-3.16
1421005835 ASM_MASM: Populate MSVC runtime library abstraction table

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4257
2020-01-22 09:17:41 -05:00
Brad King
99e1be5d43 Merge branch 'msvc-runtime-library-masm' into release-3.15
Merge-request: !4257
2020-01-21 12:55:36 -05:00
Brad King
1421005835 ASM_MASM: Populate MSVC runtime library abstraction table
In commit fb3370b6a1 (MSVC: Add abstraction for runtime library
selection, 2019-04-10, v3.15.0-rc1~229^2) we overlooked populating the
runtime library selection flags for the Microsoft assembler.  It does
not actually have any such flags, but since its compiler id is `MSVC`
our generators expect the table to be populated.  Use empty values.

Without this fix, enabling the `ASM_MASM` language with policy `CMP0091`
set to `NEW` causes an error due to the missing table entries.

Fixes: #20236, #19453
2020-01-21 12:54:50 -05:00
Brad King
21e60da5bb CMake 3.16.3 v3.16.3 2020-01-21 10:17:47 -05:00
Brad King
bcb0816cf9 Merge topic 'InstallRequiredSystemLibraries-redist' into release-3.16
7ca923bcaf IRSL: Install msvcp140_{1,2,codecvt_ids}.dll if available

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Andrey Vihrov <andrey.vihrov@gmail.com>
Merge-request: !4247
2020-01-21 09:15:17 -05:00
Brad King
a3f9a9ab55 Merge branch 'InstallRequiredSystemLibraries-redist' into release-3.15
Merge-request: !4247
2020-01-20 13:22:22 -05:00
Brad King
7ca923bcaf IRSL: Install msvcp140_{1,2,codecvt_ids}.dll if available
VS now distributes these additional runtime libraries.  Install them if
available.

Fixes: #20228
2020-01-20 13:19:56 -05:00
Brad King
b168d8e855 Merge topic 'autogen_rcc_skip_unity' into release-3.16
086d9b2bab Autogen: Enable SKIP_UNITY_BUILD_INCLUSION on AUTORCC generated files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Cristian Adam <cristian.adam@gmail.com>
Merge-request: !4237
2020-01-20 11:54:13 -05:00
Craig Scott
582cc710c2 Merge topic 'pch-msvc-no-path-repetition' into release-3.16
07fe1bcd4e PCH: No repeated path for internal generated PCH files (MSVC case)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4236
2020-01-19 15:10:17 -05:00
Sebastian Holtermann
086d9b2bab Autogen: Enable SKIP_UNITY_BUILD_INCLUSION on AUTORCC generated files
`rcc` generated files are not compatible with unity builds, because they
contain classes in anonymous namespaces and static data with identical names.

This patch sets the source file property `SKIP_UNITY_BUILD_INCLUSION` to `On`
on all `AUTORCC` generated files to exclude them from unity build files.

Fixes: #20191 "QT5: Exclude resource files from unity build"
2020-01-17 09:48:35 -05:00
Brad King
4c907eae69 Merge topic 'findopenssl-dependencies-link-order' into release-3.16
d2880aaa06 FindOpenSSL: Fix ordering of dependency link flags

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4235
2020-01-17 09:25:23 -05:00
Cristian Adam
07fe1bcd4e PCH: No repeated path for internal generated PCH files (MSVC case)
Fixes: #19952
2020-01-16 17:05:05 +01:00
Brad King
8cd35baae9 Merge topic 'nag-submodule' into release-3.16
f7f60ddcf9 Fortran: Add support for NAG Fortran submodules

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4229
2020-01-16 10:56:02 -05:00
Ashley Whetter
d2880aaa06 FindOpenSSL: Fix ordering of dependency link flags
Fixes: #20082, #20224
2020-01-16 10:53:19 -05:00