Commit Graph

23590 Commits

Author SHA1 Message Date
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
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
05f86af716 Merge branch 'backport-revert-server-target-backtraces' into release-3.10
Merge-request: !1564
2017-12-06 13:46:55 -05:00
Brad King
8b2736c71c server: Revert "Report backtraces in codemodel response"
The backtrace information is very repetitive and hugely increases the
size of the codemodel object.  We need to remove it until an alternative
representation can be developed.  Revert commit v3.10.0-rc1~393^2
(server: Report backtraces in codemodel response, 2017-06-20), except
for the protocol version number (because it indicates other new things).

Unfortunately this is incompatible with clients that expect the
"crossReferences" field in targets.  However, the regression in memory
usage is quite serious, especially on large projects, and therefore
breaks even older clients that do not use backtraces.  Since the
"crossReferences" field was only provided by one release (3.10.0), it is
simplest to revert it outright for 3.10.1.

Fixes: #17502
2017-12-06 11:39:03 -05:00
Alexander Wittig
f25d87db9e CPack: Fix macOS PKG component dependency information
Refactoring in commit v3.7.0-rc1~523^2 (CPack/PackageMaker: port to
cmXMLWriter, 2016-06-08) accidentally broke `distribution.dist`
generation when there are dependencies between components and the pkg
(or the derived productbuild) generator are used.  The resulting
package cannot be installed and instead the Apple Installer app
shows a "Javascript error" message.

The problem is that a `std::ostringstream` is constructed with some
content, but the stream pointer still points to the beginning of the
stream, so subsequent writes overwrite the initial content instead of
appending.
2017-12-01 10:52:55 -05:00
Brad King
7746fdb2fe CMake 3.10.0 2017-11-20 10:27:59 -05:00
Brad King
a347de186c Merge branch 'fix-cmake-server-bad-buffering' into release-3.10
Merge-request: !1498
2017-11-20 09:30:04 -05:00
vector-of-bool
01c42155cc server: Fix regression in partial message handling
If a partial message is flushed into the input pipe for CMake Server,
the parser will try and parse it as a full message because of some bad
loop checks.  This was introduced accidentally in commit
v3.10.0-rc1~365^2~2 (server: Refactor to make the event loop owned by
server object, 2017-03-24).
2017-11-20 09:25:20 -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
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
45da558742 CMake 3.10.0-rc4 2017-11-01 08:26:04 -04:00
Sebastian Holtermann
96d20a4de3 Autogen: Don't use AUTOMOC_MOC_OPTIONS in moc-predefs command
Closes #17418
2017-10-31 14:20:24 +01:00
Sebastian Holtermann
bda0875ac3 Autogen: Make rcc output file suffix static (instead of pseudo-random) 2017-10-30 16:30:46 +01:00
Brad King
469ac58925 Merge branch 'autogen-qrc-file-name' into release-3.10
Merge-request: !1422
2017-10-30 08:57:38 -04:00
Sebastian Holtermann
a8bf0b2b37 Autogen: RCC: Append checksum suffix to wrapped file name
Closes #17404
2017-10-29 03:28:20 +01:00
Brad King
0504fc8d84 Merge branch 'backport-fix-co-compile' into release-3.10
Merge-request: !1418
2017-10-27 09:41:25 -04:00
Brad King
dc4d2021e1 Merge branch 'autogen-static-library-cycles' into release-3.10
Merge-request: !1408
2017-10-27 09:41:11 -04:00
Sebastian Holtermann
798e4f2fad Autogen: Don't add STATIC_LIBRARY cycle targets to the _autogen dependencies
When a STATIC_LIBRARY cycle is detected we don't add any STATIC_LIBRARY target
from the cycle to the `_autogen` target dependencies.

Closes #17389
2017-10-27 09:37:15 -04:00
Brad King
992962c76d cmcmd: Restore support for running multiple lint tools
Refactoring in commit v3.10.0-rc1~115^2 (Clean up iwyu code to not be
one big if statement, 2017-08-28) incorrectly changed the logic to run
only one lint tool at a time.  Restore support for running all tools
specified on the command-line.
2017-10-27 09:26:50 -04:00
Brad King
a5197eeac7 cmcmd: Convert lint handlers to file-static functions
These do not need to be declared in the header.
2017-10-27 08:36:28 -04:00
Brad King
1c075ffd60 cmcmd: Rename loop iteration variable for clarity 2017-10-27 08:36:28 -04:00
Brad King
f01576012f Merge branch 'cmp0040-wording' into release-3.10
Merge-request: !1415
2017-10-26 09:48:28 -04:00
Brad King
a1b1f1a282 CMP0040: Clarify policy warning to match documentation
In commit v3.5.0-rc1~8^2~2 (Help: Clarify policy `CMP0040`
documentation, 2016-01-28) the documentation was clarified to indicate
that the target must be defined in the current directory.  Do the same
for the text of the policy warning itself.

Fixes: #17399
2017-10-26 09:47:29 -04:00
Brad King
319622a49f CMake 3.10.0-rc3 2017-10-19 10:20:40 -04:00
Brad King
069c1bd908 Merge branch 'vs-cuda-machine' into release-3.10
Merge-request: !1390
2017-10-17 10:47:14 -04:00
Brad King
fd90a14f1b VS: Set CUDA TargetMachinePlatform explicitly on x64
The `TargetMachinePlatform` setting tells CUDA what `--machine {32,64}`
flag to pass to nvcc.  While CUDA automatically chooses the proper
default for the target architecture, it does not reflect this in the
user-visible IDE settings.  Set it explicitly to fix the user-visible
setting.

