Commit Graph

23803 Commits

Author SHA1 Message Date
Justin Goshi fe2c2b0ffb server: ctestInfo fix to return all tests
Prior to this change we were looking at targets. But tests are
associated with directories. This change fixes how we gather all tests.
2017-11-17 09:19:26 -08:00
Brad King 0f6f7c8ab1 Genex: Fix COMPILE_LANGUAGE messages to allow file(GENERATE) with Xcode
When rejecting the `COMPILE_LANGUAGE` generator expression on include
directories and compile definitions with Xcode, add `file(GENERATE)` to
the allowed set in the message.  It is allowed and already covered
by the `RunCMake.File_Generate` test `COMPILE_LANGUAGE-genex` case.
2017-11-17 11:56:00 -05:00
Aaron Orenstein 4a6348dbbd Performance: Improve efficiency of source file lookup in cmMakefile
This reintroduces the change from commit v3.10.0-rc1~69^2 (Performance:
Improve efficiency of source file lookup in cmMakefile, 2017-08-17) with
some corrections.  The original was rolled back by commit
v3.10.0-rc1~52^2~1 (Revert "Performance: ...", 2017-09-25) due to
incompatibilities found.  The rollback was followed-up by addition of a
test for the offending case, and this revision passes the test.
2017-11-17 10:25:41 -05:00
Wouter Klouwen 5fd979a8a3 CTest: adopt std::chrono::system_clock
After the refactor to make CTest use std::chrono::steady_clock for the
keeping of time for test duration, there are still references to
cmSystemTools::GetTime() left.
To further adopt std::chrono for time related activities, this commit
changes those remaining references to std::chrono::system_clock::now()
calls and alters the storage from either unsigned int or double to
std::chrono::system_clock::time_point.

For ease of conversion, a converter method is added to cmXMLWriter that
converts from a std::chrono::system_clock::time_point to the number of
seconds since the UN*X epoch as that is expected behaviour. This means
no more casts as required.

Functionally should be no difference as the system_clock is implemented
in the same terms.
2017-11-17 15:22:55 +00:00
Brad King 00e13993fd CUDA: Add CMAKE_CUDA_SEPARABLE_COMPILATION variable
Use its value to initialize the `CUDA_SEPARABLE_COMPILATION` target
property when targets are created.

Fixes: #17478
2017-11-17 09:51:39 -05:00
Brad King 2ea17412a9 FindOpenGL: Add policy CMP0072 to prefer GLVND for legacy GL
Fixes: #17449
2017-11-17 07:17:28 -05:00
Kitware Robot 89fa46e29b CMake Nightly Date Stamp 2017-11-17 00:02:24 -05:00
Justin Goshi cb7d0a80fa server: project has install rule bug fix
Need to check all generators associated with the project because any of
them may have an install rule.
2017-11-16 09:03:08 -08:00
Kitware Robot bd863785db CMake Nightly Date Stamp 2017-11-16 00:02:31 -05:00
Brad King f26009dde6 VS: Order .vcxproj.filters files deterministically
Sort source groups by name rather than arbitrary pointer values.

Fixes: #17446
2017-11-15 10:52:33 -05:00
Brad King c871446abc cmSourceGroup: Return strings from GetName and GetFullName 2017-11-15 10:47:07 -05:00
Brad King e312885829 Merge topic 'ctest-chrono'
e8a4036e CTest: use std::chrono::steady_clock for time keeping

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1445
2017-11-15 08:56:23 -05:00
Kitware Robot 5c44821331 CMake Nightly Date Stamp 2017-11-15 00:04:33 -05:00
Wouter Klouwen e8a4036e96 CTest: use std::chrono::steady_clock for time keeping
It was reported in issue #17345 that CTest does not use monotonic time
to report test duration. Monotonic clocks are not affected by large NTP
adjustments or things like daylight savings time.

As CMake 3.10 requires C++11, which introduced std::chrono, this commit
moves the time keeping in CTest from cmSystemTools::GetTime() to
std::chrono::steady_clock.

