Commit Graph
28539 Commits
Author SHA1 Message Date
Daniel Pfeifer 7814d75023 bootstrap: make target_* commands available 2017-08-18 21:48:14 +02:00
Aaron Orenstein 7bc6577017 Performance: Fix a few more unnecessary vector copies missed in af3fd6f 2017-08-18 07:59:52 -07:00
Sebastian Holtermann 93f0ba2823 Autogen: Add AUTOMOC_MACRO_NAMES support
Closes #17176
2017-08-18 12:32:04 +02:00
Kitware Robot 10edb0c7d5 CMake Nightly Date Stamp 2017-08-18 00:01:08 -04:00
Craig Scott 999192b0f7 Merge topic 'perf-targetIterAndLookup-cmLocalGenerator'
af3fd6f2 Performance: Add an index to Change cmLocalGenerator::GeneratorTargets.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1136
2017-08-17 16:38:24 -04:00
Konstantin Podsvirov 5fe64511d6 CPackIFW: Add CPACK_IFW_REPOSITORIES_DIRECTORIES variable
Add CPACK_IFW_REPOSITORIES_DIRECTORIES variable to specify
additional repositories dirs that will be used to resolve and
repack dependent components
2017-08-17 21:41:16 +03:00
Vitaly Stakhovsky 79064819a6 VS: remove unnecessary c_str() 2017-08-17 14:41:01 -04:00
Kitware Robot d3760354a5 CMake Nightly Date Stamp 2017-08-17 00:01:06 -04:00
Aaron Orenstein af3fd6f22f Performance: Add an index to Change cmLocalGenerator::GeneratorTargets.
Add an index to Change cmLocalGenerator::GeneratorTargets for faster lookup by
name.

Also changed a bunch of uses of cmLocalGenerator::GetGeneratorTargets() to take
const references instead of copying the vector.

Represent generator targets as a map (name -> target) to make name lookups more
efficient instead of looping through the entire vector to find the desired one.
2017-08-16 15:35:38 -07:00
Brad King a2405b4378 Merge topic 'lint-fixes'
cbcf6458 cmServerProtocol: Do not move into json::Value::append()
91417e4c cmServerProtocol: pass cmBacktraceRange by value

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1143
2017-08-16 10:51:48 -04:00
Brad King d817bbb8df Merge topic 'string_prepend'
d8ecc254 Add PREPEND sub-command to string command

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1129
2017-08-16 10:50:38 -04:00
Brad King 1e77d0dbef Merge topic 'autogen-autouic-lookup'
6c5e03d6 Merge branch 'backport-autogen-autouic-lookup' into autogen-autouic-lookup
fb5db079 Autogen: Extend AUTOUIC search paths test
d8a99dd2 Autogen: Update AUTOUIC documentation for search paths
02e6c548 Autogen: Restore AUTOUIC lookup paths from 3.8.2

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1140
2017-08-16 10:43:17 -04:00
Kitware Robot 131af5d591 CMake Nightly Date Stamp 2017-08-16 00:01:07 -04:00
Daniel Pfeifer cbcf6458f4 cmServerProtocol: Do not move into json::Value::append()
CMake's copy of json-cpp is not aware of rvalues yet.  It is confusing
to pass the result of std::move to a function that takes a const&
because no move will actually happen.  This change may be reverted once
CMake upgrades to a new version of json-cpp.
2017-08-15 22:43:08 +02:00
Daniel Pfeifer 91417e4ca3 cmServerProtocol: pass cmBacktraceRange by value 2017-08-15 22:37:05 +02:00
Brad King 6c5e03d6d4 Merge branch 'backport-autogen-autouic-lookup' into autogen-autouic-lookup 2017-08-15 13:23:11 -04:00
Brad King f2cab9855b Merge topic 'server-allow-cache'
9b3c5ccf Server: test cache after reconnect
1df38758 cmServerProtocol: allow 'cache' request before 'configure'
187332b2 cmServerProtocol: fix test of empty values

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !977
2017-08-15 13:17:49 -04:00
Brad King 8cfd52981d Merge topic 'autogen-less-verbose'
53640a46 Autogen: Only print Qt Autogenerator messages when verbose

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1133
2017-08-15 13:16:35 -04:00
Brad King e1c92163d3 Merge topic 'update-kwsys'
060cef0c Merge branch 'upstream-KWSys' into update-kwsys
9e002621 KWSys 2017-08-11 (e1006189)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1130
2017-08-15 13:09:40 -04:00
Brad King 8fb9a5770a Merge topic 'cpackifw-package-file-extension'
45623e72 CPackIFW: Add CPACK_IFW_PACKAGE_FILE_EXTENSION variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Craig Scott <craig.scott@crascit.com>
Merge-request: !1117
2017-08-15 13:08:26 -04:00
Sebastian Holtermann 02e6c54813 Autogen: Restore AUTOUIC lookup paths from 3.8.2
When encountering an `#include "<PATH>ui_<BASE>.h"` statement,
search for `<BASE>.ui` in
 - <SOURCE_DIR>/<BASE>.ui
 - <SOURCE_DIR>/<PATH><BASE>.ui
 - <AUTOUIC_SEARCH_PATH>/<BASE>.ui
 - <AUTOUIC_SEARCH_PATH>/<PATH><BASE>.ui

