Commit Graph

220 Commits

Author SHA1 Message Date
Craig Scott
8e841a473f Cleanup: Fix typos and grammar in docs and code
No functional changes, just docs, comments and error messages.
2018-04-23 07:48:03 +10:00
Michael Stürmer
312527de47 document COMMON_LANGUAGE_RUNTIME target properties 2018-04-09 06:50:39 +02:00
Brad King
e42fcb117f Merge topic 'remove-vs8-generator'
eb80af9093 Drop Visual Studio 8 2005 generator
e7af91d026 Tests: Remove unused file from Tutorial Step7 test

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1901
2018-04-02 10:09:15 -04:00
Brad King
eb80af9093 Drop Visual Studio 8 2005 generator
This generator has been deprecated since CMake 3.9.  Remove it.
2018-04-02 10:08:10 -04:00
Brad King
a76e23eabb Merge topic 'variable-CMAKE_FOLDER'
df535ad846 Add CMAKE_FOLDER variable to initialize FOLDER target property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1896
2018-04-02 10:06:39 -04:00
Marc B
df535ad846 Add CMAKE_FOLDER variable to initialize FOLDER target property
This can be used for example to organize all following targets into one
Visual Studio folder:

  set(CMAKE_FOLDER Libraries)
  add_subdirectory(libA)
  add_subdirectory(libB)
  set(CMAKE_FOLDER Executables)
  add_subdirectory(progA)

Another possibility is using the current directory name for all
following targets in subdirectories:

  get_filename_component(dirname "${CMAKE_CURRENT_SOURCE_DIR}" NAME)
  string(APPEND CMAKE_FOLDER "/${dirname}")
2018-03-29 13:19:13 -04:00
Brad King
7fe580a362 Features: Add infrastructure for C++ 20 language standard
Issue: #17849
2018-03-27 07:40:54 -04:00
Ruslan Baratov
16eaf2d271 Help: Reference CMAKE_INSTALL_NAME_DIR from INSTALL_NAME_DIR 2018-03-20 16:34:45 +03:00
Brad King
20fc763b32 Merge topic 'export-properties'
6db61f0725 Export: allow exporting of additional properties

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1834
2018-03-19 08:28:14 -04:00
Brad King
60299bc6f0 Merge topic 'vs-debugger-command'
5a7113d8fb VS: Add target property VS_DEBUGGER_COMMAND

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1842
2018-03-19 08:26:33 -04:00
Wouter Klouwen
6db61f0725 Export: allow exporting of additional properties
This change introduces an additional property that may be set on a
target to allow additional properties to be exported. Normally only a
limited number of properties are exported.

Additional properties may be exported by simply setting the
`EXPORT_PROPERTIES` property on a target that is exported.
2018-03-16 09:00:56 -04:00
Hannes Mezger
5a7113d8fb VS: Add target property VS_DEBUGGER_COMMAND
Fixes: #17819
2018-03-14 13:27:15 -04:00
Hannes Mezger
4b25cc452a Help: Document VS_DEBUGGER_WORKING_DIRECTORY supported VS versions 2018-03-13 10:13:59 +01:00
Sebastian Holtermann
bfffe42b98 Autogen: Doc: Extend AUTOMOC_DEPEND_FILTERS documentation 2018-02-21 10:28:43 -05:00
Sebastian Holtermann
1cf7c54a6b Autogen: Doc: Extend AUTOGEN_TARGET_DEPENDS documentation 2018-02-21 10:28:43 -05:00
Sebastian Holtermann
c4ffbb79c0 Autogen: Documentation: Update for AUTORCC changes 2018-02-03 10:12:01 +01:00
Sebastian Holtermann
45ee4979fb Autogen: Add documentation for (CMAKE_)AUTOGEN_PARALLEL 2018-01-17 17:23:49 +01: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
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
Kyle Edwards
6c5d3989f7 Help: fix documentation for OUTPUT_NAME
Fixes #17177.
2018-01-08 11:33:05 -05:00
Brad King
f19c70c3d2 Fortran: Add option to run the compiler through launcher tools
Add a `Fortran_COMPILER_LAUNCHER` target property like those added for C
and CXX by commit v3.4.0-rc1~450^2 (Add options to launch the compiler
through tools like ccache or distcc, 2015-06-04) and CUDA by commit
v3.10.0-rc1~531^2 (CUDA: Add option to run the compiler through launcher
tools, 2017-06-09).

