target_sources¶
Add sources to a target.
target_sources(<target>
<INTERFACE|PUBLIC|PRIVATE> [items1...]
[<INTERFACE|PUBLIC|PRIVATE> [items2...] ...])
Specify sources to use when compiling a given target. The
named <target>
must have been created by a command such as
add_executable()
or add_library()
and must not be an
IMPORTED Target.
The INTERFACE
, PUBLIC
and PRIVATE
keywords are required to
specify the scope of the following arguments. PRIVATE
and PUBLIC
items will populate the SOURCES
property of
<target>
. PUBLIC
and INTERFACE
items will populate the
INTERFACE_SOURCES
property of <target>
. The
following arguments specify sources. Repeated calls for the same
<target>
append items in the order called.
Targets with INTERFACE_SOURCES
may not be exported with the
export()
or install(EXPORT)
commands. This limitation may be
lifted in a future version of CMake.
Arguments to target_sources
may use “generator expressions”
with the syntax $<...>
. See the cmake-generator-expressions(7)
manual for available expressions. See the cmake-buildsystem(7)
manual for more on defining buildsystem properties.