Commit Graph

42978 Commits

Author SHA1 Message Date
Connor Davis 9e4de543d0 Modules: Check nasm compile object variable
Check if the CMAKE_ASM_NASM_COMPILE_OBJECT variable is set
before modifying it. Only modify if not previously set.
2019-03-29 21:57:28 -06:00
Brad King 1177464dda Merge branch 'release-3.14' 2019-03-29 11:19:50 -04:00
Brad King 3c9dec0bdc CMake 3.14.1 v3.14.1 2019-03-29 09:22:46 -04:00
Brad King 50a5b7beee Merge branch 'release-3.14' 2019-03-29 09:19:33 -04:00
Brad King c690e11a56 Merge topic 'implicit-includes'
dad86f1873 ParseImplicitIncludeInfo: Canonicalize implicit include dirs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Michel Zou <xantares09@hotmail.com>
Merge-request: !3157
2019-03-29 09:11:41 -04:00
Brad King 5674018cc6 Merge topic 'implicit-includes-autogen'
a8b7cbb787 Autogen: Do not treat hard-coded -I/usr/include exclusion as implicit include

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3159
2019-03-29 09:11:04 -04:00
Brad King ce0e402934 Merge topic 'ifw_group_option_parsing'
6f6e0966a7 CPackIFW: Add missing cpack_ifw_configure_component_group option processing

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3160
2019-03-29 09:10:22 -04:00
Brad King e2d439a114 Merge topic 'backport-kwsys-SystemTools-copy-self'
ce180cf810 cmake: Fix '-E copy foo .' to avoid clobbering file

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3145
2019-03-29 09:09:26 -04:00
Brad King e532052a0a Merge topic 'update-kwsys'
15be06a5ec Tests: Fix Plugin test for international characters on Windows
24da7da686 Merge branch 'upstream-KWSys' into update-kwsys
8166634958 KWSys 2019-03-28 (e92bdbe8)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3158
2019-03-29 09:08:07 -04:00
Brad King 30159fe751 Merge branch 'implicit-includes' into release-3.14
Merge-request: !3157
2019-03-29 08:49:34 -04:00
Brad King dad86f1873 ParseImplicitIncludeInfo: Canonicalize implicit include dirs
The implicit include directory extraction added by commit 5990ecb741
(Compute implicit include directories from compiler output, 2018-12-07,
v3.14.0-rc1~108^2) leaves paths like `/usr/lib/../include` unchanged.
Fix the logic to canonicalize such paths (e.g. to `/usr/include`)
as we do for implicit link directories already.  This is important
to ensure the set of implicit directories is represented in the same
form as the include directories that will be compared to them.

Issue: #19095
2019-03-29 08:48:56 -04:00
Brad King 04c0efd4b7 Merge branch 'implicit-includes-autogen' into release-3.14
Merge-request: !3159
2019-03-29 08:48:39 -04:00
Brad King bd00090e2a Merge branch 'ifw_group_option_parsing' into release-3.14
Merge-request: !3160
2019-03-29 08:48:28 -04:00
Brad King 15be06a5ec Tests: Fix Plugin test for international characters on Windows
Build KWSys with `CP_UTF8` internal encoding so that we can dynamically
load modules by absolute paths that contain international characters.
This is needed now that KWSys DynamicLoader uses KWSys Encoding instead
of hard-coding `CP_UTF8` itself.
2019-03-29 08:19:20 -04:00
Kitware Robot 45ec5a2270 CMake Nightly Date Stamp 2019-03-29 00:01:05 -04:00
Clément Rezvoy 6f6e0966a7 CPackIFW: Add missing cpack_ifw_configure_component_group option processing
Both commit 88ecfd8ba1 (CPackIFW: Add some options, 2016-11-11,
v3.8.0-rc1~248^2) and commit e5089c562c (CPackIFW: Add some options,
2017-01-24, v3.8.0-rc1~53^2) added some options to this macro's
documentation and implementation, but the actual processing of the
parsed options was never added.  Add it now.

Reviewed-by: Konstantin Podsvirov <konstantin@podsvirov.pro>
2019-03-28 14:59:08 -04:00
Sebastian Holtermann a8b7cbb787 Autogen: Do not treat hard-coded -I/usr/include exclusion as implicit include
The `cmLocalGenerator::GetIncludeDirectoriesImplicit` method is called
by `cmQtAutoGenInitializer` to get the compiler's list of implicit
include directories.  Since commit 557b2d6e65 (Fix regression in
-I/usr/include exclusion logic, 2019-02-13, v3.14.0-rc2~6^2~2) the
method hard-codes exclusion of `/usr/include` for historical reasons.
However, it should not be reported as a real implicit include directory
unless the compiler really has it.

Refactor the logic to distinguish the hard-coded exclusion of
`/usr/include` from the real list of implicit include directories.