In CMake 3.8.2 the lookup list was
  - <SOURCE_DIR>/<BASE>.ui

In CMake 3.9.[01] the lookup list was
 - <SOURCE_DIR>/<PATH><BASE.ui>
 - <AUTOUIC_SEARCH_PATH>/<PATH><BASE>.ui

Closes #17168
2017-08-15 12:17:37 +02:00
Kitware Robot 4ca8c08f36 CMake Nightly Date Stamp 2017-08-15 00:01:04 -04:00
Kitware Robot ce2750817b CMake Nightly Date Stamp 2017-08-14 00:01:07 -04:00
Daniel Pfeifer 1df3875871 cmServerProtocol: allow 'cache' request before 'configure'
Fixes: #16989
2017-08-13 22:02:31 +02:00
Daniel Pfeifer 187332b2fa cmServerProtocol: fix test of empty values
If a required value is in the cache, it is not necessary to set it
explicitly.

Fixes: #16948, #16988
2017-08-13 22:02:30 +02:00
Kitware Robot 02f6bb1a81 CMake Nightly Date Stamp 2017-08-13 00:01:04 -04:00
Matthias Kuhn 53640a4610 Autogen: Only print Qt Autogenerator messages when verbose
Unconditionally printing these messages prevents ninja builds from
filtering successful commands and only show errors and warnings.

Fix #17157
2017-08-12 09:29:36 +02:00
Kitware Robot e4f16a06ab CMake Nightly Date Stamp 2017-08-12 00:01:12 -04:00
Brad King 060cef0c44 Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2017-08-11 (e1006189)
2017-08-11 10:13:23 -04:00
Brad King 73657a35e6 Merge topic 'libuv-required'
88c9878a Make libuv available to all parts of CMake

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1104
2017-08-11 09:17:04 -04:00
Brad King 1d51fcaeaf Merge topic 'autogen-merge-redundant'
15ef2728 Autogen: Add test for OBJECT libraries
362f9bd7 Autogen: Merge and remove redundant function calls
952fc65d Autogen: Clear sources meta data cache

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1120
2017-08-11 09:14:40 -04:00
Brad King 0baf114a35 Merge topic 'genex-COMPILE_FEATURES-stds'
4f7d9eef Features: Fix COMPILE_FEATURES genex for C++ 14 and 17 features

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1118
2017-08-11 09:13:39 -04:00
Sylvain Joubert d8ecc25457 Add PREPEND sub-command to string command 2017-08-11 13:26:33 +02:00
Kitware Robot f8a61c578b CMake Nightly Date Stamp 2017-08-11 00:01:06 -04:00
Sebastian Holtermann 362f9bd755 Autogen: Merge and remove redundant function calls 2017-08-10 18:48:15 +02:00
Sebastian Holtermann 952fc65d14 Autogen: Clear sources meta data cache
Adds cmGeneratorTarget::clearSourcesCache() which clears the cache
of precomputed sources lists and object names. The cache gets
recomputed on demand.