Fixes: #17355
2017-10-17 10:41:41 -04:00
Brad King
07068d67e9 Merge branch 'vs-2017-cl-check' into release-3.10
Merge-request: !1388
2017-10-16 13:40:13 -04:00
Brad King
f566586e1c VS: Detect compiler component in VS 2017 instances more reliably
The `Microsoft.VisualStudio.Component.VC.Tools.x86.x64` component is
not the only way a VS instance may provide the `cl` compiler tool.
For example, VS 2017 Express Edition does not install that component.
Instead search for the tools directly on disk within an instance.

Suggested-by: Rich Chiodo <rchiodo@microsoft.com>
Fixes: #17349
2017-10-16 11:57:15 -04:00
Brad King
c6bb704ea1 cmVSSetupHelper: Fix install location encoding conversion 2017-10-16 11:55:53 -04:00
Brad King
4c3116d754 cmVSSetupHelper: Factor out install location string construction
This also adds a missing conversion to unix slashes in one code path.
2017-10-16 11:55:53 -04:00
Brad King
f64c554cc9 Merge branch 'imported-interface-no-system' into release-3.10
Merge-request: !1386
2017-10-13 14:36:45 -04:00
Brad King
2de0e0fdfa Do not initialize NO_SYSTEM_FROM_IMPORTED on INTERFACE libraries
The change in commit v3.8.0-rc1~276^2 (Allow NO_SYSTEM_FROM_IMPORTED on
imported INTERFACE libraries, 2016-11-21) was incorrect.  The property
is not meant to be set on imported targets at all.  It is meant to be
set on their consumers that compile sources.  Since INTERFACE libraries
have no sources to compile, the property is not needed on them.

Revert most of that change.  Unfortunately we must still tolerate
project code setting NO_SYSTEM_FROM_IMPORTED on INTERFACE libraries
because they were allowed by CMake 3.8 and 3.9.

Issue: #17348
2017-10-13 14:32:14 -04:00
Brad King
4d04ede10c CMake 3.10.0-rc2 2017-10-12 09:25:33 -04:00
Sebastian Holtermann
1c19626864 Autogen: Allow setting SKIP_AUTOUIC/GEN on .ui files not in the sources
SKIP_AUTOUIC and SKIP_AUTOGEN were ignored when set on a `.ui` file that
was not in the sources of the target.
2017-10-09 14:35:17 +02:00
Brad King
09a3a1cb9f Merge branch 'minor-fixes' into release-3.10
Merge-request: !1349
2017-10-06 07:18:01 -04:00
Brad King
ecaddda2fe Merge branch 'cpack-dmg-explicit-hfs' into release-3.10
Merge-request: !1354
2017-10-05 10:40:37 -04:00
Brad King
4f2a983c21 CPack: Fix PackageMaker .dmg HFS+ creation on macOS APFS hosts
When running `hdiutil create`, specify the HFS+ filesystem explicitly.
Otherwise `hdiutil` may choose a filesystem based on the host.  We do
not want to create APFS images for `.dmg` packages because they may not
mount on macOS versions prior to 10.12.

This was missed in commit 39b50975d9 (CPack: Fix .dmg HFS+ creation on
macOS APFS hosts, 2017-10-02).

Reported-by: Alan Garny
2017-10-05 10:33:13 -04:00
Brad King
05373ee1a2 CMake 3.10.0-rc1 version update 2017-10-05 09:55:23 -04:00
Matthias Maennich
b32b717b69 cmInstallCommandArguments: do not access static members through this 2017-10-05 14:53:52 +02:00
Matthias Maennich
7eaa964e9b cmProcessTools: fix minor issue introduced by 595feb3 2017-10-05 14:53:52 +02:00
Matthias Maennich
85a7eaba5e cmGeneratorTarget: remove dead code
explicitLibraries can never be nullptr at this point
2017-10-05 14:53:51 +02:00
Matthias Maennich
3345e2a2cc cmcmd: let operator<< for NumberFormatter reset the stream's format flags 2017-10-05 14:50:25 +02:00
Kitware Robot
78d4a3db03 CMake Nightly Date Stamp 2017-10-05 00:01:04 -04:00
Brad King
44d0e377f9 Merge topic 'vs-no-empty-link-version'
0b419b99 VS: Do not emit empty linker Version tag

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1332
2017-10-04 07:07:50 -04:00
Brad King
8b5539d1c2 Merge topic 'src-flags-genex-target'
303cd703 VS,Xcode: Fix TARGET_PROPERTY genex in source COMPILE_FLAGS property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Nikita Nemkin <nikita@nemkin.ru>
Merge-request: !1336
2017-10-04 07:05:41 -04:00
Kitware Robot
19fce04713 CMake Nightly Date Stamp 2017-10-04 00:01:07 -04:00
Vitaly Stakhovsky
0b419b998d VS: Do not emit empty linker Version tag
This empty element does nothing, so simply remove it to simplify
generated `.vcxproj` files.
2017-10-03 08:27:46 -04:00
Brad King
303cd7037a VS,Xcode: Fix TARGET_PROPERTY genex in source COMPILE_FLAGS property
This already worked in other generators.  Also add a test case.

Fixes: #17314
2017-10-03 08:03:33 -04:00
Kitware Robot
6b2aad04e8 CMake Nightly Date Stamp 2017-10-03 00:01:03 -04:00