Update to Ruby 2.1.7.
This commit is contained in:
parent
f5e6624d6b
commit
4ec6f18cb7
@ -11,7 +11,7 @@ diff --git a/lib/mkmf.rb b/lib/mkmf.rb
|
||||
index 682eb46..e6b1445 100644
|
||||
--- a/lib/mkmf.rb
|
||||
+++ b/lib/mkmf.rb
|
||||
@@ -1829,7 +1829,7 @@ SRC
|
||||
@@ -1830,7 +1830,7 @@ SRC
|
||||
SHELL = /bin/sh
|
||||
|
||||
# V=0 quiet, V=1 verbose. other values don't work.
|
||||
|
@ -38,7 +38,7 @@ diff --git a/configure.in b/configure.in
|
||||
index 0e371e2..d4f1dcb 100644
|
||||
--- a/configure.in
|
||||
+++ b/configure.in
|
||||
@@ -3914,6 +3914,13 @@ AC_SUBST(rubyarchhdrdir)dnl
|
||||
@@ -3901,6 +3901,13 @@ AC_SUBST(rubyarchhdrdir)dnl
|
||||
AC_SUBST(sitearchhdrdir)dnl
|
||||
AC_SUBST(vendorarchhdrdir)dnl
|
||||
|
||||
|
@ -11,7 +11,7 @@ diff --git a/configure.in b/configure.in
|
||||
index 37d9a62..553d4d0 100644
|
||||
--- a/configure.in
|
||||
+++ b/configure.in
|
||||
@@ -3143,6 +3143,11 @@ if test ${multiarch+set}; then
|
||||
@@ -3130,6 +3130,11 @@ if test ${multiarch+set}; then
|
||||
fi
|
||||
|
||||
archlibdir='${libdir}/${arch}'
|
||||
|
@ -14,7 +14,7 @@ diff --git a/configure.in b/configure.in
|
||||
index 17ed3ed..5843651 100644
|
||||
--- a/configure.in
|
||||
+++ b/configure.in
|
||||
@@ -3718,8 +3718,6 @@ AS_CASE(["$target_os"],
|
||||
@@ -3705,8 +3705,6 @@ AS_CASE(["$target_os"],
|
||||
rubyw_install_name='$(RUBYW_INSTALL_NAME)'
|
||||
])
|
||||
|
||||
@ -23,7 +23,7 @@ index 17ed3ed..5843651 100644
|
||||
|
||||
rubyarchprefix=${multiarch+'${archlibdir}/${RUBY_BASE_NAME}'}${multiarch-'${rubylibprefix}/${arch}'}
|
||||
AC_ARG_WITH(rubyarchprefix,
|
||||
@@ -3749,6 +3747,7 @@ AC_ARG_WITH(ruby-version,
|
||||
@@ -3736,6 +3734,7 @@ AC_ARG_WITH(ruby-version,
|
||||
[ruby_version=full])
|
||||
unset RUBY_LIB_VERSION
|
||||
unset RUBY_LIB_VERSION_STYLE
|
||||
@ -31,7 +31,7 @@ index 17ed3ed..5843651 100644
|
||||
AS_CASE(["$ruby_version"],
|
||||
[full], [RUBY_LIB_VERSION_STYLE='3 /* full */'],
|
||||
[minor], [RUBY_LIB_VERSION_STYLE='2 /* minor */'])
|
||||
@@ -3765,30 +3764,34 @@ if test ${RUBY_LIB_VERSION_STYLE+set}; then
|
||||
@@ -3752,30 +3751,34 @@ if test ${RUBY_LIB_VERSION_STYLE+set}; then
|
||||
ruby_version="`$CPP -I. -I"${srcdir}" -I"${srcdir}/include" conftest.c | sed '/^ruby_version=/!d;s/ //g'`"
|
||||
eval $ruby_version
|
||||
elif test -z "${ruby_version}"; then
|
||||
|
@ -11,7 +11,7 @@ diff --git a/configure.in b/configure.in
|
||||
index 553d4d0..03a4152 100644
|
||||
--- a/configure.in
|
||||
+++ b/configure.in
|
||||
@@ -3830,6 +3830,8 @@ AC_SUBST(vendorarchdir)dnl
|
||||
@@ -3817,6 +3817,8 @@ AC_SUBST(vendorarchdir)dnl
|
||||
|
||||
AC_SUBST(configure_args, "`echo "${ac_configure_args}" | sed 's/\\$/$$/g'`")dnl
|
||||
|
||||
|
@ -15,7 +15,7 @@ diff --git a/configure.in b/configure.in
|
||||
index 03a4152..0e371e2 100644
|
||||
--- a/configure.in
|
||||
+++ b/configure.in
|
||||
@@ -3804,6 +3804,10 @@ AC_ARG_WITH(vendorarchdir,
|
||||
@@ -3791,6 +3791,10 @@ AC_ARG_WITH(vendorarchdir,
|
||||
[vendorarchdir=$withval],
|
||||
[vendorarchdir=${multiarch+'${rubysitearchprefix}/vendor_ruby/${ruby_version}'}${multiarch-'${vendorlibdir}/${sitearch}'}])
|
||||
|
||||
@ -26,7 +26,7 @@ index 03a4152..0e371e2 100644
|
||||
if test "${LOAD_RELATIVE+set}"; then
|
||||
AC_DEFINE_UNQUOTED(LOAD_RELATIVE, $LOAD_RELATIVE)
|
||||
RUBY_EXEC_PREFIX=''
|
||||
@@ -3827,6 +3831,7 @@ AC_SUBST(sitearchdir)dnl
|
||||
@@ -3814,6 +3818,7 @@ AC_SUBST(sitearchdir)dnl
|
||||
AC_SUBST(vendordir)dnl
|
||||
AC_SUBST(vendorlibdir)dnl
|
||||
AC_SUBST(vendorarchdir)dnl
|
||||
|
@ -1,183 +0,0 @@
|
||||
diff -urN ruby-2.1.3.orig/ext/tk/extconf.rb ruby-2.1.3/ext/tk/extconf.rb
|
||||
--- ruby-2.1.3.orig/ext/tk/extconf.rb 2013-11-30 11:46:47.000000000 +0900
|
||||
+++ ruby-2.1.3/ext/tk/extconf.rb 2014-10-19 17:50:33.045820645 +0900
|
||||
@@ -9,10 +9,10 @@
|
||||
# %w[8.9 8.8 8.7 8.6 8.5 8.4 8.3 8.2 8.1 8.0 7.6 4.2]
|
||||
# %w[8.7 8.6 8.5 8.4 8.3 8.2 8.1 8.0]
|
||||
# %w[8.7 8.6 8.5 8.4 8.0] # to shorten search steps
|
||||
- %w[8.5 8.4] # At present, Tcl/Tk8.6 is not supported.
|
||||
+ %w[8.6 8.5 8.4]
|
||||
|
||||
TkLib_Config['unsupported_versions'] =
|
||||
- %w[8.8 8.7 8.6] # At present, Tcl/Tk8.6 is not supported.
|
||||
+ %w[8.8 8.7]
|
||||
|
||||
TkLib_Config['major_nums'] = '87'
|
||||
|
||||
diff -urN ruby-2.1.3.orig/ext/tk/lib/tk.rb ruby-2.1.3/ext/tk/lib/tk.rb
|
||||
--- ruby-2.1.3.orig/ext/tk/lib/tk.rb 2011-05-27 08:36:33.000000000 +0900
|
||||
+++ ruby-2.1.3/ext/tk/lib/tk.rb 2014-10-19 17:48:59.046873862 +0900
|
||||
@@ -1309,8 +1309,12 @@
|
||||
end
|
||||
|
||||
unless interp.deleted?
|
||||
- #Thread.current[:status].value = TclTkLib.mainloop(false)
|
||||
- Thread.current[:status].value = interp.mainloop(false)
|
||||
+ begin
|
||||
+ #Thread.current[:status].value = TclTkLib.mainloop(false)
|
||||
+ Thread.current[:status].value = interp.mainloop(false)
|
||||
+ rescue Exception=>e
|
||||
+ puts "ignore exception on interp: #{e.inspect}\n" if $DEBUG
|
||||
+ end
|
||||
end
|
||||
|
||||
ensure
|
||||
@@ -1569,7 +1573,15 @@
|
||||
EOL
|
||||
=end
|
||||
|
||||
- at_exit{ INTERP.remove_tk_procs(TclTkLib::FINALIZE_PROC_NAME) }
|
||||
+ if !WITH_RUBY_VM || RUN_EVENTLOOP_ON_MAIN_THREAD ### check Ruby 1.9 !!!!!!!
|
||||
+ at_exit{ INTERP.remove_tk_procs(TclTkLib::FINALIZE_PROC_NAME) }
|
||||
+ else
|
||||
+ at_exit{
|
||||
+ Tk.root.destroy
|
||||
+ INTERP.remove_tk_procs(TclTkLib::FINALIZE_PROC_NAME)
|
||||
+ INTERP_THREAD.kill.join
|
||||
+ }
|
||||
+ end
|
||||
|
||||
EventFlag = TclTkLib::EventFlag
|
||||
|
||||
diff -urN ruby-2.1.3.orig/ext/tk/tcltklib.c ruby-2.1.3/ext/tk/tcltklib.c
|
||||
--- ruby-2.1.3.orig/ext/tk/tcltklib.c 2014-02-10 20:45:14.000000000 +0900
|
||||
+++ ruby-2.1.3/ext/tk/tcltklib.c 2014-10-19 19:17:00.014057636 +0900
|
||||
@@ -6020,15 +6025,38 @@
|
||||
}
|
||||
|
||||
rbtk_eventloop_depth++;
|
||||
- /* DUMP2("namespace wrapper enter depth == %d", rbtk_eventloop_depth); */
|
||||
+ DUMP2("namespace wrapper enter depth == %d", rbtk_eventloop_depth);
|
||||
|
||||
if (info.isNativeObjectProc) {
|
||||
+#if TCL_MAJOR_VERSION == 8 && TCL_MINOR_VERSION < 6
|
||||
+ DUMP1("call a native-object-proc");
|
||||
ret = (*(info.objProc))(info.objClientData, interp, objc, objv);
|
||||
+#else
|
||||
+ /* Tcl8.6 or later */
|
||||
+ int i;
|
||||
+ Tcl_Obj **cp_objv;
|
||||
+ char org_ns_cmd_name[] = "__orig_namespace_command__";
|
||||
+
|
||||
+ DUMP1("call a native-object-proc for tcl8.6 or later");
|
||||
+ cp_objv = RbTk_ALLOC_N(Tcl_Obj *, (objc + 1));
|
||||
+
|
||||
+ cp_objv[0] = Tcl_NewStringObj(org_ns_cmd_name, strlen(org_ns_cmd_name));
|
||||
+ for(i = 1; i < objc; i++) {
|
||||
+ cp_objv[i] = objv[i];
|
||||
+ }
|
||||
+ cp_objv[objc] = (Tcl_Obj *)NULL;
|
||||
+
|
||||
+ /* ret = Tcl_EvalObjv(interp, objc, cp_objv, TCL_EVAL_DIRECT); */
|
||||
+ ret = Tcl_EvalObjv(interp, objc, cp_objv, 0);
|
||||
+
|
||||
+ ckfree((char*)cp_objv);
|
||||
+#endif
|
||||
} else {
|
||||
/* string interface */
|
||||
int i;
|
||||
char **argv;
|
||||
|
||||
+ DUMP1("call with the string-interface");
|
||||
/* argv = (char **)Tcl_Alloc(sizeof(char *) * (objc + 1)); */
|
||||
argv = RbTk_ALLOC_N(char *, (objc + 1));
|
||||
#if 0 /* use Tcl_Preserve/Release */
|
||||
@@ -6068,6 +6097,8 @@
|
||||
Tcl_Interp *interp;
|
||||
{
|
||||
#if TCL_MAJOR_VERSION >= 8
|
||||
+
|
||||
+#if TCL_MAJOR_VERSION == 8 && TCL_MINOR_VERSION < 6
|
||||
Tcl_CmdInfo orig_info;
|
||||
|
||||
if (!Tcl_GetCommandInfo(interp, "namespace", &(orig_info))) {
|
||||
@@ -6084,6 +6115,11 @@
|
||||
orig_info.deleteProc);
|
||||
}
|
||||
|
||||
+#else /* tcl8.6 or later */
|
||||
+ Tcl_GlobalEval(interp, "rename namespace __orig_namespace_command__");
|
||||
+
|
||||
+#endif
|
||||
+
|
||||
Tcl_CreateObjCommand(interp, "namespace", ip_rbNamespaceObjCmd,
|
||||
(ClientData) 0, (Tcl_CmdDeleteProc *)NULL);
|
||||
#endif
|
||||
@@ -8448,15 +8484,28 @@
|
||||
#endif
|
||||
{
|
||||
struct invoke_info *inf = (struct invoke_info *)arg;
|
||||
+
|
||||
+#if TCL_MAJOR_VERSION >= 8 && TCL_MINOR_VERSION < 6
|
||||
int i, len;
|
||||
-#if TCL_MAJOR_VERSION >= 8
|
||||
int argc = inf->objc;
|
||||
char **argv = (char **)NULL;
|
||||
#endif
|
||||
|
||||
+ DUMP1("call invoke_tcl_proc");
|
||||
+
|
||||
+#if TCL_MAJOR_VERSION > 8 || (TCL_MAJOR_VERSION == 8 && TCL_MINOR_VERSION >= 6)
|
||||
+
|
||||
+ /* eval */
|
||||
+ inf->ptr->return_value = Tcl_EvalObjv(inf->ptr->ip, inf->objc, inf->objv, TCL_EVAL_DIRECT);
|
||||
+ /* inf->ptr->return_value = Tcl_EvalObjv(inf->ptr->ip, inf->objc, inf->objv, 0); */
|
||||
+
|
||||
+#else /* Tcl/Tk 7.x, 8.0 -- 8.5 */
|
||||
+
|
||||
/* memory allocation for arguments of this command */
|
||||
-#if TCL_MAJOR_VERSION >= 8
|
||||
+#if TCL_MAJOR_VERSION == 8
|
||||
+ /* Tcl/Tk 8.0 -- 8.5 */
|
||||
if (!inf->cmdinfo.isNativeObjectProc) {
|
||||
+ DUMP1("called proc is not a native-obj-proc");
|
||||
/* string interface */
|
||||
/* argv = (char **)ALLOC_N(char *, argc+1);*/ /* XXXXXXXXXX */
|
||||
argv = RbTk_ALLOC_N(char *, (argc+1));
|
||||
@@ -8470,11 +8519,14 @@
|
||||
}
|
||||
#endif
|
||||
|
||||
+ DUMP1("reset result of tcl-interp");
|
||||
Tcl_ResetResult(inf->ptr->ip);
|
||||
|
||||
/* Invoke the C procedure */
|
||||
-#if TCL_MAJOR_VERSION >= 8
|
||||
+#if TCL_MAJOR_VERSION == 8
|
||||
+ /* Tcl/Tk 8.0 -- 8.5 */
|
||||
if (inf->cmdinfo.isNativeObjectProc) {
|
||||
+ DUMP1("call tcl_proc as a native-obj-proc");
|
||||
inf->ptr->return_value
|
||||
= (*(inf->cmdinfo.objProc))(inf->cmdinfo.objClientData,
|
||||
inf->ptr->ip, inf->objc, inf->objv);
|
||||
@@ -8482,7 +8534,9 @@
|
||||
else
|
||||
#endif
|
||||
{
|
||||
-#if TCL_MAJOR_VERSION >= 8
|
||||
+#if TCL_MAJOR_VERSION == 8
|
||||
+ /* Tcl/Tk 8.0 -- 8.5 */
|
||||
+ DUMP1("call tcl_proc as not a native-obj-proc");
|
||||
inf->ptr->return_value
|
||||
= (*(inf->cmdinfo.proc))(inf->cmdinfo.clientData, inf->ptr->ip,
|
||||
argc, (CONST84 char **)argv);
|
||||
@@ -8505,6 +8559,9 @@
|
||||
#endif
|
||||
}
|
||||
|
||||
+#endif /* Tcl/Tk 8.6 or later || Tcl 7.x, 8.0 -- 8.5 */
|
||||
+
|
||||
+ DUMP1("end of invoke_tcl_proc");
|
||||
return Qnil;
|
||||
}
|
||||
|
13
ruby.spec
13
ruby.spec
@ -1,6 +1,6 @@
|
||||
%global major_version 2
|
||||
%global minor_version 1
|
||||
%global teeny_version 6
|
||||
%global teeny_version 7
|
||||
%global major_minor_version %{major_version}.%{minor_version}
|
||||
|
||||
%global ruby_version %{major_minor_version}.%{teeny_version}
|
||||
@ -21,10 +21,10 @@
|
||||
%endif
|
||||
|
||||
|
||||
%global release 30
|
||||
%global release 31
|
||||
%{!?release_string:%global release_string %{?development_release:0.}%{release}%{?development_release:.%{development_release}}%{?dist}}
|
||||
|
||||
%global rubygems_version 2.2.3
|
||||
%global rubygems_version 2.2.5
|
||||
|
||||
# The RubyGems library has to stay out of Ruby directory three, since the
|
||||
# RubyGems should be share by all Ruby implementations.
|
||||
@ -109,9 +109,6 @@ Patch6: ruby-2.1.0-Allow-to-specify-additional-preludes-by-configuratio.patch
|
||||
# Test are broken due to SSLv3 disabled in Fedora.
|
||||
# https://bugs.ruby-lang.org/issues/10046
|
||||
Patch7: ruby-2.2.0-Don-t-use-obsolete-SSLv3-for-tests.patch
|
||||
# Fix compatibility with Tcl/Tk 8.6.
|
||||
# https://bugs.ruby-lang.org/issues/8000
|
||||
Patch8: ruby-2.2.0-Support-tcl-tk-8.6.patch
|
||||
|
||||
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
|
||||
Requires: ruby(rubygems) >= %{rubygems_version}
|
||||
@ -373,7 +370,6 @@ Tcl/Tk interface for the object-oriented scripting language Ruby.
|
||||
%patch5 -p1
|
||||
%patch6 -p1
|
||||
%patch7 -p1
|
||||
%patch8 -p1
|
||||
|
||||
# Provide an example of usage of the tapset:
|
||||
cp -a %{SOURCE3} .
|
||||
@ -873,6 +869,9 @@ make check TESTS="-v $DISABLE_TESTS"
|
||||
%{ruby_libdir}/tkextlib
|
||||
|
||||
%changelog
|
||||
* Wed Sep 02 2015 Vít Ondruch <vondruch@redhat.com> - 2.1.7-31
|
||||
- Update to Ruby 2.1.7.
|
||||
|
||||
* Mon Jun 08 2015 Vít Ondruch <vondruch@redhat.com> - 2.1.6-30
|
||||
- Fix the RubyGems version (rhbz#1226679).
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user