Commit Graph

991 Commits

Author SHA1 Message Date
Brad King
a9df54ec31 Merge topic 'symlink'
afb7f6e4ff cmake: Add '-E create_symlink' support on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2144
2018-09-19 10:41:07 -04:00
Brad King
ec9ef691fe Merge topic 'provide_explicit_source_and_build_command_line_options'
638f00117a Add release note for the -S and -B options.
de962cc00d CMake: Internally uses -S instead of -H to specify source directory
a10d63d578 cmake: -S and -B can be used to specify source and build directories

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2358
2018-09-19 10:38:19 -04:00
Jon Chronopoulos
afb7f6e4ff cmake: Add '-E create_symlink' support on Windows
The allows `-E create_symlink` to work on Windows.  It utilizes
`uv_fs_symlink`.  I am still unsure exactly which Windows platforms will
work without requiring Administrator privileges or needing a user/group
with the "Create Symbolic Links" User Rights.  It does work with my
Windows 10 Pro with Developer Mode turned on.  In the test suite check
that the symlink either worked or failed with a permissions error.

Use recent changes in cmSystemTools::FileExists to check that a symlink
is broken.
2018-09-18 11:24:08 -04:00
Brad King
e7fcd3b8eb Merge topic 'cmake_rule_messages_doc'
17e581af4c Help: Document CMAKE_RULE_MESSAGES variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2383
2018-09-17 11:27:29 -04:00
Brad King
7bf9796f3d Merge topic 'docs/gen-see-also'
e3f9ea8616 docs: add some 'see also' helper texts

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2381
2018-09-17 09:25:03 -04:00
Julien Schueller
17e581af4c Help: Document CMAKE_RULE_MESSAGES variable
Fixes: #18368
2018-09-17 10:05:30 +02:00
Robert Maynard
a10d63d578 cmake: -S and -B can be used to specify source and build directories
Document the previously internal option of '-B' and provide a
matching source directory option with '-S'. Both '-B', and '-S'
can be used independently of each other.
2018-09-15 11:25:47 -04:00
Brad King
333804fa0e Merge topic 'out-of-dir-linking'
a1ad0a699b target_link_libraries: Allow use with targets in other directories
9bbae5ae28 cmTarget: Future-proof AddLinkLibrary target lookup scope
f9cb6f618a cmExportFileGenerator: Use cmGeneratorTarget::ResolveTargetReference
18441a6269 cmGeneratorTarget: Factor target name resolution out of link item resolution
2f708f5d65 Make internal TARGET_PROPERTY generator expressions more robust
94a75801c8 Android.mk: De-duplicate link libraries logic during export
8a63b23d16 cmGlobalGenerator: Remove unused FindLocalGenerator method

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Patrick Stotko <stotko@cs.uni-bonn.de>
Merge-request: !2370
2018-09-14 13:25:07 -04:00
Brian Heim
e3f9ea8616 docs: add some 'see also' helper texts
in cmake-generator-expressions
2018-09-13 00:32:01 -05:00
Brad King
a1ad0a699b target_link_libraries: Allow use with targets in other directories
Previously the command did not allow naming targets on the LHS that
were not created in the calling directory.  Lift this restriction to
enable more flexible use by projects.

Targets named on the RHS will need to be looked up during generation in
the scope of the call site rather than the scope of the LHS target.
Introduce an internal syntax in `[INTERFACE_]LINK_LIBRARIES` properties
to specify target names that need to be looked up in a directory other
than that containing the target on which the property is set.  Add
minimal documentation of the syntax to help users that encounter it.

Unfortunately CMake previously did allow such calls in the case that
only `INTERFACE` libraries are specified, but those libraries would be
looked up in the target's directory rather than the caller's.  Add
policy `CMP0079` to enable the new behavior with new lookup scope in a
compatible way.

Fixes: #17943
2018-09-12 13:06:36 -04:00
Brad King
9a5b04a5f6 Merge topic 'cmake_cpack_command-doc'
5ff7149298 Help: Document existence of CMAKE_CPACK_COMMAND

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2367
2018-09-11 08:30:15 -04:00
Brad King
f13d4b1077 Merge topic 'replace-os-x-name-with-macos'
ab2e35d614 Replace occurrences of "Mac OS X" with "macOS" in comments
fc1602456a Help: Replace occurrences of "Mac OS X" with "macOS"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Gregor Jasny <gjasny@googlemail.com>
Reviewed-by: Clinton Stimpson <clinton@elemtech.com>
Merge-request: !2351
2018-09-11 08:28:05 -04:00
Kyle Edwards
5ff7149298 Help: Document existence of CMAKE_CPACK_COMMAND
This useful variable was previously undocumented. This commit adds
brief documentation for it.
2018-09-10 12:36:41 -04:00
Raul Tambre
3914108c4a Help: Formatting typo fix in cmake-generator-expressions(7) 2018-09-10 15:08:02 +03:00
Bartosz Kosiorek
fc1602456a Help: Replace occurrences of "Mac OS X" with "macOS"
Apple's main Operating system changed their name from OS X to macOS:

    https://www.engadget.com/2016/06/13/os-x-is-now-macos/

