Commit Graph

28671 Commits

Author SHA1 Message Date
Kitware Robot
deba768e14 CMake Nightly Date Stamp 2020-04-14 00:01:11 -04:00
Brad King
eb28858586 Merge topic 'include-dir-special'
9be48c4d0b Tests: Add coverage for special characters in include directories
dc0dc974a9 Xcode: Fix quoting of paths with square brackets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4591
2020-04-13 11:01:03 -04:00
Brad King
140c11e8d0 Merge topic 'update-kwsys'
0b495b6ca9 Merge branch 'upstream-KWSys' into update-kwsys
4ab6fcd676 KWSys 2020-04-10 (b62956f5)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4594
2020-04-13 10:47:55 -04:00
Brad King
b30e5fd972 Merge topic 'clang_cuda_prep'
d86fcc6359 CUDAToolkit: Deduce toolkit binary directory from compiler path only for NVCC
87e98bf8be CUDA: Forward CMAKE_CUDA_COMPILER_TARGET in try_compile()
60e60b9201 GNU: Disable depfiles in try-compile mode only for GCC
5f02add366 CUDA: Refactor PTX compilation flag into compiler modules
25439c7d62 Clang: Refactor CXX standard flags into __compiler_clang_cxx_standards()

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4567
2020-04-13 10:46:12 -04:00
Kitware Robot
e42389c83f CMake Nightly Date Stamp 2020-04-13 00:01:13 -04:00
Kitware Robot
26e4d9345c CMake Nightly Date Stamp 2020-04-12 00:01:10 -04:00
Kitware Robot
120eb23104 CMake Nightly Date Stamp 2020-04-11 00:01:11 -04:00
Brad King
bf120819c4 Merge topic 'find_program-exe-no-read'
86e6349ef7 find_program: Find programs that are executable but not readable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4571
2020-04-10 09:49:50 -04:00
Brad King
9ef0f35670 Merge topic 'ccmake-better-string-ops'
603a532b58 cmCursesLongMessageForm: avoid unnecessary string allocation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Sylvain Joubert <joubert.sy@gmail.com>
Merge-request: !4590
2020-04-10 09:48:41 -04:00
Brad King
dc0dc974a9 Xcode: Fix quoting of paths with square brackets
The Xcode project file format needs paths containing square
brackets ('[' or ']') to be quoted.

Issue: #20555
2020-04-10 09:37:18 -04:00
Brad King
0b495b6ca9 Merge branch 'upstream-KWSys' into update-kwsys
# By KWSys Upstream
* upstream-KWSys:
  KWSys 2020-04-10 (b62956f5)
2020-04-10 07:56:14 -04:00
Kitware Robot
41c0adde02 CMake Nightly Date Stamp 2020-04-10 00:01:10 -04:00
Ben Boeckel
603a532b58 cmCursesLongMessageForm: avoid unnecessary string allocation
The addition makes a temporary string and then drops it after adding it
to `this->Messages`. Instead, just incrementally append.
2020-04-09 11:04:45 -04:00
Brad King
9532929216 Merge topic 'file-upload-tls'
bf94dcba76 file(UPLOAD): Add support for TLS_VERIFY and TLS_CAINFO

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4580
2020-04-09 08:31:19 -04:00
Brad King
0e1313cdf4 Merge topic 'ccmake_incremental_log_display'
60bfaa8fe6 ccmake: Use incremental rendering for the logs
e9b36731e9 cmCursesLongMessageForm: Factor out helper to draw message to form

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !4573
2020-04-09 08:12:12 -04:00
Brad King
73d358442c Merge topic 'apple-arch-sysroots'
da25220d83 Merge branch 'backport-3.17-apple-arch-sysroots' into apple-arch-sysroots
84a1e67380 Apple: Fix mapping CMAKE_APPLE_ARCH_SYSROOTS to custom OSX_ARCHITECTURES
45fa9b32ca Apple: Improve handling of missing SDKs in CMAKE_APPLE_ARCH_SYSROOTS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4583
2020-04-09 08:10:55 -04:00
Vladimir Menshakov
86e6349ef7 find_program: Find programs that are executable but not readable
`find_program` internally uses `cmSystemTools::FileExists`
which calls `access(R_OK)` instead of `access(X_OK)`.
Use `cmSystemTools::IsFileExecutable` instead to fix this
issue.  An example of such a program is `sudo`.

Fixes: #10468
2020-04-09 08:08:50 -04:00
Brad King
5abe64246d Merge branch 'upstream-KWSys' into update-kwsys
# By KWSys Upstream
* upstream-KWSys:
  KWSys 2020-04-09 (e798e567)
