diff options
author | 2017-09-15 09:32:48 +0200 | |
---|---|---|
committer | 2017-09-15 09:32:48 +0200 | |
commit | afeaabb79e38cb75e64da58fa68385de4f745b77 (patch) | |
tree | 4e7c1d15f6fd3d45227ae87b0730d84641aaeae8 /patchsets/patches-2.4.2/002_windows_crossdev.patch | |
parent | Patch set for 2.3.4-r3 (diff) | |
download | ruby-scripts-afeaabb79e38cb75e64da58fa68385de4f745b77.tar.gz ruby-scripts-afeaabb79e38cb75e64da58fa68385de4f745b77.tar.bz2 ruby-scripts-afeaabb79e38cb75e64da58fa68385de4f745b77.zip |
Add new ruby patchsets
Diffstat (limited to 'patchsets/patches-2.4.2/002_windows_crossdev.patch')
-rw-r--r-- | patchsets/patches-2.4.2/002_windows_crossdev.patch | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/patchsets/patches-2.4.2/002_windows_crossdev.patch b/patchsets/patches-2.4.2/002_windows_crossdev.patch new file mode 100644 index 0000000..7e290d4 --- /dev/null +++ b/patchsets/patches-2.4.2/002_windows_crossdev.patch @@ -0,0 +1,64 @@ +Bug: https://bugs.gentoo.org/show_bug.cgi?id=618878 + +A few patches to make crossdev for mingw-w64 play nice with ruby's ebuilds. +Basic gist is that without the following patch to configure.in ruby-2.4.1 +hardcodes 240 into the shared, static, and import library names, which when +built with the current ruby ebuilds results in names like libx64-msvcrt-ruby24240.dll and so on. The patch is in ruby-trunk[1], but may take a while +to hit the tarballs that gentoo uses. + +Index: configure.in +=================================================================== +--- a/configure.in (revision 57824) ++++ b/configure.in (revision 57825) +@@ -3825,7 +3825,23 @@ + + AC_ARG_WITH(soname, + AS_HELP_STRING([--with-soname=SONAME], [base name of shared library]), +- [RUBY_SO_NAME=$withval], [RUBY_SO_NAME='$(RUBY_BASE_NAME)']) ++ [RUBY_SO_NAME=$withval], ++ [ ++ AS_CASE(["$target_os"], ++ [darwin*], [ ++ RUBY_SO_NAME='$(RUBY_BASE_NAME).$(RUBY_PROGRAM_VERSION)' ++ ], ++ [cygwin*], [ ++ RUBY_SO_NAME='$(RUBY_BASE_NAME)$(MAJOR)$(MINOR)0' ++ ], ++ [mingw*], [ ++ RUBY_SO_NAME="${rb_cv_msvcrt}"'-$(RUBY_BASE_NAME)$(MAJOR)$(MINOR)0' ++ AS_IF([test x"${target_cpu}" != xi386], [ ++ RUBY_SO_NAME="${target_cpu}-${RUBY_SO_NAME}" ++ ]) ++ ], ++ [RUBY_SO_NAME='$(RUBY_BASE_NAME)']) ++ ]) + + LIBRUBY_LDSHARED=$LDSHARED + LIBRUBY_DLDFLAGS=$DLDFLAGS +@@ -3925,7 +3941,6 @@ + SOLIBS='-lm -lc' + ], + [darwin*], [ +- RUBY_SO_NAME="$RUBY_SO_NAME"'.$(RUBY_PROGRAM_VERSION)' + LIBRUBY_LDSHARED='$(CC) -dynamiclib' + if test "$load_relative" = yes; then + libprefix="@executable_path/../${libdir_basename}" +@@ -4157,7 +4172,6 @@ + fi + ], + [cygwin*|mingw*], [ +- RUBY_SO_NAME="${RUBY_SO_NAME}"'$(MAJOR)$(MINOR)0' + LIBRUBY_DLDFLAGS="${DLDFLAGS}"' -Wl,--out-implib=$(LIBRUBY)' + AS_CASE(["$target_os"], + [cygwin*], [ +@@ -4167,10 +4181,6 @@ + fi + ], + [mingw*], [ +- RUBY_SO_NAME="${rb_cv_msvcrt}-${RUBY_SO_NAME}" +- if test x"${target_cpu}" != xi386; then +- RUBY_SO_NAME="${target_cpu}-${RUBY_SO_NAME}" +- fi + if test x"$enable_shared" = xyes; then + LIBRUBY_SO='$(RUBY_SO_NAME)'.dll + LIBRUBY_DLDFLAGS="${LIBRUBY_DLDFLAGS}"' $(RUBYDEF)' |