Commit Graph

2380 Commits

Author SHA1 Message Date
Brad King
cdc9c110a5 Merge topic '16780-write-single-xcodeproj'
e4e9ce7c Xcode: Add option to generate only topmost project file

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1395
2017-11-01 08:02:15 -04:00
Gregor Jasny
e4e9ce7cbe Xcode: Add option to generate only topmost project file
Closes #16780
2017-10-31 17:09:26 +01:00
Jeremiah van Oosten
025221df2a VS: Add source file property to set hlsl debug and optimization flags
Add `VS_SHADER_DISABLE_OPTIMIZATIONS` and `VS_SHADER_ENABLE_DEBUG`
source file properties to control these settings on `.hlsl` files in the
VS generator.

Fixes: #17406
2017-10-30 09:52:10 -04:00
Brad King
8ffc1c3d89 Merge topic 'generalize-importedtargets-behavior'
fb88d2b5 Help: Add notes for topic 'generalize-importedtargets-behavior'
494906a8 Add support for IMPORTED GLOBAL targets to be aliased
fe4b25ec Teach target_* commands to set INTERFACE properties of IMPORTED targets
e40fd9fd cmTargetPropCommandBase: Fix typo in error message

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Henry Schreiner <henryschreineriii@gmail.com>
Merge-request: !1264
2017-10-27 09:47:31 -04:00
Brad King
b779b8e85f Merge topic 'cmp0040-wording'
a1b1f1a2 CMP0040: Clarify policy warning to match documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1415
2017-10-27 09:42:37 -04:00
Brad King
a1b1f1a282 CMP0040: Clarify policy warning to match documentation
In commit v3.5.0-rc1~8^2~2 (Help: Clarify policy `CMP0040`
documentation, 2016-01-28) the documentation was clarified to indicate
that the target must be defined in the current directory.  Do the same
for the text of the policy warning itself.

Fixes: #17399
2017-10-26 09:47:29 -04:00
Brad King
fb88d2b5be Help: Add notes for topic 'generalize-importedtargets-behavior'
Inspired-by: Deniz Bahadir <dbahadir@benocs.com>
2017-10-26 09:11:05 -04:00
Deniz Bahadir
494906a8a2 Add support for IMPORTED GLOBAL targets to be aliased
Issue: #15569
Issue: #17197
2017-10-26 09:11:04 -04:00
Deniz Bahadir
fe4b25ec2f Teach target_* commands to set INTERFACE properties of IMPORTED targets
Now, several `INTERFACE_*` properties can be set on `IMPORTED` targets,
not only via `set_property` and `set_target_properties` but also via
`target_compile_definitions`, `target_compile_features`,
`target_compile_options`, `target_include_directories`, `target_sources`
and `target_link_libraries`.

Fixes: #15689
Issue: #17197
2017-10-26 09:11:04 -04:00
Brad King
cec4b86f0a Merge topic 'server-codemodel-install-dest'
296eb9ad cmake-server: Add target install destinations to codemodel

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1382
2017-10-25 08:17:03 -04:00
Brad King
b5dd256d94 Merge topic 'defer-target-source-check'
4e7f6738 Defer check for sources within a target until generation.
6e4e7c65 Tests: Exclude bad RunCMake.add_executable case on multi-arch Xcode

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1242
2017-10-25 08:11:19 -04:00
Justin Goshi
296eb9ad4c cmake-server: Add target install destinations to codemodel
Protocol version is updated to 1.2 since this is a change
to what was released in cmake version 3.10.
2017-10-24 14:58:07 -04:00
Brad King
4edcf4f169 Merge topic 'help_parse_arguments'
546a3289 Help: Fix cmake_parse_arguments behavior for not found arguments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1397
2017-10-24 08:47:59 -04: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
Deniz Bahadir
4e7f67383f Defer check for sources within a target until generation.
The `add_library` and `add_executable` commands can now be called with
no source-files and won't generate a warning or error message, as long
as source-files will be added later via the `target_sources` command.
If during the generation step still no sources are associated with
targets created by such calls a useful error message will be generated
and generation fails.

Targets of type `INTERFACE_LIBRARY`, `UTILITY` or `GLOBAL_TARGET` are
excluded from this check because we do not need sources for these target
types during generation.

Fixes: #16872
2017-10-24 08:14:47 -04:00
Christian Pfeiffer
e058766953 Help: Correct <LANG>_STANDARD help w.r.t. MSVC
Fixes: #17380
2017-10-23 08:23:53 -04:00
Sylvain Joubert
546a328978 Help: Fix cmake_parse_arguments behavior for not found arguments
Value keywords are actually UNDEFINED rather than set to the empty
string when they are not found in the argument list.
2017-10-20 09:05:13 +02:00
Brad King
9ffb35386f VS: Select and save a VS 2017 instance persistently
Visual Studio 2017 supports multiple instances installed on a single
machine.  We use the Visual Studio Installer tool to enumerate instances
and select one.  Once we select an instance for a given build tree, save
the result in `CMAKE_GENERATOR_INSTANCE` so we can re-configure the tree
with the same instance on future re-runs of CMake.

Fixes: #17268
2017-10-19 10:20:12 -04:00
Brad King
314613d1af Add infrastructure for generators to select a build tool instance
Add cache entry `CMAKE_GENERATOR_INSTANCE` to hold the instance location
persistently across re-runs of CMake in a given build tree.

For now we reject the option by default if explicitly set.  It will be
implemented on a per-generator basis.  Pass the setting into try_compile
project generation.  Add a RunCMake.GeneratorInstance test to cover
basic use cases for the option.  Verify that `CMAKE_GENERATOR_INSTANCE`
is empty by default, and that it is rejected when the generator does not
support a user setting.