2020-04-09 07:34:08 -04:00
Kitware Robot
5a62d86f8b CMake Nightly Date Stamp 2020-04-09 00:01:12 -04:00
Sylvain Joubert
60bfaa8fe6 ccmake: Use incremental rendering for the logs
This should avoid an exponential slowdown in the display time for
projects with lots of output.
This is still slower than cmake due to the ncurses drawing, but it should
now be O(L) in total and not O(L^2) wrt to output length.

Fixes: #20535
2020-04-08 14:40:09 -04:00
Brad King
e9b36731e9 cmCursesLongMessageForm: Factor out helper to draw message to form 2020-04-08 14:39:46 -04:00
Brad King
da25220d83 Merge branch 'backport-3.17-apple-arch-sysroots' into apple-arch-sysroots 2020-04-08 13:44:42 -04:00
Brad King
84a1e67380 Apple: Fix mapping CMAKE_APPLE_ARCH_SYSROOTS to custom OSX_ARCHITECTURES
The `CMAKE_OSX_ARCHITECTURES` value is not used directly by generators.
It is used to initialize a per-target `OSX_ARCHITECTURES` property, but
that property can also be set explicitly by project code to a subset of
the full list of architectures.  In order to handle this case, construct
a mapping from each `CMAKE_OSX_ARCHITECTURES` entry to the corresponding
`CMAKE_APPLE_ARCH_SYSROOTS` entry by name.  Use the mapping to find the
sysroot for each entry in `OSX_ARCHITECTURES` for a given target.

If `CMAKE_APPLE_ARCH_SYSROOTS` does not have the same length as
`CMAKE_OSX_ARCHITECTURES`, error out early rather than risking a crash
or assertion failure.

Fixes: #20534
2020-04-08 13:40:09 -04:00
Brad King
45fa9b32ca Apple: Improve handling of missing SDKs in CMAKE_APPLE_ARCH_SYSROOTS
Use `<arch>-SDK-NOTFOUND` instead of an empty string as a placeholder in
`CMAKE_APPLE_ARCH_SYSROOTS` for architectures whose SDK is not found.
This ensures the length of `CMAKE_APPLE_ARCH_SYSROOTS` matches the
length of `CMAKE_OSX_ARCHITECTURES`.  It also makes the missing SDKs
more visible in the value.

Issue: #20534
2020-04-08 11:51:02 -04:00
Harry Mallon
bf94dcba76 file(UPLOAD): Add support for TLS_VERIFY and TLS_CAINFO
* Improve and test err messages when TLS_VERIFY and TLS_CAINFO
  are not set in file(DOWNLOAD) and file(UPLOAD).
2020-04-08 15:15:49 +01:00
Brad King
77053ed470 Merge topic 'ninja-order-depends'
d54f0aa9b7 Merge branch 'master' into ninja-order-depends
2f949be4b3 Ninja: Make config uppercase in object order target

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4581
2020-04-08 09:03:23 -04:00
Brad King
e8295e532b Merge topic 'file-upload-tls'
9427763081 file(UPLOAD): Add default ca_certs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4579
2020-04-08 08:51:11 -04:00
Brad King
d5e44d7a38 Merge topic 'update-kwsys'
ff2e597ba2 Merge branch 'upstream-KWSys' into update-kwsys
c5635588ad KWSys 2020-04-07 (caff9c3b)
2cc7baa1bc Tests: Fix get_filename_component PROGRAM test to use an executable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4578
2020-04-08 08:48:56 -04:00
Kitware Robot
09d28262bf CMake Nightly Date Stamp 2020-04-08 00:01:12 -04:00
Kyle Edwards
d54f0aa9b7 Merge branch 'master' into ninja-order-depends 2020-04-07 14:54:54 -04:00
Kyle Edwards
2f949be4b3 Ninja: Make config uppercase in object order target
Fixes: #20539
2020-04-07 14:28:35 -04:00
Harry Mallon
9427763081 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-07 12:58:04 -04:00
Brad King
ff2e597ba2 Merge branch 'upstream-KWSys' into update-kwsys
# By KWSys Upstream
* upstream-KWSys:
  KWSys 2020-04-07 (caff9c3b)
