Commit Graph
23032 Commits
Author SHA1 Message Date
Kitware Robot db96ebaa7b CMake Nightly Date Stamp 2017-06-30 00:01:06 -04:00
Brad King 55465be840 Merge topic '16961-xctest-scheme'
fe34a5c8 Xcode: Add XCTest support to schema generator
690cf2c1 Xcode: Prepare schema generator for XCTest
ff3498e7 XCTest: Speed up test by only enabling C language
610d2fce XCTest: Use bundle specific generator expressions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1013
2017-06-29 09:50:29 -04:00
Brad King 1ac89a4e06 Merge topic 'deb-on-windows'
52991413 CPackDeb: Enable the DEB generator on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !979
2017-06-29 09:49:29 -04:00
Brad King a9b88ffdfc Merge topic 'vs-link-debug-flags'
7ba27e36 VS: Add v140 and v141 flag table entries for /DEBUG:NONE and /DEBUG:FULL
ae44496e VS: Fix GenerateDebugInformation values for v140 and v141 toolsets
27bef160 VS: Fix GenerateDebugInformation flag map text for v141 toolsets
17a397c2 VS: Split link flag table between v140 and v141 toolsets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1002
2017-06-29 09:49:01 -04:00
Kitware Robot aaa545f867 CMake Nightly Date Stamp 2017-06-29 00:01:06 -04:00
Gregor Jasny fe34a5c82b Xcode: Add XCTest support to schema generator
Closes: #16961
2017-06-28 22:21:52 +02:00
Gregor Jasny 690cf2c1b2 Xcode: Prepare schema generator for XCTest
Issue: #16961
2017-06-28 22:06:49 +02:00
Nils Gladitz 5299141320 CPackDeb: Enable the DEB generator on Windows
While some features require external Unix tools the
generator is mostly portable.

By enabling it on Windows it can be used for cross platform
packaging.
2017-06-28 19:55:12 +02:00
Ian Hojnicki 7ba27e364f VS: Add v140 and v141 flag table entries for /DEBUG:NONE and /DEBUG:FULL 2017-06-28 08:55:40 -04:00
Brad King ae44496e2b VS: Fix GenerateDebugInformation values for v140 and v141 toolsets
When VS 2015 was first released, its new v140 toolset came with a
`link.xml` file that changed the `GenerateDebugInformation` boolean
(`false` and `true`) value from earlier toolsets to an enumeration
consisting of the possible values `No`, `Debug`, and `DebugFastLink`.

We first adapted to this in commit v3.4.2~2^2 (VS: Fix VS 2015 .vcxproj
file value for GenerateDebugInformation, 2016-01-08), but that broke
older toolsets that still expected the boolean.  Then commit
v3.6.0-rc1~295^2~1 (VS: Fix VS 2015 .vcxproj debug setting for older
toolsets, 2016-02-24) added a hack to fix up the value based on the
toolset in use.  Several follow-up commits fixed this for more older
toolsets because our flag table was at the time based on the generator
in use rather than the toolset in use.

Since commit v3.8.0-rc1~396^2 (VS: Choose flag map based on the toolset
name, 2016-10-17) we use a flag table based on the toolset, so the fixup
hack should not be needed.  We had to keep it around only due to our
default value for GenerateDebugInformation (`false` or `No`) still being
based on the generator instead of the toolset.

A VS 2015 update was released that changed the v140 toolset `link.xml`
file back to using `false` and `true` for the `GenerateDebugInformation`
enumeration variants previously known as `No` and `Debug`.  In order to
know which pair to use, we need to parse the `link.xml` file for the
current toolset.

Switch back to using `false` and `true` unconditionally in our
`GenerateDebugInformation` flag table entries and default value.  With
that plus the toolset-based flag table, we now get incorrect values for
`GenerateDebugInformation` only when using a v140 toolset from an older
VS 2015 installation.  Detect this case by parsing `link.xml` and add
special logic to convert `false` and `true` to `No` and `Debug` to
satisfy the older toolset specification.

