Commit Graph

27670 Commits

Author SHA1 Message Date
Brad King b727e74fb0 Merge topic 'vs-v142-csharp-flags'
bbf216fb6b VS: Add toolset v142 CSharp flag table

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3908
2019-10-12 10:22:21 -04:00
Kitware Robot a8d42ecb8d CMake Nightly Date Stamp 2019-10-12 00:01:14 -04:00
Brad King bbf216fb6b VS: Add toolset v142 CSharp flag table
While the flag tables for C and C++ were generated from MSBuild `.xml`
files, the CSharp flag tables were written by hand.  Copy the `v141`
flag table to use for the `v142` toolset.

Remove the special case added by commit 626c51f47b (VS: Update for
Visual Studio 2019 Preview 2, 2019-01-24, v3.14.0-rc1~74^2) that mapped
the v142 flag table lookup to v141 since we now have the real v142
table.

Fixes: #19828
2019-10-11 11:11:20 -04:00
Brad King fe9a903d8e Merge topic 'cmake-bin-link-job-pool'
b7509dd674 Add option to configure Ninja link job pool for CMake's own binaries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3901
2019-10-11 08:36:57 -04:00
Kitware Robot 696b2d40d4 CMake Nightly Date Stamp 2019-10-11 00:01:07 -04:00
Brad King b7509dd674 Add option to configure Ninja link job pool for CMake's own binaries
Create an undocumented `CMake_JOB_POOL_LINK_BIN` option that builders
can set to avoid linking too many of our binaries at once.
2019-10-10 13:28:45 -04:00
Brad King e3b9d125ef Merge topic 'deprecate-policy-old'
d00bb419ca Add deprecation warnings for policies CMP0069 and below

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3893
2019-10-10 09:27:06 -04:00
Brad King d00bb419ca Add deprecation warnings for policies CMP0069 and below
The OLD behaviors of all policies are deprecated, but only by
documentation.  Add an explicit deprecation diagnostic for policies
introduced in CMake 3.9 and below to encourage projects to port away
from setting policies to OLD.
2019-10-10 09:26:10 -04:00
Brad King 2faadaae6b Merge topic 'rename_loglevel_option'
7bbddeb78d CLI: Rename --loglevel to --log-level for naming consistency

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alex Turbov <i.zaufi@gmail.com>
Merge-request: !3899
2019-10-10 09:23:37 -04:00
Brad King bab7ec3c25 Merge topic 'pch-generate'
36ded610af PCH: Generate sources during Compute step

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3890
2019-10-10 09:22:39 -04:00
Craig Scott 7bbddeb78d CLI: Rename --loglevel to --log-level for naming consistency
Other multi-word command line options use hyphens to separate
the words, so the --loglevel option introduced in CMake 3.15 was
inconsistent in this regard. Rename it to --log-level but still support
the original --loglevel name to preserve backward compatibility.
2019-10-10 09:20:50 -04:00
Kitware Robot 0d1bf3f660 CMake Nightly Date Stamp 2019-10-10 00:01:06 -04:00
Cristian Adam 36ded610af PCH: Generate sources during Compute step 2019-10-09 13:50:25 +02:00
Kitware Robot 6050eca0a4 CMake Nightly Date Stamp 2019-10-09 00:01:06 -04:00
Brad King 5fa1315b03 Merge topic 'file-GENERATE-earlier'
f1fb63b306 file(GENERATE): Create output file structures even earlier

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3895
2019-10-08 11:25:08 -04:00
Brad King 6bcc8c1c31 Merge topic 'vs-16.4-global-targets'
9df56ece79 Merge branch 'backport-vs-16.4-global-targets'
ac1a1bf18b VS: Tell VS 16.4 not to verify CMake-provided custom command outputs
04e5f30ad3 VS: Tell VS 16.4 not to verify CMake-provided custom command outputs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3896
2019-10-08 11:22:55 -04:00
Kitware Robot ab54653afd CMake Nightly Date Stamp 2019-10-08 00:01:06 -04:00
Brad King 04e5f30ad3 VS: Tell VS 16.4 not to verify CMake-provided custom command outputs
Extend the fix from commit 0578239d3a (VS: Tell VS 16.4 not to verify
SYMBOLIC custom command outputs, 2019-09-23, v3.15.4~2^2) to apply to
outputs in CMake-provided targets like `install`.  Simply mark these
outputs as `SYMBOLIC` too since they are not actually generated.