Fixes: #17345
2017-11-14 13:30:14 +00:00
Brad King 6c23107725 Merge topic 'cmake-gui-qt-static-windows'
3a993c49 Tests: Add options to disable tests requiring Qt
27a73f16 cmake-gui: Add build option to use Qt5 windows plugin statically

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1476
2017-11-14 07:23:40 -05:00
Brad King 8203895caa Merge topic 'xcode64'
23dd8b9e cmGlobalXCodeGenerator: Support XCTest for XCode 6.4

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1471
2017-11-14 07:22:42 -05:00
Kitware Robot 7a06f9973a CMake Nightly Date Stamp 2017-11-14 00:02:18 -05:00
Brad King b77501d4c7 Merge topic 'ctest-warning'
ec2f9012 CTest: correct misleading warning message for RUN_SERIAL tests

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Zack Galbreath <zack.galbreath@kitware.com>
Merge-request: !1469
2017-11-13 09:56:46 -05:00
Brad King 27a73f1613 cmake-gui: Add build option to use Qt5 windows plugin statically
This will enable builds against a static Qt5 on Windows.
2017-11-13 09:54:49 -05:00
Brad King b62eb8f697 Merge topic 'xcodeForLoopCleanup'
98cbcedd Xcode: use ranged for loops, cleanup existing for loops

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1456
2017-11-13 09:52:43 -05:00
Kitware Robot 67c981fdc2 CMake Nightly Date Stamp 2017-11-13 00:01:06 -05:00
Kitware Robot b1a06e4726 CMake Nightly Date Stamp 2017-11-12 00:01:04 -05:00
Kitware Robot 5d3b917d38 CMake Nightly Date Stamp 2017-11-11 00:03:54 -05:00
Brad King 78f5d571e4 CMake 3.10.0-rc5 2017-11-10 10:46:29 -05:00
Brad King 2201ecec44 Windows: Do not report manifest tool update notification as failure
A diagnostic message added in commit v3.10.0-rc1~59^2 (Windows: Improve
link-time error messages when rc or mt fail, 2017-09-22) incorrectly
reports the `mt /notify_update` special return code as a failure.
Fix the logic to consider the special return codes as success.

Fixes: #17444
2017-11-10 10:41:50 -05:00
Brad King 11e2f53e30 Merge topic 'windows-mt-update-quiet'
5c07d390 cmcmd: Fix typo in RunCommand logic

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1473
2017-11-10 10:41:15 -05:00
Brad King 5c07d3900d cmcmd: Fix typo in RunCommand logic
Fix logic added by commit 18eae3f04d (Windows: Do not report manifest
tool update notification as failure, 2017-11-09).

Issue: #17444
2017-11-10 10:37:26 -05:00
Brad King 163be8714a Merge topic 'update-ctest-documentation'
3b272ff8 Help: Add 'Label and Subproject Summary' section to ctest(1) manual
002d0a1c Help: Normalize capitalization of 'CTest' in ctest(1) manual
9d3aa95c Help: Divide ctest(1) manual options into sections
7904b659 Tests: Remove incorrect use of 'test-timeout' option
e80dc2ad cmCTest: Remove dead code

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1427
2017-11-10 08:05:45 -05:00
Brad King 38bb98de51 Merge topic 'cmakeServerRequiredCMakeVersion'
cdf5f34b server: return minimum cmake required version for each project

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1462
2017-11-10 07:51:13 -05:00
Brad King 78def0e257 Merge topic 'csharp-settings-property'
15892aa3 VS: Fix warnings in generated references to '.settings' files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1450
2017-11-10 07:50:00 -05:00
Brad King c1a55e333f Merge topic 'update-kwsys'
8bef3e31 Merge branch 'upstream-KWSys' into update-kwsys
e8d0b431 KWSys 2017-11-09 (40d7b1bb)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1467
2017-11-10 07:34:24 -05:00
Brad King 6d20c44f3d Merge topic 'windows-mt-update-quiet'
18eae3f0 Windows: Do not report manifest tool update notification as failure

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1470
2017-11-10 07:31:55 -05:00
Craig Scott 98cbcedd74 Xcode: use ranged for loops, cleanup existing for loops
The changes are mostly converting old-style explicit iterator for loops
into ranged for statements. A number of for loops had already been
changed over, but local variables had been left behind instead of being
absorbed into the ranged for statement, so these have been cleaned up
too. A couple of minor improvements were made in areas already being
updated by the for loop changes to slightly simplify the code or to
avoid unnecessary conversions between `const char*` and `std::string`.
2017-11-10 13:12:57 +08:00
Kitware Robot 6afc841e74 CMake Nightly Date Stamp 2017-11-10 00:01:14 -05:00
Benito Palacios Sanchez 23dd8b9e93 cmGlobalXCodeGenerator: Support XCTest for XCode 6.4 2017-11-09 17:49:36 +01:00
Yoshinori Tahara 15892aa3c0 VS: Fix warnings in generated references to '.settings' files
According to MSDN docs [1], LastGenOutput is just a file name.

