Commit Graph

23910 Commits

Author SHA1 Message Date
Sebastian Holtermann
3ce7eecedc Autogen: Fix for problematic nested lists separator
In the AutogenInfo.cmake file the separator for nested lists
was `@LSEP@` which led to a speed regression because the `@`
character triggered an (unsuccessful) expression evaluation.

By setting the policy version of the CMake instance in the
`_autogen` target to 3.9, the OLD `@` evaluating behavior
controlled by policy CMP0053 is disabled.

Also the nested lists separator string is changed to `<<<S>>>`,
which solves the problem twofold.

Closes #17570
2017-12-18 14:36:17 +01:00
Kitware Robot
438ed3bfc1 CMake Nightly Date Stamp 2017-12-18 00:01:05 -05:00
Kitware Robot
08229348a8 CMake Nightly Date Stamp 2017-12-17 00:01:11 -05:00
Kitware Robot
d4fb3136d5 CMake Nightly Date Stamp 2017-12-16 00:01:10 -05:00
Brad King
76fa3b383e Merge topic 'vs-vcxproj-lowercase-utf-8'
907bc354 VS: Emit "utf-8" encoding as lowercase in .vcxproj headers

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1594
2017-12-15 10:42:43 -05:00
Brad King
6fb568cef6 Merge topic 'makefile-simplify-fortran'
7ab9a625 Makefiles: Drop 'requires' step and its supporting infrastructure
5f2e2c38 Makefiles: Avoid nested make calls for Fortran module dependencies

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1523
2017-12-15 10:42:12 -05:00
Kitware Robot
4549eed947 CMake Nightly Date Stamp 2017-12-15 00:01:19 -05:00
Vitaly Stakhovsky
907bc35437 VS: Emit "utf-8" encoding as lowercase in .vcxproj headers
Match the XML preamble generated by VS 2010 and later.
2017-12-14 08:27:48 -05:00
Yurii Batrak
7ab9a62572 Makefiles: Drop 'requires' step and its supporting infrastructure
The 'requires' step was used to provide implicit dependencies between
the generated Fortran module files and a Fortran target that needs these
module files to ensure the correct compilation order.  After recent
refactoring to resolve all dependencies explicitly through `.mod.stamp`
make targets, the separate 'requires' step is not needed anymore.
2017-12-14 08:22:07 -05:00
Brad King
4bc5c08476 Merge topic 'per-source-COMPILE_LANGUAGE-genex-support'
10f58b27 Genex: Per-source $<COMPILE_LANGUAGE:...> support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1575
2017-12-14 08:21:52 -05:00
Yurii Batrak
5f2e2c387d Makefiles: Avoid nested make calls for Fortran module dependencies
Makefiles generated by cmake use a series of nested calls to build
`*.provides.build` targets that are used when the 'requires' step is
needed.  That leads to significant degradation of the build time for
incremental builds.  Re-arrange dependencies to eliminate the nested
calls.

