set_source_files_properties — CMake 4.0.3 Documentation (original) (raw)

Source files can have properties that affect how they are built.

set_source_files_properties( ... [DIRECTORY ...] [TARGET_DIRECTORY ...] PROPERTIES [ ] ...)

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 toadd_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.

See Also