Commit Graph

637 Commits

Author SHA1 Message Date
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
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
Alex Turbov
536cca60ea string: introduce REPEAT sub-command 2019-04-15 11:06:06 -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
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
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
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
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
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
Ruslan Baratov
dda0190458 project: Add variable CMAKE_PROJECT_INCLUDE 2019-03-27 22:39:02 +03:00
Bartosz Kosiorek
07f3082d3b Help: Improve documentation links and formatting 2019-03-27 16:01:20 +01:00
Zack Galbreath
ba7e44eb7a ctest_submit: Add option BUILD_ID
Fixes: #18968
2019-03-22 09:37:08 -04:00
Joachim Wuttke (l)
0295b153f4 Help: describe the command pipeline of execute_process more explicitly
When reading the doc page on execute_process, I was mislead by the
words "in parallel". They convinced at once that the processes
are run independently of each other, so that I did not even bother
to read further. The rewording, and not least the insertion of a
paragraph break, should prevent such oversight.
2019-03-20 18:25:52 +01:00
Joachim Wuttke (l)
33efdfc0b5 Help: improve source formatting 2019-03-20 18:19:10 +01:00
Joachim Wuttke (l)
cd524c1c33 Help: describe what happens if command execute_process reaches timeout. 2019-03-20 18:17:29 +01:00
Brad King
3261f23870 Merge topic 'export-package-default-off'
9bede5c4ce export: Disable PACKAGE mode user package registry by default

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Lukas Mosimann <lumosimann@gmail.com>
Merge-request: !3041
2019-03-15 10:45:51 -04:00
Robert Maynard
9bede5c4ce export: Disable PACKAGE mode user package registry by default
The user package registry populated by the `export()` command causes
side effects outside the build and source directories.  Such effects
should be opt-in rather than op-out.  Introduce a policy to change
default behavior of `export(PACKAGE)` to do nothing.
2019-03-15 10:24:47 -04:00
Brad King
18ff7cc34f Merge topic 'enable_testing'
538e699e5a Help: for command enable_testing, explain relation to module CTest.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3070
2019-03-08 09:37:56 -05:00
Kyle Edwards
d7ca0a2644 Help: add code-block directive 2019-03-07 11:52:38 -05:00
Zack Galbreath
46c5830394 Help: provide example for HTTPHEADER option to ctest_submit 2019-03-07 10:08:34 -05:00
Joachim Wuttke (o)
538e699e5a Help: for command enable_testing, explain relation to module CTest. 2019-03-07 11:58:22 +01:00
Brad King
809890e3f6 Merge topic 'issue-18883-support-for-multiple-targets'
324d18bb34 cmake: Teach --build mode to support multiple targets
ebc94500c1 cmGlobalGenerator: Optimize Printable() method from GeneratedMakeCommand
fdeb364a84 cmGlobalGenerator: Change case of methods from GeneratedMakeCommand struct
b3955a08ab cmakemain: Remove ignored --use-stderr option from command line help
f1367c8c51 cmGlobalGenerator: Remove unused code

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2939
2019-03-06 08:32:39 -05:00
Brad King
ce9117fdbe Merge topic 'docs-install-destinations'
a5f79b83c7 Help: clarify DESTINATION and TYPE usage for install()

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3052
2019-03-06 08:29:14 -05:00
Bartosz Kosiorek
324d18bb34 cmake: Teach --build mode to support multiple targets
Fixes: #16136
2019-03-05 08:55:28 -05:00
Craig Scott
a5f79b83c7 Help: clarify DESTINATION and TYPE usage for install() 2019-03-05 21:48:44 +11:00
NeroBurner
b8307adb9f Help: inter-link install() commands 2019-02-28 11:49:53 -05:00
NeroBurner-tux
19e15853e9 Help: add inter link anchors for install() commands 2019-02-28 11:49:23 -05:00
Brad King
95222584ee Merge topic 'doc-xref-EXPORT_NAME'
c29a1d58d9 Help: Link from install(TARGET) to EXPORT_NAME to rename exported target

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3037
2019-02-28 11:45:17 -05:00
NeroBurner
c29a1d58d9 Help: Link from install(TARGET) to EXPORT_NAME to rename exported target 2019-02-27 11:53:02 -05:00
Kyle Edwards
258298f597 Help: Clarify ordering of list(REMOVE_DUPLICATES)
This also adds a test to enforce the order behavior of
list(REMOVE_DUPLICATES).
2019-02-27 11:22:57 -05:00
Brad King
224a5c9b07 Merge topic 'docs_try_commands'
4d55c1f541 Help: Caveat for try_compile() and CMAKE_TRY_COMPILE_PLATFORM_VARIABLES
861dbef4e7 Help: Consistency in try_compile() docs for target type
df8aa3c8ad Help: try_compile() readability and grammar improvements
7975edeac5 Help: User-provided variable names for try_* commands

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3013
2019-02-25 07:56:25 -05:00
Brad King
0e8b0ae636 Merge branch 'docs_try_commands' into release-3.14
Merge-request: !3013
2019-02-25 07:54:04 -05:00
Craig Scott
4d55c1f541 Help: Caveat for try_compile() and CMAKE_TRY_COMPILE_PLATFORM_VARIABLES 2019-02-24 17:23:58 +11:00
Craig Scott
861dbef4e7 Help: Consistency in try_compile() docs for target type 2019-02-24 17:22:53 +11:00
Craig Scott
df8aa3c8ad Help: try_compile() readability and grammar improvements 2019-02-24 17:19:45 +11:00
Craig Scott
7975edeac5 Help: User-provided variable names for try_* commands
All uppercase is typically used for command keywords. Non-keyword
arguments should generally be shown as `<something>` according
to the CMake documentation guide.
2019-02-24 17:16:07 +11:00
Brad King
e0fbb7bf08 Merge topic 'list-prepend-and-pop-subcommands'
a84e509844 list: add sub-commands PREPEND, POP_BACK, POP_FRONT

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2980
2019-02-20 09:04:58 -05:00
Alex Turbov
a84e509844 list: add sub-commands PREPEND, POP_BACK, POP_FRONT 2019-02-19 09:42:36 -05:00
Brad King
566652b0c8 Merge topic 'file_symlink_docs'
0f5a9f7934 Help: Clarify and improve readability of link-related file subcommands

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2974
2019-02-18 10:22:35 -05:00
Brad King
926a97e975 Merge branch 'file_symlink_docs' into release-3.14
Merge-request: !2974
2019-02-18 09:22:13 -05:00
Brad King
0f2eb9ac6f Merge topic 'get_filename_component_docs'
2cc145928c Help: Remove outdated statement about get_filename_component()

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2973
2019-02-18 09:09:55 -05:00
Craig Scott
0f5a9f7934 Help: Clarify and improve readability of link-related file subcommands 2019-02-16 20:55:49 +11:00
Craig Scott
2cc145928c Help: Remove outdated statement about get_filename_component()
After !2853, the statement that the "longest file extension is
always considered" is no longer true. Both NAME_WLE and
LAST_EXT now return details based on the shortest file
extension.

Fixes: 7a25ef326b (Help: Add documentation for new get_filename_component components, 2019-01-24, 3.14.0-rc1)
2019-02-16 15:26:23 +11:00
Brad King
9e34f11b36 Merge topic 'doc-if-legacy'
572b4fd85b Help: Fix elseif/endif typo

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2950
2019-02-12 08:24:59 -05:00
Juuso "Linda" Lapinlampi
572b4fd85b Help: Fix elseif/endif typo
In CMake 3.13.x, we had this evaluation for if() conditions:

    if(a) elseif(b) else(a) endif(a)

The sensible intention of the change in commit c2efb3efcd (Help: Revise
docs on Scripting Commands, 2018-10-16, v3.14.0-rc1~505^2) was:

> "endif", "endfunction" etc: Explain that the argument is optional and
> maintained for compatibility only

Instead of "endif", it ended up being written to the documentation as
"elseif" by the commit author (oops) to if()'s page.

    if(a) elseif(a!?) else() endif(a?)

Truthfully, endif()'s parameter should be an optional verbatim repeat
and not elseif()'s. If it wasn't, elseif() would be described to be the
same as if(). The rightful intended description is:

    if(a) elseif(b) else() endif()

Fix that typo.
2019-02-11 14:41:51 -05:00