Commit Graph

40209 Commits

Author SHA1 Message Date
Sebastian Holtermann
f345135845 Autogen: For Qt5 pass all implicit include directories to moc
For Qt4 it was not possible to pass all compiler implicit include
directories to moc because it couldn't handle some system headers.
For reference see commit 753b905ec8,
commit d2536579d5 and
[QTBUG-28045](https://bugreports.qt.io/browse/QTBUG-28045).

For Qt5's moc the problem does not persist anymore so we can
(and should) pass all implicit include directories to moc.

Fixes #18041
2018-07-30 09:22:47 +02:00
Sebastian Holtermann
2d6cfe2677 Autogen: Split initializer main method 2018-07-30 09:22:47 +02:00
Sebastian Holtermann
84bdae8895 Autogen: Compute variables in Init stage instead of Setup stage 2018-07-30 09:22:46 +02:00
Sebastian Holtermann
8e0d70272d Autogen: Move info file write code into methods 2018-07-30 09:22:46 +02:00
Sebastian Holtermann
5776639fbf Autogen: Pass absolute include path in info file 2018-07-30 09:22:46 +02:00
Sebastian Holtermann
2e9199b291 cmLocalGenerator: Respect user requested implicit include directories order
In ``cmLocalGenerator::GetIncludeDirectories`` append the user requested
implicit include directories first, then append the remaining implicit
include directories.  By By doing so we keep the user requested order of
implicit include directories.
2018-07-30 09:22:46 +02:00
Kitware Robot
264012dae0 CMake Nightly Date Stamp 2018-07-30 00:01:11 -04:00
Craig Scott
0d8d6eeef4 Merge branch 'release-3.12' 2018-07-29 19:46:45 +10:00
Craig Scott
2af5307317 Merge branch 'cpack-default-package-version-zero' into release-3.12
Merge-request: !2239
2018-07-29 19:44:24 +10:00
Craig Scott
50e40b7eec Merge topic 'cpack-default-package-version-zero'
ed015bde2b CPack: Restore support for 0-valued version components

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2239
2018-07-29 05:40:37 -04:00
Kitware Robot
7a7e4e9ea3 CMake Nightly Date Stamp 2018-07-29 00:01:07 -04:00
Kitware Robot
cf0d0a2e6f CMake Nightly Date Stamp 2018-07-28 00:01:17 -04:00
Brad King
5bbcf76399 Merge topic 'UseSWIG-target-name-policy'
a3a0c3aa71 UseSWIG: add policy to manage target naming strategy.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2232
2018-07-27 10:08:54 -04:00
Brad King
bccbf9a737 Merge topic 'reproducible-tarballs'
548ac51d8e CPack/Deb: Support SOURCE_DATE_EPOCH when packaging files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2226
2018-07-27 10:06:44 -04:00
Brad King
ed015bde2b CPack: Restore support for 0-valued version components
In commit v3.12.0-rc1~136^2 (CPack: Use project version as default for
`CPACK_PACKAGE_VERSION`, 2018-04-29) we did not account for the value of
`CMAKE_PROJECT_VERSION_{MAJOR,MINOR,PATCH}` having `0`.  Fix the logic
to distinguish between unprovided version components and `0` components.

While at it, add a test case covering the behavior described in the
documentation by the original commit.  The number of version components
in the package name should match those provided to the `project()`
command `VERSION` option.

Fixes: #18199
2018-07-27 10:01:29 -04:00
Kitware Robot
131fcf65f6 CMake Nightly Date Stamp 2018-07-27 00:01:08 -04:00
Brad King
e500d60741 Merge topic 'maint_clarify_merge_process'
6161a64a52 maint: Add further details about merging topics to release branch

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2238
2018-07-26 10:20:39 -04:00
Brad King
0ff961f188 Merge topic 'get_include_directories'
b0b820ea39 cmLocalGenerator: Extend the functionality of ``GetIncludeDirectories()``
1f36652ef4 cmLocalGenerator: Style changes: Private local variable renames
db866d05de cmLocalGenerator: Style change: Wrap temporary strings and code in braces
3713dc9b8e cmLocalGenerator: Style change: Wrap temporary strings and code in braces
d1077c1ce6 cmLocalGenerator: Style change: Use return value of std::set::insert

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2234
2018-07-26 10:10:08 -04:00
Brad King
2235244263 Merge branch 'release-3.12' 2018-07-26 10:08:57 -04:00
Brad King
c985c97433 Merge topic 'googletest_policy_settings'
7ddc2a110c GoogleTest: Ensure policy settings allow use of IN_LIST

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2237
2018-07-26 10:08:11 -04:00
Kitware Robot
4687de32a4 CMake Nightly Date Stamp 2018-07-26 00:01:10 -04:00
Craig Scott
6161a64a52 maint: Add further details about merging topics to release branch
The Maintain Current Release instructions previously assumed that
the topic branch had been merged to master. Add text to make this
explicit in the instructions as an initial verification step.

The previous instructions also made no mention of the commit
message for the merge to the release branch. This needs to include
a footer that mentions the merge request number for tracking
purposes.
2018-07-26 07:41:19 +10:00
Andrew Fuller
548ac51d8e CPack/Deb: Support SOURCE_DATE_EPOCH when packaging files 2018-07-25 13:39:07 -07:00
Marc Chevrier
a3a0c3aa71 UseSWIG: add policy to manage target naming strategy. 2018-07-25 18:00:52 +02:00
Brad King
8442d9fc3f Merge branch 'googletest_policy_settings' into release-3.12
Merge-request: !2237
2018-07-25 10:42:14 -04:00
Brad King
946318a1ef Merge topic 'GetPrerequisites-dylibsframeworks'
dce77d9ad9 GetPrerequisites: Move dylibs from MacOS to Frameworks folder in bundle

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2229
2018-07-25 10:24:10 -04:00
Craig Scott
3ab6f056dc Merge branch 'release-3.12' 2018-07-25 22:25:11 +10:00
Craig Scott
5041298893 Merge branch 'project-injected-no-cmp0048' into release-3.12 2018-07-25 22:24:29 +10:00
Craig Scott
ae2b12a95c Merge topic 'project-injected-no-cmp0048'
6646771b0f project: Do not issue CMP0048 warnings on injected call
08eb157c03 Tests: Add case showing CMP0048 warning on injected project command

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2235
2018-07-25 08:15:02 -04:00
Craig Scott
7ddc2a110c GoogleTest: Ensure policy settings allow use of IN_LIST
If policy settings at the time the GoogleTest module is included are
such that CMP0057 is unset or set to OLD, the use of IN_LIST with
if() will lead to an error. Therefore, explicitly specify the policy
settings for the whole file to ensure the function implementations
have access to the required CMake features.

Fixes: #18198
2018-07-25 21:30:51 +10:00
Sebastian Holtermann
b0b820ea39 cmLocalGenerator: Extend the functionality of `GetIncludeDirectories()`
What ``cmLocalGenerator::GetIncludeDirectories`` does
-----------------------------------------------------

In general it concatenates the

1. ``target->GetIncludeDirectories(LANG)`` and the
2. ``CMAKE_<LANG>_STANDARD_INCLUDE_DIRECTORIES``.

Additionally it performs some sorting and special treatment of the

- ``CMAKE_<LANG>_IMPLICIT_INCLUDE_DIRECTORIES``.

By default all ``CMAKE_<LANG>_IMPLICIT_INCLUDE_DIRECTORIES`` are stripped from
the result list.

When explicitly requested (by setting ``stripImplicitInclDirs=false``) *some*
implicit directories are appended to the result list.  The implicit directories
that *are* appended are those that were requested to be included by

1. ``target->GetIncludeDirectories(LANG)`` or
2. ``CMAKE_<LANG>_STANDARD_INCLUDE_DIRECTORIES``.

All other implicit directories are still stripped from the result list.

The reason to not simply append all implicit directories is that Qt4's moc has
problems to parse some headers that might be found in the implicit system
include directories (See commit d2536579d5
and
[QTBUG-28045](https://bugreports.qt.io/browse/QTBUG-28045)
).
That has been solved in Qt5's moc though.

Extension request to ``cmLocalGenerator::GetIncludeDirectories``
----------------------------------------------------------------

For Qt5's moc we like to have an option that allows to append *all* implict
include directories to the result list, not just those that were user requested.

Changes to ``cmLocalGenerator::GetIncludeDirectories``
------------------------------------------------------

- Shorten the function parameter name ``stripImplicitInclDirs`` to
  ``stripImplicitDirs``.

- Add new boolean function parameter ``appendAllImplicitDirs``
  with a default value ``false``.

The old default behavior of the function stays the same, but a specialized
behavior can be requested by AUTOMOC for Qt4/Qt5 respectively.
2018-07-25 12:45:10 +02:00
Sebastian Holtermann
1f36652ef4 cmLocalGenerator: Style changes: Private local variable renames
Code style change in ``cmLocalGenerator::GetIncludeDirectories``.

Rename a variable to reflect its purpose a little bit better.
2018-07-25 12:26:25 +02:00
Sebastian Holtermann
db866d05de cmLocalGenerator: Style change: Wrap temporary strings and code in braces
Code style change in ``cmLocalGenerator::GetIncludeDirectories``.

Embrace ``{}`` temporary strings and code that uses them to minimize their
lifetime.
2018-07-25 12:24:16 +02:00
Sebastian Holtermann
3713dc9b8e cmLocalGenerator: Style change: Wrap temporary strings and code in braces
Code style change in ``cmLocalGenerator::GetIncludeDirectories``.

Embrace ``{}`` temporary strings and code that uses them to minimize their
lifetime.
2018-07-25 12:20:56 +02:00
Sebastian Holtermann
d1077c1ce6 cmLocalGenerator: Style change: Use return value of std::set::insert
Code style change in ``cmLocalGenerator::GetIncludeDirectories()``.

Use the return value of ``std::set::insert`` instead of testing
if the entry already exists in the set using ``std::find``.
2018-07-25 12:08:19 +02:00
Kitware Robot
873f40ecec CMake Nightly Date Stamp 2018-07-25 00:01:10 -04:00
Harry Mallon
dce77d9ad9 GetPrerequisites: Move dylibs from MacOS to Frameworks folder in bundle
Fixes: #16828
2018-07-24 14:07:22 -04:00
Brad King
6646771b0f project: Do not issue CMP0048 warnings on injected call
Fixes: #18202
2018-07-24 13:14:10 -04:00
Brad King
08eb157c03 Tests: Add case showing CMP0048 warning on injected project command
Issue: #18202
2018-07-24 13:14:09 -04:00
Brad King
4a749b2459 Merge branch 'release-3.12' 2018-07-24 10:59:00 -04:00
Brad King
07e223ad37 Merge topic 'FindPython-fix-multiple-calls'
50921cc04e FindPython*: fix erroneous behavior on multiple 'find_package' calls

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2228
2018-07-24 10:58:42 -04:00
Kitware Robot
5df471c8a4 CMake Nightly Date Stamp 2018-07-24 00:01:12 -04:00
Brad King
b5061e02f8 Merge branch 'FindPython-fix-multiple-calls' into release-3.12
Merge-request: !2228
2018-07-23 11:08:40 -04:00
Marc Chevrier
50921cc04e FindPython*: fix erroneous behavior on multiple 'find_package' calls
Fixes: #18192
2018-07-23 11:08:16 -04:00
Brad King
949c62175e Merge topic 'FindPkgConfig-global-target'
7aa26cf0e9 FindPkgConfig: allow to create global imported targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2193
2018-07-23 11:06:23 -04:00
Brad King
21835a2cea Merge topic 'BundleUtilities-otool-l-error'
22554c3166 BundleUtilities: message(FATAL_ERROR) on otool -l error

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2227
2018-07-23 11:02:57 -04:00
Brad King
33dec05375 Merge branch 'release-3.12' 2018-07-23 10:42:03 -04:00
Kitware Robot
234cb4cebe CMake Nightly Date Stamp 2018-07-23 00:01:06 -04:00
Rolf Eike Beer
7aa26cf0e9 FindPkgConfig: allow to create global imported targets 2018-07-22 13:33:04 +02:00
Kitware Robot
c2d22dc4b4 CMake Nightly Date Stamp 2018-07-22 00:01:05 -04:00