When FoundationMacros was moved into its own CMake project, we did not copy over the SWIFT_SYSTEM_NAME setting. This results in the rpath for libFoundationMacros.so being $ORIGIN/../../../swift/:$ORIGIN/.. instead of the correct value ($ORIGIN/../../../swift/linux:$ORIGIN/.. for linux, for example). This fixes the macro build which allows #Predicate and #Expression to work as expected.
(note for context that this set value is used on line 90 of this file: INSTALL_RPATH "$ORIGIN/../../../swift/${SWIFT_SYSTEM_NAME}:$ORIGIN/..")
When
FoundationMacros
was moved into its own CMake project, we did not copy over theSWIFT_SYSTEM_NAME
setting. This results in the rpath forlibFoundationMacros.so
being$ORIGIN/../../../swift/:$ORIGIN/..
instead of the correct value ($ORIGIN/../../../swift/linux:$ORIGIN/..
for linux, for example). This fixes the macro build which allows#Predicate
and#Expression
to work as expected.(note for context that this set value is used on line 90 of this file:
INSTALL_RPATH "$ORIGIN/../../../swift/${SWIFT_SYSTEM_NAME}:$ORIGIN/.."
)