Commit Graph

1387 Commits

Author SHA1 Message Date
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
Craig Scott
fe751ad1fb Merge topic 'deprecate-policy-old'
0c709cb2a2 Add deprecation warnings for policies CMP0063 and below

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2397
2018-09-20 11:30:24 -04:00
Kyle Edwards
b69159324a Help: Add release notes for new BundleUtilities policy 2018-09-19 11:23:16 -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
7162630bee Merge topic 'vs-ipo'
bef80e6623 VS: Do not specify incremental linking if LTCG is enabled
567fabe88e IPO: INTERPROCEDURAL_OPTIMIZATION (LTCG) for Visual Studio

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2363
2018-09-18 11:22:41 -04:00
Brad King
f9eac2ae4b Merge topic 'FindPython-updates'
329f6aeca5 FindPython*: Windows: add facility to select lookup order for registry.
ffb560adc9 FindPython*: MacOS: Fix erroneous handling of Frameworks.
b0b53921ce FindPython: clean-up lookup names strategy

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2369
2018-09-18 11:15:13 -04:00
Brad King
0c709cb2a2 Add deprecation warnings for policies CMP0063 and below
The OLD behaviors of all policies are deprecated, but only by
documentation.  Add an explicit deprecation diagnostic for some policies
to encourage projects to port away from setting policies to OLD.
2018-09-17 14:16:48 -04:00
Niels Dekker
567fabe88e IPO: INTERPROCEDURAL_OPTIMIZATION (LTCG) for Visual Studio
Add IPO support for Visual Studio (which is referred to by VS as
"Link Time Code Generation" and "Whole Program Optimization"), for
VS version >= 10.  This allows CMake/VS users to enable IPO by setting
property `INTERPROCEDURAL_OPTIMIZATION`.

Fixes: #16748
2018-09-17 10:53:10 -04:00
Robert Maynard
638f00117a Add release note for the -S and -B options. 2018-09-15 11:25:47 -04: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
Marc Chevrier
329f6aeca5 FindPython*: Windows: add facility to select lookup order for registry.
Fixes: #18302
2018-09-12 10:04:05 +02:00
Jason Heeris
68d015fc94 FindSubversion: Add Subversion_WC_INFO option to suppress failures
Subversion fails when the directory is not actually under its control.
Allow projects to tolerate this case optionally.

Fixes: #18264
2018-09-07 16:17:28 -04:00
Marc Chevrier
974de0e199 static library: add property STATIC_LIBRARY_OPTIONS
issue: #18251
2018-08-15 15:20:18 +02:00
Brad King
d7a1bcd2e6 Merge topic 'xcode_schemes_config'
6b7f1e1db0 Xcode: Add variables and properties to configure schemes
39c91d0703 cmGlobalGenerator: Add IsXcode query

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1803
2018-08-06 08:25:50 -04:00
Jason Heeris
f34f6eb3d1 FindMatlab: Add component to find MCC, the Matlab compiler
Add component `MCC_COMPILER` to request searching for the Matlab
compiler.  Report it in `Matlab_MCC_COMPILER` if it is found.