Issue: #17268
2017-10-19 10:20:08 -04:00
Brad King
358ceee5d8 Merge topic 'curl_netrc_options'
d45aa38a Add dev notes for topic 'curl_netrc_options'
60c272b6 ExternalProject: Add support for NETRC and NETRC_FILE suboption
754e39dd Add testcases for file(DOWNLOAD|UPLOAD) netrc options
5d67e902 file(DOWNLOAD|UPLOAD): Add 'NETRC' and 'NETRC_FILE' suboption

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ruslan Baratov <ruslan_baratov@yahoo.com>
Merge-request: !1376
2017-10-19 09:27:43 -04:00
Brad King
d209275330 Merge topic 'ti-compiler-depfile-support'
ad9327d9 Compiler/TI: Add support for depfile generation for Ninja

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1389
2017-10-19 09:27:09 -04:00
Shane Parris
d45aa38a06 Add dev notes for topic 'curl_netrc_options' 2017-10-18 15:21:43 -04:00
Shane Parris
5d67e9025d file(DOWNLOAD|UPLOAD): Add 'NETRC' and 'NETRC_FILE' suboption 2017-10-18 15:21:42 -04:00
Nico Müller
ad9327d936 Compiler/TI: Add support for depfile generation for Ninja
TI C/C++ compiler are now able to generate dependency files during
compilation.

Fixes: #17360
2017-10-18 09:43:22 -04:00
Brad King
b0b94cdec5 Merge topic 'cmake-open'
96d642c7 cmake-gui: Use cmake::Open to open generated project
5de37a4a cmake: Add --open option for IDE generators

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ruslan Baratov <ruslan_baratov@yahoo.com>
Merge-request: !1337
2017-10-18 09:37:59 -04:00
Brad King
0dba1db9d5 Merge topic 'module-fetchcontent'
1e56634f FetchContent: Add tests
60e74d2f FetchContent: New module for populating content at configure time

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1306
2017-10-18 09:37:26 -04:00
Craig Scott
60e74d2f19 FetchContent: New module for populating content at configure time 2017-10-17 08:07:09 +11: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
Gregor Jasny
5de37a4a64 cmake: Add --open option for IDE generators 2017-10-13 21:28:34 +02:00
Brad King
f64c554cc9 Merge branch 'imported-interface-no-system' into release-3.10
Merge-request: !1386
2017-10-13 14:36:45 -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
2de0e0fdfa Do not initialize NO_SYSTEM_FROM_IMPORTED on INTERFACE libraries
The change in commit v3.8.0-rc1~276^2 (Allow NO_SYSTEM_FROM_IMPORTED on
imported INTERFACE libraries, 2016-11-21) was incorrect.  The property
is not meant to be set on imported targets at all.  It is meant to be
set on their consumers that compile sources.  Since INTERFACE libraries
have no sources to compile, the property is not needed on them.

Revert most of that change.  Unfortunately we must still tolerate
project code setting NO_SYSTEM_FROM_IMPORTED on INTERFACE libraries
because they were allowed by CMake 3.8 and 3.9.

Issue: #17348
2017-10-13 14:32:14 -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
0a5987fa59 Merge branch 'autogen-skip-ui' into release-3.10
Merge-request: !1366
2017-10-10 13:53:34 -04:00
Sebastian Holtermann
e95429fd85 Autogen: Docs: Extend SKIP_AUTOUIC documentation 2017-10-10 13:52:49 -04:00
Brad King
f3bb9fcf0c Merge topic 'doc-lang-clarify'
1ed11f1c Help: Minor text clarifications in cmake-language(7) manual

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1358
2017-10-10 13:46:34 -04:00
Brad King
25b16ba3dc Merge branch 'doc-lang-clarify' into release-3.10
Merge-request: !1358
2017-10-10 11:29:26 -04:00
Brad King
1ed11f1c0d Help: Minor text clarifications in cmake-language(7) manual
Clarify definitions of `bracket_open` and `bracket_close` productions.

In note about unquoted arguments containing unescaped double quotes,
provide examples of how they can be written as quoted arguments.

Also clarify location of nested calls supported by variable function
scope.

Suggested-by: Дилян Палаузов <dilyan.palauzov@aegee.org>
2017-10-10 11:26:00 -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
Brad King
0a6dd27e86 Merge topic 'target_properties_doc_cleanup'
b8010bda Help: Fix Example appearing in target property list of contents

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1361
2017-10-10 09:02:22 -04:00
Brad King
9c81265438 Merge branch 'target_properties_doc_cleanup' into release-3.10
Merge-request: !1361
2017-10-10 09:00:57 -04:00
Brad King
581b9d9c77 Merge branch 'doc_bundle_wrong_plist_property' into release-3.10
Merge-request: !1362
2017-10-10 09:00:38 -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
bd9451231c Merge branch 'revise-3.10-relnotes' into release-3.10
Merge-request: !1357
2017-10-06 07:21:07 -04:00
Brad King
3cebe2aba8 Help: Revise 3.10 release notes
Reduce duplication of `AUTOMOC` feature text.  Clarify QtIFW version
requirements.
2017-10-06 06:59:30 -04:00
Brad King
ba8aa6899d Begin post-3.10 development 2017-10-05 09:59:57 -04:00
Brad King
42d656b0b2 Help: Drop development topic notes to prepare release
Release versions do not have the development topic section of
the CMake Release Notes index page.
2017-10-05 09:54:11 -04:00
Brad King
0565192aff Help: Organize and revise 3.10 release notes
Add section headers similar to the 3.9 release notes and move each
individual bullet into an appropriate section.  Revise a few bullets.
2017-10-05 09:24:08 -04:00