summaryrefslogtreecommitdiff
path: root/tool
diff options
context:
space:
mode:
authorknu <knu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-06-01 07:13:38 +0000
committerknu <knu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-06-01 07:13:38 +0000
commit6251615c122037f162a6d838496a9c771f3952f0 (patch)
treecd009f4f12fa2fe8cb6f6761e9d78c49677f68be /tool
parentce2f4f852692a1583cbe15877f0c0f2384d53c0f (diff)
Skip colliding filenames in LIBRUBY_ALIASES
This allows user to specify any name in `--with-so-name` that might cause a name clash with LIBRUBY_ALIASES on the platform. Without this, for example, configuring with `--with-soname=ruby --enable-shared` on macOS would end up running `ln -sf libruby.dylib libruby.dylib` only to fail with the following error in installation: ``` make[2]: stat: libruby.dylib: Too many levels of symbolic links ``` git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63544 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'tool')
-rwxr-xr-xtool/rbinstall.rb2
1 files changed, 1 insertions, 1 deletions
diff --git a/tool/rbinstall.rb b/tool/rbinstall.rb
index 5a55b39add..194396321e 100755
--- a/tool/rbinstall.rb
+++ b/tool/rbinstall.rb
@@ -360,7 +360,7 @@ install?(:local, :arch, :lib, :'lib-arch') do
install lib, libdir, :mode => $prog_mode, :strip => $strip unless lib == arc
install arc, libdir, :mode => $data_mode unless CONFIG["INSTALL_STATIC_LIBRARY"] == "no"
if dll == lib and dll != arc
- for link in CONFIG["LIBRUBY_ALIASES"].split
+ for link in CONFIG["LIBRUBY_ALIASES"].split - [File.basename(dll)]
ln_sf(dll, File.join(libdir, link))
end
end