Fixes: #17499
2017-11-21 14:44:01 -05:00
Brad King
1da5a6ea39 Merge topic 'cuda-sep-comp-var'
00e13993 CUDA: Add CMAKE_CUDA_SEPARABLE_COMPILATION variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alexander Korsunsky <a.korsunsky@gmail.com>
Merge-request: !1495
2017-11-20 09:45:58 -05:00
Craig Scott
87a0b54a05 Help: Fix cross-reference in COMPILE_FLAGS target property docs 2017-11-19 12:15:04 +11:00
Brad King
00e13993fd CUDA: Add CMAKE_CUDA_SEPARABLE_COMPILATION variable
Use its value to initialize the `CUDA_SEPARABLE_COMPILATION` target
property when targets are created.

Fixes: #17478
2017-11-17 09:51:39 -05:00
Deniz Bahadir
6a3922bebe Add new target-property IMPORTED_GLOBAL.
The purpose of this new `IMPORTED_GLOBAL` target-property is to prolong
the lifetime and scope of `IMPORTED` targets in such a way as if they
had been created with the keyword `GLOBAL` in the first place.

* It can only be set to `TRUE`. That means, a local `IMPORTED` target
  can be promoted to global scope but a global `IMPORTED` target cannot
  be degraded to local scope!
* Setting it to `TRUE` only succeeds if done from within the same
  directory in which the `IMPORTED` target was created in the first
  place.

Fixes #17256.
2017-11-07 15:08:41 +01:00
Brad King
ef6ccfda60 Merge topic 'doc-cxx-std-msvc'
e0587669 Help: Correct <LANG>_STANDARD help w.r.t. MSVC

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1401
2017-10-24 08:47:05 -04:00
Christian Pfeiffer
e058766953 Help: Correct <LANG>_STANDARD help w.r.t. MSVC
Fixes: #17380
2017-10-23 08:23:53 -04:00
Brad King
60f982aab4 Merge topic 'imported-interface-no-system'
22beb07f Help: Clarify documentation of NO_SYSTEM_FROM_IMPORTED
2de0e0fd Do not initialize NO_SYSTEM_FROM_IMPORTED on INTERFACE libraries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1386
2017-10-16 09:51:46 -04:00
Brad King
22beb07f98 Help: Clarify documentation of NO_SYSTEM_FROM_IMPORTED
This property is meant to be set on the consumers of imported targets,
not the imported targets themselves.

Fixes: #17348
2017-10-13 14:32:15 -04:00
Brad King
5d6ba8f2da Merge topic 'autogen-skip-ui'
e95429fd Autogen: Docs: Extend SKIP_AUTOUIC documentation
814cddbe Autogen: Docs: Add examples for AUTORCC_OPTIONS and AUTOUIC_OPTIONS
1c196268 Autogen: Allow setting SKIP_AUTOUIC/GEN on .ui files not in the sources

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1366
2017-10-11 08:17:57 -04:00
Brad King
54739743e5 Merge topic 'doc_bundle_wrong_plist_property'
a56d9ecf Help: Fix wrong property reference for an app bundle's Info.plist

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1362
2017-10-10 09:02:50 -04:00
Sebastian Holtermann
814cddbe18 Autogen: Docs: Add examples for AUTORCC_OPTIONS and AUTOUIC_OPTIONS 2017-10-09 14:36:48 +02:00
Craig Scott
a56d9ecf75 Help: Fix wrong property reference for an app bundle's Info.plist 2017-10-07 19:55:51 +11:00
Craig Scott
b8010bda3f Help: Fix Example appearing in target property list of contents 2017-10-07 18:01:23 +11:00
Brad King
275b4a53ee Merge topic 'autogen-predefs'
6bbc1e77 Autogen: Add release notes for (CMAKE_)AUTOMOC_COMPILER_PREDEFINES
75c98b5e Autogen: Doc: Add documentation for (CMAKE_)AUTOMOC_COMPILER_PREDEFINES
1d7f099d Autogen: Add (CMAKE_)AUTOMOC_COMPILER_PREDEFINES

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1328
2017-10-02 08:01:21 -04:00
Brad King
6bced4bf76 Merge topic 'cuda_9_support'
fe37b994 CUDA: Add support for requesting C++98 under CUDA 9

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1315
2017-09-29 09:23:39 -04:00
Sebastian Holtermann
75c98b5ef4 Autogen: Doc: Add documentation for (CMAKE_)AUTOMOC_COMPILER_PREDEFINES
Also adds the documentation for CMAKE_<LANG>_COMPILER_PREDEFINES_COMMAND.

