From f81d561b67e2188b7fdd1cbb782cba00db08af2e Mon Sep 17 00:00:00 2001 From: "Tim D. Smith" Date: Wed, 2 Sep 2015 11:05:31 -0700 Subject: [PATCH] always use opt_prefix in install_name dylib install_names are presently rewritten relative to HOMEBREW_PREFIX, except for keg-only formulas, which are rewritten relative to opt_prefix. If we make a formula keg_only, all of its dependents need to be bumped, since it will no longer exist in HOMEBREW_PREFIX and all of the links will be written incorrectly. If we always use opt_prefix, we avoid that dilemma, and make installed packages more robust if a dependency is `brew unlink`ed. Closes Homebrew/homebrew#43518. Signed-off-by: Dominyk Tiller --- Library/Homebrew/keg_relocate.rb | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/Library/Homebrew/keg_relocate.rb b/Library/Homebrew/keg_relocate.rb index 70ce8f5153..8c49949388 100644 --- a/Library/Homebrew/keg_relocate.rb +++ b/Library/Homebrew/keg_relocate.rb @@ -153,13 +153,7 @@ class Keg # the basename of the file itself. basename = File.basename(file.dylib_id) relative_dirname = file.dirname.relative_path_from(path) - shortpath = HOMEBREW_PREFIX.join(relative_dirname, basename) - - if shortpath.exist? && !options[:keg_only] - shortpath.to_s - else - opt_record.join(relative_dirname, basename).to_s - end + opt_record.join(relative_dirname, basename).to_s end def find_dylib(name)