Commit Graph

25122 Commits

Author SHA1 Message Date
Zack Galbreath
c49d13f94b ctest: only create buildid when submitting from Testing/ dir
In 7f530cc we taught CTest to pass extra information to CDash at submit
time.  This extra info is used by CDash to initialize a buildid.

`ctest_submit(FILES)` can be used to send specific files to CDash.
These files are not necessarily associated with the build currently
being performed. For this reason, we modify the behavior of ctest_submit()
to only specify this extra info when we are submitting files from the
current build's Testing directory.
2018-09-28 10:49:45 -04:00
Kitware Robot
8bb0e09e38 CMake Nightly Date Stamp 2018-09-28 00:01:10 -04:00
Kitware Robot
be1ceda97f CMake Nightly Date Stamp 2018-09-27 00:01:09 -04:00
Brad King
5f702f97a8 Merge topic 'refactor-backtrace'
3c8187f687 clang-tidy: restore 'misc-noexcept-move-constructor'
6c2af9d302 cmListFileCache: Add missing assertion in backtrace Top method

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2415
2018-09-26 10:01:09 -04:00
Craig Scott
3181f8405b Merge topic 'link-directories'
f9717725f9 link_directories(): enhance capabilities
b5915744eb LINK_DIRECTORIES target property: add policy for absolute paths check.
a71caab46b LINK_DIRECTORIES: Add new properties and commands
5ca130e223 Refactoring: introduce function to check if a string is a generator expression

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2403
2018-09-26 08:11:40 -04:00
Brad King
b16b254845 Merge topic 'dbgsym-packaging'
d8a3939aef CPack/Deb: Add ability to split out debug symbols into .ddeb package
42fbff45e4 CPack/Deb: Use CMAKE_COMMAND to set the environment
66ab24a4c5 Help: Fix typo

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2399
2018-09-26 06:52:06 -04:00
Brad King
3c8187f687 clang-tidy: restore 'misc-noexcept-move-constructor'
We disabled this in commit 1fe0d72eb6 (clang-tidy: exclude
'misc-noexcept-move-constructor', 2018-09-24) due to false positives.
Restore it and use a NOLINT comment to suppress them instead.
2018-09-26 06:38:52 -04:00
Brad King
6c2af9d302 cmListFileCache: Add missing assertion in backtrace Top method
We can only get the top of a stack that has at least one call.
Update the method's comment accordingly.
2018-09-26 06:32:21 -04:00
Kitware Robot
5abe45270e CMake Nightly Date Stamp 2018-09-26 00:01:09 -04:00
Marc Chevrier
f9717725f9 link_directories(): enhance capabilities 2018-09-25 23:59:59 +10:00
Marc Chevrier
b5915744eb LINK_DIRECTORIES target property: add policy for absolute paths check. 2018-09-25 23:59:59 +10:00
Marc Chevrier
a71caab46b LINK_DIRECTORIES: Add new properties and commands
These new capabilities enable to manage link directories

Two new properties:
* target properties: LINK_DIRECTORIES and INTERFACE_LINK_DIRECTORIES

One new command
* target_link_directories(): to populate target properties

