mirror of
https://github.com/reactos/CMake.git
synced 2024-12-12 22:05:57 +00:00
031d894fb8
These notes apply only for the use case of creating a package for redistribution on machines other than that where it is built. Clarify this to readers by placing the discussion in dedicated sections titled accordingly.
30 lines
1.2 KiB
ReStructuredText
30 lines
1.2 KiB
ReStructuredText
INTERFACE_INCLUDE_DIRECTORIES
|
|
-----------------------------
|
|
|
|
.. |property_name| replace:: include directories
|
|
.. |command_name| replace:: :command:`target_include_directories`
|
|
.. |PROPERTY_INTERFACE_NAME| replace:: ``INTERFACE_INCLUDE_DIRECTORIES``
|
|
.. |PROPERTY_LINK| replace:: :prop_tgt:`INCLUDE_DIRECTORIES`
|
|
.. |PROPERTY_GENEX| replace:: ``$<TARGET_PROPERTY:foo,INTERFACE_INCLUDE_DIRECTORIES>``
|
|
.. include:: INTERFACE_BUILD_PROPERTY.txt
|
|
|
|
Include directories usage requirements commonly differ between the build-tree
|
|
and the install-tree. The ``BUILD_INTERFACE`` and ``INSTALL_INTERFACE``
|
|
generator expressions can be used to describe separate usage requirements
|
|
based on the usage location. Relative paths are allowed within the
|
|
``INSTALL_INTERFACE`` expression and are interpreted relative to the
|
|
installation prefix. For example:
|
|
|
|
.. code-block:: cmake
|
|
|
|
target_include_directories(mylib INTERFACE
|
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include/mylib>
|
|
$<INSTALL_INTERFACE:include/mylib> # <prefix>/include/mylib
|
|
)
|
|
|
|
Creating Relocatable Packages
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
.. |INTERFACE_PROPERTY_LINK| replace:: ``INTERFACE_INCLUDE_DIRECTORIES``
|
|
.. include:: /include/INTERFACE_INCLUDE_DIRECTORIES_WARNING.txt
|