2020-04-07 10:31:10 -04:00
Raul Tambre
87e98bf8be CUDA: Forward CMAKE_CUDA_COMPILER_TARGET in try_compile()
Required for crosscompile support with Clang.
2020-04-07 09:33:26 -04:00
Brad King
b8b804e2ed Merge topic 'file-GetRuntimeDependencies_support_cross_compilation'
f867423aa2 file: GetRuntimeDependencies use CMAKE_OBJDUMP when applicable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4538
2020-04-07 08:03:50 -04:00
Brad King
c0438d272d Merge topic 'llvm-rc-include-path'
35a29ec827 llvm-rc: Restore include path for data after explicit preprocessing

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4570
2020-04-07 08:00:45 -04:00
Brad King
3d61ff7b10 Merge topic 'llvm-rc-include-path' into release-3.17
35a29ec827 llvm-rc: Restore include path for data after explicit preprocessing

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4570
2020-04-07 08:00:44 -04:00
Brad King
38f293efab Merge topic 'update-kwsys'
dd8365b3f1 Merge branch 'upstream-KWSys' into update-kwsys
fe6d7d6c42 KWSys 2020-04-06 (af1f389c)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4572
2020-04-07 07:56:23 -04:00
Kitware Robot
ec4c25cb92 CMake Nightly Date Stamp 2020-04-07 00:01:12 -04:00
Thomas Bernard
35a29ec827 llvm-rc: Restore include path for data after explicit preprocessing
Since commit 1c2d031cbd (Add -E cmake_llvm_rc to preprocess files for
llvm-rc, 2020-01-14, v3.17.0-rc1~24^2) with llvm-rc we explicitly
preprocess RC source files and then compile separately without -I flags.
This broke cases where the RC source references data files adjacent to
itself or in the include path.

This change adds the expansion of the include paths when calling the
llvm-rc in order for the resource files to be picked up correctly by
llvm-rc.  Since the RC compiled file is first preprocessed, the file
being compiled by llvm-rc resides in the build directory. In order for
llvm-rc to find the resource data specified relative to the .rc file
being compiled, the source file path is preppended in the include list
so that the original source path takes priority over all the other
includes paths specified.

A space was added in the CMAKE_INCLUDE_FLAG_RC to make the include
directive work properly for llvm-rc. Checks on the rc.exe showed that
the syntax change doesn't affect it's proper operation.

Fixes: #20529
2020-04-06 21:19:12 +02:00
Robert Maynard
f867423aa2 file: GetRuntimeDependencies use CMAKE_OBJDUMP when applicable
On machines where the gnu bin utils are prefixed, or suffixed
the file(GET_RUNTIME_DEPENDENCIES ) command would fail without
explicitly setting the location of objdump.

Now we pre-populate the variables used to find objdump based
on the gnu bin utils, so that these use cases are better supported
2020-04-06 12:12:14 -04:00
Brad King
dd8365b3f1 Merge branch 'upstream-KWSys' into update-kwsys
# By KWSys Upstream
* upstream-KWSys:
  KWSys 2020-04-06 (af1f389c)
2020-04-06 09:24:42 -04:00
Brad King
f0a27e44f3 Merge topic 'parallel-lzma-compression'
b3bacf0152 cmCPackArchiveGenerator: support multithreaded compression
b71d385ed4 cmCPackArchiveGenerator: support setting archive options
948aa8bd1c cmArchiveWrite: support setting archive filter options
b9c17de023 cmArchiveWrite: split out opening the file

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Cristian Adam <cristian.adam@gmail.com>
Merge-request: !3195
2020-04-06 08:28:19 -04:00
Brad King
2b9e3abcb5 Merge topic 'ctest-resource-file-cache'
060d2ce269 CTest: Add CTEST_RESOURCE_SPEC_FILE variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4564
2020-04-06 08:26:40 -04:00
Brad King
0bc64c450c Merge topic 'use-cmWorkingDirectory'
56cccde235 cmWorkingDirectory: Add GetOldDirectory method
753817e71d CPack/FreeBSD: Use RAII to save/restore working directory

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4566
2020-04-06 08:23:49 -04:00
Kitware Robot
e746f1dc06 CMake Nightly Date Stamp 2020-04-06 00:01:09 -04:00
Kitware Robot
1f06acba9c CMake Nightly Date Stamp 2020-04-05 00:01:06 -04:00
Kitware Robot
ff4388e90b CMake Nightly Date Stamp 2020-04-04 00:01:12 -04:00
Brad King
56cccde235 cmWorkingDirectory: Add GetOldDirectory method 2020-04-03 09:55:49 -04:00
Brad King
753817e71d CPack/FreeBSD: Use RAII to save/restore working directory 2020-04-03 09:55:49 -04:00