Refactoring in commit v3.5.0-rc1~272^2~16 (cmGeneratorTarget: Add API for property keys, 2015-10-25) changed the Xcode generator implementation of `XCODE_ATTRIBUTE_...` properties to use the target `GetProperty` method on each `XCODE_ATTRIBUTE_...` property listed by `GetPropertyKeys` instead of looping over the property entries directly. This made the lookup of property names of the form `XCODE_ATTRIBUTE_..._LOCATION` accidentally trigger the computed property logic for the undocumented/legacy `<CONFIG>_LOCATION` property. Of course the computed property value is not the same as the value stored in the `XCODE_ATTRIBUTE_..._LOCATION` property. Fix the computed property logic to avoid triggering on `XCODE_ATTRIBUTE_...` attributes. Closes: #16319
8 lines
369 B
CMake
8 lines
369 B
CMake
set(expect "DEPLOYMENT_LOCATION = YES")
|
|
file(STRINGS ${RunCMake_TEST_BINARY_DIR}/XcodeAttributeLocation.xcodeproj/project.pbxproj actual
|
|
REGEX "DEPLOYMENT_LOCATION = .*;" LIMIT_COUNT 1)
|
|
if(NOT "${actual}" MATCHES "${expect}")
|
|
message(SEND_ERROR "The actual project contains the line:\n ${actual}\n"
|
|
"which does not match expected regex:\n ${expect}\n")
|
|
endif()
|