Commit Graph

47766 Commits

Author SHA1 Message Date
Marc Chevrier
38332fc4fa cmGeneratorExpressionDAGChecker: introduce method Top() 2020-04-18 11:29:43 +02:00
Marc Chevrier
40d1735681 Merge topic 'add-contains-to-cmext-algorithm'
aacd4e4a90 Refactoring: add cm::contains to <cmext/algorithm>

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4606
2020-04-18 05:27:52 -04:00
Kitware Robot
fbf8db89e4 CMake Nightly Date Stamp 2020-04-18 00:01:14 -04:00
Brad King
ff3860b725 Merge topic 'update-gitsetup'
51581a4b4b Merge branch 'upstream-GitSetup' into update-gitsetup
58696abdfe GitSetup 2020-04-17 (b162f746)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4624
2020-04-17 10:17:55 -04:00
Brad King
51581a4b4b Merge branch 'upstream-GitSetup' into update-gitsetup
# By GitSetup Upstream
* upstream-GitSetup:
  GitSetup 2020-04-17 (b162f746)
2020-04-17 10:13:26 -04:00
GitSetup Upstream
58696abdfe GitSetup 2020-04-17 (b162f746)
Code extracted from:

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

at commit b162f7465b8163be49ba6d0ea9400f418c2fbb9d (setup).
2020-04-17 10:13:26 -04:00
Brad King
acc4d1b226 Merge topic 'setup-user-portable'
22aff63653 setup-user: restore portability

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4612
2020-04-17 09:11:47 -04:00
Brad King
0e3695b661 Merge topic 'doc-set_property-append-empty'
ad937fb36c Help: Document that set_property APPEND ignores empty values

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4622
2020-04-17 08:51:11 -04:00
Brad King
ad937fb36c Help: Document that set_property APPEND ignores empty values
Fixes: #20581
2020-04-17 08:09:06 -04:00
Brad King
8bc757c8f6 Merge branch 'release-3.17' 2020-04-17 08:07:30 -04:00
Brad King
ea2f95f4b9 Merge topic 'ios_multi_arch_fix'
170e598add iOS: Fix detection of supported SDK architectures

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alexander Köplinger <alex.koeplinger@outlook.com>
Merge-request: !4615
2020-04-17 08:07:29 -04:00
Brad King
ee79216b82 Merge topic 'ios_multi_arch_fix' into release-3.17
170e598add iOS: Fix detection of supported SDK architectures

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alexander Köplinger <alex.koeplinger@outlook.com>
Merge-request: !4615
2020-04-17 08:07:29 -04:00
Brad King
d601a2c75c Merge topic 'FindPython-dev-subcomponents'
c1b4044d3e FindPython: add sub-components to Development component

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !4616
2020-04-17 08:05:39 -04:00
Marc Chevrier
aacd4e4a90 Refactoring: add cm::contains to <cmext/algorithm> 2020-04-17 10:00:03 +02:00
Kitware Robot
9a450bcfec CMake Nightly Date Stamp 2020-04-17 00:01:16 -04:00
Kyle Edwards
5f20e85412 Merge topic 'cat_cmd_20557'
a625f30785 cmake -E: add cat command.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4600
2020-04-16 11:35:55 -04:00
Brad King
7e8df1bb24 Merge topic 'cuda_architectures'
21131ca60c CUDA: Add CudaOnly.CompileFlags test
f0931b0790 CUDA: Convert tests to use CUDA_ARCHITECTURES
e98588aaba CUDA: Add CUDA_ARCHITECTURES target property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Patrick Stotko <stotko@cs.uni-bonn.de>
Merge-request: !4568
2020-04-16 11:11:33 -04:00
Brad King
854cc83a76 Merge topic 'makefile-target-special'
a4173ef165 Tests: Enable coverage of special chars in include dirs for Makefiles
d74e651b78 Makefiles: Re-implement makefile target path escaping and quoting
031bfaa865 Makefiles: Factor out makefile target path escaping and quoting
ca343dad07 Makefiles: Convert paths with '#' on command-lines to short path on Windows
af7de05853 Makefiles: Do not use '\#' escape sequence with Windows-style make tools
1639ee70ef cmDepends: Update types to always use a Makefile generator
413d26030f cmGlobalNinjaGenerator: Remove outdated comment

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4605
2020-04-16 11:05:04 -04:00
Brad King
b9b69774ee Merge topic 'update-kwsys'
87a06afce3 Merge branch 'upstream-KWSys' into update-kwsys
1b37136633 KWSys 2020-04-15 (5ada375f)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4614
2020-04-16 09:09:00 -04:00
Marc Chevrier
c1b4044d3e FindPython: add sub-components to Development component
Fixes: #20425
2020-04-16 14:38:39 +02:00
Alexandru Croitor
170e598add iOS: Fix detection of supported SDK architectures
Instead of relying on SDKSettings.plist which does not contain the
certain architectures, deduce the supported architectures by
inspecting libSystem.tbd and libSystem.dylib.