Issue: #18183
2018-08-01 09:23:46 -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
Brad King
5bbcf76399 Merge topic 'UseSWIG-target-name-policy'
a3a0c3aa71 UseSWIG: add policy to manage target naming strategy.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2232
2018-07-27 10:08:54 -04:00
Brad King
bccbf9a737 Merge topic 'reproducible-tarballs'
548ac51d8e CPack/Deb: Support SOURCE_DATE_EPOCH when packaging files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2226
2018-07-27 10:06:44 -04:00
Andrew Fuller
548ac51d8e CPack/Deb: Support SOURCE_DATE_EPOCH when packaging files 2018-07-25 13:39:07 -07:00
Marc Chevrier
a3a0c3aa71 UseSWIG: add policy to manage target naming strategy. 2018-07-25 18:00:52 +02:00
Rolf Eike Beer
7aa26cf0e9 FindPkgConfig: allow to create global imported targets 2018-07-22 13:33:04 +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
f6f5f9f75f Merge topic 'ghs'
ce4f20ba62 GHS: Add release notes
281c601024 GHS: Update default BSP name
01c98c6ccc GHS: Update setting default OS location for Integrity platforms
bb77dc0cee GHS: Set primary target using arch/platform values (or user specified value)
f80692cf60 GHS: Add platform selection support
a37a4a00c8 GHS: Add toolset selection support
5d40d2b44f GHS: Support ARM, PPC, 86 architectures

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Matt Soucy <matthew.soucy@baesystems.com>
Merge-request: !798
2018-07-12 09:15:18 -04:00
Fred Baksik
ce4f20ba62 GHS: Add release notes 2018-07-11 08:48:25 -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
edfeeba347 Merge topic 'FindCURL-per-config'
59b3e78451 FindCURL: Find debug and release variants separately
6a9fe250a7 FindCURL: Improve CURL::libcurl property code layout

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1940
2018-07-06 09:42:31 -04:00
Brad King
326ebdf12a Merge topic 'revert-subdirectory-linking'
0d7114987c Revert "target_link_libraries: Allow use with targets in other directories"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2191
2018-07-05 11:31:17 -04:00
Brad King
ca733cdf45 Merge topic 'math-hex'
5dbee9d2d0 math: Add options to calculate and format output as hexadecimal
8661e7052c math: Diagnose divide-by-zero
7c4c13ffef math: Reject unexpected expression input explicitly
5b0f73a15a math: Use 64-bit integer type for computation
963b8d9f6c math: Add RunCMake.math test to prepare for error cases

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2056
2018-07-05 10:26:05 -04:00
Hiroshi Miura
59b3e78451 FindCURL: Find debug and release variants separately
Fixes: #17887
2018-07-03 13:40:49 -04:00
Brad King
84ecbf44b6 Merge branch 'revert-subdirectory-linking' into release-3.12
Merge-request: !2191
2018-07-03 12:54:32 -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
Brad King
f4d4d5df5b Merge topic 'LINK_DEPENDS'
724bd7790e LINK_DEPENDS: add support of 'generator expressions'
cc9f88af53 LINK_DEPENDS: add support for property INTERFACE_LINK_DEPENDS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2175
2018-07-03 10:52:24 -04:00
Daniel Franke
5dbee9d2d0 math: Add options to calculate and format output as hexadecimal 2018-07-03 09:55:58 -04:00
Brad King
0d7114987c Revert "target_link_libraries: Allow use with targets in other directories"
Revert commit v3.12.0-rc1~82^2 (target_link_libraries: Allow use with
targets in other directories, 2018-05-11).  The RHS target scoping and
visibility rules are not clear and will need further investigation
before the feature can be added.

Issue: #17943
2018-07-03 09:39:28 -04:00
Brad King
8ad3396158 Merge topic 'policy_max_docs'
19f338109d Help: Clarify ...<max> behavior for policy-related commands

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2180
2018-07-02 11:48:56 -04:00
Kyle Edwards
4c71548766 Help: Add release notes for CPack External generator 2018-07-02 09:51:02 -04:00
Craig Scott
19f338109d Help: Clarify ...<max> behavior for policy-related commands
Affects cmake_minimum_required() and cmake_policy(VERSION)
2018-07-02 08:41:46 +10:00
Brad King
a3371e70b7 Merge topic 'FindMatlab-doc-mcr'
27ae8d52d0 Help: Add 3.12 release note for FindMatlab MCR support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2173
2018-06-29 08:54:53 -04:00
Marc Chevrier
724bd7790e LINK_DEPENDS: add support of 'generator expressions' 2018-06-27 18:38:36 +02:00
Marc Chevrier
cc9f88af53 LINK_DEPENDS: add support for property INTERFACE_LINK_DEPENDS
Fixes: #17997
2018-06-27 18:38:36 +02:00
Brad King
27ae8d52d0 Help: Add 3.12 release note for FindMatlab MCR support
This release note was forgotten by commit v3.12.0-rc1~183^2 (FindMatlab:
Matlab Runtime Compiler support, 2018-04-29).
2018-06-26 11:12:19 -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