Fixes: #19100
2019-03-28 14:07:24 -04:00
Brad King 24da7da686 Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2019-03-28 (e92bdbe8)
2019-03-28 11:06:43 -04:00
KWSys Upstream 8166634958 KWSys 2019-03-28 (e92bdbe8)
Code extracted from:

    https://gitlab.kitware.com/utils/kwsys.git

at commit e92bdbe8e6eca2a8b6dcf14920e5e25308504206 (master).

Upstream Shortlog
-----------------

Ben Boeckel (7):
      30198dbc DynamicLoader: fix error reporting on Windows
      cf6b5f69 DynamicLoader: use Encoding::ToWindowsExtendedPath for the libname
      d17291ad DynamicLoader: support loading libraries using flags
      40d9e482 DynamicLoader: support loading sibling libraries on Windows
      971809c5 DynamicLoader: test the SearchBesideLibrary flag
      efb006b9 DynamicLoader: include stdio.h for _snprintf
      9e8e9ba0 DynamicLoader: avoid the min/max macros from windows.h

Brad King (1):
      92334e76 SystemTools: CopyFileAlways: avoid copying file over self
2019-03-28 11:06:33 -04:00
Kitware Robot 14b6cd497f CMake Nightly Date Stamp 2019-03-28 00:01:07 -04:00
Brad King 52bb1760ff Merge branch 'backport-kwsys-SystemTools-copy-self' into release-3.14
Merge-request: !3145
2019-03-27 14:22:52 -04:00
Brad King 07dd1d2782 Merge branch 'release-3.14' 2019-03-27 14:21:51 -04:00
Brad King 97c163f5f7 Merge branch 'FindFontconfig-var-case' into release-3.14
Merge-request: !3153
2019-03-27 14:20:53 -04:00
Brad King 9cf64bb101 Merge branch 'jacoco_parser_crash' into release-3.14
Merge-request: !3147
2019-03-27 14:20:45 -04:00
Brad King a60f1c4faf Merge topic 'jacoco_parser_crash'
1d16eae868 ctest_coverage: fix out-of-bounds index in Jacoco parser

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3147
2019-03-27 14:11:57 -04:00
Brad King c03ee3ca71 Merge topic 'FindFontconfig-var-case'
a3a1e69f8a FindFontconfig: Convert module variables to camel case

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3153
2019-03-27 14:11:08 -04:00
Brad King c126e80b5a Merge topic 'cuda-bracket-output'
b127e0c561 CUDA: Tolerate square brackets in PROMPT environment variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3151
2019-03-27 13:59:26 -04:00
Brad King 3843d0550b Merge topic 'find_dependency-cleanup'
82dec5191c find_dependency: Remove clearing of unused cmake_fd_exact_arg variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3149
2019-03-27 13:58:38 -04:00
Brad King fcfbc01d68 Merge topic 'cmTarget_pimpl'
de0d57c97a cmTarget: Use std::unique_ptr instead of custom smart pointer
ecc782c75d cmTarget: Single line comment clanups
be2764a657 cmTarget: Make private `SetPropertyDefault` an in code lambda `InitProperty`
2bfee8a58b cmTarget: Remove obsolete `friend` definitions
a65a404186 cmTarget: Inline private HasImportLibrary method
ff91071a14 cmTarget: Move member method `CheckImportedLibName` to impl
afc4612fa5 cmTarget: Move member method `ProcessSourceItemCMP0049()` to impl
72b0eeeb21 cmTarget: Move member booleans to impl
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Daniel Pfeifer <daniel@pfeifer-mail.de>
Merge-request: !3142
2019-03-27 13:25:35 -04:00
Kyle Edwards c518f305bb Merge topic 'update-policy-documentation'
5e958ccd79 Help: Improve Cache documentation
07f3082d3b Help: Improve documentation links and formatting

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3152
2019-03-27 12:07:58 -04:00
Bartosz Kosiorek 5e958ccd79 Help: Improve Cache documentation 2019-03-27 16:01:29 +01:00
Bartosz Kosiorek 07f3082d3b Help: Improve documentation links and formatting 2019-03-27 16:01:20 +01:00
Kitware Robot d2c0350c7b CMake Nightly Date Stamp 2019-03-27 00:01:08 -04:00
Brad King a3a1e69f8a FindFontconfig: Convert module variables to camel case
Our documented standard for find module variable names is to match the
case of the find module package name.  This was overlooked when the
module was added by commit 84e7920b3a (FindFontconfig: Add module to
find Fontconfig, 2018-09-27, v3.14.0-rc1~523^2).

The module was released with the upper case names in CMake 3.14.0, so
fix it to have camel case names in 3.14.1.  This is incompatible but
anyone using a given release series should be using the latest patch on
it and we've made breaking fixups on newly released features like this
before.

