38531 Commits

Author SHA1 Message Date
Brad King
ecfc729ad4 Merge branch 'backport-autogen-nexist-source-fix' into release-3.10
Merge-request: !1650
2018-01-10 13:53:59 -05:00
Sebastian Holtermann
d592bfc9f5 Autogen: Ignore not existing source files in cmMakefile
Until CMake 3.10 a list of source files that had the AUTOUIC_OPTIONS property
populated was kept in `cmMakefile::QtUiFilesWithOptions`.  In the process to
remove all AUTOUIC related code from `cmMakefile` for CMake 3.10, the pre
filtered list was replaced by a loop in `cmQtAutoGeneratorInitializer` over
all source files in the `cmMakefile`.  This loop introduced the problem that
file paths were computed for source files that weren't in the target's sources
and that might not even have existed.  If the path for an unused and not
existing file was computed a `cmake::FATAL_ERROR` with the error message
"Cannot find source file:" was thrown nevertheless.
This caused some projects to fail in CMake 3.10.

This patch adds a test for path errors in the loops in
`cmQtAutoGeneratorInitializer` that iterate over all source files in a
`cmMakefile`. If a path error appears, the file is silently ignored.
If the file is part of the target's sources, the path error will still be
caught in the loop over all the target's sources.

This is the fix for CMake 3.10.1.
2018-01-10 19:46:22 +01:00
Sebastian Holtermann
513eb014eb Autogen: Ignore not existing source files in cmMakefile
Until CMake 3.10 a list of source files that had the AUTOUIC_OPTIONS property
populated was kept in `cmMakefile::QtUiFilesWithOptions`.  In the process to
remove all AUTOUIC related code from `cmMakefile` for CMake 3.10, the pre
filtered list was replaced by a loop in `cmQtAutoGeneratorInitializer` over
all source files in the `cmMakefile`.  This loop introduced the problem that
file paths were computed for source files that weren't in the target's sources
and that might not even have existed.  If the path for an unused and not
existing file was computed a `cmake::FATAL_ERROR` with the error message
"Cannot find source file:" was thrown nevertheless.
This caused some projects to fail in CMake 3.10.

This patch adds a test for path errors in the loops in
`cmQtAutoGeneratorInitializer` that iterate over all source files in a
`cmMakefile`. If a path error appears, the file is silently ignored.
If the file is part of the target's sources, the path error will still be
caught in the loop over all the target's sources.

Closes #17573
Closes #17589
2018-01-10 18:57:08 +01:00
luz.paz
d91b2d9158 MAINT: Misc. typos
Found via `codespell`
2018-01-10 12:34:14 -05:00
Christian Pfeiffer
5e9512a358 FindMPI: Move MSMPI/MPICH2 mpiexec search
Move the logic to search mpiexec for MSMPI and MPICH2 guesses to their
respective guessing logic. This way, we can prevent mix ups between
their mpiexecs and other potential matches, for example from an Intel
MPI installation.
2018-01-10 18:20:49 +01:00
Ben Boeckel
d6dfde3cd3 cmSourceFile: mark known locations as such
Primarily, this includes:

  - the rule files generated for custom targets;
  - source files representing custom targets directly;
  - outputs of custom commands;
  - byproducts of custom commands; and
  - dependencies of custom commands.
2018-01-10 11:21:11 -05:00
Ben Boeckel
b0716fbcc5 cmSourceFileLocation: allow skipping ambiguous extensions
The ambiguous extension logic is an old behavior that ends up taking
lots of extra compute cycles to execute. This is triggered by various
CMake codepaths which pass extension-less paths down when CMake actually
knows that they are not ambiguous. These codepaths will be indicated in
upcoming changes.