Inspired-by: Ian Hojnicki <nullref@live.com>
Fixes: #17020
2017-06-28 08:55:40 -04:00
Ian Hojnicki 27bef1609b VS: Fix GenerateDebugInformation flag map text for v141 toolsets
Update the help text to match that from v141's link.xml file.
2017-06-28 08:55:40 -04:00
Ian Hojnicki 17a397c22a VS: Split link flag table between v140 and v141 toolsets 2017-06-28 08:55:40 -04:00
Brad King 0552747b58 Merge topic 'feature/include_guard'
c96f43b7 include_guard: add tests for the feature
80f1221f include_guard: add doc pages and a release note
85b52a04 include_guard: add vim syntax highlighting rules
d44bd1c2 include_guard: implement new command

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Craig Scott <craig.scott@crascit.com>
Merge-request: !928
2017-06-28 08:53:30 -04:00
Brad King 45ca0403ac Merge topic 'fix-windows-ninja-solink'
58017517 Ninja: Fix generated command lines for cmake_symlink_* on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1003
2017-06-28 08:46:07 -04:00
Kitware Robot 9ab399ba82 CMake Nightly Date Stamp 2017-06-28 00:01:06 -04:00
Brad King 372de3f803 CMake 3.9.0-rc5 2017-06-27 10:59:58 -04:00
Brad King 126effbb9c Merge topic 'vs_csharp_custom_command'
ec409a11 Vs: fix CSharp custom command by introducing inline MSBuild <Targets>s
dcdab5cf Vs: factor out computation of <Link> tag for CSharp source files
0a8f469a Vs: refactor WriteCustomRule for preparation of CSharp support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !970
2017-06-27 09:21:38 -04:00
Brad King 43c3afa745 Merge topic 'fix-crash-on-non-enabled-language-features'
e03a1b3b target_compile_features: Do not crash on non-enabled language
86990427 Tests: Enable languages explicitly in RunCMake.target_compile_features

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1010
2017-06-27 09:20:32 -04:00
Brad King dc11a20d7b Merge topic 'vs-cuda-fix-flags'
bbc1f364 VS: Fix support for nvcc flags not in our flag table

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1007
2017-06-27 09:18:34 -04:00
Brad King fd771df773 Merge branch 'fix-crash-on-non-enabled-language-features' into release-3.9 2017-06-27 09:14:31 -04:00
Brad King 1d86103846 Merge branch 'vs-cuda-fix-flags' into release-3.9 2017-06-27 09:14:26 -04:00
Brad King bbc1f3642c VS: Fix support for nvcc flags not in our flag table
The change in commit v3.9.0-rc4~3^2 (VS: Improve workaround for CUDA
-Xcompiler placement bug, 2017-06-21) accidentally appended to the
`AdditionalOptions` as if it were a `;`-separated list, but it is
actually a command-line string.  Append with a space instead.

While at it, fix the same problem for the `AdditionalOptions` added to
`CudaLink` by commit v3.9.0-rc3~1^2 (CUDA: When linking device code
suppress CUDA 8.0+ deprecation warnings, 2017-06-09).

Fixes: #17008
2017-06-27 09:08:50 -04:00
Kitware Robot b8858bd404 CMake Nightly Date Stamp 2017-06-27 00:01:07 -04:00
Brad King e03a1b3b61 target_compile_features: Do not crash on non-enabled language
Fixes: #17011
2017-06-26 13:54:20 -04:00
Brad King 4d0155e780 Merge topic 'vs_projecttype_comparison'
54d42ce7 Vs: disable unnecessary <ItemDefinitionGroups> for CSharp targets
d5f7bf9b Vs: change comparison to use .ProjectType member always as first comparator

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !988
2017-06-26 10:45:11 -04:00
Kitware Robot 581fda598c CMake Nightly Date Stamp 2017-06-26 00:01:04 -04:00
Kitware Robot 78f879f418 CMake Nightly Date Stamp 2017-06-25 00:01:04 -04:00
Kitware Robot 2731edf978 CMake Nightly Date Stamp 2017-06-24 00:01:04 -04:00
Nils Gladitz 5801751709 Ninja: Fix generated command lines for cmake_symlink_* on Windows
CMake generates multiple commands cojoined with &&.
On Windows this only works when executing the commands through
the Windows shell.
2017-06-23 10:58:39 +02:00
Kitware Robot 4c7caf15e4 CMake Nightly Date Stamp 2017-06-23 00:01:06 -04:00
Michael Stürmer ec409a116f Vs: fix CSharp custom command by introducing inline MSBuild <Targets>s
The custom command implementation is based on the Microsoft support article:

https://docs.microsoft.com/en-us/visualstudio/msbuild/how-to-extend-the-visual-studio-build-process