Explicit `.mod.stamp` targets introduced by this commit could lead to
situation when a stamp file always older than its dependency.  This
happens during the incremental build when building of an updated Fortran
source produces a module file that has no differences from the stored
stamp file.  In such case `cmake_copy_f90_mod` will be triggered on each
new build to compare a module file with the corresponding stamp file.
This behavior is expected and can not be changed without nested calls
that slow down the build.  The copy-if-different check is much cheaper
than an entire nested make call.
2017-12-14 08:13:42 -05:00
Brad King
1e148aba70 Merge topic 'cmGraphVizWriter_Interface_Dependers'
9b4d31dc cmGraphVizWriter: Updated to create and follow dependers for interface targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1581
2017-12-14 08:08:05 -05:00
Joel T. Frederico
9b4d31dc77 cmGraphVizWriter: Updated to create and follow dependers for interface targets
Generating graphs of dependencies now uses interface targets, but graphs
of dependers did not include interface targets.
2017-12-14 08:03:02 -05:00
Kitware Robot
1e2911b8cd CMake Nightly Date Stamp 2017-12-14 00:01:11 -05:00
Marc Chevrier
10f58b27ac Genex: Per-source $<COMPILE_LANGUAGE:...> support
Fixes: #17542
2017-12-13 16:35:22 +01:00
Brad King
166bf4c490 CMake 3.10.1 2017-12-13 08:34:28 -05:00
Brad King
3395aec7b8 Merge topic 'use-std-string'
c62ffdcd cmIDEOptions: use std::string instead of const char*

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1580
2017-12-13 07:49:18 -05:00
Brad King
372dc9b087 Merge topic 'update-kwsys'
834d1878 Merge branch 'upstream-KWSys' into update-kwsys
c6a83ecf KWSys 2017-12-12 (3ba214b7)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1587
2017-12-13 07:48:29 -05:00
Kitware Robot
c97734280f CMake Nightly Date Stamp 2017-12-13 00:01:27 -05:00
Brad King
1f5b2a8de9 Merge topic 'fix-ctest-chrono'
ba6caafa CTest: Use integer-representable value for "infinite" timeout
548e8f6f CTest: Simplify std::chrono::duration<double> conversion to double
de0035fd cmCTestBuildAndTestHandler: Convert timeout to std::chrono::duration
687a26b7 CTest: Fix regression in build-and-test timeout forwarding
e770b1b8 CTest: Fix regression in build-and-test timeout compuatation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: dublet <github@dublet.org>
Merge-request: !1574
2017-12-12 08:02:33 -05:00
Brad King
834d187841 Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2017-12-12 (3ba214b7)
2017-12-12 07:51:51 -05:00
Kitware Robot
62d8bff146 CMake Nightly Date Stamp 2017-12-12 00:01:15 -05:00
Brad King
ba6caafa42 CTest: Use integer-representable value for "infinite" timeout
Refactoring in commit 66419bc046 (CTest: convert timeouts to
std::chrono::duration, 2017-11-20) changed out "infinite" timeout to a
value not representable by a 64-bit integer.  This causes undefined
behavior when e.g. KWSys Process converts the duration to a `long` to
interact with system APIs.  Use the old `1.0e7` maximum value.
2017-12-11 10:41:48 -05:00
Brad King
9720c14255 Merge topic 'cpack-generator-scripts-enable-all-cmake-policies'
93d5f464 CPack: enable all CMake policies for generator scripts

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1582
2017-12-11 09:00:19 -05:00
Brad King
0f57e15157 Merge topic 'ctest-remove-unfinished-batch-mode'
f984296b CTest: Remove unfinished batch test mode

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1577
2017-12-11 08:33:58 -05:00
Brad King
1efb6e566f Merge topic 'update-kwsys'
9dee52ba Merge branch 'upstream-KWSys' into update-kwsys
3b1bb703 KWSys 2017-12-08 (2d27b1d0)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1576
2017-12-11 08:33:25 -05:00
Kitware Robot
14fe6d431b CMake Nightly Date Stamp 2017-12-11 00:01:09 -05:00
Kitware Robot
ec37222d59 CMake Nightly Date Stamp 2017-12-10 00:01:10 -05:00
Domen Vrankar
93d5f464cc CPack: enable all CMake policies for generator scripts 2017-12-09 12:50:28 +01:00
Kitware Robot
0fe1966b79 CMake Nightly Date Stamp 2017-12-09 00:01:30 -05:00
Vitaly Stakhovsky
c62ffdcd4f cmIDEOptions: use std::string instead of const char*
Revise method signatures to save a few c_str() conversions.
2017-12-08 22:30:16 -05:00
Brad King
f984296ba8 CTest: Remove unfinished batch test mode
This was partially implemented by commit v2.8.0~154 (Added some ctest
batch capabilities, 2009-09-10) but never finished.
2017-12-08 11:23:33 -05:00
Brad King
548e8f6ffe CTest: Simplify std::chrono::duration<double> conversion to double
The ratio of ticks to seconds for this type is 1, so we can just use its
`count()` directly.  This also avoids converting through the integer
representation of `std::chrono::milliseconds`, which has a much smaller
allowed range.

