diff --git a/packages/ruby/android-sdk-level.patch b/packages/ruby/android-sdk-level.patch index 43f4cd291..b3e6e5625 100644 --- a/packages/ruby/android-sdk-level.patch +++ b/packages/ruby/android-sdk-level.patch @@ -1,12 +1,23 @@ -diff -uNr ruby-3.0.0/configure ruby-3.0.0.mod/configure ---- ruby-3.0.0/configure 2020-12-25 05:33:03.000000000 +0200 -+++ ruby-3.0.0.mod/configure 2021-02-09 18:11:38.400873131 +0200 -@@ -9105,7 +9105,7 @@ - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Android API version" >&5 +--- ruby-3.1.0/configure ++++ ruby-3.1.0.mod/configure +@@ -9234,13 +9234,19 @@ + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 + $as_echo "${msg_result_yes}yes${msg_reset}" >&6 ; } ++case ${target_os} in #( ++ *android*) : ++ ;; #( ++ *) : + target_os=${target_os}-android ++ ;; ++esac + if test "x$cross_compiling" = xno; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Android API version" >&5 $as_echo_n "checking for Android API version... " >&6; } - # hacky workaround: https://github.com/termux/termux-packages/issues/6176 -- rb_android_api=`getprop ro.build.version.sdk` -+ rb_android_api=24 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $rb_android_api" >&5 + # hacky workaround: https://github.com/termux/termux-packages/issues/6176 +- rb_android_api=`getprop ro.build.version.sdk` ++ rb_android_api=24 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $rb_android_api" >&5 colorize_result "$rb_android_api" ; } - # RUBY_APPEND_OPTIONS(CPPFLAGS) + # RUBY_APPEND_OPTIONS(CPPFLAGS) diff --git a/packages/ruby/build.sh b/packages/ruby/build.sh index 2b7755faa..4eaa71fe2 100644 --- a/packages/ruby/build.sh +++ b/packages/ruby/build.sh @@ -2,19 +2,16 @@ TERMUX_PKG_HOMEPAGE=https://www.ruby-lang.org/ TERMUX_PKG_DESCRIPTION="Dynamic programming language with a focus on simplicity and productivity" TERMUX_PKG_LICENSE="BSD 2-Clause" TERMUX_PKG_MAINTAINER="@termux" -TERMUX_PKG_VERSION=3.0.2 -TERMUX_PKG_REVISION=5 +TERMUX_PKG_VERSION=3.1.0 TERMUX_PKG_SRCURL=https://cache.ruby-lang.org/pub/ruby/${TERMUX_PKG_VERSION:0:3}/ruby-${TERMUX_PKG_VERSION}.tar.xz -TERMUX_PKG_SHA256=570e7773100f625599575f363831166d91d49a1ab97d3ab6495af44774155c40 +TERMUX_PKG_SHA256=1a0e0b69b9b062b6299ff1f6c6d77b66aff3995f63d1d8b8771e7a113ec472e2 # libbffi is used by the fiddle extension module: -TERMUX_PKG_DEPENDS="gdbm, libandroid-support, libffi, libgmp, readline, openssl, libyaml, zlib" +TERMUX_PKG_DEPENDS="libandroid-support, libffi, libgmp, readline, openssl, libyaml, zlib" TERMUX_PKG_RECOMMENDS="clang, make, pkg-config" TERMUX_PKG_BREAKS="ruby-dev" TERMUX_PKG_REPLACES="ruby-dev" # Needed to fix compilation on android: TERMUX_PKG_EXTRA_CONFIGURE_ARGS="ac_cv_func_setgroups=no ac_cv_func_setresuid=no ac_cv_func_setreuid=no --enable-rubygems" -# The gdbm module seems to be very little used: -TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" --without-gdbm" # Do not link in libcrypt.so if available (now in disabled-packages): TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" ac_cv_lib_crypt_crypt=no" # Fix DEPRECATED_TYPE macro clang compatibility: diff --git a/packages/ruby/fix-paths.patch b/packages/ruby/fix-paths.patch index 24e0d5531..afce393a1 100644 --- a/packages/ruby/fix-paths.patch +++ b/packages/ruby/fix-paths.patch @@ -19,18 +19,6 @@ diff -uNr ruby-3.0.0/addr2line.c ruby-3.0.0.mod/addr2line.c const size_t global_debug_dir_len = sizeof(global_debug_dir) - 1; char *p; obj_info_t *o1 = *objp, *o2; -diff -uNr ruby-3.0.0/dln.c ruby-3.0.0.mod/dln.c ---- ruby-3.0.0/dln.c 2020-12-25 05:33:01.000000000 +0200 -+++ ruby-3.0.0.mod/dln.c 2021-02-09 17:44:44.846333261 +0200 -@@ -154,7 +154,7 @@ - #endif - - #ifndef DLN_DEFAULT_LIB_PATH --# define DLN_DEFAULT_LIB_PATH "/lib:/usr/lib:/usr/local/lib:." -+# define DLN_DEFAULT_LIB_PATH "@TERMUX_PREFIX@/lib:." - #endif - - #include diff -uNr ruby-3.0.0/dln_find.c ruby-3.0.0.mod/dln_find.c --- ruby-3.0.0/dln_find.c 2020-12-25 05:33:01.000000000 +0200 +++ ruby-3.0.0.mod/dln_find.c 2021-02-09 17:35:46.039359196 +0200 @@ -211,19 +199,19 @@ diff -uNr ruby-3.0.0/process.c ruby-3.0.0.mod/process.c #endif /* _WIN32 */ return errno; } -diff -uNr ruby-3.0.0/ruby.c ruby-3.0.0.mod/ruby.c ---- ruby-3.0.0/ruby.c 2020-12-25 05:33:01.000000000 +0200 -+++ ruby-3.0.0.mod/ruby.c 2021-02-09 17:45:51.873636473 +0200 -@@ -333,7 +333,7 @@ - M("--jit-warnings", "", "Enable printing JIT warnings"), - M("--jit-debug", "", "Enable JIT debugging (very slow), or add cflags if specified"), - M("--jit-wait", "", "Wait until JIT compilation finishes every time (for testing)"), -- M("--jit-save-temps", "", "Save JIT temporary files in $TMP or /tmp (for testing)"), -+ M("--jit-save-temps", "", "Save JIT temporary files in $TMP or @TERMUX_PREFIX@/tmp (for testing)"), - M("--jit-verbose=num", "", "Print JIT logs of level num or less to stderr (default: 0)"), - M("--jit-max-cache=num", "", "Max number of methods to be JIT-ed in a cache (default: 100)"), - M("--jit-min-calls=num", "", "Number of calls to trigger JIT (for testing, default: 10000)"), -@@ -641,7 +641,7 @@ +diff -uNr ruby-3.1.0/ruby.c ruby-3.1.0.mod/ruby.c +--- ruby-3.1.0/ruby.c ++++ ruby-3.1.0.mod/ruby.c +@@ -359,7 +359,7 @@ + M("--mjit-warnings", "", "Enable printing JIT warnings"), + M("--mjit-debug", "", "Enable JIT debugging (very slow), or add cflags if specified"), + M("--mjit-wait", "", "Wait until JIT compilation finishes every time (for testing)"), +- M("--mjit-save-temps", "", "Save JIT temporary files in $TMP or /tmp (for testing)"), ++ M("--mjit-save-temps", "", "Save JIT temporary files in $TMP or @TERMUX_PREFIX@/tmp (for testing)"), + M("--mjit-verbose=num", "", "Print JIT logs of level num or less to stderr (default: 0)"), + M("--mjit-max-cache=num", "", "Max number of methods to be JIT-ed in a cache (default: 100)"), + M("--mjit-min-calls=num", "", "Number of calls to trigger JIT (for testing, default: 10000)"), +@@ -684,7 +684,7 @@ RUBY_ARCH_PATH; const ptrdiff_t libdir_len = (ptrdiff_t)sizeof(libdir) - rb_strlen_lit(RUBY_ARCH_PATH) - 1; diff --git a/packages/ruby/lib-rubygems-install_update_options.rb.patch b/packages/ruby/lib-rubygems-install_update_options.rb.patch index a06c97713..f6462549e 100644 --- a/packages/ruby/lib-rubygems-install_update_options.rb.patch +++ b/packages/ruby/lib-rubygems-install_update_options.rb.patch @@ -1,12 +1,11 @@ -diff -u -r ../ruby-2.4.0/lib/rubygems/install_update_options.rb ./lib/rubygems/install_update_options.rb ---- ../ruby-2.4.0/lib/rubygems/install_update_options.rb 2016-04-06 08:01:14.000000000 +0200 -+++ ./lib/rubygems/install_update_options.rb 2017-01-31 22:48:03.877466602 +0100 -@@ -232,7 +232,7 @@ - # Default options for the gem install command. +--- ruby-3.1.0/lib/rubygems/install_update_options.rb ++++ ruby-3.1.0.mod/lib/rubygems/install_update_options.rb +@@ -193,7 +193,7 @@ + # Default description for the gem install and update commands. def install_update_defaults_str -- '--document=rdoc,ri --wrappers' -+ '--document=rdoc,ri --wrappers,--env-shebang' +- '--document=ri' ++ '--document=ri --env-shebang' end end diff --git a/packages/ruby/tool-rbinstall.rb.patch b/packages/ruby/tool-rbinstall.rb.patch index 6c60a3dda..7de929af5 100644 --- a/packages/ruby/tool-rbinstall.rb.patch +++ b/packages/ruby/tool-rbinstall.rb.patch @@ -1,21 +1,20 @@ -diff -uNr ruby-3.0.0/tool/rbinstall.rb ruby-3.0.0.mod/tool/rbinstall.rb ---- ruby-3.0.0/tool/rbinstall.rb 2020-12-25 05:33:01.000000000 +0200 -+++ ruby-3.0.0.mod/tool/rbinstall.rb 2021-02-09 17:56:22.006372416 +0200 -@@ -897,7 +897,7 @@ +--- ruby-3.1.0/tool/rbinstall.rb ++++ ruby-3.1.0.mod/tool/rbinstall.rb +@@ -956,7 +956,7 @@ end - def install_default_gem(dir, srcdir) + def install_default_gem(dir, srcdir, bindir) - gem_dir = Gem.default_dir -+ gem_dir = "@TERMUX_PREFIX@/lib/ruby/gems/3.0.0" ++ gem_dir = "@TERMUX_PREFIX@/lib/ruby/gems/3.1.0" install_dir = with_destdir(gem_dir) prepare "default gems from #{dir}", gem_dir - makedirs(Gem.ensure_default_gem_subdirectories(install_dir, $dir_mode).map {|d| File.join(gem_dir, d)}) -@@ -943,7 +943,7 @@ - end + RbInstall.no_write do +@@ -1018,7 +1018,7 @@ + end + Gem.instance_variable_set(:@ruby, ruby_path) if Gem.ruby != ruby_path - install?(:ext, :comm, :gem, :'bundled-gems') do - gem_dir = Gem.default_dir -+ gem_dir = "@TERMUX_PREFIX@/lib/ruby/gems/3.0.0" ++ gem_dir = "@TERMUX_PREFIX@/lib/ruby/gems/3.1.0" install_dir = with_destdir(gem_dir) prepare "bundled gems", gem_dir - makedirs(Gem.ensure_gem_subdirectories(install_dir, $dir_mode).map {|d| File.join(gem_dir, d)}) + RbInstall.no_write do