Fixes: #17215
2018-09-25 23:59:58 +10:00
Marc Chevrier
5ca130e223 Refactoring: introduce function to check if a string is a generator expression 2018-09-25 23:46:56 +10:00
Brad King
55a5b56e08 Merge topic 'refactor-backtrace'
22aa6b67b4 cmListFileCache: Refactor cmListFileBacktrace internals
1fe0d72eb6 clang-tidy: exclude 'misc-noexcept-move-constructor'

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2410
2018-09-25 08:41:49 -04:00
Kitware Robot
1fea56c3bd CMake Nightly Date Stamp 2018-09-25 00:01:13 -04:00
Brad King
22aa6b67b4 cmListFileCache: Refactor cmListFileBacktrace internals
Replace use of raw pointers and explicit reference counting with
`std::shared_ptr<>`.  Use a discriminated union to store either the
bottom level or a call/file context in each heap-allocated entry.
This avoids storing a copy of the bottom in every `cmListFileBacktrace`
instance and shrinks the structure to a single `shared_ptr`.
2018-09-24 17:29:15 -04:00
Brad King
03ffd442bd Merge topic 'server-separate-json'
72b4c2c48a server: Compile json object generation source separately
b48165346f server: Split json dictionary into separate header
85be67217b server: Split json object generation into separate source
aabce52851 server: factor out json object generation entry points
fc43492e44 cmake: Factor json version object construction into helper

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2408
2018-09-24 07:07:38 -04:00
Kitware Robot
a7aef7a182 CMake Nightly Date Stamp 2018-09-24 00:01:07 -04:00
Kitware Robot
ee4a56bbdf CMake Nightly Date Stamp 2018-09-23 00:01:04 -04:00
Kitware Robot
aa4d3e18d2 CMake Nightly Date Stamp 2018-09-22 00:01:10 -04:00
Andrew Fuller
d8a3939aef CPack/Deb: Add ability to split out debug symbols into .ddeb package 2018-09-21 20:19:31 +00:00
Brad King
72b4c2c48a server: Compile json object generation source separately
Declare entry points in a dedicated header and compile the source
separately instead of including it in the server implementation.
2018-09-21 11:39:59 -04:00
Brad King
b48165346f server: Split json dictionary into separate header
Move dictionary entries used by the json object generation code into a
separate header.  These are distinct from the server-only entries used
in the protocol implementation.
2018-09-21 11:39:21 -04:00
Brad King
85be67217b server: Split json object generation into separate source
For now just move the content and `#include` it back in to the original
translation unit.  That way `git blame` can cleanly track the original
lines.
2018-09-21 11:39:21 -04:00
Brad King
aabce52851 server: factor out json object generation entry points
Make entry points for these that do not reference the server code.  For
now we leave the "cache" object generation alone because its
implementation interleaves error handling and the format may not
suitable outside a server response.
2018-09-21 11:36:55 -04:00
Brad King
fc43492e44 cmake: Factor json version object construction into helper 2018-09-21 11:36:11 -04:00
Kitware Robot
227b2be9d6 CMake Nightly Date Stamp 2018-09-21 00:01:09 -04:00
Craig Scott
fe751ad1fb Merge topic 'deprecate-policy-old'
0c709cb2a2 Add deprecation warnings for policies CMP0063 and below

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2397
2018-09-20 11:30:24 -04:00
Brad King
3523990f7b Merge topic 'bundleutilities-policy'
b69159324a Help: Add release notes for new BundleUtilities policy
eedd91ab08 BundleUtilities: Disallow inclusion at configure time
fd28ea35ca Help: Add note for BundleUtilities usage
3925407e76 Help: Convert BundleUtilities help to block-style comment

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2379
2018-09-20 09:38:04 -04:00
Brad King
f082414107 Merge topic 'vs-2015-max-sdk'
63eb43f131 Tests: Add VSWinStorePhone for VS 15 2017
173d29a379 Tests: Fix VSWinStorePhone to properly identify VS 14 2015
83ddc4d289 VS: Do not select a Windows SDK too high for current VS version

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2388
2018-09-20 09:33:05 -04:00
Kitware Robot
2d119e5309 CMake Nightly Date Stamp 2018-09-20 00:01:08 -04:00
Kyle Edwards
eedd91ab08 BundleUtilities: Disallow inclusion at configure time
This commit adds a new CMake policy, CMP0080, which prohibits the
inclusion of BundleUtilities at configure time. The old behavior is
to allow the inclusion.
2018-09-19 11:23:08 -04:00
Brad King
a9df54ec31 Merge topic 'symlink'
afb7f6e4ff cmake: Add '-E create_symlink' support on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2144
2018-09-19 10:41:07 -04:00
Brad King
ec9ef691fe Merge topic 'provide_explicit_source_and_build_command_line_options'
638f00117a Add release note for the -S and -B options.
de962cc00d CMake: Internally uses -S instead of -H to specify source directory
a10d63d578 cmake: -S and -B can be used to specify source and build directories

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2358
2018-09-19 10:38:19 -04:00
Brad King
c0cedaa643 Merge topic 'ctest-more_submit_params'
7f530cc54e ctest_submit: pass additional info to CDash

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2380
2018-09-19 10:36:11 -04:00
Brad King
76a19eb6c1 Merge topic 'fix-getsafedef-stdstring'
2428422c02 Fix regression in target output file naming logic
d686f81e58 Restore possibly regressed CMP0018 logic

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2402
2018-09-19 10:33:01 -04:00
Brad King
2428422c02 Fix regression in target output file naming logic
Refactoring in commit f4ff60a803 (cmMakefile: Make GetSafeDefinition
return std::string const&, 2018-09-05) accidentally changed the logic
for target artifact prefix and suffix names such that setting a PREFIX
or SUFFIX target property would cause an empty value to be used.  Revert
that part of the change and use a simpler alternative.  Add a test case.