Closes #17275
2017-09-29 15:00:47 +02:00
Sebastian Holtermann
08041dd15e Autogen: Doc: Update documentation for (CMAKE_)AUTOMOC_MACRO_NAMES 2017-09-28 09:21:44 +02:00
Robert Maynard
fe37b99473 CUDA: Add support for requesting C++98 under CUDA 9
Starting in CUDA 9 the default compilation mode is C++14, and you need
to explicitly enable C++98/03 mode.

While at it, document `14` among the values for `CUDA_STANDARD`.  This
was accidentally left out of commit v3.9.0-rc1~118^2 (CUDA: Add support
for the C++14 standard flag, 2017-05-11).
2017-09-26 11:08:09 -04:00
Sebastian Holtermann
4603d6b082 Autogen: Docs: Add documentation internal links 2017-09-25 16:38:04 +02:00
Bill Hoffman
311b7b1a70 Add properties to run cppcheck along with the compiler
Create a `<LANG>_CPPCHECK` target property (initialized by a
`CMAKE_<LANG>_CPPCHECK` variable) to specify a `cppcheck` command line
to be run along with the compiler.
2017-08-30 10:23:46 -04:00
Sebastian Holtermann
7529d84fac Autogen: Add documentation for AUTOMOC_MACRO_NAMES 2017-08-18 13:58:14 +02:00
Sebastian Holtermann
ccc98b5cbe Autogen: Update documentation for per-config include dir 2017-08-05 15:01:28 +02:00
Michael Stürmer
1844360099 Vs: fix documentation for target property VS_DOTNET_REFERENCEPROP_* 2017-06-17 22:56:28 +02:00
Michael Stürmer
07ec212ae8 VS: add target property VS_DOTNET_REFERENCEPROP_<refname>_TAG_<tagname>
Fixes: #16689
2017-06-13 10:46:31 -04:00
Brad King
414438b2fb CUDA: Add option to run the compiler through launcher tools
Add a `CUDA_COMPILER_LAUNCHER` target property like those added for C
and CXX by commit v3.4.0-rc1~450^2 (Add options to launch the compiler
through tools like ccache or distcc, 2015-06-04).

Fixes: #16953
2017-06-09 12:34:39 -04:00
Brad King
cc1b513df1 Autogen: Do not use per-config file suffixes with VS yet
The change in commit v3.9.0-rc1~42^2~1 (Autogen: Per-config file
suffixes, 2017-05-15) broke Visual Studio builds because the generators
do not yet fully support per-config sources.  Disable the behavior on
Visual Studio generators for now.

Fixes: #16939
2017-06-07 09:41:49 -04:00
Sebastian Holtermann
dbda590628 Autogen: Per-config file suffixes. New AUTOGEN_BUILD_DIR target property.
Closes #14760
Closes #14313
2017-05-26 15:27:17 +02:00
Robert Maynard
493671a521 CUDA: Static libraries can now explicitly resolve device symbols
If a static library has the property CUDA_RESOLVE_DEVICE_SYMBOLS enabled
it will now perform the device link step. The normal behavior is
to delay calling device link until the static library is consumed by
a shared library or an executable.
2017-04-26 16:18:25 -04:00