Commit Graph

772 Commits

Author SHA1 Message Date
Brad King dd089e08b5 install: Allow absolute EXPORT destination with relative targets (#15258)
When install(EXPORT) is given an absolute destination we cannot compute
the install prefix relative to the installed export file location.
Previously we disallowed installation of targets in such exports with a
relative destination, but did not enforce this for target property
values besides the location of the main target file.  This could lead to
broken installations when the EXPORT is installed to an absolute path
but usage requirements are specified relative to the install prefix.

Since an EXPORT installed to an absolute destination cannot be relocated
we can just hard-code the value of CMAKE_INSTALL_PREFIX as the base for
relative paths.  This will allow absolute install(EXPORT) destinations
to work with relative destinations for targets and usage requirements.

Extend the ExportImport test with a case covering this behavior.
2014-12-15 11:45:49 -05:00
Brad King ba8c663219 curl: Use Windows SSL/TLS native implementation
On Windows, when CMAKE_USE_OPENSSL is OFF, use the OS implementation.
This will allow the OS-configured CA list to be trusted automatically.
2014-12-12 13:52:46 -05:00
Brad King ccbdac21df Merge topic 'doc-CMP0054-example'
f2f1c95d Help: Extend policy CMP0054 documentation with an example
2014-12-12 11:15:59 -05:00
Nils Gladitz f2f1c95dd9 Help: Extend policy CMP0054 documentation with an example 2014-12-12 11:12:46 -05:00
Brad King 8235effe48 Help: Drop FeatureSummary example in cmake-developer.7
The use of FeatureSummary inside a find module is not a convention
yet used by upstream CMake modules.  Drop the example from the
documentation about how to write find modules.  If in the future
we add use of FeatureSummary to many of the upstream find modules
then this example can be restored as part of establishing the
convention.
2014-12-09 08:40:17 -05:00
Brad King 413ce02895 Merge topic 'ExternalProject_TEST_EXCLUDE_FROM_MAIN'
636f0c1d ExternalProject: Add TEST_EXCLUDE_FROM_MAIN option
2014-12-08 09:07:10 -05:00
Brad King 90070a65d2 Merge topic 'try_compile-link-flags'
88eb5824 try_compile: Pass linker flags into test project (#14066)
a4f9b6f0 CMakeDetermineCompilerABI: Use normal linker flags in ABI project
2014-12-08 09:07:04 -05:00
Brad King fad59f2dd1 Merge topic 'xerces-rename'
27141eed Modules: Rename FindXerces to FindXercesC
2014-12-05 14:02:11 -05:00
Brad King 03db9a061a Merge topic 'doc-file-GENERATE-order'
fe21580b Help: Document file(GENERATE) signature option order
2014-12-05 14:01:04 -05:00
Brad King e2c431dc64 Merge branch 'xerces-rename' into release 2014-12-05 13:32:50 -05:00
Brad King eff4081bfb Merge branch 'doc-file-GENERATE-order' into release 2014-12-05 13:32:46 -05:00
Brad King fe21580b84 Help: Document file(GENERATE) signature option order
In commit v3.1.0-rc1~484^2 (Help: Format and revise file() command
documentation, 2014-05-23) the signature of file(GENERATE) was
accidentally simplified too much and dropped specification of the
required argument ordering.  Restore the signature to make the order
clear.
2014-12-05 13:28:24 -05:00
Daniele E. Domenichelli 636f0c1d4f ExternalProject: Add TEST_EXCLUDE_FROM_MAIN option
If this option is enabled, the test step is created with the
EXCLUDE_FROM_MAIN option, and if TEST_BEFORE_INSTALL is enabled, the
install step does not depend on the test step.

This means that the test step is never executed, unless the test target
is explicitly created by calling ExternalProject_Add_StepTarget, or by
passing it with the STEP_TARGETS option, or with the EP_STEP_TARGETS
directory property.
2014-12-05 10:24:16 +01:00
Stephen Kelly 67cb50abd7 Help: Document that IMPORTED targets in Find modules may be UNKNOWN. 2014-12-05 00:12:14 +01:00
Stephen Kelly e18e21aeb5 Help: Document IMPORTED_CONFIGURATIONS target property for Find modules. 2014-12-05 00:12:14 +01:00
Stephen Kelly f0d0d761b2 Help: Remove recommendation about checking minimum CMake version.
If this file is being executed, the user has the CMake version
providing it.
2014-12-04 23:55:15 +01:00
Stephen Kelly 31452416ba Help: Add useful links to IMPORTED targets and usage requirements. 2014-12-04 23:33:50 +01:00
Stephen Kelly b96b025b2a Help: Remove disadvantage creating IMPORTED targets in Find modules.
An IMPORTED target in either type of package can equally depend on
an IMPORTED target in a Find module, which must be found as a
dependency, which is presumably the problem being implied.  This is
not a distinction of creating an IMPORTED target in a Find module.
2014-12-04 23:32:52 +01:00
Stephen Kelly 169f116632 Help: Link to cmake-packages(7) from the Module creation documentation. 2014-12-04 23:31:59 +01:00
Brad King 27141eede7 Modules: Rename FindXerces to FindXercesC
The FindXerces module was added in commit v3.1.0-rc1~155^2 (FindXerces:
New module to find Apache Xerces-C++, 2014-08-17).  However, there are
two implementations of Xerces, one in C++:

  http://xerces.apache.org/xerces-c/

and one in Java:

  http://xerces.apache.org/xerces-j/

Rename FindXerces to FindXercesC to clarify that it is about the C++
implementation.

While at it, add the missing CMake 3.1 release note about this module.

Suggested-by: Erik Sjölund <erik.sjolund@gmail.com>
2014-12-04 10:41:26 -05:00
Brad King c7bd275393 Merge topic 'cached-regex-clear-fixed'
ceecd790 cmMakefile: store the number of last matches in a CMake var
7878d061 test: add a test for clearing regex results
2014-12-04 10:23:26 -05:00
Brad King ba98442610 Merge topic 'vs-phone-store-deployment-location'
352f246f VS: Add source file property to specify Windows App deployment location
2014-12-04 09:10:05 -05:00
Brad King 88eb5824da try_compile: Pass linker flags into test project (#14066)
Copy CMAKE_EXE_LINKER_FLAGS into the test project generated by
try_compile, just like we already copy CMAKE_<LANG>_FLAGS.

Add CMake Policy CMP0056 to activate this behavior in a compatible way,
but do not warn by default when the policy is not set since it will
affect all try_compile calls.

Extend the RunCMake.try_compile test with a case covering this behavior
for each policy setting.
2014-12-03 15:30:22 -05:00
Ben Boeckel ceecd7902f cmMakefile: store the number of last matches in a CMake var
With PushScope and PopScope, keeping track of another bit of data for
each scope isn't easy. Instead, store it as another CMake variable so it
gets implicitly tracked along with everything else.

This works in a revert of commit
7d674b5f0b.
2014-12-03 11:06:44 -05:00
Brad King d90e288b7b Merge topic 'file-LOCK-command'
93017828 Help: Add notes for topic 'file-LOCK-command'
e6db4c5a file: Add LOCK subcommand to do file and directory locking
05d6531c cmSystemTools: Add StringToInt helper
2014-12-03 10:02:07 -05:00
Brad King 72c4128176 Merge topic 'doc-CMAKE_CXX_KNOWN_FEATURES-typo'
37d684bd Help: Fix typo in CMAKE_CXX_KNOWN_FEATURES docs
2014-12-03 10:01:52 -05:00
Brad King b9eac05fb6 Merge topic 'vs-hlsl-settings'
2a224b4c VS: Add source file properties to set the hlsl shader entry point and model
2014-12-03 10:01:49 -05:00
Brad King f773e28a8e Merge topic 'doc-Nsight-Tegra-toolchain'
23e2bd7e Help: Document Nsight Tegra toolchain configuration (#15276)
2014-12-03 10:01:47 -05:00
Brad King 53fa072e6a Merge topic 'add-continue-command'
0de867dd continue: Add a new CMake language command for loop continuation (#14013)
2014-12-03 10:01:44 -05:00
Brad King cf63779f35 Merge topic 'FindOpenGL-revert-imported-targets'
02e34de2 FindOpenGL: Revert support for imported targets (#15267)
2014-12-03 10:01:42 -05:00
Brad King 930178283a Help: Add notes for topic 'file-LOCK-command' 2014-12-03 09:47:44 -05:00
Ruslan Baratov e6db4c5a4e file: Add LOCK subcommand to do file and directory locking
Provide options to fail without blocking or to block up to a timeout.
Provide options to specify the scope containing the lock so it can be
released automatically at the end of a function, file, or process.

Extend the RunCMake.file test with cases covering the file(LOCK) command
usage and error cases.
2014-12-03 09:47:44 -05:00
Brad King 1c104c019a Merge branch 'vs-phone-store-deployment-location' into release 2014-12-03 09:32:42 -05:00
Brad King 7c28e7c172 Merge branch 'vs-hlsl-settings' into release 2014-12-03 09:32:38 -05:00
Brad King 0e7c7bd3df Merge branch 'doc-CMAKE_CXX_KNOWN_FEATURES-typo' into release 2014-12-03 09:32:32 -05:00
Brad King 206117af17 Merge branch 'doc-Nsight-Tegra-toolchain' into release 2014-12-03 09:32:22 -05:00
Gilles Khouzam 352f246f3e VS: Add source file property to specify Windows App deployment location
Add a VS_DEPLOYMENT_LOCATION source file property to specify where to
put files that are part of the package.  For example:

  set_property(SOURCE ${ASSET_FILES} PROPERTY VS_DEPLOYMENT_LOCATION "assets")

Without this, sources marked with VS_DEPLOYMENT_CONTENT cannot be
located properly.
2014-12-03 09:31:59 -05:00
Cedric Perthuis 2a224b4ce3 VS: Add source file properties to set the hlsl shader entry point and model
Create properties VS_SHADER_ENTRYPOINT and VS_SHADER_MODEL.  Without
these many .hlsl source files may not be possible to use.  Extend the
VSWinStorePhone test project to cover them.
2014-12-03 09:30:59 -05:00
David Demelier 37d684bd67 Help: Fix typo in CMAKE_CXX_KNOWN_FEATURES docs
Typo "ss defined" => "as defined".
2014-12-03 09:12:17 -05:00
Brad King 23e2bd7e8c Help: Document Nsight Tegra toolchain configuration (#15276) 2014-12-02 14:40:25 -05:00
Brad King f3ae286cc0 Merge branch 'FindOpenGL-revert-imported-targets' into release 2014-12-02 10:23:01 -05:00
Brad King b85cd1bd69 Merge branch 'doc-compile-features-typo' into release 2014-12-02 10:22:39 -05:00
Brad King c3c251ce0a Merge topic 'FindOpenGL-no-X11'
d051cbda FindOpenGL: Drop explicit dependency on X11 (#15268)
2014-12-02 10:21:22 -05:00
Brad King 5bc8282898 Merge topic 'doc-compile-features-typo'
64f8c533 Help: Fix typo in cmake-compile-features(7) manual
2014-12-02 10:21:21 -05:00
Brad King f39d713af6 Merge topic 'FindOpenSSL-separate-libs'
be9bec5d FindOpenSSL: Report crypto and ssl libraries separately
2014-12-02 10:21:14 -05:00
David Demelier 64f8c5336b Help: Fix typo in cmake-compile-features(7) manual
Fix spelling 'execptions' => 'exceptions'.
2014-12-02 09:20:22 -05:00
Brad King 02e34de2b6 FindOpenGL: Revert support for imported targets (#15267)
Revert the feature added by commit v3.1.0-rc1~420^2~2 (FindOpenGL:
Provide imported targets for GL and GLU, 2014-05-31).  Unfortunately it
does not work on Windows because the full path to each library file is
not actually known.  The IMPORTED_LOCATION of an imported target must be
a full path, but OPENGL_gl_LIBRARY is just 'opengl32' on Windows because
the actual library file is in some implicit link directory that we may
know know.

More infrastructure will be needed in CMake to allow a name-only
imported library.  Until that exists, we will not be able to provide
imported targets in FindOpenGL.
2014-12-01 16:01:09 -05:00
Brad King d051cbda5d FindOpenGL: Drop explicit dependency on X11 (#15268)
In commit 079e8469ab (... OpenGL always needs X11 on Unix, 2002-09-05)
the FindOpenGL module was taught to search for X11 as a dependency of
the OpenGL library.  This was done without a detailed explanation, and
the dependency should not be explicitly needed because OpenGL headers
should not expose applications to X11 APIs directly.

Unfortunately the only way to know if anything legitimately depends on
this behavior (perhaps in static library cases) is to simply remove it
and wait for issues to be reported.  If so, then we can add some kind of
compatibility setting for this later.  Add a release note to draw
attention to this change.

Reported-by: Dainius "GreatEmerald" Masiliūnas <pastas4@gmail.com>
2014-12-01 11:05:29 -05:00
Brad King 067b49a656 Merge topic 'doc-ctest-j-typo'
df53aafd Help: Add missing space to ctest -j option description
2014-12-01 10:01:28 -05:00
Gregor Jasny 0de867dde2 continue: Add a new CMake language command for loop continuation (#14013)
Inspired-by: Doug Barbieri
Signed-off-by: Gregor Jasny <gjasny@googlemail.com>
2014-12-01 09:50:49 -05:00