Commit Graph

26469 Commits

Author SHA1 Message Date
Kitware Robot 3ee16ef31b CMake Nightly Date Stamp 2019-05-02 00:01:07 -04:00
Brad King 87120b9c2a Merge topic 'out-of-dir-linking-private-deps'
3d3713121b target_link_libraries: Fix static library private deps in other dirs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3276
2019-05-01 11:50:33 -04:00
Kitware Robot f4e2face6f CMake Nightly Date Stamp 2019-05-01 00:01:05 -04:00
Craig Scott e138207c42 Merge topic 'message-new-types-and-logging'
599587feb1 message(): Minor code modernization
6cc93b370e message(): Add support for log levels
377d1b7896 cmSystemTools: Remove unused message-related code, simplify logic

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Brad King <brad.king@kitware.com>
Merge-request: !3268
2019-04-30 18:35:06 -04:00
Brad King 3d3713121b target_link_libraries: Fix static library private deps in other dirs
In commit a1ad0a699b (target_link_libraries: Allow use with targets in
other directories, 2018-09-07, v3.13.0-rc1~94^2) we accidentally broke
the logic that adds `$<LINK_ONLY:...>` to private dependencies of static
libraries in their `INTERFACE_LINK_LIBRARIES` in the case that the
dependency is added from outside the directory creating the library.
The check for a valid target name should apply to the original name
specified by the caller and not the encoded cross-directory reference.

Fixes: #19197
2019-04-30 13:53:10 -04:00
Brad King ea026fb219 Merge topic 'cmuvstreambuf'
c74698cb75 cmUVStreambuf: Add std::streambuf implementation for uv_stream_t
8cfd25db71 cmUVHandlePtr: Add cm::uv_loop_ptr
c0e6b22d0a Refactor: Move/rename cmProcessGetPipes() to cmGetPipes()

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3240
2019-04-30 10:35:11 -04:00
Kyle Edwards 40852eed8e Merge topic 'source_group-tree-files'
8d93815d20 source_group command ensures that FILES arguments are actually files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3265
2019-04-30 10:30:35 -04:00
Brad King d0e6fc2833 Merge topic 'relax_TARGET_OBJECT_generator_expr'
ce078dda79 Relax the usage of TARGET_OBJECTS generator expression

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3178
2019-04-30 10:09:52 -04:00
Brad King d9a4da453f Merge topic 'server-deprecate'
996e1885c4 server: deprecate in favor of the file-api

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kyle Edwards <kyle.edwards@kitware.com>
Merge-request: !3251
2019-04-30 10:07:27 -04:00
Brad King 60b28de5c8 Merge topic 'add-execute_process-command-echo'
044dcf9f8d execute_process: Add option to echo command lines
d350fb6889 execute_process: Manage KWSys Process lifetime with unique_ptr

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3165
2019-04-30 10:05:09 -04:00
Kitware Robot 4eebc52eca CMake Nightly Date Stamp 2019-04-30 00:01:05 -04:00
Kitware Robot a40c9825bb CMake Nightly Date Stamp 2019-04-29 00:01:05 -04:00
Alex Turbov 599587feb1 message(): Minor code modernization 2019-04-28 22:45:44 +10:00
Alex Turbov 6cc93b370e message(): Add support for log levels
Relates: #18943
Co-Authored-By: Craig Scott <craig.scott@crascit.com>
2019-04-28 22:45:44 +10:00
Kitware Robot d8426b57a6 CMake Nightly Date Stamp 2019-04-28 00:01:04 -04:00
Alex Turbov 377d1b7896 cmSystemTools: Remove unused message-related code, simplify logic 2019-04-27 18:36:45 +10:00
Kitware Robot a9c113fd3e CMake Nightly Date Stamp 2019-04-27 00:01:04 -04:00
Kitware Robot 68031b4fdd CMake Nightly Date Stamp 2019-04-26 00:01:07 -04:00
Kyle Edwards 1ddce8fd6d Merge topic 'cmWorkerPool_Tweaks'
56890ede2a cmWorkerPool: Factor our worker thread class (internals)
9794b72d38 cmWorkerPool: Set worker thread count separately to Process()

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3260
2019-04-25 15:34:12 -04:00
Mateusz Janek 8d93815d20 source_group command ensures that FILES arguments are actually files 2019-04-25 20:51:40 +02:00
Kyle Edwards c74698cb75 cmUVStreambuf: Add std::streambuf implementation for uv_stream_t
This will allow std::istream/std::ostream-based interaction with
processes spawned by libuv.
2019-04-25 12:14:00 -04:00
Kyle Edwards 8cfd25db71 cmUVHandlePtr: Add cm::uv_loop_ptr 2019-04-25 12:03:08 -04:00
Kyle Edwards c0e6b22d0a Refactor: Move/rename cmProcessGetPipes() to cmGetPipes() 2019-04-25 12:03:08 -04:00
Kitware Robot 4ccf40e61e CMake Nightly Date Stamp 2019-04-25 00:01:07 -04:00
Kyle Edwards a7eb2877b8 Merge topic 'ctest_xml_tweaks'
d8af0700a3 ctest: consistently format generator name
95db11fdb1 ctest: Include ChangeId in Update.xml

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3259
2019-04-24 09:30:42 -04:00
Sebastian Holtermann 56890ede2a cmWorkerPool: Factor our worker thread class (internals)
This moves the `cmWorkerPoolInternal::WorkerT` class to `cmWorkerPoolWorker`
and changes the thread start interface to make it independent of the
`cmWorkerPoolInternal` type.
2019-04-24 12:54:19 +02:00
Sebastian Holtermann 9794b72d38 cmWorkerPool: Set worker thread count separately to Process()
Don't pass the desired worker thread count to the `cmWorkerPool::Process()`
method but set it separately with the new `cmWorkerPool::SetThreadCount`
method.  This allows calling `cmWorkerPool::Process()` repeatedly without
having to pass the thread count every time.
2019-04-24 12:32:58 +02:00
Kitware Robot 993dfa89d8 CMake Nightly Date Stamp 2019-04-24 00:01:04 -04:00
Zack Galbreath d8af0700a3 ctest: consistently format generator name
Notes.xml and Upload.xml were missing a hyphen that the rest of
our XML files included.