Revise documentation accordingly.
2018-09-05 16:10:49 -04:00
Brad King
69ce062969 Merge topic 'cmakeServerSourcesForInterfaceLibraries'
d74c2282ea cmake-server: Support codemodel filegroups for INTERFACE_SOURCES

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Tobias Hunger <tobias.hunger@gmail.com>
Acked-by: Markus Enzenberger <markus.enzenberger@gmail.com>
Merge-request: !2282
2018-09-04 09:57:58 -04:00
Justin Goshi
d74c2282ea cmake-server: Support codemodel filegroups for INTERFACE_SOURCES
This change returns information for INTERFACE_SOURCES. We add
a flag to the filegroup to indicate if the target represents
interface sources.

Protocol version is updated to 1.3 since this is a change to what was
released in cmake version 3.12.
2018-08-30 16:09:22 -07:00
Mikhail Korolev
e78a0c8e8a VS: Add option to tell generator that platfrom is WinRT by default
Create a ``CMAKE_VS_WINRT_BY_DEFAULT`` variable to indicate this.

Fixes: #18286
2018-08-30 12:46:57 -04:00
Marc Chevrier
974de0e199 static library: add property STATIC_LIBRARY_OPTIONS
issue: #18251
2018-08-15 15:20:18 +02:00
Jean-Christophe Fillion-Robin
30d08bdce9 doc: Consistently use <PackageName> for describing the name of a package 2018-08-14 20:54:56 +10:00
Robert Maynard
4d384d290e Help: Document the $CACHE{} syntax
Also add a test case for the behavior.
2018-08-07 13:13:27 -04:00
Gregor Jasny
6b7f1e1db0 Xcode: Add variables and properties to configure schemes
Add `XCODE_SCHEME_*` target properties and associated variables
`CMAKE_XCODE_SCHEME_*` to initialize them on target creation.
Map each target property value to an associated Xcode scheme entry.

Co-Author: Martin Sander <mail@martin-sander.de>
Fixes: #17919
2018-08-01 09:12:42 -04:00
Marc Chevrier
a3a0c3aa71 UseSWIG: add policy to manage target naming strategy. 2018-07-25 18:00:52 +02:00
Craig Scott
e3664debd2 Merge topic 'doc-find_package-root'
492ade276b Help: Add explicit <PackageName>_ROOT variable documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2225
2018-07-20 18:58:43 -04:00
Brad King
492ade276b Help: Add explicit <PackageName>_ROOT variable documentation
Add documentation for both the CMake variable and environment variable
of this name pattern.  Update references to these names to link to their
documents.  Clarify the pattern used to construct their names.
2018-07-20 09:43:08 -04:00
Brad King
5f7886c52b Merge topic 'vs-deployment-files'
3b2ea092ef Help: Add documentation for DEPLOYMENT_ADDITIONAL_FILES
b771b2c300 VS: extended OutputDeploymentDebuggerTool for AdditionalFiles
2f4075fa45 VS: moved EscapeForXML function higher up and made static

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2184
2018-07-10 10:06:07 -04:00
Brad King
c878e6f8cc Merge topic 'option-normal-variable'
2a5f5c0e31 option: respect existing normal variable
12e6f83319 Option: Add a test that verifies interaction with normal variables
5bb3d40a28 cmOption: Remove VTK 4.0 workarounds

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2155
2018-07-09 10:25:33 -04:00
Robert Maynard
2a5f5c0e31 option: respect existing normal variable
Add policy CMP0077 to change this behavior in a compatible way.
2018-07-09 07:48:28 -04:00
Frank Goyens
3b2ea092ef Help: Add documentation for DEPLOYMENT_ADDITIONAL_FILES 2018-07-09 07:39:39 -04:00
Brad King
c4b1c0751d Merge topic 'cpack-external'
4c71548766 Help: Add release notes for CPack External generator
47c87cdd1f Help: Add documentation for CPack External generator
2ef966bc77 Testing: Add test for CPack External generator
80914d88da CPack: Add "CPack External" generator
3ced881db6 cmCPackGenerator: Store CPACK_INSTALL_CMAKE_PROJECTS in an internal field
4938abb600 cmCPackGenerator: Refactor InstallProjectViaInstallCMakeProjects()

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2142
2018-07-03 10:55:06 -04:00
Kyle Edwards
47c87cdd1f Help: Add documentation for CPack External generator 2018-07-02 09:51:02 -04:00
Marc Chevrier
cc9f88af53 LINK_DEPENDS: add support for property INTERFACE_LINK_DEPENDS
Fixes: #17997
2018-06-27 18:38:36 +02:00
Craig Scott
3f58967887 Merge topic 'cmake-buildsystem-manual-typo'
82956270ed Help: Fix typo in cmake-buildsystem(7) manual

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2163
2018-06-23 17:20:50 -04:00
Brad King
44ca3d922c Merge topic 'cpack-generator-documentation'
57e4c51e8a Help: Update old version release notes for CPack generator docs
4181830881 Help: Add release notes for CPack generator documentation and module updates
48bc8b2b82 CPack: Move internal implementation modules into Internal/CPack directory
2a2829cc75 Help: Add new section for CPack generators
be6267808a CPackIFW: Turn documentation into a block comment
0180524c7a Help: Move legacy CPack modules into separate section

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2149
2018-06-22 09:48:00 -04:00
Brad King
5e1f519037 Merge topic 'cmake_autogen_verbose'
5b85ef5cd0 Autogen: Add release notes for CMAKE_AUTOGEN_VERBOSE
6651aab2ab Autogen: Add documentation for CMAKE_AUTOGEN_VERBOSE
aa7d8a092c Autogen: Enable CMAKE_AUTOGEN_VERBOSE in all tests
e28dc3b1d8 Autogen: Add CMAKE_AUTOGEN_VERBOSE variable support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2157
2018-06-22 09:46:17 -04:00
Brad King
1a21b4695a Merge topic 'vs_debugger'
797de7a6f6 VS10Project: Expand VS_DEBUGGER_* capabilities

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2150
2018-06-22 09:45:19 -04:00
Joan Massich
82956270ed Help: Fix typo in cmake-buildsystem(7) manual 2018-06-22 11:26:59 +02:00
Sebastian Holtermann
6651aab2ab Autogen: Add documentation for CMAKE_AUTOGEN_VERBOSE 2018-06-21 19:18:18 +02:00
Kyle Edwards
2a2829cc75 Help: Add new section for CPack generators
The documentation for CPack generators previously lived in their
respective internal CMake modules. This setup was misleading,
because it implied that you should include the modules in your own
code, which is not the case. Moving the documentation into a
separate section does a better job of hiding the internal modules,
which are just an implementation detail. The generator documentation
has also been modified to remove any references to the module name.

