Brad King
b74061ba38
Merge topic 'msvc-runtime-library'
...
61f70e81a7 MSVC: Document and test behavior of empty MSVC_RUNTIME_LIBRARY
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3249
2019-04-30 10:03:20 -04:00
Kyle Edwards
c3ef567951
Merge topic 'update-documentation'
...
cb811d11ce Help: Improve description of modules
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3222
2019-04-24 10:23:39 -04:00
Bartosz Kosiorek
cb811d11ce
Help: Improve description of modules
2019-04-23 10:39:34 +02:00
Brad King
61f70e81a7
MSVC: Document and test behavior of empty MSVC_RUNTIME_LIBRARY
...
Extend tests added by commit fb3370b6a1 (MSVC: Add abstraction for
runtime library selection, 2019-04-10) to cover an empty value for
the property. It should result in no specific setting.
Issue: #19108
2019-04-22 08:48:44 -04:00
Brad King
d0e3701861
Merge topic 'msvc-warning-flags'
...
1baf122cd4 MSVC: Do not add /W3 to CMAKE_<LANG>_FLAGS by default
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3250
2019-04-22 07:51:01 -04:00
Brad King
cb23f2ac8b
Merge topic 'vs-default-platform'
...
db02be85a0 VS: Provide the default platform name to project code
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3246
2019-04-22 07:38:33 -04:00
Brad King
1baf122cd4
MSVC: Do not add /W3 to CMAKE_<LANG>_FLAGS by default
...
We do not add default warning flags on other compilers, and having
a warning flag in the default flags makes it hard for projects to
customize the warning level. They need to use string processing
to remove `/W3` from `CMAKE_{C,CXX}_FLAGS`. Therefore we should
drop it.
However, projects may be using string processing to replace `/W3`
with another flag, so we cannot simply drop it. Add a policy to
drop it in a compatible way.
Fixes : #18317
2019-04-19 12:56:49 -04:00
Brad King
db02be85a0
VS: Provide the default platform name to project code
...
The value of `CMAKE_VS_PLATFORM_NAME` is computed by Visual Studio
generators based on `CMAKE_GENERATOR_PLATFORM` or some default.
Prior to the VS 2019 generator, the default was always `Win32`.
However, for the `Visual Studio 16 2019` generator, the default is
based on the host platform.
Store the default in a new `CMAKE_VS_PLATFORM_NAME_DEFAULT` variable for
use by project code. This is particularly useful in toolchain files
because they are allowed to set `CMAKE_GENERATOR_PLATFORM` and so
`CMAKE_VS_PLATFORM_NAME` is not yet known. Of course the toolchain file
author knows whether it will set `CMAKE_GENERATOR_PLATFORM`, and if not
then `CMAKE_VS_PLATFORM_NAME_DEFAULT` provides the platform name that
will be used.
Fixes : #19177
2019-04-19 07:46:13 -04:00
Brad King
a000ec7a08
Merge topic 'add_xl_cxx14_support'
...
458ea9d76c XL: Add C++14 language level flags
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3235
2019-04-18 11:03:12 -04:00
Brad King
2ed688a863
Merge topic 'msvc-runtime-library'
...
fb3370b6a1 MSVC: Add abstraction for runtime library selection
f621e7fa5d VS: Fix Fortran runtime library flag map special case for '-' options
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: Ben Boeckel <ben.boeckel@kitware.com >
Acked-by: Leonid Pospelov <pospelovlm@yandex.ru >
Merge-request: !3211
2019-04-17 11:01:37 -04:00
Brad King
fb3370b6a1
MSVC: Add abstraction for runtime library selection
...
Replace our hard-coded defaults for `/MD` and `/MDd` with a first-class
abstraction to select the runtime library from an enumeration of logical
names. We've long hesitated to do this because the idea of "runtime
library selection" touches on related concepts on several platforms.
Avoid that scope creep by simply defining an abstraction that applies
only when targeting the MSVC ABI on Windows.
Removing the old default flags requires a policy because existing
projects may rely on string processing to edit them and choose a runtime
library under the old behavior. Add policy CMP0091 to provide
compatibility.
Fixes : #19108
2019-04-17 11:00:44 -04:00
Brad King
2d37678226
Merge topic 'vs-project-import'
...
d145d72e70 VS: add target property VS_PROJECT_IMPORT_<propspath>
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3143
2019-04-16 13:43:52 -04:00
Brad King
9aecda56ba
Merge topic 'genex-output_name'
...
60ec292258 Genex: Rename $<TARGET_*_OUTPUT_NAME:...> in $<TARGET_*_FILE_BASE_NAME:...>
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3228
2019-04-16 13:42:53 -04:00
Brad King
3205561b8a
Merge topic 'string-repeat'
...
536cca60ea string: introduce `REPEAT` sub-command
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3239
2019-04-16 13:40:02 -04:00
Leonid Pospelov
d145d72e70
VS: add target property VS_PROJECT_IMPORT_<propspath>
...
Fixes : #18998
2019-04-15 13:05:07 -04:00
Robert Maynard
458ea9d76c
XL: Add C++14 language level flags
2019-04-15 12:38:03 -04:00
Marc Chevrier
60ec292258
Genex: Rename $<TARGET_*_OUTPUT_NAME:...> in $<TARGET_*_FILE_BASE_NAME:...>
2019-04-15 18:22:14 +02:00
Alex Turbov
536cca60ea
string: introduce REPEAT sub-command
2019-04-15 11:06:06 -04:00
Brad King
0793464d95
Merge topic 'ghs_custom'
...
2bae6a1346 GHS: Update tests and notes
3b415c60c1 GHS: Update ExternalProject for GHS tools
83c47ef5b8 GHS: Update project layout to accommodate gbuild inconsistencies
5d2e1404bd GHS: Update project layout to build targets correctly
b6bfa7eeb2 GHS: Support add_dependencies() command
39ee9718d9 GHS: Support add_custom_target() command
8d3dad9a76 GHS: Support add_custom_command( OUTPUT ) signature
37acc9e229 GHS: Update custom command build events
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: Narendhar Manimohan <narendhar15@gmail.com >
Merge-request: !3119
2019-04-15 10:52:21 -04:00
Brad King
e3ebad7def
Merge topic 'genex-target-prefix-suffix'
...
b70bac647d Genex: add $<TARGET_FILE_PREFIX:...> and $<TARGET_FILE_SUFFIX:...>
f65763fe9b Refactor: Add new methods to retrieve prefix and suffix
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3207
2019-04-12 10:22:33 -04:00
Brad King
4adc0b7c75
Merge topic 'iface-headers'
...
a40f9083dd INTERFACE Target: allow (PUBLIC/PRIVATE)_HEADER properties
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3181
2019-04-12 10:20:20 -04:00
Fred Baksik
2bae6a1346
GHS: Update tests and notes
...
-- add new tests for custom commands
-- minor test cleanup
Fixes #15995
Fixes #18909
Fixes #15902
2019-04-11 13:15:51 -04:00
Avraham Shukron
a40f9083dd
INTERFACE Target: allow (PUBLIC/PRIVATE)_HEADER properties
...
Also support installing headers on an INTERFACE library.
Signed-off-by: Avraham Shukron <avraham.shukron@gmail.com >
Fixes : #15234
2019-04-11 11:09:42 -04:00
Marc Chevrier
b70bac647d
Genex: add $<TARGET_FILE_PREFIX:...> and $<TARGET_FILE_SUFFIX:...>
...
These capabilities complement MR !3190
and is also needed to solve issue #18771 .
2019-04-10 23:45:12 +02:00
Brad King
a289d79517
Merge topic 'improve-formatting-of-help'
...
cb33befe2d Modules: Update documentation formatting
0e4fbb4a1f Help: Improve formatting of Help documentation
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: Ben Boeckel <ben.boeckel@kitware.com >
Merge-request: !3199
2019-04-09 08:30:15 -04:00
Sebastian Lipponer
698f51abac
Genex: Add $<FILTER:list,INCLUDE|EXCLUDE,regex>
2019-04-08 19:57:22 +02:00
Sebastian Lipponer
32d7b0cc2c
Help: Move entry to correct section in cmake-generator-expressions(7) manual
...
The generator expression $<REMOVE_DUPLICATES:list> is string-valued, not
boolean-valued.
2019-04-08 19:19:29 +02:00
Sebastian Lipponer
68b307caae
Help: Add missing release notes for genex $<REMOVE_DUPLICATES:list>
2019-04-08 19:19:29 +02:00
Bartosz Kosiorek
cb33befe2d
Modules: Update documentation formatting
2019-04-08 14:55:56 +02:00
Bartosz Kosiorek
0e4fbb4a1f
Help: Improve formatting of Help documentation
2019-04-08 14:53:31 +02:00
Brad King
14270eab36
Merge topic 'genex-output_name'
...
1889ed923e Genex: Add capability to retrieve base name for various target artifacts
26b6d2aff0 Refactor struct TargetFileSystemArtifact
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3190
2019-04-08 07:52:58 -04:00
Marc Chevrier
1889ed923e
Genex: Add capability to retrieve base name for various target artifacts
...
This new capability is required to solve efficiently issue #18771
2019-04-08 07:49:08 -04:00
Brad King
c756fbce9b
Merge topic 'ghs_os_dir'
...
a1e6b414b9 GHS: Update GHS_BSP_NAME processing
266dadf868 GHS: Print status message regarding GHS_OS_DIR
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3123
2019-04-08 07:45:13 -04:00
Brad King
ffcb4f7ec5
Merge topic 'rst-bad-markup-block'
...
a9b38a1757 cmRST: Fix crash on empty markup block
2024327746 Help: Remove empty literal block markup in RESOURCE target property
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3197
2019-04-05 08:51:25 -04:00
Brad King
2024327746
Help: Remove empty literal block markup in RESOURCE target property
...
This was added accidentally by commit 456e0fb64f (Help: Improve
documentation formating, 2019-04-01).
2019-04-05 08:18:14 -04:00
Brad King
8c28e63cb4
Merge topic 'if-EXISTS-doc'
...
78ac8cb04a Help: clarify if(EXISTS) operation for symlinks
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3189
2019-04-04 12:51:41 -04:00
Brad King
56abc31270
Merge topic 'improve-documentation'
...
456e0fb64f Help: Improve documentation formating
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3174
2019-04-04 11:48:55 -04:00
Brad King
0dfb056cd3
Merge topic 'pr.projectbefore'
...
0761186949 project: Add variable CMAKE_PROJECT_INCLUDE_BEFORE
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3175
2019-04-04 11:32:41 -04:00
Brad King
d1c2f8787c
Merge topic 'FindPython-handle-virtual-env'
...
8a2f62cc18 FindPython*: Add capability to control virtual env handling.
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3173
2019-04-04 11:28:49 -04:00
Brad King
a63a50c77a
Merge topic 'remove_duplicates'
...
abbb8a7b1d Genex: Add $<REMOVE_DUPLICATES:list>
11338389e5 Help: Fix description in cmake-generator-expressions(7) manual
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3154
2019-04-04 11:27:28 -04:00
Bartosz Kosiorek
456e0fb64f
Help: Improve documentation formating
2019-04-04 15:13:58 +02:00
Shoaib Meenai
78ac8cb04a
Help: clarify if(EXISTS) operation for symlinks
...
if(EXISTS) resolves symlinks; note this explicitly in its documentation.
2019-04-03 17:25:52 -07:00
Marc Chevrier
8a2f62cc18
FindPython*: Add capability to control virtual env handling.
...
Fixes : #19097
2019-04-03 09:16:17 +02:00
Sebastian Lipponer
abbb8a7b1d
Genex: Add $<REMOVE_DUPLICATES:list>
2019-04-01 21:52:17 +02:00
Sebastian Lipponer
11338389e5
Help: Fix description in cmake-generator-expressions(7) manual
2019-04-01 21:50:18 +02:00
Ruslan Baratov
0761186949
project: Add variable CMAKE_PROJECT_INCLUDE_BEFORE
2019-04-01 20:30:19 +03:00
Brad King
3e129d71bc
Merge topic 'project-include'
...
7d19b3091d Release note for CMAKE_PROJECT_INCLUDE variable
dda0190458 project: Add variable CMAKE_PROJECT_INCLUDE
390f14a244 Test ProjectInclude: Add NONE to avoid enabling languages
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3155
2019-04-01 10:49:02 -04:00
Brad King
922480e6f1
Merge topic 'allow_aliasing_unkown_targets'
...
6d5872a396 add_library: Now support aliasing unknown import targets
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !3148
2019-04-01 10:31:11 -04:00
Fred Baksik
266dadf868
GHS: Print status message regarding GHS_OS_DIR
...
-- Rename platform script so it runs before initial try_compile() in
project() command.
-- Fix incorrect variable name GHS_OS_DIR_OPTION
-- Remove unnecessary ".*" from REGEX expression for GHS_CANDIDATE_OS_DIRS
-- Forward GHS_OS_DIR_OPTION to try_compile() and preserve trailing
whitespace of the variable.
2019-03-29 12:38:12 -04:00
Ruslan Baratov
7d19b3091d
Release note for CMAKE_PROJECT_INCLUDE variable
2019-03-29 18:53:12 +03:00