.tbd files are text files, so just parse out the archs string.
.dylib files can be fat or non-fat, so use lipo -info to extract
the architectures and parse lipo output.

Fixes: #20588
2020-04-16 07:51:03 -04:00
Kitware Robot
bec1c211d9 CMake Nightly Date Stamp 2020-04-16 00:01:11 -04:00
Johnny Jazeix
a625f30785 cmake -E: add cat command.
Concatenate files and print on the standard output.

FIXES: #20557
2020-04-15 20:56:56 +02:00
Raul Tambre
21131ca60c CUDA: Add CudaOnly.CompileFlags test
Covers passing compile flags explicitly for both NVCC and Clang.
2020-04-15 17:55:41 +03:00
Raul Tambre
f0931b0790 CUDA: Convert tests to use CUDA_ARCHITECTURES 2020-04-15 17:55:41 +03:00
Raul Tambre
e98588aaba CUDA: Add CUDA_ARCHITECTURES target property
Simplifies CUDA target architecture handling.

Required for Clang support as Clang doesn't automatically select a supported architecture.
We detect a supported architecture during compiler identification and set CMAKE_CUDA_ARCHITECTURES to it.

Introduces CMP0104 for backwards compatibility with manually setting code generation flags with NVCC.

Implements #17963.
2020-04-15 17:55:41 +03:00
Jiri Malak
22aff63653 setup-user: restore portability
Changes in commit 5129e97285 (setup-user: switch to git-var to check if
username and e-mail are set, 2019-11-24, v3.17.0-rc1~379^2) now require
the `rev` and `cut` tools to be available.  Revise the logic to use that
approach only when they are available, and otherwise fall back to the
previous more portable approach.

