32305 Commits

Author SHA1 Message Date
Brad King
88e1c54a7c Merge topic 'use-string-append'
7a649111 Use string(APPEND) in Tests
5d0d980d Use string(APPEND) in Modules
2016-08-01 14:59:50 -04:00
Brad King
bfac78d074 Merge topic 'more-virtual-override'
624b7215 Source/CPack: Add CM_OVERRIDE on MacOS cmCPackGenerator overrides
2016-08-01 14:59:47 -04:00
Brad King
2711c35a8d Merge topic 'app-framework-bundle-extension'
f951d0ad Add tests for BUNDLE_EXTENSION
c63380b1 Update documentation about bundle extensions
134d5c1f Honor BUNDLE_EXTENSION also for Frameworks (#14742)
2b909c08 Honor BUNDLE_EXTENSION also for App Bundles (#16148)
2016-08-01 14:59:44 -04:00
Brad King
8427b8e11c Merge topic 'aliased-target-properties'
ea647533 Do not report ALIASED_TARGET as always set (#15783)
2016-08-01 14:59:41 -04:00
Kitware Robot
8b9cd61337 CMake Nightly Date Stamp 2016-08-01 00:01:03 -04:00
Kitware Robot
963c4e4b90 CMake Nightly Date Stamp 2016-07-31 00:01:03 -04:00
Kitware Robot
99f5a32c7a CMake Nightly Date Stamp 2016-07-30 00:01:02 -04:00
Kitware Robot
db713223a8 CMake Nightly Date Stamp 2016-07-29 00:01:03 -04:00
Kitware Robot
09a86b392e CMake Nightly Date Stamp 2016-07-28 00:01:04 -04:00
Daniel Pfeifer
7a649111cd Use string(APPEND) in Tests
Automate with:

find Tests -type f -print0 | xargs -0 perl -i -0pe \
's/set\(([a-zA-Z0-9_]+)(\s+)"\$\{\1\}([^"])/string(APPEND \1\2"\3/g'
2016-07-28 00:43:04 +02:00
Daniel Pfeifer
5d0d980d99 Use string(APPEND) in Modules
Automate with:

find Modules -type f -print0 | xargs -0 perl -i -0pe \
's/set\(([a-zA-Z0-9_]+)(\s+)"\$\{\1\}([^"])/string(APPEND \1\2"\3/g'
2016-07-28 00:41:13 +02:00
Kitware Robot
73c618be70 CMake Nightly Date Stamp 2016-07-27 00:01:03 -04:00
Kitware Robot
8f884f2146 CMake Nightly Date Stamp 2016-07-26 00:01:02 -04:00
Kitware Robot
3d57541d6d CMake Nightly Date Stamp 2016-07-25 00:01:07 -04:00
Kitware Robot
ffc7c24b2e CMake Nightly Date Stamp 2016-07-24 00:01:03 -04:00
Kitware Robot
d615d20a63 CMake Nightly Date Stamp 2016-07-23 00:01:04 -04:00
Brad King
624b72159b Source/CPack: Add CM_OVERRIDE on MacOS cmCPackGenerator overrides 2016-07-22 10:42:37 -04:00
Brad King
8842a501cf Merge branch 'release' 2016-07-22 10:34:05 -04:00
Brad King
f59513140b CMake 3.6.1 2016-07-22 09:26:11 -04:00
Brad King
4e88b1ec17 Merge branch 'release' 2016-07-22 09:22:53 -04:00
Brad King
d504999d86 Merge topic 'tests-hide-ldd-check-errors'
d6a6024e Tests: Hide errors from `ldd --help` output check
2016-07-22 09:17:53 -04:00
Brad King
1fc340f0d4 Merge topic 'windows-export-all-fix-objlib'
13a6ff31 VS: Fix WINDOWS_EXPORT_ALL_SYMBOLS for object libraries
2016-07-22 09:17:48 -04:00
Brad King
3e7689ec39 Merge topic 'vim-cmake-syntax'
500f67e5 Aux: update vim-syntax-highlighting
2016-07-22 09:17:41 -04:00
Brad King
4c61e40cc5 Merge topic 'vs-default-v100'
059c230d VS: Explicitly default to v100 toolset in Visual Studio 2010
2016-07-22 09:17:36 -04:00
Brad King
19ccd35473 Merge topic 'revert-autogen-subdirs'
5e55d87b Autogen: Revert changes to generate moc/rcc in subdirectories
2016-07-22 09:17:28 -04:00
Brad King
e09518ca50 Merge topic 'nsis-protect-uninst-exec'
11768733 NSIS: Quote uninstaller path when executing it in a shell
2016-07-22 09:17:19 -04:00
Gregor Jasny
f951d0adb4 Add tests for BUNDLE_EXTENSION 2016-07-21 23:18:56 -07:00
Gregor Jasny
c63380b195 Update documentation about bundle extensions 2016-07-21 23:16:50 -07:00
Gregor Jasny
134d5c1f7c Honor BUNDLE_EXTENSION also for Frameworks (#14742) 2016-07-21 23:16:50 -07:00
Gregor Jasny
2b909c08f5 Honor BUNDLE_EXTENSION also for App Bundles (#16148) 2016-07-21 23:16:50 -07:00
Kitware Robot
7bfbcc75a3 CMake Nightly Date Stamp 2016-07-22 00:01:03 -04:00
Brad King
d6a6024e9e Tests: Hide errors from ldd --help output check
If `--help` is not a valid option then it may print content to stderr,
so we need to capture that.
2016-07-21 15:39:05 -04:00
Brad King
dbc0ec1648 Merge topic 'makefile-response-files'
c7a7c655 Makefile: Avoid link line object list lengths nearing system limits
34ba5c53 Makefile: Factor out response file checks into common helper
2016-07-21 11:27:31 -04:00
Benjamin Ballet
059c230d89 VS: Explicitly default to v100 toolset in Visual Studio 2010
Otherwise `CMAKE_VS_PLATFORM_TOOLSET` is not set even though the `v100`
toolset is chosen.
2016-07-21 11:13:16 -04:00
Brad King
13a6ff31be VS: Fix WINDOWS_EXPORT_ALL_SYMBOLS for object libraries
Teach Visual Studio generators to include object files from object
libraries in the list of objects whose symbols are to be exported.
The Makefile and Ninja generators already did this.  Update the
test to cover this case.

Reported-by: Bertrand Bellenot <Bertrand.Bellenot@cern.ch>
2016-07-21 11:05:22 -04:00
Patrick Boettcher
500f67e546 Aux: update vim-syntax-highlighting
This commit updates the vim-syntax-file. It is still not complete, but contains much more keywords,
built-in variables. Generator expressions are highlighted as well.

This file is generated from a script which parses the --help
output of cmake 3.5.

Imported from here: https://github.com/pboettch/vim-cmake-syntax

Signed-off-by: Patrick Boettcher <patrick.boettcher@posteo.de>
2016-07-21 16:48:55 +02:00
Brad King
850764fc70 Merge topic 'vs-alternate-RootNamespace'
8aa97fba VS: Handle VS_GLOBAL_RootNamespace special case
2016-07-21 10:39:10 -04:00
Brad King
e297e0455e Merge topic 'ninja-target-deps'
1296a0ea Ninja: Fix inter-target order-only dependencies of custom commands
2016-07-21 10:39:07 -04:00
Brad King
f639fd8c5f Merge topic 'bootstrap-msys2'
7ec32a00 bootstrap: Add support for MSYS2
2016-07-21 10:39:04 -04:00
Brad King
a4498cc9ae Merge topic 'update-kwsys'
e9849d35 bootstrap: Add check for ext/stdio_filebuf.h needed by KWSys
51d9e8ae Merge branch 'upstream-KWSys' into update-kwsys
9ef2b2b1 KWSys 2016-07-19 (9d1dbd95)
2016-07-21 10:39:01 -04:00
Brad King
f19aca6063 Merge branch 'revert-autogen-subdirs' into release 2016-07-21 10:08:40 -04:00
Brad King
40d5375cf1 Merge branch 'nsis-protect-uninst-exec' into release 2016-07-21 10:08:33 -04:00
Justin Clift
11768733d3 NSIS: Quote uninstaller path when executing it in a shell
Protect our `$0` reference in the shell as `"$0"`.  Otherwise it works
with a space in the path only due to an insecure Windows feature.

Prior to this fix, any installer using the option added by commit
v2.8.9~234^2 (Added CPACK_NSIS_ENABLE_UNINSTALL_BEFORE_INSTALL,
2011-06-11) exposes a local privilege escalation vulnerability.

Reported-by: Amir Szekely <kichik@gmail.com>
Reported-by: Ug_0 Security
2016-07-21 10:05:46 -04:00
Brad King
5e55d87bdc Autogen: Revert changes to generate moc/rcc in subdirectories
Revert these commits:

* v3.6.0-rc1~134^2
  Tests: QtAutogen: Same source name in different directories test, 2016-04-13
* v3.6.0-rc1~134^2~1
  Autogen: Generate qrc_NAME.cpp files in subdirectories, 2016-04-19
* v3.6.0-rc1~134^2~2
  Autogen: Generate not included moc files in subdirectories, 2016-04-19

They regress existing builds that depend on the paths/symbols generated
previously.  Another approach will be needed to solve the name collision
problem they were intended to solve.  Leave the error diagnostics for
the colliding cases that were added in the same topic as the above
commits because they provide a useful early failure in relevant cases.

Fixes #16209.
2016-07-21 09:27:19 -04:00
Kitware Robot
811bcf543c CMake Nightly Date Stamp 2016-07-21 00:01:03 -04:00
Brad King
c7a7c655f0 Makefile: Avoid link line object list lengths nearing system limits
Use response files for object file lists that approach the scale of the
system `ARG_MAX` limit.

Fixes #16206.
2016-07-20 15:09:42 -04:00
Brad King
34ba5c5348 Makefile: Factor out response file checks into common helper
Factor CMAKE_<LANG>_USE_RESPONSE_FILE_FOR_{OBJECTS,LIBRARIES} lookup out
into a common helper.  Use a separate helper for each because more
specific logic may be added to each later.
2016-07-20 15:00:56 -04:00
Brad King
1296a0eada Ninja: Fix inter-target order-only dependencies of custom commands
Custom command dependencies are followed for each target's source files
and add their transitive closure to the corresponding target.  This
means that when a custom command in one target has a dependency on a
custom command in another target, both will appear in the dependent
target's sources.  For the Makefile, VS IDE, and Xcode generators this
is not a problem because each target gets its own independent build
system that is evaluated in target dependency order.  By the time the
dependent target is built the custom command that belongs to one of its
dependencies will already have been brought up to date.

For the Ninja generator we need to generate a monolithic build system
covering all targets so we can have only one copy of a custom command.
This means that we need to reconcile the target-level ordering
dependencies from its appearance in multiple targets to include only the
least-dependent common set.  This is done by computing the set
intersection of the dependencies of all the targets containing a custom
command.  However, we previously included only the direct dependencies
so any target-level dependency not directly added to all targets into
which a custom command propagates was discarded.

Fix this by computing the transitive closure of dependencies for each
target and then intersecting those sets.  That will get the common set
of dependencies.  Also add a test to cover a case in which the
incorrectly dropped target ordering dependencies would fail.
2016-07-20 13:12:24 -04:00
Benjamin Ballet
8aa97fba9e VS: Handle VS_GLOBAL_RootNamespace special case
Although we provide a `VS_GLOBAL_ROOTNAMESPACE` option to both set
the `RootNamespace` value and reference it, some users may try to
set `VS_GLOBAL_RootNamespace` to set `RootNamespace` as a variant
of the `VS_GLOBAL_<variable>` property.  In this case we still
need to add the reference to `$(RootNamespace)`.
2016-07-20 11:34:47 -04:00
Brad King
7ec32a00d7 bootstrap: Add support for MSYS2
Bootstrapping under MSYS2 is the same as under MSYS/MinGW except that
`uname` reports `MSYS...` instead of `MINGW...`.
2016-07-20 09:17:08 -04:00