Skip to content

macOS: Restore compatibility for setting FRAMEWORK after install()

The FRAMEWORK target property affects the way the install() command treats the target and so should be set first. Our implementation assumed that this was always the case and led to an assertion failure. Prior to CMake 3.12 this was visible only when using an explicit LIBRARY ... NAMELINK_ONLY option, but !1982 (merged) made it possible with a simple LIBRARY DESTINATION.

Fully supporting out-of-order specification will require non-trivial refactoring to defer install generator creation to generate time. For now simply restore the old behavior of installing the framework to the library destination and warn about the case.

Fixes: #18848 (closed)

Merge request reports