Make fix_install_names more robust
fixes a problem with the opencv formula Closes Homebrew/homebrew#10291. Signed-off-by: Jack Nagel <jacknagel@gmail.com>
This commit is contained in:
parent
8cbaca5b76
commit
e32e2475bb
@ -5,8 +5,15 @@ class Keg
|
|||||||
dylib.ensure_writable do
|
dylib.ensure_writable do
|
||||||
system "install_name_tool", "-id", id, dylib
|
system "install_name_tool", "-id", id, dylib
|
||||||
bad_names.each do |bad_name|
|
bad_names.each do |bad_name|
|
||||||
# we should be more careful here, check the path we point to exists etc.
|
new_name = bad_name
|
||||||
system "install_name_tool", "-change", bad_name, "@loader_path/#{bad_name}", dylib
|
new_name = Pathname.new(bad_name).basename unless (dylib.parent + new_name).exist?
|
||||||
|
# this fixes some problems, maybe not all. opencv seems to have badnames of the type
|
||||||
|
# "lib/libblah.dylib"
|
||||||
|
if (dylib.parent + new_name).exist?
|
||||||
|
system "install_name_tool", "-change", bad_name, "@loader_path/#{new_name}", dylib
|
||||||
|
else
|
||||||
|
opoo "Could not fix install names for #{dylib}"
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user