Reported-by: Christophe Giboudeaux <christophe@krop.fr>
Fixes: #19094
2019-03-26 14:14:09 -04:00
Damien R 82dec5191c find_dependency: Remove clearing of unused cmake_fd_exact_arg variable
The variable is unused since commit ab358d6a85 (Improve find_dependency
argument handling, 2017-05-22, v3.9.0-rc1~57^2) where handling of EXACT
keyword in find_dependency was reworked.
2019-03-26 11:56:02 -04:00
Sylvain Joubert 1d16eae868 ctest_coverage: fix out-of-bounds index in Jacoco parser
When the current source file is not found the FilePath variable was left
with the previous path content. In case the previous file had less lines
than the current one and there are 'line' entries for the current one
with higher number we ended up in a buffer overflow while indexing the
previous file entry with a line number higher.  By clearing the
FilePath, the empty() guard triggers correctly on an empty path and it
avoid modifying the wrong data.
2019-03-26 11:50:30 -04:00
Brad King 36611418ab Merge topic 'cmGlobalGenerator_code_maintenance'
b289243d99 cmGlobalGenerator: Inline `aRange` acquisition in `for(x:aRange)` invocations
bf9afa1e15 cmGlobalGenerator: Use auto for long iterator types

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Daniel Pfeifer <daniel@pfeifer-mail.de>
Merge-request: !3144
2019-03-26 11:00:44 -04:00
Brad King f288383b3f Merge topic 'fix_autogen_deadlock'
e7a760fe7d Autogen: Fix deadlock when uv_spawn() fails while trying to run moc

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: Sebastian Holtermann <sebholt@xwmw.org>
Merge-request: !3139
2019-03-26 10:59:57 -04:00
Brad King 505bdd3d29 Merge branch 'cuda-bracket-output' into release-3.14
Merge-request: !3151
2019-03-26 10:58:08 -04:00
Brad King ba55fc2aa5 Merge branch 'release-3.14' 2019-03-26 10:57:26 -04:00
Brad King 8494bc2713 Merge topic 'toolchain-include_directories'
588fa1bb9e Restore support for include_directories() in toolchain files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3140
2019-03-26 10:56:34 -04:00
Brad King ce180cf810 cmake: Fix '-E copy foo .' to avoid clobbering file
Backport KWSys commit 92334e7670 (SystemTools: CopyFileAlways: avoid
copying file over self, 2019-03-25) to the CMake 3.14 release branch.

Fixes: #19075
2019-03-26 10:51:47 -04:00
Brad King b127e0c561 CUDA: Tolerate square brackets in PROMPT environment variable
The `PROMPT` environment variable affects nvcc's output.  Fix
our parsing of that output to tolerate square brackets.

Fixes: #19089
2019-03-26 10:43:51 -04:00
Kitware Robot db20cb2f9f CMake Nightly Date Stamp 2019-03-26 00:01:07 -04:00
Brad King 9fbad8b40b Merge topic 'ctest_submit_get_buildid'
ba7e44eb7a ctest_submit: Add option BUILD_ID

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Zack Galbreath <zack.galbreath@kitware.com>
Merge-request: !3120
2019-03-25 11:52:25 -04:00
Brad King 28ef639d2b Merge topic 'pkg-get-variable-prefix-path'
f401a57160 pkg_get_variable now sets PKG_CONFIG_PATH like pkg_check_modules
4d76941924 FindPkgConfig: hoist PKG_CONFIG_PATH ops out into _pkg_set_path_internal
78f23de70c More tests for pkg_get_variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3131
2019-03-25 11:51:29 -04:00
Brad King c22a2b49af Merge branch 'toolchain-include_directories' into release-3.14
Merge-request: !3140
2019-03-25 11:50:06 -04:00
Brad King 588fa1bb9e Restore support for include_directories() in toolchain files
Any `include_directories()` calls in toolchain files are used during our
ABI detection step even though it does not include any system headers.
Since commit 5990ecb741 (Compute implicit include directories from
compiler output, 2018-12-07, v3.14.0-rc1~108^2), that check is also used
to detect implicit include directories.  Any `include_directories()` in
a toolchain file are detected as implicit and later excluded from
explicit specification on compiler command lines, thus breaking the
purpose of the calls in the first place.

Fix the implicit include directory detection step to avoid using paths
from `include_directories()` calls in the toolchain file.

Fixes: #19079
2019-03-25 11:48:17 -04:00
Sebastian Holtermann b289243d99 cmGlobalGenerator: Inline aRange acquisition in for(x:aRange) invocations
Changes the following code snippets in `cmGlobalGenerator`
```
AType aRange = object.getRange();
for ( auto & item: aRange) {
```
to

```
for ( auto & item: object.getRange()) {
```
2019-03-25 13:51:22 +01:00
Sebastian Holtermann bf9afa1e15 cmGlobalGenerator: Use auto for long iterator types 2019-03-25 13:51:22 +01:00