Source files can have properties that affect how they are built.
set_source_files_properties(<files> ...
[DIRECTORY <dirs> ...]
[TARGET_DIRECTORY <targets> ...]
PROPERTIES <prop1> <value1>
[<prop2> <value2>] ...)
Sets properties associated with source files using a key/value paired list.
Added in version 3.18: By default, source file properties are only visible to targets added in the same directory (CMakeLists.txt). Visibility can be set in other directory scopes using one or both of the following options:
DIRECTORY <dirs>... The source file properties will be set in each of the <dirs> directories' scopes. CMake must already know about each of these source directories, either by having added them through a call to add_subdirectory() or it being the top level source directory. Relative paths are treated as relative to the current source directory.
TARGET_DIRECTORY <targets>... The source file properties will be set in each of the directory scopes where any of the specified <targets> were created (the <targets> must therefore already exist).
Use get_source_file_property() to get property values. See also the set_property(SOURCE) command.
Note
The GENERATED source file property may be globally visible. See its documentation for details.
define_property()get_source_file_property()
© 2000–2024 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.31/command/set_source_files_properties.html