summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--package/ruby/Makefile9
-rw-r--r--package/ruby/patches/0001-fix-default-coroutine-selection.patch21
-rw-r--r--package/ruby/patches/patch-configure16
3 files changed, 25 insertions, 21 deletions
diff --git a/package/ruby/Makefile b/package/ruby/Makefile
index dc629d5c5..3d4cbd822 100644
--- a/package/ruby/Makefile
+++ b/package/ruby/Makefile
@@ -4,9 +4,9 @@
include ${ADK_TOPDIR}/rules.mk
PKG_NAME:= ruby
-PKG_VERSION:= 2.7.1
+PKG_VERSION:= 3.0.0
PKG_RELEASE:= 1
-PKG_HASH:= d418483bdd0000576c1370571121a6eb24582116db0b7bb2005e90e250eae418
+PKG_HASH:= 68bfaeef027b6ccd0032504a68ae69721a70e97d921ff328c0c8836c798f6cb1
PKG_DESCR:= scripting language
PKG_SECTION:= dev/lang
PKG_DEPENDS:= libressl zlib
@@ -14,9 +14,7 @@ PKG_BUILDDEP:= ruby-host libressl zlib
HOST_BUILDDEP:= libressl-host
PKG_NEEDS:= threads
PKG_URL:= http://www.ruby-lang.org/
-PKG_SITES:= http://ftp.ruby-lang.org/pub/ruby/2.7/
-
-DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.gz
+PKG_SITES:= http://ftp.ruby-lang.org/pub/ruby/3.0/
include ${ADK_TOPDIR}/mk/host.mk
include ${ADK_TOPDIR}/mk/package.mk
@@ -24,6 +22,7 @@ include ${ADK_TOPDIR}/mk/package.mk
$(eval $(call HOST_template,RUBY,ruby,${PKG_VERSION}-${PKG_RELEASE}))
$(eval $(call PKG_template,RUBY,ruby,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
+AUTOTOOL_STYLE:= autoreconf
# uClibc setpgrp does not take arguments
CONFIGURE_ENV+= ac_cv_func_setpgrp_void=yes \
stack_protector=no \
diff --git a/package/ruby/patches/0001-fix-default-coroutine-selection.patch b/package/ruby/patches/0001-fix-default-coroutine-selection.patch
new file mode 100644
index 000000000..ea84aa9bc
--- /dev/null
+++ b/package/ruby/patches/0001-fix-default-coroutine-selection.patch
@@ -0,0 +1,21 @@
+fixed default coroutine selection for musl/uclibc
+
+https://github.com/ruby/ruby/pull/3567/commits/b570e7de87aaad8c903176d835e8124127f627b3
+
+Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
+
+diff -Nur ruby-3.0.0.orig/configure.ac ruby-3.0.0/configure.ac
+--- ruby-3.0.0.orig/configure.ac 2020-12-25 04:33:01.000000000 +0100
++++ ruby-3.0.0/configure.ac 2021-02-22 13:00:53.990314464 +0100
+@@ -2441,7 +2441,10 @@
+ rb_cv_coroutine=copy
+ ],
+ [
+- rb_cv_coroutine=ucontext
++ AC_CHECK_FUNCS([getcontext swapcontext makecontext],
++ [rb_cv_coroutine=ucontext],
++ [rb_cv_coroutine=copy; break]
++ )
+ ]
+ )
+ AC_MSG_RESULT(${rb_cv_coroutine})
diff --git a/package/ruby/patches/patch-configure b/package/ruby/patches/patch-configure
deleted file mode 100644
index 6a6360320..000000000
--- a/package/ruby/patches/patch-configure
+++ /dev/null
@@ -1,16 +0,0 @@
---- ruby-2.4.0.orig/configure 2016-12-23 17:06:46.000000000 +0100
-+++ ruby-2.4.0/configure 2017-01-30 03:08:52.351107663 +0100
-@@ -9412,6 +9412,13 @@ esac
- ac_cv_func_isinf=yes
- ac_cv_func_isnan=yes
- ;; #(
-+ linux*) :
-+ LIBS="-lm $LIBS"
-+ # finite(), isinf() and isnan() are macros on Linux.
-+ ac_cv_func_finite=yes
-+ ac_cv_func_isinf=yes
-+ ac_cv_func_isnan=yes
-+ ;; #(
- aix*) :
- LIBS="-lm $LIBS"
- ac_cv_func_round=no