diff options
| author | knu <knu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2018-04-29 11:15:41 +0000 |
|---|---|---|
| committer | knu <knu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2018-04-29 11:15:41 +0000 |
| commit | de2bfd3d9ca18a97b2d48462ac84c28f70bc3bac (patch) | |
| tree | fa5df37ee2cf62936eccf1fc47fc5bdb87e32057 | |
| parent | 058949ac13003ce54ba421b346977d75ee229bb0 (diff) | |
Remove the teeny part from the shared library name on macOS
This will prevent macOS users from having to rebuild all extension
libraries every time they upgrade ruby to a new teeny release.
Before:
- libruby.2.6.0.dylib
- libruby.2.6.dylib -> libruby.2.6.0.dylib
- libruby.dylib -> libruby.2.6.0.dylib
After:
- libruby.2.6.dylib
- libruby.dylib -> libruby.2.6.dylib
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63300 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
| -rw-r--r-- | NEWS | 12 | ||||
| -rw-r--r-- | configure.ac | 8 |
2 files changed, 16 insertions, 4 deletions
@@ -191,3 +191,15 @@ with all sufficient information, see the ChangeLog file or Redmine * VM generator script renewal; makes the generated VM more optimized. [GH-1779] === Miscellaneous changes + +* On macOS, shared libraries no longer include a full version number of ruby in their names. + This eliminates the burden of each teeny upgrade on the platform that users need to rebuild every extension library. + + * Before: + * libruby.2.6.0.dylib + * libruby.2.6.dylib -> libruby.2.6.0.dylib + * libruby.dylib -> libruby.2.6.0.dylib + + * After: + * libruby.2.6.dylib + * libruby.dylib -> libruby.2.6.dylib diff --git a/configure.ac b/configure.ac index 5b21e47c88..2ebfd431d2 100644 --- a/configure.ac +++ b/configure.ac @@ -2968,7 +2968,7 @@ AC_ARG_WITH(soname, [ AS_CASE(["$target_os"], [darwin*], [ - RUBY_SO_NAME='$(RUBY_BASE_NAME).$(RUBY_PROGRAM_VERSION)' + RUBY_SO_NAME='$(RUBY_BASE_NAME).$(RUBY_API_VERSION)' ], [cygwin*], [ RUBY_SO_NAME='$(RUBY_BASE_NAME)$(MAJOR)$(MINOR)0' @@ -3076,6 +3076,9 @@ AS_CASE("$enable_shared", [yes], [ LIBS="$LIBS -lm -lc" ], [darwin*], [ + LIBRUBY_SO='lib$(RUBY_SO_NAME).$(SOEXT)' + LIBRUBY_SONAME='$(LIBRUBY_SO)' + LIBRUBY_ALIASES='lib$(RUBY_INSTALL_NAME).$(SOEXT)' LIBRUBY_LDSHARED='$(CC) -dynamiclib' AS_IF([test "$load_relative" = yes], [ libprefix="@executable_path/../${libdir_basename}" @@ -3090,9 +3093,6 @@ AS_CASE("$enable_shared", [yes], [ LIBRUBY_DLDFLAGS="$LIBRUBY_DLDFLAGS "'-Wl,-unexported_symbol,*_threadptr_*' ]) LIBRUBY_DLDFLAGS="$LIBRUBY_DLDFLAGS "' $(XLDFLAGS)' - LIBRUBY_SO='lib$(RUBY_SO_NAME).$(SOEXT)' - LIBRUBY_SONAME='lib$(RUBY_BASE_NAME).$(RUBY_API_VERSION).$(SOEXT)' - LIBRUBY_ALIASES='$(LIBRUBY_SONAME) lib$(RUBY_INSTALL_NAME).$(SOEXT)' ], [interix*], [ LIBRUBYARG_SHARED='-L. -L${libdir} -l$(RUBY_SO_NAME)' |