Clearing the cache is necessary in case an OBJECT library
gets a source added after a target (ORIGIN) that includes it
computed it's external sources cache.
This may happen in AUTOMOC when ORIGIN is processed before the
OBJECT library which gets a mocs_compilation.cpp file added.

Closes #17152
Closes #17139
Closes #17085
Closes #15967
2017-08-10 18:33:02 +02:00
Brad King fca4423786 CMake 3.9.1 2017-08-10 09:36:24 -04:00
Brad King 8c0afd2c75 Merge branch 'find-package_root-disable' into release-3.9
Merge-request: !1116
2017-08-10 09:27:19 -04:00
Brad King f4e66b41d8 Merge topic 'find-package_root-disable'
578d95f8 find_*: Disable the PACKAGE_ROOT search path group for CMake 3.9

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1116
2017-08-10 09:22:02 -04:00
Brad King 03469889f6 Merge topic 'autogen-create-include-dir'
6a0605c7 Autogen: Always create AUTOMOC/AUTOUIC include directory

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1113
2017-08-10 09:21:42 -04:00
Kitware Robot 1b63d7cf62 CMake Nightly Date Stamp 2017-08-10 00:01:04 -04:00
Konstantin Podsvirov 45623e7255 CPackIFW: Add CPACK_IFW_PACKAGE_FILE_EXTENSION variable
Add CPACK_IFW_PACKAGE_FILE_EXTENSION variable to customize
target binary format.
2017-08-10 00:20:11 +03:00
Kitware Robot 92d16be9e6 CMake Nightly Date Stamp 2017-08-09 00:01:07 -04:00
Brad King 52527468dc cmCustomCommandGenerator: Avoid mutable state
Expand generator expressions of DEPENDS in the constructor instead
of on-demand.
2017-08-08 14:59:11 -04:00
Brad King 4f7d9eef51 Features: Fix COMPILE_FEATURES genex for C++ 14 and 17 features
When `CXX_STANDARD` is not at least 14 or 17, features enabled by the
compiler for those standards should not be reported as existing by the
`COMPILE_FEATURES` genex.  Fix the implementation and add a test.
2017-08-08 13:28:38 -04:00
Brad King 578d95f87d find_*: Disable the PACKAGE_ROOT search path group for CMake 3.9
Disable the feature added by commit v3.9.0-rc1~71^2~2 (find_*: Add a new
PackageRoot search path group, 2017-05-03) and remove documentation
added by commit v3.9.0-rc1~71^2 (find_*: Add docs for PackageRoot search
path group, 2017-05-03).  Unfortunately the name `<pkg>_ROOT` may
already be set by projects for their own incompatible purposes.  Disable
the behavior change for now to fix the regression for CMake 3.9.  We can
restore it later with a policy.

In order to keep the implementation and tests working, add an
undocumented variable we can use in the tests to enable the behavior
before the policy is introduced.

Fixes: #17144
2017-08-08 11:52:28 -04:00
Brad King 88c9878af9 Make libuv available to all parts of CMake
The libuv library provides many useful platform abstractions and better
process management than KWSys.  We'd like to use it everywhere instead
of just in the server mode.  Drop the `CMAKE_USE_LIBUV` option and use
libuv everywhere except during bootstrap.
2017-08-08 09:34:54 -04:00
Brad King 165778c809 Merge topic 'ctest-launch-match-details'
1c61d240 CTest: Report lines matched by launchers

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1084
2017-08-08 09:22:42 -04:00
Sebastian Holtermann 6a0605c711 Autogen: Always create AUTOMOC/AUTOUIC include directory
The **AUTOGEN** include directory was always passed to the compiler but
only generated on demand. To avoid compiler complaints when using
`-Wmissing-include-dirs` make sure the directory gets created always.

Closes #17147
2017-08-08 12:11:10 +02:00
Kitware Robot b17b6dbb8e CMake Nightly Date Stamp 2017-08-08 00:01:06 -04:00