Commit Graph

26748 Commits

Author SHA1 Message Date
Brad King
1555837ccb Merge branch 'fortran-submodule-cray' into release-3.15
Merge-request: !3504
2019-07-08 11:33:02 -04:00
Willem Deconinck
33de4d27eb Fortran: Support compilers using no module prefix on submodule files
Define `CMAKE_Fortran_SUBMODULE_SEP` with an empty string to mean that
the compiler uses no module prefix on its submodule files.

Also add a default fallback to use the `.mod` extension when
`CMAKE_Fortran_SUBMODULE_EXT` is not set.  This is a better guess than
no extension at all.
2019-07-08 11:28:27 -04:00
Brad King
c56201bdac Merge branch 'qt-5.13' into release-3.15
Merge-request: !3500
2019-07-01 10:23:48 -04:00
Sebastian Holtermann
963ddafeaa QtDialog: Use QPalette::WindowText instead of QPalette::Foreground
`QPalette::Foreground` is deprecated and was replaced by
`QPalette::WindowText` since at least Qt 4.8.

https://doc.qt.io/archives/qt-4.8/qpalette.html#ColorRole-enum

This replaces the `QPalette::Foreground` color role with `QPalette::WindowText`
in `QtDialog/RegexExplorer.cxx` to avoid compiler warnings.
2019-07-01 09:18:24 -04:00
Brad King
7a3d9b08b9 Merge branch 'cuda-no-device-link-when-disabled' into release-3.15
Merge-request: !3491
2019-07-01 08:36:28 -04:00
Robert Maynard
a4d502a5bf CUDA: Do not device link if CUDA is not an enabled language
Checks added in commit 81b4d10d8f (CUDA: More exhaustive checks to
determine when to do device linking, 2019-05-09, v3.15.0-rc1~82^2)
assumed that CUDA properties would be set only if CUDA is enabled.

We cannot do a device link step if we do not have the CUDA language
enabled.  This was discovered as some projects unconditionally set CUDA
properties such as `CUDA_RESOLVE_DEVICE_SYMBOLS` even when the CUDA
language has not been enabled.

Fixes: #19432
2019-07-01 08:29:10 -04:00
Alex Turbov
822abf1265 list(POP_FRONT): Fix always assigning first item to output vars
Fixes: #19436
2019-06-30 13:15:29 +03:00
Brad King
753373579e CMake 3.15.0-rc3 2019-06-27 07:35:14 -04:00
Brad King
d9a9150351 Merge branch 'cuda-msvc-runtime-library' into release-3.15
Merge-request: !3485
2019-06-26 08:43:19 -04:00
Brad King
07807a2006 VS: Use AddLanguageFlags to de-duplicate CMAKE_{CUDA,ASM*}_FLAGS lookup
Apply the refactoring from commit 707283981f (VS: Use AddLanguageFlags
to de-duplicate CMAKE_<LANG>_FLAGS* lookup, 2019-04-01,
v3.15.0-rc1~300^2) to the CUDA, ASM_MASM, and ASM_NASM languages too.
In particular, CUDA needs the MSVC runtime library selection logic
in the `AddLanguageFlags` method that is used by other generators.
2019-06-26 08:36:48 -04:00
Brad King
edec1c2615 Merge branch 'export-targets-empty' into release-3.15
Merge-request: !3484
2019-06-26 06:53:40 -04:00
Brad King
2ba5c37b3f export: Restore support for empty TARGETS list
Refactoring in commit f5acecaa6f (cmExportCommand: Port to
cmArgumentParser, 2019-03-23, v3.15.0-rc1~270^2~3) broke the `export`
command's support for specifying `TARGETS` with no entries.  Fix it and
add a test case.

