<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[94823] trunk/dports/lang/ruby</title>
</head>
<body>
<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="https://trac.macports.org/changeset/94823">94823</a></dd>
<dt>Author</dt> <dd>kimuraw@macports.org</dd>
<dt>Date</dt> <dd>2012-06-30 09:36:07 -0700 (Sat, 30 Jun 2012)</dd>
</dl>
<h3>Log Message</h3>
<pre>lang/ruby: upgrade to 1.8.7-p370.
- remove variant "thread_hooks". not maitained.
- fix error drbssl with openssl-1.0.1.</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkdportslangrubyPortfile">trunk/dports/lang/ruby/Portfile</a></li>
</ul>
<h3>Added Paths</h3>
<ul>
<li><a href="#trunkdportslangrubyfilespatchlibdrbsslrbdiff">trunk/dports/lang/ruby/files/patch-lib-drb-ssl.rb.diff</a></li>
</ul>
<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkdportslangrubyfilespatchthreadhooksdiff">trunk/dports/lang/ruby/files/patch-thread-hooks.diff</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkdportslangrubyPortfile"></a>
<div class="modfile"><h4>Modified: trunk/dports/lang/ruby/Portfile (94822 => 94823)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/ruby/Portfile 2012-06-30 15:39:57 UTC (rev 94822)
+++ trunk/dports/lang/ruby/Portfile 2012-06-30 16:36:07 UTC (rev 94823)
</span><span class="lines">@@ -4,7 +4,7 @@
</span><span class="cx"> PortGroup muniversal 1.0
</span><span class="cx">
</span><span class="cx"> name ruby
</span><del>-version 1.8.7-p358
</del><ins>+version 1.8.7-p370
</ins><span class="cx"> revision 0
</span><span class="cx">
</span><span class="cx"> categories lang ruby
</span><span class="lines">@@ -21,9 +21,9 @@
</span><span class="cx"> master_sites ruby:1.8
</span><span class="cx">
</span><span class="cx"> dist_subdir ruby
</span><del>-checksums md5 de35f00997f4ccee3e22dff0f2d01b8a \
- rmd160 7196a000d39e4cd24e7911839c828642d54377bd \
- sha1 2b78dc421cfbca81ef1375a1c3da9f0f70c548fa
</del><ins>+checksums md5 1e4c3194537dd8ff92e756993e55a29d \
+ rmd160 0c35ed92e4e77c6e6859d39244489c93f4efad50 \
+ sha1 92770a8159cd9049ffc5bc3ce4777b701eb19d7b
</ins><span class="cx">
</span><span class="cx"> use_bzip2 yes
</span><span class="cx">
</span><span class="lines">@@ -43,26 +43,32 @@
</span><span class="cx"> # like "getaddrinfo: nodename nor servname provided, or not
</span><span class="cx"> # known (SocketError)"
</span><span class="cx"> # c99: gperf generates code that doesn't work with clang (https://trac.macports.org/ticket/29974)
</span><ins>+# lib-drb-ssl.rb: 512bits rsa key is too small for openssl-1.0.1.
+# (http://bugs.ruby-lang.org/issues/6221)
</ins><span class="cx"> patchfiles patch-vendordir.diff \
</span><span class="cx"> patch-bug3604.diff \
</span><span class="cx"> patch-bug19050.diff \
</span><span class="cx"> patch-bug15528.diff \
</span><del>- patch-c99.diff
</del><ins>+ patch-c99.diff \
+ patch-lib-drb-ssl.rb.diff
</ins><span class="cx">
</span><span class="cx"> # ignore getcontext() and setcontext()
</span><del>-# on 10.5, these functions have some problems (SEGV on ppc, slower than 1.8.6)
</del><ins>+# on 10.5 or later, these functions have some problems (SEGV on ppc, slower than 1.8.6)
</ins><span class="cx"> # http://chopine.be/lrz/ruby-osx-patches/ignore-gsetcontext.diff
</span><span class="cx"> patchfiles-append patch-node.h.diff
</span><span class="cx">
</span><span class="cx"> use_parallel_build no
</span><span class="cx">
</span><del>-# #30275: ruby built with clang or llvm-gcc does not work
-# see list "MacPorts on Lion (common issues, fixes, and workarounds)"
-# http://lists.macosforge.org/pipermail/macports-dev/2011-July/015263.html
</del><ins>+# [OK] apple-gcc-4.2
+# clang (Xcode 4.2 or later) with CFLAGS="-std=c89 -O0"
+# [NG] llvm-gcc-4.2
+# clang (Xcode 4.1 or earlier)
+# clang (Xcode 4.2 or later) with CFLAGS=-O[12s]
</ins><span class="cx"> if {${configure.compiler} == "llvm-gcc-4.2"} {
</span><span class="cx"> configure.compiler gcc-4.2
</span><span class="cx"> } elseif {${configure.compiler} == "clang"} {
</span><span class="cx"> depends_build-append port:apple-gcc42
</span><ins>+ depends_skip_archcheck-append apple-gcc42
</ins><span class="cx"> configure.compiler apple-gcc-4.2
</span><span class="cx"> # base (as of 2.0.3) doesn't set cxx for apple-gcc-4.2
</span><span class="cx"> configure.cxx ${prefix}/bin/g++-apple-4.2
</span><span class="lines">@@ -142,10 +148,6 @@
</span><span class="cx"> configure.args-append --enable-tcltk-framework
</span><span class="cx"> }
</span><span class="cx">
</span><del>-variant thread_hooks description "apply Apple's thread_hooks patch" {
- patchfiles-append patch-thread-hooks.diff
-}
-
</del><span class="cx"> variant no_doc description "do not install rdoc documents" {
</span><span class="cx"> destroot.target-delete install-doc
</span><span class="cx"> }
</span><span class="lines">@@ -159,8 +161,6 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-default_variants +thread_hooks
-
</del><span class="cx"> livecheck.type regex
</span><span class="cx"> livecheck.url http://ftp.ruby-lang.org/pub/ruby/1.8/
</span><span class="cx"> livecheck.regex {ruby-(\d+(?:\.\d+)*(?:-p\d+))}
</span></span></pre></div>
<a id="trunkdportslangrubyfilespatchlibdrbsslrbdiff"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/ruby/files/patch-lib-drb-ssl.rb.diff (0 => 94823)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/ruby/files/patch-lib-drb-ssl.rb.diff (rev 0)
+++ trunk/dports/lang/ruby/files/patch-lib-drb-ssl.rb.diff 2012-06-30 16:36:07 UTC (rev 94823)
</span><span class="lines">@@ -0,0 +1,13 @@
</span><ins>+Index: lib/drb/ssl.rb
+===================================================================
+--- lib/drb/ssl.rb (revision 36225)
++++ lib/drb/ssl.rb (working copy)
+@@ -54,7 +54,7 @@
+ return
+ end
+
+- rsa = OpenSSL::PKey::RSA.new(512){|p, n|
++ rsa = OpenSSL::PKey::RSA.new(1024){|p, n|
+ next unless self[:verbose]
+ case p
+ when 0; $stderr.putc "." # BN_generate_prime
</ins></span></pre></div>
<a id="trunkdportslangrubyfilespatchthreadhooksdiff"></a>
<div class="delfile"><h4>Deleted: trunk/dports/lang/ruby/files/patch-thread-hooks.diff (94822 => 94823)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/ruby/files/patch-thread-hooks.diff 2012-06-30 15:39:57 UTC (rev 94822)
+++ trunk/dports/lang/ruby/files/patch-thread-hooks.diff 2012-06-30 16:36:07 UTC (rev 94823)
</span><span class="lines">@@ -1,130 +0,0 @@
</span><del>-diff -ur ../ruby-1.8.7-p160.mp_patched/eval.c ./eval.c
---- ../ruby-1.8.7-p160.mp_patched/eval.c 2009-03-23 18:28:31.000000000 +0900
-+++ ./eval.c 2009-04-18 00:19:27.000000000 +0900
-@@ -217,6 +217,25 @@
-
- #include <sys/stat.h>
-
-+
-+typedef struct threadswitch_hook {
-+ rb_threadswitch_hook_func_t func;
-+ struct threadswitch_hook *next;
-+} rb_threadswitch_hook_t;
-+
-+static rb_threadswitch_hook_t *threadswitch_hooks;
-+
-+#define EXEC_THREADSWITCH_HOOK(event, thread) \
-+ do { \
-+ rb_threadswitch_hook_t *hook = threadswitch_hooks; \
-+ \
-+ while (hook) { \
-+ (*hook->func)(event, thread); \
-+ hook = hook->next; \
-+ } \
-+ } while (0)
-+
-+
- VALUE rb_cProc;
- VALUE rb_cBinding;
- static VALUE proc_invoke _((VALUE,VALUE,VALUE,VALUE));
-@@ -10515,6 +10534,8 @@
- stack_free(th)
- rb_thread_t th;
- {
-+ EXEC_THREADSWITCH_HOOK(RUBY_THREADSWITCH_FREE,th->thread);
-+
- if (th->stk_ptr) free(th->stk_ptr);
- th->stk_ptr = 0;
- #ifdef __ia64
-@@ -10574,6 +10595,8 @@
- VALUE *pos;
- size_t len;
- static VALUE tval;
-+
-+ EXEC_THREADSWITCH_HOOK(RUBY_THREADSWITCH_SAVE,th->thread);
-
- len = ruby_stack_length(&pos);
- th->stk_len = 0;
-@@ -10768,6 +10791,8 @@
- #define STACK_PAD_SIZE 1024
- volatile VALUE space[STACK_PAD_SIZE], *sp = space;
-
-+ EXEC_THREADSWITCH_HOOK(RUBY_THREADSWITCH_RESTORE,th->thread);
-+
- #if !STACK_GROW_DIRECTION
- if (space < rb_gc_stack_start) {
- /* Stack grows downward */
-@@ -10897,6 +10922,41 @@
- rb_thread_main_jump(e, RESTORE_RAISE);
- }
-
-+void *
-+rb_add_threadswitch_hook(func)
-+ rb_threadswitch_hook_func_t func;
-+{
-+ rb_threadswitch_hook_t *hook;
-+ rb_thread_t th;
-+
-+ hook = ALLOC(rb_threadswitch_hook_t);
-+ hook->func = func;
-+ hook->next = threadswitch_hooks;
-+ threadswitch_hooks = hook;
-+
-+ FOREACH_THREAD(th) {
-+ (*func)(RUBY_THREADSWITCH_INIT, th->thread);
-+ } END_FOREACH(th);
-+
-+ return hook;
-+}
-+
-+void
-+rb_remove_threadswitch_hook(handle)
-+ void *handle;
-+{
-+ rb_threadswitch_hook_t **hook_p, *hook;
-+
-+ for (hook_p = &threadswitch_hooks; *hook_p; hook_p = &hook->next) {
-+ hook = *hook_p;
-+ if (hook == (rb_threadswitch_hook_t*)handle) {
-+ *hook_p = hook->next;
-+ xfree(hook);
-+ return;
-+ }
-+ }
-+}
-+
- static void
- copy_fds(dst, src, max)
- fd_set *dst, *src;
-@@ -12143,6 +12203,8 @@
- THREAD_ALLOC(th);
- th->thread = Data_Wrap_Struct(klass, thread_mark, thread_free, th);
-
-+ EXEC_THREADSWITCH_HOOK(RUBY_THREADSWITCH_INIT,th->thread);
-+
- for (vars = th->dyna_vars; vars; vars = vars->next) {
- if (FL_TEST(vars, DVAR_DONT_RECYCLE)) break;
- FL_SET(vars, DVAR_DONT_RECYCLE);
-diff -ur ../ruby-1.8.7-p160.mp_patched/ruby.h ./ruby.h
---- ../ruby-1.8.7-p160.mp_patched/ruby.h 2008-07-10 13:54:53.000000000 +0900
-+++ ./ruby.h 2009-04-18 00:16:34.000000000 +0900
-@@ -766,6 +766,19 @@
- void ruby_native_thread_kill _((int));
- #endif
-
-+
-+typedef unsigned int rb_threadswitch_event_t;
-+
-+#define RUBY_THREADSWITCH_INIT 0x01
-+#define RUBY_THREADSWITCH_FREE 0x02
-+#define RUBY_THREADSWITCH_SAVE 0x04
-+#define RUBY_THREADSWITCH_RESTORE 0x08
-+
-+typedef void (*rb_threadswitch_hook_func_t) _((rb_threadswitch_event_t,VALUE));
-+
-+void *rb_add_threadswitch_hook _((rb_threadswitch_hook_func_t func));
-+void rb_remove_threadswitch_hook _((void *handle));
-+
- #if defined(__cplusplus)
- #if 0
- { /* satisfy cc-mode */
</del></span></pre>
</div>
</div>
</body>
</html>