Fixes: #19737
2019-10-07 17:41:31 -04:00
Brad King f1fb63b306 file(GENERATE): Create output file structures even earlier
Since commit b80557c7bd (file(GENERATE): Evaluate early to allow
generating source files, 2014-11-04, v3.2.0-rc1~398^2) we create the
`cmSourceFile` instances marked with a `GENERATED` source file property
before tracing source dependencies.  Move it to even earlier so that
steps in `cmGlobalGenerator::AddAutomaticSources` can operate on all
sources.  This also avoids the accidental `O(n^2)` calls for `n` local
generators that we had previously.

This is also needed since commit 83c1657ff7 (Unity build: Generate
sources during Compute step, 2019-10-03) to support `file(GENERATE)`
outputs as sources in a target with `UNITY_BUILD` enabled.
2019-10-07 15:22:12 -04:00
Brad King 4c29297495 Begin post-3.16 development 2019-10-07 10:57:39 -04:00
Brad King 16613bc050 Begin 3.16 release versioning 2019-10-07 10:53:56 -04:00
Brad King 947b02e2e0 Merge topic 'export-genex-under-prefix'
3ded5b6da8 install,export: Fix export of a genex following $<INSTALL_PREFIX>

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3886
2019-10-07 10:34:50 -04:00
Kitware Robot 52891c816d CMake Nightly Date Stamp 2019-10-07 00:01:04 -04:00
Kitware Robot f2bf78ccf7 CMake Nightly Date Stamp 2019-10-06 00:01:06 -04:00
Kitware Robot 3da9733142 CMake Nightly Date Stamp 2019-10-05 00:01:05 -04:00
Brad King 395e5f77fc Merge topic 'unity-step'
83c1657ff7 Unity build: Generate sources during Compute step

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3884
2019-10-04 10:15:08 -04:00
Brad King a988cc8789 Merge topic 'pch-multi-language'
38c1f2ab22 PCH: Fix CMake test files indentation
1144a4fa47 PCH: Add multi-language PCH generation support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3885
2019-10-04 10:14:20 -04:00
Brad King 3ded5b6da8 install,export: Fix export of a genex following $<INSTALL_PREFIX>
The relative path check added by commit 5838aba1aa (Export: Report error
on relative include with genex., 2013-11-26, v3.0.0-rc1~285^2) was added
one condition too early.  If the value starts in `${_IMPORT_PREFIX}`
(which comes from `$<INSTALL_PREFIX>`) then it is an absolute path.

Fixes: #19791
2019-10-04 09:53:22 -04:00
Kitware Robot 65020633e6 CMake Nightly Date Stamp 2019-10-04 00:01:06 -04:00
Cristian Adam 1144a4fa47 PCH: Add multi-language PCH generation support
If the target has C files, it will get a C PCH file.
The same for C++ files. The linker language is no
longer used to determine which language to use for
PCH.

Fixes: #19790
2019-10-03 22:58:55 +02:00
Brad King 83c1657ff7 Unity build: Generate sources during Compute step
The unity build sources need to be added for all generators.  Create
them during `cmGlobalGenerator::Compute` to avoid duplicating the calls
in every generator.  We already handle Qt autogen there too.

