Commit Graph

23586 Commits

Author SHA1 Message Date
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
Brad King db730f3e50 Merge topic 'file-path-checksum-cpp11'
23ad08dd Migrate cmFilePathChecksum to C++11

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1334
2017-10-02 10:37:42 -04:00
Brad King 39b50975d9 CPack: Fix .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.
2017-10-02 10:09:37 -04:00
Brad King a9870c9211 Merge topic 'DNDGen-stack-var'
ec30129b CPack: put local variable on the stack

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1331
2017-10-02 08:01:48 -04:00
Brad King 275b4a53ee Merge topic 'autogen-predefs'
6bbc1e77 Autogen: Add release notes for (CMAKE_)AUTOMOC_COMPILER_PREDEFINES
75c98b5e Autogen: Doc: Add documentation for (CMAKE_)AUTOMOC_COMPILER_PREDEFINES
1d7f099d Autogen: Add (CMAKE_)AUTOMOC_COMPILER_PREDEFINES

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1328
2017-10-02 08:01:21 -04:00