aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Mk/bsd.ruby.mk4
-rw-r--r--lang/ruby19/files/patch-thread_pthread.c19
-rw-r--r--lang/ruby20/files/patch-thread_pthread.c19
3 files changed, 40 insertions, 2 deletions
diff --git a/Mk/bsd.ruby.mk b/Mk/bsd.ruby.mk
index 005a460866bd..d781dedc24e6 100644
--- a/Mk/bsd.ruby.mk
+++ b/Mk/bsd.ruby.mk
@@ -177,7 +177,7 @@ RUBY?= ${LOCALBASE}/bin/${RUBY_NAME}
# Ruby 1.9
#
RUBY_RELVERSION= 1.9.3
-RUBY_PORTREVISION= 0
+RUBY_PORTREVISION= 1
RUBY_PORTEPOCH= 1
RUBY_PATCHLEVEL= 484
@@ -204,7 +204,7 @@ RUBY20= "@comment "
# Ruby 2.0
#
RUBY_RELVERSION= 2.0.0
-RUBY_PORTREVISION= 3
+RUBY_PORTREVISION= 4
RUBY_PORTEPOCH= 1
RUBY_PATCHLEVEL= 353
diff --git a/lang/ruby19/files/patch-thread_pthread.c b/lang/ruby19/files/patch-thread_pthread.c
new file mode 100644
index 000000000000..d3a182729038
--- /dev/null
+++ b/lang/ruby19/files/patch-thread_pthread.c
@@ -0,0 +1,19 @@
+--- thread_pthread.c.orig 2013-03-28 10:10:00.000000000 +0000
++++ thread_pthread.c 2014-01-25 02:59:12.085473158 +0000
+@@ -1193,13 +1193,13 @@
+
+ pthread_attr_init(&attr);
+ #ifdef PTHREAD_STACK_MIN
+- if (PTHREAD_STACK_MIN < 4096 * 3) {
++ if (PTHREAD_STACK_MIN < 4096 * 4) {
+ /* Allocate the machine stack for the timer thread
+- * at least 12KB (3 pages). FreeBSD 8.2 AMD64 causes
++ * at least 16KB (4 pages). FreeBSD 8.2 AMD64 causes
+ * machine stack overflow only with PTHREAD_STACK_MIN.
+ */
+ pthread_attr_setstacksize(&attr,
+- 4096 * 3 + (THREAD_DEBUG ? BUFSIZ : 0));
++ 4096 * 4 + (THREAD_DEBUG ? BUFSIZ : 0));
+ }
+ else {
+ pthread_attr_setstacksize(&attr,
diff --git a/lang/ruby20/files/patch-thread_pthread.c b/lang/ruby20/files/patch-thread_pthread.c
new file mode 100644
index 000000000000..c3ae23dac5f2
--- /dev/null
+++ b/lang/ruby20/files/patch-thread_pthread.c
@@ -0,0 +1,19 @@
+--- thread_pthread.c.orig 2013-05-01 15:40:57.000000000 +0000
++++ thread_pthread.c 2014-01-25 03:00:55.044466722 +0000
+@@ -1420,13 +1420,13 @@
+ exit(EXIT_FAILURE);
+ }
+ # ifdef PTHREAD_STACK_MIN
+- if (PTHREAD_STACK_MIN < 4096 * 3) {
++ if (PTHREAD_STACK_MIN < 4096 * 4) {
+ /* Allocate the machine stack for the timer thread
+- * at least 12KB (3 pages). FreeBSD 8.2 AMD64 causes
++ * at least 16KB (4 pages). FreeBSD 8.2 AMD64 causes
+ * machine stack overflow only with PTHREAD_STACK_MIN.
+ */
+ pthread_attr_setstacksize(&attr,
+- 4096 * 3 + (THREAD_DEBUG ? BUFSIZ : 0));
++ 4096 * 4 + (THREAD_DEBUG ? BUFSIZ : 0));
+ }
+ else {
+ pthread_attr_setstacksize(&attr,