Reported-by: Alan W. Irwin <irwin@beluga.phys.uvic.ca>
2018-09-19 08:14:48 -04:00
Brad King
d686f81e58 Restore possibly regressed CMP0018 logic
Refactoring in commit f4ff60a803 (cmMakefile: Make GetSafeDefinition
return std::string const&, 2018-09-05) changed the treatment of the
empty string in CMP0018 diagnostic logic.  Restore the behavior.
2018-09-19 07:42:08 -04:00
Kitware Robot
3ada513413 CMake Nightly Date Stamp 2018-09-19 00:01:07 -04:00
Jon Chronopoulos
afb7f6e4ff cmake: Add '-E create_symlink' support on Windows
The allows `-E create_symlink` to work on Windows.  It utilizes
`uv_fs_symlink`.  I am still unsure exactly which Windows platforms will
work without requiring Administrator privileges or needing a user/group
with the "Create Symbolic Links" User Rights.  It does work with my
Windows 10 Pro with Developer Mode turned on.  In the test suite check
that the symlink either worked or failed with a permissions error.

Use recent changes in cmSystemTools::FileExists to check that a symlink
is broken.
2018-09-18 11:24:08 -04:00
Brad King
7162630bee Merge topic 'vs-ipo'
bef80e6623 VS: Do not specify incremental linking if LTCG is enabled
567fabe88e IPO: INTERPROCEDURAL_OPTIMIZATION (LTCG) for Visual Studio

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2363
2018-09-18 11:22:41 -04:00
Brad King
fc74fcc853 Merge topic 'link-options'
53ad52d66d LINK_OPTIONS: Add missing initialization actions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2395
2018-09-18 11:18:57 -04:00
Brad King
a8f628c0a4 Merge topic 'getsafedef-stdstring'
f4ff60a803 cmMakefile: Make GetSafeDefinition return std::string const&

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2350
2018-09-18 11:18:00 -04:00
Vitaly Stakhovsky
f4ff60a803 cmMakefile: Make GetSafeDefinition return std::string const& 2018-09-18 11:16:46 -04:00
Kitware Robot
6097d8dd3d CMake Nightly Date Stamp 2018-09-18 00:01:09 -04:00
Brad King
0c709cb2a2 Add deprecation warnings for policies CMP0063 and below
The OLD behaviors of all policies are deprecated, but only by
documentation.  Add an explicit deprecation diagnostic for some policies
to encourage projects to port away from setting policies to OLD.
2018-09-17 14:16:48 -04:00
Gilles Khouzam
83ddc4d289 VS: Do not select a Windows SDK too high for current VS version
Add an internal API for the maximum Windows 10 SDK version supported by
a toolset.  For Visual Studio 14 2015 that would be the version
"10.0.14393.0".

Fixes: #17788
2018-09-17 13:07:40 -04:00
Brad King
bef80e6623 VS: Do not specify incremental linking if LTCG is enabled
Otherwise the linker may warn:

    LNK4075: ignoring '/INCREMENTAL' due to '/LTCG' specification
2018-09-17 10:53:27 -04:00
Niels Dekker
567fabe88e IPO: INTERPROCEDURAL_OPTIMIZATION (LTCG) for Visual Studio
Add IPO support for Visual Studio (which is referred to by VS as
"Link Time Code Generation" and "Whole Program Optimization"), for
VS version >= 10.  This allows CMake/VS users to enable IPO by setting
property `INTERPROCEDURAL_OPTIMIZATION`.

Fixes: #16748
2018-09-17 10:53:10 -04:00
Marc Chevrier
53ad52d66d LINK_OPTIONS: Add missing initialization actions 2018-09-17 16:42:37 +02:00