Fixes: #16960
2017-06-22 21:40:48 +02:00
Michael Stürmer dcdab5cf23 Vs: factor out computation of <Link> tag for CSharp source files 2017-06-22 21:39:37 +02:00
Michael Stürmer 0a8f469af9 Vs: refactor WriteCustomRule for preparation of CSharp support 2017-06-22 16:52:37 +02:00
Michael Stürmer 54d42ce728 Vs: disable unnecessary <ItemDefinitionGroups> for CSharp targets 2017-06-22 16:51:44 +02:00
Michael Stürmer d5f7bf9b2e Vs: change comparison to use .ProjectType member always as first comparator 2017-06-22 16:49:24 +02:00
Brad King 8fe54172fc CMake 3.9.0-rc4 2017-06-22 10:15:07 -04:00
Brad King 426c83cf8f Merge topic 'vs-rc-flags'
974f4333 VS: Fix support for rc /nologo flag in per-source COMPILE_FLAGS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !998
2017-06-22 10:13:39 -04:00
Brad King 396b618c52 Merge topic 'vs-cuda-fix-flags'
3b754215 VS: Improve workaround for CUDA -Xcompiler placement bug
f2059585 VS: Fix target_compile_options for CUDA

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !996
2017-06-22 10:04:37 -04:00
Brad King 9f3bf3cb9d Merge topic 'vs_csharp_link_to_managed_cxx'
51865fc6 Vs: allow CSharp targets to be linked to CXX targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !993
2017-06-22 09:58:28 -04:00
Brad King c8ee5dbc0c Merge branch 'vs-rc-flags' into release-3.9 2017-06-22 09:52:28 -04:00
Brad King 974f43338b VS: Fix support for rc /nologo flag in per-source COMPILE_FLAGS
Since commit v3.9.0-rc1~160^2 (VS: Use tool-specific flag table for
COMPILE_FLAGS parsing, 2017-05-03) we now correctly use the `rc` flag
table to process the COMPILE_FLAGS flags of `.rc` source files instead
of incorrectly using the `cl` flag table as before.  However, our `rc`
flag table is not complete.  The `/nologo` flag was working before only
by accident because the `cl` flag table entry for it happened to match.
Add the proper entry to the `rc` flag table.

Fixes: #16991
2017-06-22 09:45:42 -04:00
Pavel Solodovnikov d44bd1c25f include_guard: implement new command 2017-06-22 10:53:42 +03:00
Kitware Robot 1218731a2a CMake Nightly Date Stamp 2017-06-22 00:01:06 -04:00
Brad King 3d99244477 Merge branch 'vs-cuda-fix-flags' into release-3.9 2017-06-21 14:24:23 -04:00
Brad King 3b75421515 VS: Improve workaround for CUDA -Xcompiler placement bug
In commit v3.9.0-rc1~431^2~6 (VS: Place CUDA host compiler options in
proper project file fields, 2017-03-07) we worked around a bug in the
CUDA VS integration by dropping `AdditionalCompilerOptions`.  However,
this silently drops `-Xcompiler=` options given by the user that don't
map to one of CudaCompile's dedicated settings.  Improve the workaround
to instead put the remaining `AdditionalCompilerOptions` into the
`AdditionalOptions` field behind `-Xcompiler=` ourselves.
2017-06-21 14:24:11 -04:00
Brad King f2059585e6 VS: Fix target_compile_options for CUDA
Fix the VS generator to honor `COMPILE_OPTIONS` for CUDA.  The exclusion
added by commit v3.9.0-rc1~431^2~7 (VS: Do not pass CUDA compile options
to C compiler, 2017-03-07) was correct but we need additional logic to
pass the CUDA compile options to the CUDA compiler.  Also we should
still pass the CXX or C options to MSVC (ClCompile) when those languages
are enabled even if the link language is CUDA.
2017-06-21 14:23:46 -04:00
Brad King d7c694b2e7 Merge topic 'autogen_brace'
50b3837c Autogen: Q_OBJECT behind brace test
01d2b745 Autogen: Check for Q_OBJECT/Q_GADGET after brace

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !986
2017-06-21 08:38:11 -04:00
Michael Stürmer 51865fc67e Vs: allow CSharp targets to be linked to CXX targets
Fixes: #16755
2017-06-21 08:37:15 +02:00
Kitware Robot 782c1e2f37 CMake Nightly Date Stamp 2017-06-21 00:01:05 -04:00
Sebastian Holtermann 01d2b745aa Autogen: Check for Q_OBJECT/Q_GADGET after brace
Closes #16971
2017-06-20 10:49:00 +02:00