Fixes: #19415
2019-06-25 17:23:34 -04:00
Francisco Facioni
eda4c43879 Ninja: Fix CUDA device linking when using response files
Fix the logic added by commit d91b5a72cd (Ninja: Add support for CUDA
nvcc response files, 2019-05-30, v3.15.0-rc1~8^2) to always use the CUDA
compiler response file flag for response files during device linking.
2019-06-25 14:30:36 -04:00
Brad King
5c7880956f CMake 3.15.0-rc2 2019-06-19 08:33:48 -04:00
Brad King
3d8216330d Merge branch 'find_package_prefer_config_fix' into release-3.15
Merge-request: !3446
2019-06-17 07:59:46 -04:00
Brad King
e815fad43f Merge branch 'capabilities-fileapi' into release-3.15
Merge-request: !3442
2019-06-17 07:56:39 -04:00
Cristian Adam
22e65d10c1 find_package: Fixed CMAKE_FIND_PACKAGE_PREFER_CONFIG Module fallback
Fixes: #19361
2019-06-13 23:58:30 +02:00
Craig Scott
95b9d6af80 Merge branch 'cmake-gui-qt-notice' into release-3.15
Merge-request: !3441
2019-06-13 06:58:22 -04:00
Brad King
d63398d32d fileapi: Suppress lint warning about non-move with old jsoncpp 2019-06-12 12:51:32 -04:00
Brad King
c1d6b135ed cmake-gui: Update Qt copyright holder in About dialog
Qt is now copyright "The Qt Company Ltd.".
2019-06-12 12:39:25 -04:00
Brad King
fa00a3b29b Merge branch 'capabilities-fileapi' into release-3.15
Merge-request: !3433
2019-06-12 11:42:44 -04:00
Brad King
c932f49842 cmake: Teach -E capabilities to report supported fileapi requests
Fixes: #19339
2019-06-07 11:08:38 -04:00
Brad King
6696855f72 cmake: Simplify implementation of -E capabilities
The `cmake -E capabilities` command-line tool is implemented only in a
full-featured (non-bootstrap) CMake, and server mode is now always
available in this case.
2019-06-07 11:08:38 -04:00
Brad King
6b815e58ba fileapi: Factor out helper to construct a version object 2019-06-07 11:08:38 -04:00
Sebastian Holtermann
00e6b67e0c Autogen: Fix header detection for paths with symbolic links
When Autogen searches the header for a source files in a target,
the expanded real path is used and not the (possibly symbolic) original path
of the source file.  If the source file path contains symbolic links, then the
correct `cmSourceFile` instance of the header won't be found, but a new one
will be generated.  This way all header source file properties get lost, which
is problematic especially for the `SKIP_AUTOMOC/UIC/GEN` properties.

This patch changes the header detection in Autogen to use the original source
file path instead of the expanded real source file path.

Fixes: #19346
2019-06-06 14:14:19 -04:00
Brad King
9d78ce0293 CMake 3.15.0-rc1 version update 2019-06-04 10:55:08 -04:00
Brad King
842f70c493 Merge topic 'emulator-arguments'
fec441ec17 Teach CROSSCOMPILING_EMULATOR to support arguments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3402
2019-06-04 08:37:55 -04:00
Brad King
a7d2efc15b Merge topic 'remove_directories'
07a80c7002 cmake: Teach -E remove_directory to remove multiple directories
013bee698e Tests: Add RunCMake.CommandLine make_directory test checks
3eb16de327 Tests: Fix RunCMake.CommandLine make_directory test name

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3411
2019-06-04 08:37:04 -04:00
Brad King
36140d864e Merge topic 'ninja-nvcc-rsp'
d91b5a72cd Ninja: Add support for CUDA nvcc response files
5efac09bed Ninja: Compute linker response file flag earlier

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3399
2019-06-04 08:35:47 -04:00
Brad King
65f5df7d08 Merge topic 'executables-are-consoled'
b06f4c8a74 Swift: disallow WIN32_EXECUTABLE properties

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3410
2019-06-04 08:34:21 -04:00
Brad King
9ba901eb3c Merge topic 'swift-linker-flags'
7456739e24 Swift: avoid `CMAKE_{EXE,SHARED}_LINKER_FLAGS`

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3406
2019-06-04 08:33:14 -04:00
Brad King
4b68baa776 Merge topic 'compiler_id_gen_exp_supports_multiple_ids'
162555d7ec Help: Add release notes for updated generator expressions
808b818063 Genex: CompileLang and CompileLangAndId now match against a list of ids
9fd602bfd3 Genex: PlatformId now can match against a list of ids.
ec66af2026 Genex: CompilerId now can match against a list of ids.
2d4787fc4d Genex: Add more extensive support for an unbounded number of parameters

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3405
2019-06-04 08:32:19 -04:00
Brad King
99b9b01c02 Merge topic 'print-correct-line-number'
3475e2728b cmListFileCache: When missing ending ) print starting line instead of last one

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3398
2019-06-04 08:28:09 -04:00
Brad King
e591e22d4c Merge topic 'better_error_message_for_visibility_preset_property'
619416f8a3 The error message for VISIBILITY_PRESET now documents valid options.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3409
2019-06-04 08:25:47 -04:00
Kitware Robot
99496f5776 CMake Nightly Date Stamp 2019-06-04 00:01:06 -04:00
John Freeman
07a80c7002 cmake: Teach -E remove_directory to remove multiple directories
The `make_directory` command can make multiple directories in a single
invocation.  Make `remove_directory` mirror that behavior.
2019-06-03 14:20:00 -04:00
Saleem Abdulrasool
b06f4c8a74 Swift: disallow WIN32_EXECUTABLE properties
Currently, the compiler does not synthesize the correct entry point for
the application and passing the subsystem flag does not work the same
way with the Swift linker language.  Add a check to prevent the
application of `WIN32_EXECUTABLE` to Swift executables until they can be
properly supported.  This will prevent the need for a future policy
change.