Various APIs have gained a cmSourceFileLocationKind parameter, but they
are all optional and default to the existing behavior.
2018-01-10 11:21:11 -05:00
Robert Maynard
a91fde135d CUDA: gencode signature that list multiple code types now supported.
Fixes #17263
2018-01-10 10:45:57 -05:00
Brad King
ddc4f9a3c0 Merge branch 'release-3.10' 2018-01-10 10:38:11 -05:00
Brad King
d08f3f551f Merge topic 'unhardcode-configuration-types'
1f4d7a07 Help: Add references and backticks in LINK_FLAGS prop_tgt
48f7e2d3 Unhardcode the CMAKE_CONFIGURATION_TYPES values

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1345
2018-01-10 10:35:04 -05:00
Brad King
1be22978e0 Merge topic 'serverTestInfoExpandVariables'
2c1ecab6 server: Expand generator expressions for test info

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1633
2018-01-10 10:34:24 -05:00
Brad King
e9237334a6 Merge topic 'update-kwiml'
8a53242d Merge branch 'upstream-KWIML' into update-kwiml
6e921648 KWIML 2018-01-09 (9c2d6cae)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1636
2018-01-10 10:32:16 -05:00
Bryon Bean
b5e21d7d2e CTest: Re-implement test process handling using libuv
Co-Author: Brad King <brad.king@kitware.com>
2018-01-10 10:19:14 -05:00
Bryon Bean
fcebff75f9 cmProcess: Use explicit enum for process exit exception
Translate the values from KWSys Process.
2018-01-10 10:19:14 -05:00
Bryon Bean
3dd2edf4ab cmProcess: Use explicit enum for process state
Translate the values from KWSys Process.
2018-01-10 10:19:14 -05:00
Bryon Bean
5238e6db70 cmProcess: Remove unused ReportStatus method 2018-01-10 10:19:14 -05:00
Bryon Bean
c13b68e61f cmCTestRunTest: Modernize constructor and destructor decls 2018-01-10 10:19:13 -05:00
Bryon Bean
4d6b09037d cmCTestRunTest: Drop unused members 2018-01-10 10:19:13 -05:00
Bryon Bean
05da65bc22 cmCTestMultiProcessHandler: Factor out duplicate test finish logic 2018-01-10 10:19:13 -05:00
Brad King
dd94534571 cmCTestMultiProcessHandler: Add helper to make libuv use SA_RESTART
Prior to 1.19, libuv does not use SA_RESTART in its signal handler.
Add a helper to cause libuv to install its handler and then revise
the handler's flags to add SA_RESTART.
2018-01-10 10:18:12 -05:00
Paul "TBBle" Hampson
da3a329a06 Linkify target_link_libraries in DEBUG_CONFIGURATIONS 2018-01-11 00:00:30 +11:00
Paul "TBBle" Hampson
6297d6c7fd FindBoost: Generate imported targets for future Boost versions
Per discussion on cmake/cmake#17575, this protection not particularly
valuable, as the dependency information which the imported targets wrap
is generated anyway.

This removes a road-block for using `Boost_ADDITIONAL_VERSIONS` to
support newly-released Boost versions pending a new CMake release.
2018-01-10 17:17:32 +11:00
Paul "TBBle" Hampson
d56deff7d1 FindBoost: Search for upstream-packaged libs next to includes
Upstream packages Boost binaries for Windows with the 'boost' directory
(the INCLUDE_DIR) next to the lib-... directory (the LIBRARY_DIR).
2018-01-10 17:17:27 +11:00
Paul "TBBle" Hampson
b044f69a41 FindBoost: Implement "Architecture and Address Model" tag
This tag is new in Boost 1.66.0, and is present in the 'versioned'
library file name layout.
2018-01-10 17:17:20 +11:00
Paul "TBBle" Hampson
b1e9f67137 FindBoost: Fix incorrect alphabetisation of headers list 2018-01-10 17:17:10 +11:00
Paul "TBBle" Hampson
433a2d495a FindBoost: Boost 1.66.0 dependency and release update
Release notes: http://www.boost.org/users/history/version_1_66_0.html

* All new libraries are header-only.
* _Boost_COMPONENT_DEPENDENCIES is unchanged from 1.65.1
* _Boost_FIBER_COMPILER_FEATURES is unchanged from 1.64.0
2018-01-10 17:16:57 +11:00
Kitware Robot
89ec1aacd7 CMake Nightly Date Stamp 2018-01-10 00:01:50 -05:00
Craig Scott
e44c5828d3 Merge topic 'add_cuda_to_source_regex'
81868e6b CUDA: Add cu as default source file extension

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Brad King <brad.king@kitware.com>
Merge-request: !1629
2018-01-09 16:15:11 -05:00
Brad King
0cfcea334b Merge branch 'backport-kwiml-riscv' into release-3.10
There is no corresponding merge request because this fix was
cherry-picked specifically for CMake 3.10.
2018-01-09 09:57:26 -05:00
Brad King
d49986b3b8 KWIML: Backport RISC-V update to CMake 3.10
Backport KWIML commit 6fc81d8816 (abi.h: Update RISC-V support for
revised macro names, 2017-12-30) to the CMake 3.10 release branch.

The upstream RISC-V project changed some compiler symbols so `__riscv__`
must now be renamed `__riscv`.