ctest3.14.0-rc1 vs. ctest-3.14.0-rc1
2019-04-23 15:02:14 -04:00
Zack Galbreath 95db11fdb1 ctest: Include ChangeId in Update.xml 2019-04-23 14:56:46 -04:00
Kitware Robot d170a3177f CMake Nightly Date Stamp 2019-04-23 00:01:04 -04:00
Brad King 996e1885c4 server: deprecate in favor of the file-api
Document the server mode as deprecated.  Add a deprecation message
to the configure step output when invoked through server mode.

Closes: #19101
2019-04-22 09:38:44 -04:00
Brad King d0e3701861 Merge topic 'msvc-warning-flags'
1baf122cd4 MSVC: Do not add /W3 to CMAKE_<LANG>_FLAGS by default

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3250
2019-04-22 07:51:01 -04:00
Brad King cb23f2ac8b Merge topic 'vs-default-platform'
db02be85a0 VS: Provide the default platform name to project code

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3246
2019-04-22 07:38:33 -04:00
Kitware Robot 8c322f9313 CMake Nightly Date Stamp 2019-04-22 00:01:04 -04:00
Kitware Robot 77ae6ae860 CMake Nightly Date Stamp 2019-04-21 00:01:03 -04:00
Kitware Robot 0116bb19d3 CMake Nightly Date Stamp 2019-04-20 00:01:04 -04:00
Robert Maynard ce078dda79 Relax the usage of TARGET_OBJECTS generator expression
The geneator expression can now be used with static, shared, and
module libraries and executables.
2019-04-19 13:52:50 -04:00
Bill Hoffman 044dcf9f8d execute_process: Add option to echo command lines
Add COMMAND_ECHO option to the execute_process command. This will allow
execute_process to show the command it will run. Also add a cmake variable
CMAKE_EXECUTE_PROCESS_COMMAND_ECHO. Both the option and the variable can
be set to one of the following: STDERR|STDOUT|NONE. The command will be
printed to stderr or stdout or not at all.