Drop our `cmsysProcess_SetTimeout` wrapper as it is now very thin.
2017-12-08 11:09:49 -05:00
Brad King
9dee52baca Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2017-12-08 (2d27b1d0)
2017-12-08 10:08:39 -05:00
Brad King
158fb9755c Merge topic 'autogen-fix-library-deps'
1bc60334 Merge branch 'automoc-apple-framework' into autogen-fix-library-deps
a3f8371c Merge branch 'automoc-apple-framework' into autogen-fix-library-deps
bd49ae51 Autogen: Fix library dependency forwarding to _autogen target
e4ccc684 Autogen: Tests: Add test for MacOS frameworks
fcbd02fd Autogen: Fix for AUTOMOC on macOS frameworks in CMake 3.10

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1566
2017-12-08 09:35:02 -05:00
Brad King
bbac777698 Merge topic 'update-kwsys'
c50f08cd Merge branch 'upstream-KWSys' into update-kwsys
5b1c84b4 KWSys 2017-12-07 (4aee0036)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1567
2017-12-08 09:12:54 -05:00
Brad King
de0035fdcc cmCTestBuildAndTestHandler: Convert timeout to std::chrono::duration 2017-12-08 08:31:00 -05:00
Brad King
687a26b702 CTest: Fix regression in build-and-test timeout forwarding
Refactoring in commit 66419bc046 (CTest: convert timeouts to
std::chrono::duration, 2017-11-20) changed out "infinite" timeout
to a value not representable by a 64-bit integer.  Update the
`--build-and-test` forwarding of `--test-timeout` to not forward
an "infinite" timeout.
2017-12-08 07:33:39 -05:00
Brad King
e770b1b86e CTest: Fix regression in build-and-test timeout compuatation
Refactoring in commit 66419bc046 (CTest: convert timeouts to
std::chrono::duration, 2017-11-20) accidentally changed the logic used
to compute the timeout for a test when it starts.  It incorrectly limits
the maximum possible timeout to 2 minutes rather than 2 minutes less
than the total allowed test time remaining.  Update the new logic to
restore the original behavior.

Avoid subtracting 2 minutes from our "infinite" timeout value to avoid
creating very large timeouts that are not "infinite" and may exceed
integer type ranges.
2017-12-08 07:14:05 -05:00
Kitware Robot
1c40558e91 CMake Nightly Date Stamp 2017-12-08 00:01:12 -05:00
Brad King
51045535e8 Merge topic 'fix-ctest-chrono'
be470278 CTest: Fix regression in test timeout compuatation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: dublet <github@dublet.org>
Merge-request: !1568
2017-12-07 10:45:47 -05:00
Brad King
066fe644ee Merge branch 'automoc-apple-framework' into release-3.10
Merge-request: !1561
2017-12-07 09:13:45 -05:00
Sebastian Holtermann
bd49ae5109 Autogen: Fix library dependency forwarding to _autogen target
Library dependencies of the origin target were forwarded to the
_autogen target as source file dependencies. This is fixed by
forwarding the dependencies as target dependencies instead.

Issue: #17278
2017-12-07 09:09:19 -05:00
Sebastian Holtermann
fcbd02fd6e Autogen: Fix for AUTOMOC on macOS frameworks in CMake 3.10
Revert the library target dependency forwarding to the `_autogen` target
to the 3.9.6 way, only now using `GetLinkImplementationLibraries`.

Fixes: #17278
2017-12-07 09:04:05 -05:00
Brad King
be4702781d CTest: Fix regression in test timeout compuatation
Refactoring in commit 66419bc046 (CTest: convert timeouts to
std::chrono::duration, 2017-11-20) accidentally changed the logic used
to compute the timeout for a test when it starts.  It incorrectly limits
the maximum possible timeout to 2 minutes rather than 2 minutes less
than the total allowed test time remaining.  Update the new logic to
restore the original behavior.

Avoid subtracting 2 minutes from our "infinite" timeout value to avoid
creating very large timeouts that are not "infinite" and may exceed
integer type ranges.
2017-12-07 08:33:19 -05:00
Brad King
3de52db69c Merge topic 'splitRCPatchComponent'
f92304c7 CMakeVersion RC file: Split patch into 2 components

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1552
2017-12-07 08:11:56 -05:00
Brad King
9accb48d17 Merge topic 'revert-server-target-backtraces'
b7100756 Merge branch 'backport-revert-server-target-backtraces' into revert-server-target-backtraces
976370d1 server: drop "ctestInfo" backtrace information
8b2736c7 server: Revert "Report backtraces in codemodel response"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1564
2017-12-07 08:08:59 -05:00
Brad King
c50f08cdd8 Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2017-12-07 (4aee0036)
2017-12-07 07:25:03 -05:00
Kitware Robot
f5e48edaae CMake Nightly Date Stamp 2017-12-07 00:01:14 -05:00
Brad King
05f86af716 Merge branch 'backport-revert-server-target-backtraces' into release-3.10
Merge-request: !1564
2017-12-06 13:46:55 -05:00