Commit Graph

40430 Commits

Author SHA1 Message Date
Brad King c2856e0b2b XL: Use -qpic for position independent executables
The XL compiler does not have a dedicated "pie" option so use at least
`-qpic`.  This missing setting was exposed by the `ExportImport` and
`PositionIndependentTargets` tests with XL on an ELF platform.
2018-08-01 11:59:50 -04:00
Jason Heeris f34f6eb3d1 FindMatlab: Add component to find MCC, the Matlab compiler
Add component `MCC_COMPILER` to request searching for the Matlab
compiler.  Report it in `Matlab_MCC_COMPILER` if it is found.

Issue: #18183
2018-08-01 09:23:46 -04:00
Gregor Jasny 6b7f1e1db0 Xcode: Add variables and properties to configure schemes
Add `XCODE_SCHEME_*` target properties and associated variables
`CMAKE_XCODE_SCHEME_*` to initialize them on target creation.
Map each target property value to an associated Xcode scheme entry.

Co-Author: Martin Sander <mail@martin-sander.de>
Fixes: #17919
2018-08-01 09:12:42 -04:00
Brad King 39c91d0703 cmGlobalGenerator: Add IsXcode query
Make it easy to detect use of the Xcode generator.
2018-08-01 09:12:42 -04:00
David Faure bdd0174df1 file(WRITE): Avoid toggling permissions between 644 and 664
On systems with umask 022, this function would set permissions
to 664 and restore them to 644 at the end, every single time it was
called (which is many times on e.g. install_manifest.txt).

The intent of the code was to make non-writable files temporarily
writable and to restore permissions in the end, but really, if it's
already user-writable there's no point in toggling this back and forth.
2018-08-01 09:05:33 -04:00
Julien Schueller 3434c22c29 FindMatlab: only search registry on windows hosts
From Linux, it fails when cross-compiling
2018-08-01 07:40:25 -04:00
Brad King f0e82ce9a2 Merge branch 'release-3.12' 2018-08-01 07:23:41 -04:00
Brad King 24ff152aa0 Merge topic 'UseSWIG-legacy-user-flags'
2f88c177d0 UseSWIG: restore legacy behavior for SWIG_MODULE_<name>_EXTRA_FLAGS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Julien Schueller <schueller@phimeca.com>
Merge-request: !2245
2018-08-01 07:21:34 -04:00
Brad King 9187d1c41a Merge topic 'gcc-8-warnings'
276d3c7afe IWYU: Add workaround mapping for std::hash
72f57845d3 cmXMLParser: Avoid -Wconversion warning
34257b0dd4 LexerParser: Suppress GCC -Wconversion warnings
cfa6b14f9c cmGlobalGenerator: Avoid -Wstringop-truncation warning
9df0e1f98a cmCommandArgumentParserHelper: Avoid -Wstringop-truncation warning
b6d116e240 cmCursesLongMessageForm: Avoid -Wstringop-overflow warning

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2244
2018-08-01 07:20:37 -04:00
Kitware Robot 0ac02edcc3 CMake Nightly Date Stamp 2018-08-01 00:01:07 -04:00
Brad King 3bab41f8f2 Merge branch 'UseSWIG-legacy-user-flags' into release-3.12
Merge-request: !2245
2018-07-31 14:01:14 -04:00
Marc Chevrier 2f88c177d0 UseSWIG: restore legacy behavior for SWIG_MODULE_<name>_EXTRA_FLAGS
Fixes: #18226
2018-07-31 19:33:35 +02:00
Brad King 276d3c7afe IWYU: Add workaround mapping for std::hash
When using GCC 8's standard library IWYU thinks that `<system_error>`
must be included to get `std::hash`.  Add a mapping for `<utility>`.
2018-07-31 09:34:55 -04:00
Brad King 72f57845d3 cmXMLParser: Avoid -Wconversion warning
Add an explicit cast since we expect the conversion to be well within
range.
2018-07-31 09:34:55 -04:00
Brad King 34257b0dd4 LexerParser: Suppress GCC -Wconversion warnings
GCC 8 warns about some of the conversions in bison-generated code.
Suppress the warnings.
2018-07-31 09:34:55 -04:00
Brad King cfa6b14f9c cmGlobalGenerator: Avoid -Wstringop-truncation warning
Use `memcpy` instead of `strncpy` to copy bytes into a buffer that
is not intended to be null terminated.
2018-07-31 09:34:55 -04:00
Brad King 9df0e1f98a cmCommandArgumentParserHelper: Avoid -Wstringop-truncation warning
Use `memcpy` instead of `strncpy` to copy bytes from a buffer that
may not be null terminated.
2018-07-31 09:34:00 -04:00
Brad King b6d116e240 cmCursesLongMessageForm: Avoid -Wstringop-overflow warning
We use `strncpy` to copy the title up to a maximum number of
characters.  GCC 8's `-Wstringop-overflow` warns that the length
depends on the input length because it fails to recognize that we
are bounding it to the buffer size too.  Update the code to hide
the dependence on the input length.
2018-07-31 08:52:59 -04:00
Brad King c31d9f1c30 Merge topic 'autogen_refactor_initialization'
7bb70054e4 Autogen: Add test for Q_OS_ macros
f345135845 Autogen: For Qt5 pass all implicit include directories to moc
2d6cfe2677 Autogen: Split initializer main method
84bdae8895 Autogen: Compute variables in Init stage instead of Setup stage
8e0d70272d Autogen: Move info file write code into methods
5776639fbf Autogen: Pass absolute include path in info file
2e9199b291 cmLocalGenerator: Respect user requested implicit include directories order

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2230
2018-07-31 08:08:05 -04:00
Kitware Robot 398ce17fac CMake Nightly Date Stamp 2018-07-31 00:01:05 -04:00
Sebastian Holtermann 7bb70054e4 Autogen: Add test for Q_OS_ macros 2018-07-30 09:46:03 +02:00
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