summaryrefslogtreecommitdiffstats
path: root/Help/command/target_compile_options.rst
diff options
context:
space:
mode:
authorDeniz Bahadir <dbahadir@benocs.com>2017-09-18 15:50:11 (GMT)
committerBrad King <brad.king@kitware.com>2017-10-26 13:11:04 (GMT)
commitfe4b25ec2fa09a50b6ffbfcf29e118afdfba0659 (patch)
treead60a1043e9ec894f76171b686d1d7e83808e1fc /Help/command/target_compile_options.rst
parente40fd9fd19923c84be725da41c233100f400bd93 (diff)
downloadCMake-fe4b25ec2fa09a50b6ffbfcf29e118afdfba0659.zip
CMake-fe4b25ec2fa09a50b6ffbfcf29e118afdfba0659.tar.gz
CMake-fe4b25ec2fa09a50b6ffbfcf29e118afdfba0659.tar.bz2
Teach target_* commands to set INTERFACE properties of IMPORTED targets
Now, several `INTERFACE_*` properties can be set on `IMPORTED` targets, not only via `set_property` and `set_target_properties` but also via `target_compile_definitions`, `target_compile_features`, `target_compile_options`, `target_include_directories`, `target_sources` and `target_link_libraries`. Fixes: #15689 Issue: #17197
Diffstat (limited to 'Help/command/target_compile_options.rst')
-rw-r--r--Help/command/target_compile_options.rst11
1 files changed, 7 insertions, 4 deletions
diff --git a/Help/command/target_compile_options.rst b/Help/command/target_compile_options.rst
index 73e01e7..3e7dc47 100644
--- a/Help/command/target_compile_options.rst
+++ b/Help/command/target_compile_options.rst
@@ -12,8 +12,10 @@ Add compile options to a target.
Specify compile options to use when compiling a given target. The
named ``<target>`` must have been created by a command such as
:command:`add_executable` or :command:`add_library` and must not be an
-:ref:`IMPORTED Target <Imported Targets>`. If ``BEFORE`` is specified,
-the content will be prepended to the property instead of being appended.
+:ref:`ALIAS target <Alias Targets>`.
+
+If ``BEFORE`` is specified, the content will be prepended to the property
+instead of being appended.
This command can be used to add any options, but
alternative commands exist to add preprocessor definitions
@@ -27,8 +29,9 @@ The ``INTERFACE``, ``PUBLIC`` and ``PRIVATE`` keywords are required to
specify the scope of the following arguments. ``PRIVATE`` and ``PUBLIC``
items will populate the :prop_tgt:`COMPILE_OPTIONS` property of
``<target>``. ``PUBLIC`` and ``INTERFACE`` items will populate the
-:prop_tgt:`INTERFACE_COMPILE_OPTIONS` property of ``<target>``. The
-following arguments specify compile options. Repeated calls for the same
+:prop_tgt:`INTERFACE_COMPILE_OPTIONS` property of ``<target>``.
+(:ref:`IMPORTED targets <Imported Targets>` only support ``INTERFACE`` items.)
+The following arguments specify compile options. Repeated calls for the same
``<target>`` append items in the order called.
Arguments to ``target_compile_options`` may use "generator expressions"