summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Bingner <sam@bingner.com>2018-11-14 21:44:19 -1000
committerSam Bingner <sam@bingner.com>2018-11-14 21:44:19 -1000
commiteb85ac968649dbfa528424fcbbb73ea8258bed67 (patch)
tree8034899c9a508629314d1a31b9bbdf3185124678
parent1c4910de8117eb56ff68d6faffef673d6b0b7f06 (diff)
Update ruby to 2.5.3 and fix dpkg to be able to install it
-rw-r--r--data/_dpkg/long_file.diff13
-rw-r--r--data/ruby/_metadata/predepends1
-rw-r--r--data/ruby/_metadata/version2
-rw-r--r--data/ruby/arm.diff13
-rw-r--r--data/ruby/getaddrinfo.diff36
-rw-r--r--data/ruby/libtool.diff17
-rw-r--r--data/ruby/make.sh18
-rw-r--r--data/ruby/rdoc.diff21
-rw-r--r--data/ruby/ruby-2.5.3.tar.xz (renamed from data/ruby/ruby-1.9.2-p0.tar.gz)bin10787899 -> 11453336 bytes
-rw-r--r--data/ruby/strip.diff15
10 files changed, 77 insertions, 59 deletions
diff --git a/data/_dpkg/long_file.diff b/data/_dpkg/long_file.diff
new file mode 100644
index 000000000..8ed7b16fe
--- /dev/null
+++ b/data/_dpkg/long_file.diff
@@ -0,0 +1,13 @@
+diff -ur dpkg-1.18.25/lib/dpkg/tarfn.c dpkg-1.18.25+iPhone/lib/dpkg/tarfn.c
+--- dpkg-1.18.25/lib/dpkg/tarfn.c 2018-06-25 16:48:17.000000000 -1000
++++ dpkg-1.18.25+iPhone/lib/dpkg/tarfn.c 2018-11-14 21:23:25.000000000 -1000
+@@ -345,7 +345,8 @@
+ int long_read;
+
+ free(*longp);
+- *longp = bp = m_malloc(te->size);
++ *longp = bp = m_malloc(te->size+1);
++ bzero(bp, te->size+1);
+
+ for (long_read = te->size; long_read > 0; long_read -= TARBLKSZ) {
+ int copysize;
diff --git a/data/ruby/_metadata/predepends b/data/ruby/_metadata/predepends
new file mode 100644
index 000000000..d5613ee95
--- /dev/null
+++ b/data/ruby/_metadata/predepends
@@ -0,0 +1 @@
+dpkg (>= 1.18.25-4)
diff --git a/data/ruby/_metadata/version b/data/ruby/_metadata/version
index 811a2f484..aedc15bb0 100644
--- a/data/ruby/_metadata/version
+++ b/data/ruby/_metadata/version
@@ -1 +1 @@
-1.9.2-p0
+2.5.3
diff --git a/data/ruby/arm.diff b/data/ruby/arm.diff
deleted file mode 100644
index 3519cad58..000000000
--- a/data/ruby/arm.diff
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -ru ruby-1.9.2-rc2/configure.in ruby-1.9.2-rc2+iPhone/configure.in
---- ruby-1.9.2-rc2/configure.in 2010-07-10 04:06:05.000000000 +0000
-+++ ruby-1.9.2-rc2+iPhone/configure.in 2010-08-08 00:05:23.000000000 +0000
-@@ -185,6 +185,9 @@
- AC_MSG_CHECKING([for real target cpu])
- target=`echo $target | sed "s/^$target_cpu-/-/"`
- target_cpu=`$CC -E - 2>/dev/null <<EOF |
-+#ifdef __arm__
-+"processor-name=arm"
-+#endif
- #ifdef __x86_64__
- "processor-name=x86_64"
- #endif
diff --git a/data/ruby/getaddrinfo.diff b/data/ruby/getaddrinfo.diff
new file mode 100644
index 000000000..9b03ca667
--- /dev/null
+++ b/data/ruby/getaddrinfo.diff
@@ -0,0 +1,36 @@
+diff --git a/ext/socket/raddrinfo.c b/ext/socket/raddrinfo.c
+index dcabb2022eb1..41db6960ade8 100644
+--- a/ext/socket/raddrinfo.c
++++ b/ext/socket/raddrinfo.c
+@@ -145,15 +145,6 @@ ruby_getaddrinfo__darwin(const char *nodename, const char *servname,
+ #define getaddrinfo(node,serv,hints,res) ruby_getaddrinfo__darwin((node),(serv),(hints),(res))
+ #endif
+
+-#ifndef GETADDRINFO_EMU
+-struct getaddrinfo_arg
+-{
+- const char *node;
+- const char *service;
+- const struct addrinfo *hints;
+- struct addrinfo **res;
+-};
+-
+ #ifdef HAVE_INET_PTON
+ static int
+ parse_numeric_port(const char *service, int *portp)
+@@ -182,6 +173,15 @@ parse_numeric_port(const char *service, int *portp)
+ }
+ #endif
+
++#ifndef GETADDRINFO_EMU
++struct getaddrinfo_arg
++{
++ const char *node;
++ const char *service;
++ const struct addrinfo *hints;
++ struct addrinfo **res;
++};
++
+ static void *
+ nogvl_getaddrinfo(void *arg)
+ {
diff --git a/data/ruby/libtool.diff b/data/ruby/libtool.diff
new file mode 100644
index 000000000..e694d0853
--- /dev/null
+++ b/data/ruby/libtool.diff
@@ -0,0 +1,17 @@
+diff -ur ruby-2.5.3/configure.ac ruby-2.5.3+iPhone/configure.ac
+--- ruby-2.5.3/configure.ac 2018-01-03 08:12:16.000000000 -1000
++++ ruby-2.5.3+iPhone/configure.ac 2018-11-14 00:02:11.000000000 -1000
+@@ -465,13 +465,6 @@
+ CFLAGS="$save_CFLAGS"
+ ])])
+
+-AS_CASE(["$target_os"], [darwin*], [
+-if libtool 2>&1 | grep no_warning_for_no_symbols > /dev/null; then
+- ac_cv_prog_ac_ct_RANLIB=:
+- ac_cv_prog_ac_ct_AR='libtool -static'
+- rb_cv_arflags='-no_warning_for_no_symbols -o'
+-fi
+-])
+ AC_CHECK_TOOL(RANLIB, ranlib, :)
+ AC_CHECK_TOOL(AR, ar)
+ AS_IF([test -z "$AR"], [
diff --git a/data/ruby/make.sh b/data/ruby/make.sh
index 607ccdc54..86329954a 100644
--- a/data/ruby/make.sh
+++ b/data/ruby/make.sh
@@ -1,12 +1,12 @@
pkg:setup
autoconf
-pkg:configure ac_cv_func_setpgrp_void=yes rb_cv_binary_elf=no rb_cv_stack_grow_dir=-1 rb_cv_bsd_signal=yes ac_cv_type_getgroups=gid_t ac_cv_c_stack_direction=-1 ac_cv_func_memcmp_working=yes --enable-wide-getaddrinfo
-make
-cd ext/iconv
-touch iconv.c
-make LOCAL_LIBS=-liconv
-cd ../..
+mkdir x86
+cd x86
+env -i ../configure --disable-install-rdoc --disable-install-doc --prefix="$(pwd)/../x86rb"
+env -i make -j16
+mkdir ../x86rb
+make install
+cd ..
+pkg:configure ac_cv_func_setpgrp_void=yes rb_cv_binary_elf=no rb_cv_stack_grow_dir=-1 rb_cv_bsd_signal=yes ac_cv_type_getgroups=gid_t ac_cv_c_stack_direction=-1 ac_cv_func_memcmp_working=yes --enable-wide-getaddrinfo ac_cv_func_finite=yes --disable-install-doc --disable-install-rdoc --with-baseruby="$(pwd)/x86rb/bin/ruby"
+pkg:make
pkg:install
-pkg: rm -rf /usr/share/ri
-pkg: rm -f /usr/lib/libruby-static.a
-pkg: rm -f /usr/lib/libruby.1.9.1-static.a
diff --git a/data/ruby/rdoc.diff b/data/ruby/rdoc.diff
deleted file mode 100644
index 7bda89a18..000000000
--- a/data/ruby/rdoc.diff
+++ /dev/null
@@ -1,21 +0,0 @@
-diff -ru ruby-1.9.2-rc2/common.mk ruby-1.9.2-rc2+iPhone/common.mk
---- ruby-1.9.2-rc2/common.mk 2010-07-01 04:00:56.000000000 +0000
-+++ ruby-1.9.2-rc2+iPhone/common.mk 2010-08-08 00:16:06.000000000 +0000
-@@ -354,7 +354,7 @@
-
- rdoc: PHONY main
- @echo Generating RDoc documentation
-- $(XRUBY) "$(srcdir)/bin/rdoc" --no-force-update --all --ri --op "$(RDOCOUT)" $(RDOCFLAGS) "$(srcdir)"
-+ $(XRUBY) "$(srcdir)/bin/rdoc" --all --ri --op "$(RDOCOUT)" $(RDOCFLAGS) "$(srcdir)"
- nodoc: PHONY
-
- what-where-doc: no-install-doc
-diff -ru ruby-1.9.2-rc2/doc/re.rdoc ruby-1.9.2-rc2+iPhone/doc/re.rdoc
---- ruby-1.9.2-rc2/doc/re.rdoc 2010-04-10 06:36:13.000000000 +0000
-+++ ruby-1.9.2-rc2+iPhone/doc/re.rdoc 2010-08-08 00:32:03.000000000 +0000
-@@ -1,5 +1,3 @@
--# -*- mode: rdoc; coding: utf-8; fill-column: 74; -*-
--
- Regular expressions (<i>regexp</i>s) are patterns which describe the
- contents of a string. They're used for testing whether a string contains a
- given pattern, or extracting the portions that match. They are created
diff --git a/data/ruby/ruby-1.9.2-p0.tar.gz b/data/ruby/ruby-2.5.3.tar.xz
index 5fdbeeda8..09c20176d 100644
--- a/data/ruby/ruby-1.9.2-p0.tar.gz
+++ b/data/ruby/ruby-2.5.3.tar.xz
Binary files differ
diff --git a/data/ruby/strip.diff b/data/ruby/strip.diff
deleted file mode 100644
index 6ba8d49d8..000000000
--- a/data/ruby/strip.diff
+++ /dev/null
@@ -1,15 +0,0 @@
-diff -ru ruby-1.9.2-rc2/configure.in ruby-1.9.2-rc2+iPhone/configure.in
---- ruby-1.9.2-rc2/configure.in 2010-07-10 04:06:05.000000000 +0000
-+++ ruby-1.9.2-rc2+iPhone/configure.in 2010-08-07 23:48:29.000000000 +0000
-@@ -1967,9 +1967,9 @@
-
- AS_CASE(["$target_os"],
- [linux* | gnu* | k*bsd*-gnu | kopensolaris*-gnu], [
-- STRIP='strip -S -x'],
-+ STRIP=${STRIP}' -S -x'],
- [nextstep* | openstep* | rhapsody* | darwin*], [
-- STRIP='strip -A -n'])
-+ STRIP=${STRIP}' -A -n'])
-
- AC_ARG_WITH(ext,
- AC_HELP_STRING([--with-ext=EXTS],