Closes: #19325
2019-06-03 14:05:10 -04:00
Francisco Facioni
d91b5a72cd Ninja: Add support for CUDA nvcc response files 2019-06-03 11:53:27 -04:00
Francisco Facioni
5efac09bed Ninja: Compute linker response file flag earlier 2019-06-03 11:52:28 -04:00
Brad King
73472408c5 Merge topic 'ninja_build_class'
7d9e66a405 Ninja: Remove non cmNinjaBuild based WriteBuild method
ccf9507956 Ninja: Use cmNinjaBuild class for WriteBuild
df06c8d792 Ninja: Use cmNinjaBuild class for WriteBuild
409922f695 Ninja: Use cmNinjaBuild class for WriteBuild
7fd3811400 Ninja: Use cmNinjaBuild class for WriteBuild
834ec4ebfe Ninja: Use cmNinjaBuild class for WriteBuild
465d6d7f9b Ninja: Use cmNinjaBuild class for WriteBuild
4c9e99e1f9 Ninja: Use cmNinjaBuild class for WriteBuild
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3403
2019-06-03 11:51:23 -04:00
Robert Maynard
808b818063 Genex: CompileLang and CompileLangAndId now match against a list of ids
This allows for expressions such as:

 $<COMPILE_LANG_AND_ID, CXX, GNU, Clang>
2019-06-03 10:20:23 -04:00
Robert Maynard
9fd602bfd3 Genex: PlatformId now can match against a list of ids. 2019-06-03 10:20:23 -04:00
Robert Maynard
ec66af2026 Genex: CompilerId now can match against a list of ids.
This allows for expressions like:
 $<$<CXX_COMPILER_ID:Clang,GNU>:-DMY_PRIVATE_DEFINE>
2019-06-03 10:20:23 -04:00
Robert Maynard
2d4787fc4d Genex: Add more extensive support for an unbounded number of parameters
Previously genex support for unbounded number of parameters required
at least 1 parameter. We now support zero or more parameters, and two
or more parameters.
2019-06-03 10:20:22 -04:00
Marek Antoniak
fec441ec17 Teach CROSSCOMPILING_EMULATOR to support arguments
Fixes: #19321
2019-06-03 10:17:17 -04:00
Bartosz Kosiorek
3475e2728b cmListFileCache: When missing ending ) print starting line instead of last one
Fixes: #19301
2019-06-03 10:03:53 -04:00
Saleem Abdulrasool
7456739e24 Swift: avoid CMAKE_{EXE,SHARED}_LINKER_FLAGS
Avoid the use of `CMAKE_{EXE,SHARED}_LINKER_FLAGS` when linking with the
Swift language.  This required hoisting the executable flags of
`CMAKE_CREATE_WIN32_EXE`, `CMAKE_CREATE_CONSOLE_EXE`, and
`CMAKE_EXE_EXPORTS_*_FLAG` earlier to avoid a second clause which checks
the language.  This allows for mixed-language Swift projects to properly
link on Windows.

Fixes #19298
2019-06-03 09:59:39 -04:00
Robert Maynard
619416f8a3 The error message for VISIBILITY_PRESET now documents valid options.
Rather than just state the value for VISIBILITY_PRESET was invalid,
we additionally list the accepted values.
2019-06-03 09:56:03 -04:00
Kitware Robot
7dae93b405 CMake Nightly Date Stamp 2019-06-03 00:01:05 -04:00
Kitware Robot
51e7488c03 CMake Nightly Date Stamp 2019-06-02 00:01:04 -04:00