The CPackIFW module is a special exception: since it has user-facing
macros, the documentation for these macros has been kept in the module
page, while all other documentation related to the IFW generator has
been moved into the new section.

To make it easier to find the new documentation, the old help pages
for the CPack*.cmake modules have not been deleted, but have been
replaced with a link to their respective help page in the new
documentation section.
2018-06-21 11:00:25 -04:00
Kyle Edwards
0180524c7a Help: Move legacy CPack modules into separate section
These modules are being moved out of user visibility and into an
internal section of CMake. To keep them for historical reference in
the manual, this commit moves them into a separate "Legacy CPack
Modules" section.
2018-06-21 10:46:10 -04:00
Craig Scott
6e7b424240 Merge topic 'subdir_target_sources'
316815e1f4 target_sources: Interpret relative paths as relative to the calling directory

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2128
2018-06-19 08:24:08 -04:00
Patrick Stotko
316815e1f4 target_sources: Interpret relative paths as relative to the calling directory
Previously the command considered non-absolute source file paths relative to
the associated target on the LHS. This causes problems in incremental builds
where files are added from subdirectories and forces users to workaround by
manually converting to absolute paths. Change this to enable more intuitive
usage by projects.

Fixes #17981
2018-06-18 21:01:57 +02:00
Jon Chronopoulos
797de7a6f6 VS10Project: Expand VS_DEBUGGER_* capabilities
This adds VS_DEBUGGER_COMMAND_ARGUMENTS and VS_DEBUGGER_ENVIRONMENT as
well as allowing VS_DEBUGGER_* to use generator expressions.
2018-06-17 17:55:27 +10:00
Marc Chevrier
66ea1a3795 LINK_OPTIONS: Add support of "LINKER:" prefix 2018-06-06 17:22:41 +02:00
Marc Chevrier
c1f5a44b28 LINK_OPTIONS: Add new family of properties
This family enable to manage link flags

Three new properties:
* directory property: LINK_OPTIONS
* target properties: LINK_OPTIONS and INTERFACE_LINK_OPTIONS

Two new commands
* add_link_options(): to populate directory property
* target_link_options(): to populate target properties

Fixes: #16543
2018-06-06 17:22:39 +02:00
Arnaud Gelas
9e27881bb1 TI: Add support for C language standards
Set C90 and C99 compile options for TI compiler.

Fixes: #18061
2018-06-04 10:48:02 -04:00
Brad King
958191a95c Merge topic 'vs-toolset-version'
5f13168419 VS: Add option to select the version of the toolset used by VS 2017

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Francisco Facioni <fran6co@gmail.com>
Merge-request: !2093
2018-05-30 10:19:21 -04:00
Basil Fierz
5f13168419 VS: Add option to select the version of the toolset used by VS 2017
Add new `version=` parameter in the toolset setting to select the
version.  Add variable `CMAKE_VS_PLATFORM_TOOLSET_VERSION` to hold the
version, if one is set (blank indicates default).

Fixes: #17549
2018-05-29 10:12:59 -04:00
Brad King
f248f8ad78 Merge topic 'parallel_build_option'
1ab3881ec9 cmake: Add options for parallel builds to --build mode

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Henry Schreiner <henryschreineriii@gmail.com>
Merge-request: !1962
2018-05-29 10:05:09 -04:00
Craig Scott
3cc081654d Merge topic 'cmake-D-option-help'
42738e5075 Help: Update description of the -D option to CMake

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2105
2018-05-27 04:40:34 -04:00