OBJECT_NAME — CMake 4.4.3 Documentation

# OBJECT_NAME

Added in version 4.2.

Set the object name (without the object extension) of the source file. An empty string value disables custom object naming. The value must be a relative path, and may not include special directory components (e.g., `..`).

Note that the object name might not be used as-is in `CMAKE_INTERMEDIATE_DIR_STRATEGY` and `INSTALL_OBJECT_NAME_STRATEGY` strategies. It may be changed as the strategy requires to fulfill its goals.

When installing objects, the `INSTALL_OBJECT_NAME` property takes precedence.

This property supports `generator expressions`, but does not allow for context-sensitive (i.e., configuration-dependent) expressions.

Note

No collision resistance within a target is performed by CMake. When using this property, collisions must be avoided in the project code. CMake has a number of source files it generates that also create object files that may collide with a given custom name. These include:

- Generated PCH source files (`cmake_pch`)

- Generated Unity compilation files (`unity_...`)

- Qt autogen sources (`moc_compilations.cpp`)

Note

The `FASTBuild` and `Xcode` generators do not support this property and will ignore it.