diff options
author | drochner <drochner@pkgsrc.org> | 2009-04-07 10:53:07 +0000 |
---|---|---|
committer | drochner <drochner@pkgsrc.org> | 2009-04-07 10:53:07 +0000 |
commit | afee03fe6acf9c783fc996220bc14a157f2cc29c (patch) | |
tree | 39d8ea2c314a3b042d7eb339fac04541c7ac64ee /lang/guile | |
parent | 7238a35359e63efd1add49778cee414b71ef1747 (diff) | |
download | pkgsrc-afee03fe6acf9c783fc996220bc14a157f2cc29c.tar.gz |
support NetBSD's pthread_attr_get_np() which is similar to Linux's
pthread_getattr_np(), just different,
needed for get_thread_stack_base() to work which is needed for
the scm_init_guile() API
approved by gdt
bump PKGREVISION
Diffstat (limited to 'lang/guile')
-rw-r--r-- | lang/guile/Makefile | 4 | ||||
-rw-r--r-- | lang/guile/distinfo | 5 | ||||
-rw-r--r-- | lang/guile/patches/patch-am | 26 | ||||
-rw-r--r-- | lang/guile/patches/patch-an | 14 | ||||
-rw-r--r-- | lang/guile/patches/patch-ao | 31 |
5 files changed, 77 insertions, 3 deletions
diff --git a/lang/guile/Makefile b/lang/guile/Makefile index 45217d801e5..bc481e1dc70 100644 --- a/lang/guile/Makefile +++ b/lang/guile/Makefile @@ -1,7 +1,7 @@ -# $NetBSD: Makefile,v 1.89 2008/12/15 15:26:47 gdt Exp $ +# $NetBSD: Makefile,v 1.90 2009/04/07 10:53:07 drochner Exp $ DISTNAME= guile-1.8.6 -PKGREVISION= 2 +PKGREVISION= 3 CATEGORIES= lang MASTER_SITES= ${MASTER_SITE_GNU:=guile/} diff --git a/lang/guile/distinfo b/lang/guile/distinfo index c6b78463d10..9887fe64de3 100644 --- a/lang/guile/distinfo +++ b/lang/guile/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.40 2008/12/15 15:26:47 gdt Exp $ +$NetBSD: distinfo,v 1.41 2009/04/07 10:53:07 drochner Exp $ SHA1 (guile-1.8.6.tar.gz) = a3896f86044a2b3740dac43e045c349d656fba31 RMD160 (guile-1.8.6.tar.gz) = d6695d266a6091dc5fb1c688e3f0286f1c6d382e @@ -8,3 +8,6 @@ SHA1 (patch-ag) = 8aeb781ba43597f37b1ce4aaa2fb0baba2e4ce9c SHA1 (patch-ah) = 351136075aaaab96117fecc7cedc8ee989d8a1e0 SHA1 (patch-ak) = 6639ea95471a76893b0b074dcbfbd139a1571309 SHA1 (patch-al) = 6a5fb3136028bb5a5185ce7174a20d5f9d227e18 +SHA1 (patch-am) = 6806103e9887c4df39882fa8e68607fe97392e96 +SHA1 (patch-an) = 89ee76c4e74a7af3a5e2a8e65d889292de1768f1 +SHA1 (patch-ao) = b648826c5e951cd98ca6e2cdf48435cbdba096ff diff --git a/lang/guile/patches/patch-am b/lang/guile/patches/patch-am new file mode 100644 index 00000000000..62647744e41 --- /dev/null +++ b/lang/guile/patches/patch-am @@ -0,0 +1,26 @@ +$NetBSD: patch-am,v 1.5 2009/04/07 10:53:07 drochner Exp $ + +--- configure.orig 2008-12-08 18:49:13.000000000 +0100 ++++ configure +@@ -34249,7 +34249,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu + + + +-for ac_func in pthread_attr_getstack pthread_getattr_np pthread_get_stackaddr_np pthread_sigmask ++for ac_func in pthread_attr_getstack pthread_getattr_np pthread_get_stackaddr_np pthread_sigmask pthread_attr_get_np + do + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` + { $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +@@ -34610,7 +34610,12 @@ int main () + void *start, *end; + size_t size; + ++#if HAVE_PTHREAD_ATTR_GET_NP ++ pthread_attr_init(&attr); ++ pthread_attr_get_np(pthread_self (), &attr); ++#else + pthread_getattr_np (pthread_self (), &attr); ++#endif + pthread_attr_getstack (&attr, &start, &size); + end = (char *)start + size; + diff --git a/lang/guile/patches/patch-an b/lang/guile/patches/patch-an new file mode 100644 index 00000000000..72a0b84e2b3 --- /dev/null +++ b/lang/guile/patches/patch-an @@ -0,0 +1,14 @@ +$NetBSD: patch-an,v 1.1 2009/04/07 10:53:08 drochner Exp $ + +--- config.h.in.orig 2008-12-08 18:49:18.000000000 +0100 ++++ config.h.in +@@ -436,6 +436,9 @@ Boston, MA 02110-1301, USA. + /* Define to 1 if you have the `pthread_getattr_np' function. */ + #undef HAVE_PTHREAD_GETATTR_NP + ++/* XXX manually patched */ ++#undef HAVE_PTHREAD_ATTR_GET_NP ++ + /* Define to 1 if you have the `pthread_get_stackaddr_np' function. */ + #undef HAVE_PTHREAD_GET_STACKADDR_NP + diff --git a/lang/guile/patches/patch-ao b/lang/guile/patches/patch-ao new file mode 100644 index 00000000000..55960f2a283 --- /dev/null +++ b/lang/guile/patches/patch-ao @@ -0,0 +1,31 @@ +$NetBSD: patch-ao,v 1.3 2009/04/07 10:53:08 drochner Exp $ + +--- libguile/threads.c.orig 2008-12-08 18:42:56.000000000 +0100 ++++ libguile/threads.c +@@ -624,7 +624,7 @@ scm_i_init_thread_for_guile (SCM_STACKIT + + #if SCM_USE_PTHREAD_THREADS + +-#if HAVE_PTHREAD_ATTR_GETSTACK && HAVE_PTHREAD_GETATTR_NP ++#if HAVE_PTHREAD_ATTR_GETSTACK && (HAVE_PTHREAD_GETATTR_NP || HAVE_PTHREAD_ATTR_GET_NP) + /* This method for GNU/Linux and perhaps some other systems. + It's not for MacOS X or Solaris 10, since pthread_getattr_np is not + available on them. */ +@@ -637,9 +637,17 @@ get_thread_stack_base () + void *start, *end; + size_t size; + ++#ifdef HAVE_PTHREAD_ATTR_GET_NP ++ pthread_attr_init(&attr); ++ pthread_attr_get_np(pthread_self (), &attr); ++#else + pthread_getattr_np (pthread_self (), &attr); ++#endif + pthread_attr_getstack (&attr, &start, &size); + end = (char *)start + size; ++#ifdef HAVE_PTHREAD_ATTR_GET_NP ++ pthread_attr_destroy(&attr); ++#endif + + /* XXX - pthread_getattr_np from LinuxThreads does not seem to work + for the main thread, but we can use scm_get_stack_base in that |