Fixes: #18933
2019-04-19 13:32:08 -04:00
Brad King d350fb6889 execute_process: Manage KWSys Process lifetime with unique_ptr 2019-04-19 13:32:08 -04:00
Brad King 1baf122cd4 MSVC: Do not add /W3 to CMAKE_<LANG>_FLAGS by default
We do not add default warning flags on other compilers, and having
a warning flag in the default flags makes it hard for projects to
customize the warning level.  They need to use string processing
to remove `/W3` from `CMAKE_{C,CXX}_FLAGS`.  Therefore we should
drop it.

However, projects may be using string processing to replace `/W3`
with another flag, so we cannot simply drop it.  Add a policy to
drop it in a compatible way.

Fixes: #18317
2019-04-19 12:56:49 -04:00
Brad King db02be85a0 VS: Provide the default platform name to project code
The value of `CMAKE_VS_PLATFORM_NAME` is computed by Visual Studio
generators based on `CMAKE_GENERATOR_PLATFORM` or some default.
Prior to the VS 2019 generator, the default was always `Win32`.
However, for the `Visual Studio 16 2019` generator, the default is
based on the host platform.

Store the default in a new `CMAKE_VS_PLATFORM_NAME_DEFAULT` variable for
use by project code.  This is particularly useful in toolchain files
because they are allowed to set `CMAKE_GENERATOR_PLATFORM` and so
`CMAKE_VS_PLATFORM_NAME` is not yet known.  Of course the toolchain file
author knows whether it will set `CMAKE_GENERATOR_PLATFORM`, and if not
then `CMAKE_VS_PLATFORM_NAME_DEFAULT` provides the platform name that
will be used.

Fixes: #19177
2019-04-19 07:46:13 -04:00
Kitware Robot bf64e50da4 CMake Nightly Date Stamp 2019-04-19 00:01:04 -04:00
Brad King 2e94c1185b Merge topic 'unique'
9ecb3f8d5c Ninja,Makefile: use `unique_ptr` for memory management

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3230
2019-04-18 11:07:07 -04:00
Saleem Abdulrasool 9ecb3f8d5c Ninja,Makefile: use unique_ptr for memory management
Use a `unique_ptr` to manage the lifetime of the `MacOSXContentGenerator`
and 'OSXBundleGenerator` rather than manually handling the lifetime.
2019-04-18 11:05:25 -04:00
Brad King 52ef218664 Merge topic 'update-kwsys'
0e47391400 bootstrap: Update for new KWSys configuration option
fb15c27562 Merge branch 'upstream-KWSys' into update-kwsys
0225b05afe KWSys 2019-04-17 (c42b92f0)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3242
2019-04-18 11:01:50 -04:00
Kitware Robot 44c6acc053 CMake Nightly Date Stamp 2019-04-18 00:01:03 -04:00
Brad King 2ed688a863 Merge topic 'msvc-runtime-library'
fb3370b6a1 MSVC: Add abstraction for runtime library selection
f621e7fa5d VS: Fix Fortran runtime library flag map special case for '-' options

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Acked-by: Leonid Pospelov <pospelovlm@yandex.ru>
Merge-request: !3211
2019-04-17 11:01:37 -04:00
Brad King fb3370b6a1 MSVC: Add abstraction for runtime library selection
Replace our hard-coded defaults for `/MD` and `/MDd` with a first-class
abstraction to select the runtime library from an enumeration of logical
names.  We've long hesitated to do this because the idea of "runtime
library selection" touches on related concepts on several platforms.
Avoid that scope creep by simply defining an abstraction that applies
only when targeting the MSVC ABI on Windows.

Removing the old default flags requires a policy because existing
projects may rely on string processing to edit them and choose a runtime
library under the old behavior.  Add policy CMP0091 to provide
compatibility.

Fixes: #19108
2019-04-17 11:00:44 -04:00
Brad King fb15c27562 Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2019-04-17 (c42b92f0)
2019-04-17 09:50:14 -04:00