Commit Graph
997 Commits
Author SHA1 Message Date
Brad King 4e98203c6c Merge topic 'vs-global-props-for-all-targets'
36489b85aa VS: Add test for CMAKE_VS_GLOBALS
22e670a306 VS: Add option to set VS_GLOBAL_* for all targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2345
2018-09-28 11:13:59 -04:00
Marc Chevrier f9717725f9 link_directories(): enhance capabilities 2018-09-25 23:59:59 +10:00
Marc Chevrier b5915744eb LINK_DIRECTORIES target property: add policy for absolute paths check. 2018-09-25 23:59:59 +10:00
Marc Chevrier a71caab46b LINK_DIRECTORIES: Add new properties and commands
These new capabilities enable to manage link directories

Two new properties:
* target properties: LINK_DIRECTORIES and INTERFACE_LINK_DIRECTORIES

One new command
* target_link_directories(): to populate target properties

Fixes: #17215
2018-09-25 23:59:58 +10:00
Mikhail Korolev 22e670a306 VS: Add option to set VS_GLOBAL_* for all targets
Fixes: #18287
2018-09-25 09:20:25 -04:00
Kyle Edwards eedd91ab08 BundleUtilities: Disallow inclusion at configure time
This commit adds a new CMake policy, CMP0080, which prohibits the
inclusion of BundleUtilities at configure time. The old behavior is
to allow the inclusion.
2018-09-19 11:23:08 -04:00
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