Co-Author: Brad King <brad.king@kitware.com>
2020-04-15 10:30:04 -04:00
Brad King
5e70315fa8 Merge topic 'support_pseudo_sysroots'
8cc384f629 Compilers: Add paths from -print-sysroot to system prefix path

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4585
2020-04-15 09:53:08 -04:00
Brad King
4f7d16c68f Merge topic 'cpack-nsis-dpi-aware'
d6840a4f3c CPack/NSIS: Add option for setting DPI-aware

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4607
2020-04-15 09:50:49 -04:00
Brad King
156196938c Merge topic 'cmprop-source'
e64fa5f1b6 cmSourceFile::GetProperty: return cmProp
fc223f9860 cmGlobalXCodeGenerator: Fix genex interpreter overloads

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4603
2020-04-15 09:49:46 -04:00
Brad King
ad386d42d7 Merge topic 'doc-CMAKE_PREFIX_PATH-env-var'
d59c6ea5c6 Help: Convert find_package references to CMAKE_PREFIX_PATH to links
03b6f3a2e8 Help: Document the CMAKE_PREFIX_PATH environment variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4609
2020-04-15 09:47:36 -04:00
Brad King
a67565751f Merge topic 'msbuildUtf8Support'
bc877a7e94 Add support to indicate UTF-8 custom command pipe output encoding

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4587
2020-04-15 09:44:48 -04:00
Brad King
0a6b715c5c Merge topic 'CMakePrintSystemInformation-processor'
06e2c54115 CMakePrintSystemInformation: Add CMAKE_SYSTEM_PROCESSOR

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4608
2020-04-15 09:42:41 -04:00
Brad King
55b4f37d55 Merge branch 'release-3.16' 2020-04-15 09:41:12 -04:00
Brad King
d199ab7af0 Merge branch 'release-3.17' 2020-04-15 09:39:56 -04:00
Brad King
45d61f9f89 Merge topic 'ibmi-aix-exports'
420e91c951 AIX: Activate symbol export/import IBM i (OS400)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4611
2020-04-15 09:39:56 -04:00
Brad King
e4aed8b9cd Merge topic 'ibmi-aix-exports' into release-3.17
420e91c951 AIX: Activate symbol export/import IBM i (OS400)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4611
2020-04-15 09:39:55 -04:00
Brad King
8123f6b199 Merge branch 'release-3.17' 2020-04-15 09:38:04 -04:00
Brad King
5fde1af854 Merge topic 'FindPython-if-auto-deref' into release-3.17
894fdea2a9 FindPython: remove extra dereference
0b9c9e2c8c FindPython: avoid autoderef in version comparisons

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4610
2020-04-15 09:38:03 -04:00
Brad King
d561898572 Merge topic 'FindPython-if-auto-deref'
894fdea2a9 FindPython: remove extra dereference
0b9c9e2c8c FindPython: avoid autoderef in version comparisons

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4610
2020-04-15 09:38:03 -04:00
Brad King
642bd67fc5 Merge branch 'release-3.17' 2020-04-15 09:36:25 -04:00
Brad King
d93ce24b0f Merge topic 'FindCUDAToolkit-search-stubs'
4f1e24efa0 FindCUDAToolkit searches stub location last

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4589
2020-04-15 09:36:25 -04:00
Brad King
17e6666a43 Merge topic 'FindCUDAToolkit-search-stubs' into release-3.17
4f1e24efa0 FindCUDAToolkit searches stub location last

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4589
2020-04-15 09:36:24 -04:00
Brad King
71a0609379 Merge branch 'release-3.17' 2020-04-15 09:01:36 -04:00
Brad King
40e043eb98 Merge branch 'backport-3.17-file-upload-tls' into release-3.17
Merge-request: !4579
2020-04-15 08:57:13 -04:00
Harry Mallon
dbfece1004 file(UPLOAD): Add default ca_certs
Default ca_certs were not added when using `UPLOAD` with built-in
(non-system) cURL.  Previously we only did this for `DOWNLOAD`.

Fixes: #20551
2020-04-15 08:55:09 -04:00
Brad King
a4173ef165 Tests: Enable coverage of special chars in include dirs for Makefiles
Issue: #20555
2020-04-15 08:34:51 -04:00
Brad King
d74e651b78 Makefiles: Re-implement makefile target path escaping and quoting
Previously we used `cmSystemTools::ConvertToOutputPath` which internally
used KWSys methods

* SystemTools::ConvertToUnixOutputPath
* SystemTools::ConvertToWindowsOutputPath

These were written in very early days of CMake and have some
limitations:

* They do not encode all characters.  E.g. '#' is left out.
* They attempt to do some path cleanup and handle existing quotes.
  These days CMake has clean unquoted paths already.
* They attempted to encode paths both for makefile targets and
  for shell command lines.  The latter use has mostly been replaced.
* Choosing between the two methods depends on a global variable!
  Several code paths in CMake have to copy the global generator's
  member ForceUnixPaths variable over to the cmSystemTools global.

Re-implement the `ConvertToMakefilePath` method to drop use of those
methods.  Compute suitable makefile target path escaping and quoting
via local logic.  Add support for more characters like '#'.

Fixes: #20555
2020-04-15 08:34:49 -04:00
Brad King
031bfaa865 Makefiles: Factor out makefile target path escaping and quoting
Code paths that write makefile target paths use a combination of
`cmSystemTools::ConvertToOutputPath` and `cmMakeSafe`.  Some were
missing the latter.  Wrap these two steps up into a dedicated
`ConvertToMakefilePath` method provided on both the local and global
generators.
2020-04-15 08:34:48 -04:00
Brad King
ca343dad07 Makefiles: Convert paths with '#' on command-lines to short path on Windows
In `ConvertToOutputForExisting` we convert paths with spaces to short
paths on Windows for use on command lines, e.g. for include directories.
Do the same for paths with `#` since tools like NMake do not have a way
to reliably put `#` in variable assignments.
2020-04-15 08:34:46 -04:00