[1] https://msdn.microsoft.com/en-us/library/bb629388.aspx
2017-11-09 11:48:38 -05:00
Brad King 18eae3f04d Windows: Do not report manifest tool update notification as failure
A diagnostic message added in commit v3.10.0-rc1~59^2 (Windows: Improve
link-time error messages when rc or mt fail, 2017-09-22) incorrectly
reports the `mt /notify_update` special return code as a failure.
Fix the logic to consider the special return codes as success.

Fixes: #17444
2017-11-09 11:22:00 -05:00
Wouter Klouwen ec2f901202 CTest: correct misleading warning message for RUN_SERIAL tests
As reported in issue 17167, when only RUN_SERIAL tests remain, CTest can
display a misleading message that it is waiting for the load to come
down when in fact, it cannot start any new tests.

This commit fixes that by determining whether this circumstance is
what's happening and adds an additional warning message in this case.
2017-11-09 13:53:50 +00:00
Brad King 8bef3e31bd Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2017-11-09 (40d7b1bb)
2017-11-09 08:35:51 -05:00
Brad King 05d8892e61 Merge topic 'cmake-default-dir-install-permissions'
7e896029 CPack: enable setting default dir creation permissions
a4c82916 CPack test: expand output checking fallback
670ad047 Move file/dir permissions code to common file.
deeba85f CMake: enable setting default dir creation permissions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1433
2017-11-09 08:28:28 -05:00
Kitware Robot 1e9304bccb CMake Nightly Date Stamp 2017-11-09 00:01:25 -05:00
Domen Vrankar 7e896029cd CPack: enable setting default dir creation permissions
Introduces CPACK_DEFAULT_DIRECTORY_INSTALL_PERMISSIONS
variable which adds support for functionality introduced
by CMAKE_DEFAULT_DIRECTORY_INSTALL_PERMISSIONS variable.

Fixes #17333

# Conflicts:
#	Help/release/dev/cmake-default-dir-install-permissions.rst
2017-11-08 20:27:11 +01:00
Domen Vrankar 670ad047b3 Move file/dir permissions code to common file. 2017-11-08 20:27:11 +01:00
Domen Vrankar deeba85f81 CMake: enable setting default dir creation permissions
Introduces CMAKE_DEFAULT_DIRECTORY_INSTALL_PERMISSIONS
variable which enables the user to specify the default
permissions for directory creation. This setting is then
used to auto set the permissions on directories which
are implicitly created by install() and file(INSTALL)
commands such as CMAKE_INSTALL_PREFIX directories.
2017-11-08 20:27:03 +01:00
Brad King 30fcf13be6 Merge topic 'imported-promotion'
6a3922be Add new target-property `IMPORTED_GLOBAL`.
854e482a cmTarget: Simplified and fixed a string-comparision.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1254
2017-11-08 09:08:15 -05:00
Brad King 9f30cd13da Merge topic 'update-kwsys'
517cfe0b Merge branch 'upstream-KWSys' into update-kwsys
dc059ae7 KWSys 2017-11-07 (5249a82d)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1458
2017-11-08 09:05:59 -05:00
Kitware Robot 2ae78569b4 CMake Nightly Date Stamp 2017-11-08 00:03:44 -05:00
Justin Goshi cdf5f34b0c server: return minimum cmake required version for each project 2017-11-07 12:15:57 -08:00
Betsy McPhail e80dc2ad7f cmCTest: Remove dead code
The option 'ctest-config' is ignored.
2017-11-07 14:15:20 -05:00
Deniz Bahadir 6a3922bebe Add new target-property IMPORTED_GLOBAL.
The purpose of this new `IMPORTED_GLOBAL` target-property is to prolong
the lifetime and scope of `IMPORTED` targets in such a way as if they
had been created with the keyword `GLOBAL` in the first place.

* It can only be set to `TRUE`. That means, a local `IMPORTED` target
  can be promoted to global scope but a global `IMPORTED` target cannot
  be degraded to local scope!
* Setting it to `TRUE` only succeeds if done from within the same
  directory in which the `IMPORTED` target was created in the first
  place.

Fixes #17256.
2017-11-07 15:08:41 +01:00