Commit Graph

25198 Commits

Author SHA1 Message Date
Kitware Robot 88ef5737a2 CMake Nightly Date Stamp 2018-10-17 00:01:08 -04:00
Brad King 73d9d53ed0 Merge topic 'ctest_done_bug_fix'
60ca88d726 ctest_submit: Generate Done.xml at submit time

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2477
2018-10-16 11:02:58 -04:00
Kitware Robot 92f3ad7cae CMake Nightly Date Stamp 2018-10-16 00:01:11 -04:00
Zack Galbreath 60ca88d726 ctest_submit: Generate Done.xml at submit time
This fixes a bug where calling `ctest_submit()` would result in a Done.xml
file with an empty <buildId> element.

CDash responds with a buildId when CTest submits a file. For this reason,
Done.xml needs to generated after CTest has submitted some other file to
CDash. This change also has the benefit of making Done.xml's timestamp as
late as possible, giving us a more accurate record of how long the entire
build took to complete.
2018-10-15 13:03:34 -04:00
Kitware Robot 6c281138a5 CMake Nightly Date Stamp 2018-10-15 00:01:05 -04:00
Kitware Robot f77a9576e5 CMake Nightly Date Stamp 2018-10-14 00:01:05 -04:00
Kitware Robot fd71ad3715 CMake Nightly Date Stamp 2018-10-13 00:01:08 -04:00
Brad King 7bacb22955 Merge topic 'cppcheck-exit-code'
3b80cd77fb Fail the build if cppcheck returns a non-zero exit code

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2459
2018-10-12 08:17:58 -04:00
Brad King ced094e22e Merge topic 'revert-install-code-script-genex'
fd0e40f166 Merge branch 'backport-revert-install-code-script-genex' into revert-install-code-script-genex
0f48fbaa72 install: Revert CODE,SCRIPT support for generator expressions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2474
2018-10-12 08:11:49 -04:00
Kitware Robot aeb24db554 CMake Nightly Date Stamp 2018-10-12 00:01:08 -04:00
Brad King fd0e40f166 Merge branch 'backport-revert-install-code-script-genex' into revert-install-code-script-genex 2018-10-11 08:14:48 -04:00
Harald Brinkmann 3b80cd77fb Fail the build if cppcheck returns a non-zero exit code
This allows the build failure to be tuned with cppcheck's
options --error-exitcode=<n> and --exitcode-suppressions=<file>.
2018-10-11 07:56:05 -04:00
Brad King e2dd6ac977 Merge topic 'remove-AddCompileDefinitions'
8f076acdb0 cmLocalGenerator: Remove AddCompileDefinitions method

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2470
2018-10-11 07:44:03 -04:00
Brad King 4f289cdc1e Merge topic 'vs-cuda-pdb'
faf3d7d224 VS: Add workaround for CUDA compiler PDB location with space
592064e026 VS: Drop workaround for CUDA compiler PDB location on CUDA 9.2+
fb378fc4d7 Tests: Fix Cuda test project names

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2473
2018-10-11 07:41:42 -04:00
Brad King b7cba6ba00 Merge topic 'cmake_policy-get_warning'
0d988f98e5 cmake_policy: Add undocumented GET_WARNING command
f9f96598df Help: Convert FindOpenGL documentation to block comment

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2472
2018-10-11 07:41:06 -04:00
Brad King 7d2ee4cb98 Merge topic 'install-subdirectory-order'
b56f2db87a Testing: Add test for CMP0082
fc8955e889 add_subdirectory: Run subdirectory install rules in correct order
514f0b572e Testing: Update hard-coded line numbers to [0-9]+ in some tests

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2434
2018-10-11 07:37:59 -04:00
Brad King 2e1fe8fabe Merge topic 'ctest-done'
a6e0158712 ctest_submit: Add support for a "Done" part
f460bbd4c8 ctest_submit: Refactor file list to use a vector instead of a set

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Zack Galbreath <zack.galbreath@kitware.com>
Merge-request: !2405
2018-10-11 07:32:54 -04:00
Brad King 0f48fbaa72 install: Revert CODE,SCRIPT support for generator expressions
Revert commit v3.13.0-rc1~441^2 (install: Teach CODE,SCRIPT modes to
evaluate generator expressions, 2018-05-29).  Unfortunately it has
been found to break existing code in a real project, e.g.

    install(CODE [[
        message("$<FOOBAR>")
    ]])

Address this regression by reverting support for the 3.13 release
series.  Support can be restored later with a policy for compatibility.

