GetPrerequisites: Make sure dyld placeholders are prefixes

Mac OS X dyld placeholders should be always prefixes, otherwise this can lead
to some undefined behavior.
This commit is contained in:
Adam Strzelecki 2014-09-04 12:28:41 +02:00 committed by Brad King
parent 6c31379741
commit 14bc686fff
1 changed files with 3 additions and 3 deletions

View File

@ -329,7 +329,7 @@ function(gp_resolve_item context item exepath dirs resolved_item_var)
endif()
if(NOT resolved)
if(item MATCHES "@executable_path")
if(item MATCHES "^@executable_path")
#
# @executable_path references are assumed relative to exepath
#
@ -347,7 +347,7 @@ function(gp_resolve_item context item exepath dirs resolved_item_var)
endif()
if(NOT resolved)
if(item MATCHES "@loader_path")
if(item MATCHES "^@loader_path")
#
# @loader_path references are assumed relative to the
# PATH of the given "context" (presumably another library)
@ -367,7 +367,7 @@ function(gp_resolve_item context item exepath dirs resolved_item_var)
endif()
if(NOT resolved)
if(item MATCHES "@rpath")
if(item MATCHES "^@rpath")
#
# @rpath references are relative to the paths built into the binaries with -rpath
# We handle this case like we do for other Unixes