Issue: #19789
2019-10-03 14:55:22 -04:00
Brad King 3247506662 Merge topic 'ctest-hardware-allocation'
e9500271a3 Help: Add documentation for CTest hardware allocation
d1f100a415 CTest: Add Json output for PROCESSES property
b741ee820d Tests: Add test for CTest hardware allocation feature
3c8a5aad46 Tests: Write tests for cthwalloc helper tool
2d74e54661 Tests: Write cthwalloc helper tool
e34de0691b CTest: Allocate hardware to tests
aee0964851 CTest: Add bin-packing algorithm
c494b2973a CTest: Add cmCTestHardwareAllocator class
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3858
2019-10-03 14:07:52 -04:00
Brad King 96bc0a5d99 Merge topic 'xcode-scheme-custom-target'
333a2ff099 Merge branch 'backport-xcode-scheme-custom-target'
7cccc5b199 Xcode: Restore CMAKE_XCODE_GENERATE_SCHEME for custom targets
ac9934406d Xcode: Restore CMAKE_XCODE_GENERATE_SCHEME for custom targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3878
2019-10-03 09:09:04 -04:00
Kitware Robot 53dedbd51e CMake Nightly Date Stamp 2019-10-03 00:01:07 -04:00
Kyle Edwards d1f100a415 CTest: Add Json output for PROCESSES property 2019-10-02 09:33:54 -04:00
Kyle Edwards e34de0691b CTest: Allocate hardware to tests 2019-10-02 09:33:54 -04:00
Kyle Edwards aee0964851 CTest: Add bin-packing algorithm
This algorithm is used to determine whether or not a test can
execute with the available resources. It uses a recursive largest-
first algorithm to try to place the tests into their respective
slots.
2019-10-02 09:33:54 -04:00
Kyle Edwards c494b2973a CTest: Add cmCTestHardwareAllocator class 2019-10-02 09:33:54 -04:00
Kyle Edwards c8f4806943 CTest: Add parser for hardware spec file 2019-10-02 09:33:54 -04:00
Kyle Edwards bb4a141059 CTest: Add lexer for PROCESSES property 2019-10-02 09:33:54 -04:00
Brad King 7cccc5b199 Xcode: Restore CMAKE_XCODE_GENERATE_SCHEME for custom targets
The target property introduced by commit 413b71485a (Xcode: Create Xcode
schemes per target, 2019-03-11, v3.15.0-rc1~347^2) was accidentally not
initialized by `CMAKE_XCODE_GENERATE_SCHEME` for custom targets.  Fix it
and update the test.

Fixes: #19759
2019-10-02 08:21:02 -04:00
Brad King a1f78a481c Merge topic 'ninja-depend-shared-symlinks'
4891f0f966 Ninja: Ensure shared library version symlinks are created for dependents

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3875
2019-10-02 07:57:25 -04:00
Brad King d57c1a5b31 Merge topic 'clang-format-normalize-headers-presentation'
ed98209ddc Revise include order using clang-format-6.0
185fe49f29 clang-format: Normalize headers presentation
42ef28b4f3 Remove unused uid_t/gid_t types on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Sebastian Holtermann <sebholt@web.de>
Merge-request: !3851
2019-10-02 07:53:43 -04:00
Brad King 0c5f78478e Merge topic 'xcode-debug-document-versioning'
67200c37b0 xcode: Add XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3876
2019-10-02 07:51:06 -04:00
Brad King 9649c91f83 Merge topic 'pch-compile-pdb'
e6e189e02b PCH: Report error when setting COMPILE_PDB_NAME property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3864
2019-10-02 07:48:55 -04:00
Brad King 20e9151e6c Merge topic 'vs-v142-version'
5117389931 VS: Fix support for v142 toolset minor versions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3874
2019-10-02 07:47:25 -04:00
Kitware Robot f3ba8bf402 CMake Nightly Date Stamp 2019-10-02 00:01:11 -04:00
Gregor Jasny 67200c37b0 xcode: Add XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING property 2019-10-01 23:02:35 +02:00
Brad King 4891f0f966 Ninja: Ensure shared library version symlinks are created for dependents
When linking to a shared library target that has version symlinks, add
an order-only dependency on the build statement that creates the links.
This ensures that the links exist for use at runtime.

Fixes: #19774
2019-10-01 14:34:03 -04:00
Cristian Adam e6e189e02b PCH: Report error when setting COMPILE_PDB_NAME property
Reusable precompile headers require specific COMPILE_PDB_NAME property
values. Report error if the user tries to set a different value.
2019-10-01 18:33:40 +02:00