Issue: #15785
Fixes: #18435
2018-10-11 07:05:55 -04:00
Kitware Robot 8563e29c81 CMake Nightly Date Stamp 2018-10-11 00:01:09 -04:00
Brad King faf3d7d224 VS: Add workaround for CUDA compiler PDB location with space
CUDA Toolkit Visual Studio Integration for version 9.2 and above does
honor the `ClCompile.ProgramDataBaseFileName` field when telling `nvcc`
how to invoke `cl`.  Unfortunately it does not quote paths with spaces
correctly:

    -Xcompiler "... /Fd"C:\path\with space\foo.pdb" ..."

Work around this by converting the PDB location to a relative path.
Likely we could always do this, but for now make a minimal change
just for CUDA support.

Fixes: #18440
2018-10-10 13:29:47 -04:00
Brad King 592064e026 VS: Drop workaround for CUDA compiler PDB location on CUDA 9.2+
The workaround added by commit v3.12.0-rc1~227^2 (VS: Add workaround for
CUDA compiler PDB location, 2018-04-13) is not necessary on CUDA 9.2+
because the CUDA Toolkit Visual Studio Integration has fixed the
original bug and forwards the `ProgramDataBaseFileName` to the host
compiler itself.  Make the workaround conditional on the CUDA version.

Issue: #18440
2018-10-10 13:29:47 -04:00
Kyle Edwards 0d988f98e5 cmake_policy: Add undocumented GET_WARNING command
This command is intended for modules that issue policy warnings so
they can get the warning string from CMake in a uniform manner,
rather than duplicating the string. Several modules been updated
to include an example of the usage of this new command.
2018-10-10 10:56:00 -04:00
Kyle Edwards fc8955e889 add_subdirectory: Run subdirectory install rules in correct order
Before this change, install rules created by add_subdirectory()
would be executed after all of the top-level install rules, even
if they were declared before the top-level rules. This change
adds a new policy, CMP0082, which interleaves the add_subdirectory()
install rules with the other install rules so they are run in the
correct order.
2018-10-10 10:26:39 -04:00
Brad King 8f076acdb0 cmLocalGenerator: Remove AddCompileDefinitions method
This method offers the same definitions as `GetTargetDefines` except
that it excludes the "export" macro on shared libraries.  Update call
sites to use `GetTargetDefines` instead.  Some of them were incorrectly
excluding the export macro.
2018-10-10 09:34:12 -04:00
Betsy McPhail a6e0158712 ctest_submit: Add support for a "Done" part
Teach CTest to submit Done.xml. Submission of this file indicates to
CDash that a build is complete and no more files will be uploaded. It
contains the build id returned by CDash and the current time.

This file is submitted last for a given build when using the
`ctest_submit()` command.

If submitting by PARTS, use `ctest_submit(PARTS Done)`.
2018-10-10 06:55:59 -04:00
Betsy McPhail f460bbd4c8 ctest_submit: Refactor file list to use a vector instead of a set
Remove duplicates in a way that preserves order.
2018-10-10 06:55:05 -04:00
Kitware Robot a35981249d CMake Nightly Date Stamp 2018-10-10 00:01:07 -04:00
Brad King 03e381cb8a Merge topic 'string-TIMESTAMP-unset-TZ'
f23760ffac string(TIMESTAMP): Fix unset TZ

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Attila Krasznahorkay <attila.krasznahorkay@gmail.com>
Merge-request: !2464
2018-10-09 07:42:45 -04:00
Jose Luis Blanco-Claraco f23760ffac string(TIMESTAMP): Fix unset TZ
The logic added by commit v3.6.0-rc1~338^2 (CMake: Extend TIMESTAMP
sub-commands with new unix time format specifier, 2016-02-16) to restore
the `TZ` environment variable does not properly handle the case in which
the variable was originally not set.  Unset the variable in this case.

Fixes: #18431
2018-10-09 07:26:40 -04:00
Brad King e9114f5bcf Merge topic 'vs-flag-map-Qspectre'
bb60ed6e72 VS: Add flag table entry for -Qspectre

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2462
2018-10-09 06:27:21 -04:00
Kitware Robot 0ab5db035e CMake Nightly Date Stamp 2018-10-09 00:01:08 -04:00
Brad King bb60ed6e72 VS: Add flag table entry for -Qspectre
Add special logic to map this flag to a top-level build setting
instead of being in ClCompile.

