summaryrefslogtreecommitdiff
path: root/lang/ruby19-base/patches/patch-as
diff options
context:
space:
mode:
Diffstat (limited to 'lang/ruby19-base/patches/patch-as')
-rw-r--r--lang/ruby19-base/patches/patch-as39
1 files changed, 39 insertions, 0 deletions
diff --git a/lang/ruby19-base/patches/patch-as b/lang/ruby19-base/patches/patch-as
new file mode 100644
index 00000000000..5e023ec0f18
--- /dev/null
+++ b/lang/ruby19-base/patches/patch-as
@@ -0,0 +1,39 @@
+$NetBSD: patch-as,v 1.1.1.1 2010/09/12 03:50:06 taca Exp $
+
+Handle 64bit size of time_t.
+
+--- thread_pthread.c.orig 2010-07-22 13:13:57.000000000 +0000
++++ thread_pthread.c
+@@ -17,6 +17,12 @@
+ #include <sys/resource.h>
+ #endif
+
++#if SIZEOF_TIME_T == 8
++#define FMT_TIME_T "lld"
++#else
++#define FMT_TIME_T "ld"
++#endif
++
+ static void native_mutex_lock(pthread_mutex_t *lock);
+ static void native_mutex_unlock(pthread_mutex_t *lock);
+ static int native_mutex_trylock(pthread_mutex_t *lock);
+@@ -620,7 +626,7 @@ native_sleep(rb_thread_t *th, struct tim
+ }
+ }
+
+- thread_debug("native_sleep %ld\n", tv ? tv->tv_sec : -1);
++ thread_debug("native_sleep %" FMT_TIME_T "\n", tv ? tv->tv_sec : -1);
+ GVL_UNLOCK_BEGIN();
+ {
+ pthread_mutex_lock(&th->interrupt_lock);
+@@ -642,8 +648,8 @@ native_sleep(rb_thread_t *th, struct tim
+ }
+ else {
+ int r;
+- thread_debug("native_sleep: pthread_cond_timedwait start (%ld, %ld)\n",
+- (unsigned long)ts.tv_sec, ts.tv_nsec);
++ thread_debug("native_sleep: pthread_cond_timedwait start (%"
++ FMT_TIME_T ", %ld)\n", ts.tv_sec, ts.tv_nsec);
+ r = pthread_cond_timedwait(&th->native_thread_data.sleep_cond,
+ &th->interrupt_lock, &ts);
+ if (r && r != ETIMEDOUT) rb_bug_errno("pthread_cond_timedwait", r);