CMake/Tests/CustomTransitiveProperties/object1.c
Brad King c16acd35b3 GenEx: Add support for custom transitive link properties
Teach the `$<TARGET_PROPERTY:...>` generator expression to check for a
new `TRANSITIVE_LINK_PROPERTIES` property in the target's link
closure to enable transitive evaluation of named properties through
the link closure, including entries guarded by `$<LINK_ONLY:...>`.

Fixes: #20416
2024-05-21 09:22:52 -04:00

65 lines
1.4 KiB
C

#ifndef CUSTOM_A_IFACE1
# error "CUSTOM_A_IFACE1 incorrectly not defined"
#endif
#ifndef CUSTOM_A_IFACE2
# error "CUSTOM_A_IFACE2 incorrectly not defined"
#endif
#ifndef CUSTOM_A_OBJECT1
# error "CUSTOM_A_OBJECT1 incorrectly not defined"
#endif
#ifndef CUSTOM_A_TARGET_NAME_OBJECT1
# error "CUSTOM_A_TARGET_NAME_OBJECT1 incorrectly not defined"
#endif
#ifndef CUSTOM_A_TARGET_TYPE_OBJECT_LIBRARY
# error "CUSTOM_A_TARGET_TYPE_OBJECT_LIBRARY incorrectly not defined"
#endif
#ifndef CUSTOM_C_IFACE1
# error "CUSTOM_C_IFACE1 incorrectly not defined"
#endif
#ifndef CUSTOM_C_OBJECT1
# error "CUSTOM_C_OBJECT1 incorrectly not defined"
#endif
#ifdef CUSTOM_C_OBJECT1_IFACE
# error "CUSTOM_C_OBJECT1_IFACE incorrectly defined"
#endif
#ifndef CUSTOM_U_IFACE1
# error "CUSTOM_U_IFACE1 incorrectly not defined"
#endif
#ifndef CUSTOM_U_IFACE2
# error "CUSTOM_U_IFACE2 incorrectly not defined"
#endif
#ifndef CUSTOM_U_OBJECT1
# error "CUSTOM_U_OBJECT1 incorrectly not defined"
#endif
#ifndef CUSTOM_U_TARGET_NAME_OBJECT1
# error "CUSTOM_U_TARGET_NAME_OBJECT1 incorrectly not defined"
#endif
#ifndef CUSTOM_U_TARGET_TYPE_OBJECT_LIBRARY
# error "CUSTOM_U_TARGET_TYPE_OBJECT_LIBRARY incorrectly not defined"
#endif
#ifndef CUSTOM_W_IFACE1
# error "CUSTOM_W_IFACE1 incorrectly not defined"
#endif
#ifndef CUSTOM_W_OBJECT1
# error "CUSTOM_W_OBJECT1 incorrectly not defined"
#endif
int object1(void)
{
return 0;
}