Fixes: #18426
2018-10-08 14:03:39 -04:00
Brad King c3e27c2562 Merge topic 'project-always-set-desc-url'
f8a086a86b project(): Ensure DESCRIPTION and HOMEPAGE_URL variables are set
b27247c8df project(): Add tests verifying variables set by second project() call

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2457
2018-10-08 11:26:21 -04:00
Kitware Robot e3666e8ffe CMake Nightly Date Stamp 2018-10-08 00:01:06 -04:00
Craig Scott f8a086a86b project(): Ensure DESCRIPTION and HOMEPAGE_URL variables are set
If a project() call does not have DESCRIPTION or HOMEPAGE_URL
options, it must still set the relevant variables or else those variables will
inherit values from an earlier project() call. That is inconsistent with how
VERSION is handled and is likely to be unexpected. The docs were also
ambiguous about what should happen in such cases.
2018-10-08 08:28:17 +11:00
Kitware Robot f0c8d162f5 CMake Nightly Date Stamp 2018-10-07 00:01:05 -04:00
Kitware Robot 342551be71 CMake Nightly Date Stamp 2018-10-06 00:01:10 -04:00
Kitware Robot 25a9704058 CMake Nightly Date Stamp 2018-10-05 00:01:06 -04:00
Brad King 5161714e1d Merge topic 'misc-typos'
6b4c5a0365 Fix misc. typos

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2440
2018-10-04 10:11:39 -04:00
Kitware Robot e07b6f69d8 CMake Nightly Date Stamp 2018-10-04 00:01:15 -04:00
luz.paz 6b4c5a0365 Fix misc. typos
Found via `codespell -q 3 -I ../cmake-whitelist.txt --skip="./Utilities"`
where the whitelist consists of

```
aci
ans
behaviour
buil
convertor
dum
earch
ect
emmited
emmitted
helpfull
iff
isnt
ith
lowercased
mose
nd
nknown
nto
objext
ot
pathes
pevents
splitted
substract
superceded
supercedes
te
tim
todays
uint
upto
whitespaces
```
2018-10-03 15:32:46 -04:00
Brad King 8713e9cbbc Begin post-3.13 development 2018-10-03 12:55:56 -04:00
Brad King 94652e8733 CMake 3.13.0-rc1 version update 2018-10-03 12:53:38 -04:00
Brad King 0b1b842e93 Merge topic 'ctest-num-width'
6d28884617 cmCTestRunTest: Avoid float/int conversions in number width logic

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2433
2018-10-03 11:38:46 -04:00
Brad King 868ced8619 Merge topic 'update-kwsys'
0da3340b9c Merge branch 'upstream-KWSys' into update-kwsys
b6a689c6f8 KWSys 2018-10-03 (9d6873b1)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2437
2018-10-03 08:05:32 -04:00
Brad King 9fc3024f62 Merge topic 'fix-csharp-target-type'
375b420fdf CSharp: Fix regression in VS project type selection
8b21aa0af0 VS: Fix CSharp flag selection when linking to a static C++ library

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2427
2018-10-03 08:04:35 -04:00
Brad King 0da3340b9c Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2018-10-03 (9d6873b1)
2018-10-03 07:36:04 -04:00
Kitware Robot 84457a0dac CMake Nightly Date Stamp 2018-10-03 00:01:07 -04:00
Brad King 6d28884617 cmCTestRunTest: Avoid float/int conversions in number width logic
Use of `std::log10` added by commit 02c5091c90 (cmCTestRunTest: Simplify
number width computation, 2018-09-08) broke our number width computation
on some platforms where

    static_cast<int>(std::log10(static_cast<size_t>(10)))

somehow produces `0` instead of `1`.  Re-implement the logic to avoid
floating-point computations.
2018-10-02 15:40:29 -04:00
Brad King 375b420fdf CSharp: Fix regression in VS project type selection
A that target contains only `.cs` sources should be generated as a
`.csproj` project even if it links to non-CSharp static libraries.
The latter case was broken by refactoring in commit v3.12.0-rc1~160^2~7
(remove TargetIsCSharpOnly() and use methods from cmGeneratorTarget,
2018-03-19).  The reason is that the `HasLanguage` method added by
commit v3.12.0-rc1~239^2~6 (cmGeneratorTarget: add HasLanguage() as
wrapper for GetLanguages(), 2018-03-19) enforces its "exclusive" check
on the combined set of source file languages and the link language.
To restore the original `TargetIsCSharpOnly` semantics, update
`HasLanguage` to enforce exclusiveness only on the list of sources.

Fixes: #18239
2018-10-02 14:58:11 -04:00