Patch-by: Richard W.M. Jones <rjones@redhat.com>
2018-01-09 09:52:07 -05:00
Brad King
e40541339a Merge branch 'release-3.10' 2018-01-09 09:45:58 -05:00
Brad King
ce629c5dde Merge topic 'FindPostgres_support_for_v10'
9417a6d3 FindPostgreSQL: Add support for PG10

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1635
2018-01-09 09:45:45 -05:00
Brad King
9559eb7aa7 Merge branch 'FindPostgres_support_for_v10' into release-3.10
Merge-request: !1635
2018-01-09 09:44:56 -05:00
Egor Pugin
9417a6d322 FindPostgreSQL: Add support for PG10 2018-01-09 09:43:41 -05:00
Brad King
ae89a6e110 Merge topic 'cpack_versions'
e4153640 Cpack.cmake: Document some CPACK_* default values

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1608
2018-01-09 09:38:02 -05:00
Brad King
1906dd3e3d Merge topic 'COMPILE_FLAGS-clarify-sf-prop-documentation'
118815f0 COMPILE_FLAGS: do not imply that the property is a list

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1640
2018-01-09 09:36:29 -05:00
Brad King
2cd2dd9cde Merge topic 'doc-CMAKE_SYSTEM_NAME-mode'
edebf6f3 Help: note that CMAKE_SYSTEM_NAME is not set in script mode

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1639
2018-01-09 09:35:46 -05:00
Brad King
947d6de833 Merge topic 'doc-OUTPUT_NAME-clarify'
6c5d3989 Help: fix documentation for OUTPUT_NAME

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1638
2018-01-09 09:35:19 -05:00
Brad King
847110e6fa Merge topic 'vs10-target-generator-range-for'
d09af946 VS: Modernize 'for' loops in cmVisualStudio10TargetGenerator to C++11

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !1617
2018-01-09 09:34:08 -05:00
Brad King
e2edc9280c Merge topic 'vs-ranged-for'
92c7b526 VS: Use range-based 'for' loops in generator code

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !1616
2018-01-09 09:33:33 -05:00
Brad King
5fbfa18fad Merge topic 'FindCUDA-deduplicate-c+std-host-flags'
ff41a4b8 FindCUDA: de-duplicates C++11 flag when propagating host flags.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1628
2018-01-09 09:26:51 -05:00
Brad King
bc88329e5b Merge topic 'msvc2017-findcuda'
fab1b432 FindCUDA: Update to properly find MSVC 2017 compiler tools

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1631
2018-01-09 09:26:20 -05:00
Ben Boeckel
efd279cdfb cmake: specify source file extensions 2018-01-09 09:21:09 -05:00
Brad King
8a53242df9 Merge branch 'upstream-KWIML' into update-kwiml
* upstream-KWIML:
  KWIML 2018-01-09 (9c2d6cae)
2018-01-09 08:51:59 -05:00
KWIML Upstream
6e921648d2 KWIML 2018-01-09 (9c2d6cae)
Code extracted from:

    https://gitlab.kitware.com/utils/kwiml.git

at commit 9c2d6caecd8cd937b891009c681f90748df85dfd (master).

Upstream Shortlog
-----------------

Brad King (5):
      fc9d607a Use static_cast when compiling as C++
      ea9336bc Update copyright year
      7db8b884 Suppress MSVC static_cast warnings in verification and test code
      340af24d Update copyright year
      9c2d6cae Fix compilation on Borland C++ 5.8

Richard W.M. Jones (1):
      6fc81d88 abi.h: Update RISC-V support for revised macro names
2018-01-09 08:51:58 -05:00
Craig Scott
89d1274630 Merge topic 'improve_generated_property_docs'
11615b29 GENERATED: Improve the documentation of the GENERATED file property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1630
2018-01-09 05:05:41 -05:00
Kitware Robot
b9bada655e CMake Nightly Date Stamp 2018-01-09 00:01:07 -05:00
Robert Maynard
81868e6bad CUDA: Add cu as default source file extension 2018-01-08 16:16:52 -05:00
Beren Minor
1f4d7a0715
Help: Add references and backticks in LINK_FLAGS prop_tgt 2018-01-08 21:15:16 +01:00
Beren Minor
48f7e2d300
Unhardcode the CMAKE_CONFIGURATION_TYPES values
This removes duplicated code for per-config variable initialization by
providing a `cmake_initialize_per_config_variable(<PREFIX> <DOCSTRING>)`
function.

This function initializes a `<PREFIX>` cache variable from `<PREFIX>_INIT`
and unless the `CMAKE_NOT_USING_CONFIG_FLAGS` variable is defined, does
the same with `<PREFIX>_<CONFIG>` from `<PREFIX>_<CONFIG>_INIT` for every
`<CONFIG>` in `CMAKE_CONFIGURATION_TYPES` for multi-config generators or
`CMAKE_BUILD_TYPE` for single-config generators.
2018-01-08 21:15:14 +01:00