summaryrefslogtreecommitdiff
path: root/devel
diff options
context:
space:
mode:
authoragc <agc>2001-03-23 15:57:45 +0000
committeragc <agc>2001-03-23 15:57:45 +0000
commit8934bd69d908bb4535747d16c3ff2e8f0ebee381 (patch)
treee65747df18a06b85e140d95d651e4fb0ea6e6399 /devel
parent30c52dbfd95df4da6c2e8b957c6942b720bd3986 (diff)
downloadpkgsrc-8934bd69d908bb4535747d16c3ff2e8f0ebee381.tar.gz
Incorporate some patches from Wolfgang Solfrank (ws@tools.de)
"The changes to unproven-pthreads fix a problem with fstat not using the pthreads filedescriptors, but the native ones (the code for this was already there (slightly buggy), but it wasn't used for some unknown reason). In addition, the handling of select is improved, as the original code may wake up not all threads waiting for some event." Bump version number to unproven-pthreads-0.17nb2
Diffstat (limited to 'devel')
-rw-r--r--devel/unproven-pthreads/Makefile4
-rw-r--r--devel/unproven-pthreads/files/patch-sum35
-rw-r--r--devel/unproven-pthreads/patches/patch-ap20
-rw-r--r--devel/unproven-pthreads/patches/patch-aq35
-rw-r--r--devel/unproven-pthreads/patches/patch-ar100
5 files changed, 176 insertions, 18 deletions
diff --git a/devel/unproven-pthreads/Makefile b/devel/unproven-pthreads/Makefile
index 202f0b1f6cd..a2bb9f34fa6 100644
--- a/devel/unproven-pthreads/Makefile
+++ b/devel/unproven-pthreads/Makefile
@@ -1,8 +1,8 @@
-# $NetBSD: Makefile,v 1.21 2001/02/25 04:17:43 hubertf Exp $
+# $NetBSD: Makefile,v 1.22 2001/03/23 15:57:45 agc Exp $
#
DISTNAME= unproven-pthreads-0.17
-PKGNAME= ${DISTNAME}nb1
+PKGNAME= ${DISTNAME}nb2
CATEGORIES= devel
MASTER_SITES= ftp://ftp.flame.org/pub/netbsd/
diff --git a/devel/unproven-pthreads/files/patch-sum b/devel/unproven-pthreads/files/patch-sum
index 91dec8f5493..ba7db53d263 100644
--- a/devel/unproven-pthreads/files/patch-sum
+++ b/devel/unproven-pthreads/files/patch-sum
@@ -1,17 +1,20 @@
-$NetBSD: patch-sum,v 1.7 2001/01/10 03:18:17 briggs Exp $
+$NetBSD: patch-sum,v 1.8 2001/03/23 15:57:45 agc Exp $
-MD5 (patch-aa) = c22d3df041130ba62d48208de1f281c5
-MD5 (patch-ab) = 1e5276b89be447be4bb0983f6be81569
-MD5 (patch-ac) = c7df28ac1efaa1eb6c5c246ea2020aa9
-MD5 (patch-ad) = 3c6504ebf05008f1736b5c10680ccc87
-MD5 (patch-ae) = 7766b977f14b40509b56ac14ee0b767f
-MD5 (patch-af) = 6e42849e7483fa1b99871f4b274182dc
-MD5 (patch-ag) = c004c08ab5f156eb66f747c4f56d004d
-MD5 (patch-ah) = 8ab61f9ea67a6dd50e6af66f4ca07c5d
-MD5 (patch-ai) = 77f44d15c0a3a0a83e50443e0105c52c
-MD5 (patch-aj) = 441a7e4d630f1aacd405a4c8f28aca03
-MD5 (patch-ak) = bc07a9d4237009d3f327a62047633041
-MD5 (patch-al) = ec6839839009fb5897f3dd0dc94c3eeb
-MD5 (patch-am) = 1535b6eb6ffa7af13cdb16b9d5b3e4fc
-MD5 (patch-an) = 8d723c010f01cfb9911c099b6b5208e7
-MD5 (patch-ao) = 83e4f278aa81c2fb9a2b583514c7dde9
+SHA1 (patch-aa) = 21955c9af0fd80b6bd939631d79db7225a392ea1
+SHA1 (patch-ab) = 870977a372b34eecc44f8e32449e8a2e008b35a1
+SHA1 (patch-ac) = 0bace453902f1081d3d5b03af87d88a9717f1982
+SHA1 (patch-ad) = 7821707f34ca6c187ad3ed088b161ff8be249d62
+SHA1 (patch-ae) = 8bf343cd261c3cf25a30f44ffc0b0d0d09bba588
+SHA1 (patch-af) = cd5dea4351505f7183a3223c8849622e531608b7
+SHA1 (patch-ag) = fa046412dd222dc014768a448a5bd28c639d4aab
+SHA1 (patch-ah) = 123bce3c1730283a847cf0ee65039c73c40b7523
+SHA1 (patch-ai) = dd76c34072a56b2145077aad03f6de49cdf64a8c
+SHA1 (patch-aj) = 919431ce292c309116991cd02ac183379f1b5305
+SHA1 (patch-ak) = 6fc79597a694204d7266b46a50b39d25c81af2de
+SHA1 (patch-al) = 10d9c8354e8d032d3494505ea75b2cdb583295c0
+SHA1 (patch-am) = 72d33545b9705292261159ed1de4c9068475aeeb
+SHA1 (patch-an) = 6ad9a2b076fdefb75cbfd27bf304aedcad65d2a9
+SHA1 (patch-ao) = bcb19cf571bfdf7b3c7e8eaa128bb0cf79254c04
+SHA1 (patch-ap) = 9a1292ec8301fc38384198b3dc626f8faf85fd41
+SHA1 (patch-aq) = 1f3b6745ca3ac6b13e3575c230f0f7e5f7b9ec2f
+SHA1 (patch-ar) = 52b983df27904a21fcac75646aeddebe446c7a8c
diff --git a/devel/unproven-pthreads/patches/patch-ap b/devel/unproven-pthreads/patches/patch-ap
new file mode 100644
index 00000000000..e4bb4e5a555
--- /dev/null
+++ b/devel/unproven-pthreads/patches/patch-ap
@@ -0,0 +1,20 @@
+$NetBSD: patch-ap,v 1.1 2001/03/23 15:57:46 agc Exp $
+
+Patch from Wofgang Solfrank:
+
+The changes to unproven-pthreads fix a problem with fstat not using
+the pthreads filedescriptors, but the native ones (the code for this
+was already there (slightly buggy), but it wasn't used for some
+unknown reason). In addition, the handling of select is improved, as
+the original code may wake up not all threads waiting for some event.
+
+--- pthreads/Makefile.inc.orig Mon Jul 10 19:23:27 2000
++++ pthreads/Makefile.inc Fri Mar 23 15:43:59 2001
+@@ -9,6 +9,7 @@
+ process.c wait.c errno.c schedparam.c _exit.c prio_queue.c \
+ pthread_init.c init.cc sig.c info.c mutexattr.c select.c wrapper.c \
+ dump_state.c pthread_kill.c condattr.c
++SRCS+= stat.c
+
+ .if $(HAVE_SYSCALL_TEMPLATE) == yes
+ OBJS+= syscalls.o
diff --git a/devel/unproven-pthreads/patches/patch-aq b/devel/unproven-pthreads/patches/patch-aq
new file mode 100644
index 00000000000..407453409b0
--- /dev/null
+++ b/devel/unproven-pthreads/patches/patch-aq
@@ -0,0 +1,35 @@
+$NetBSD: patch-aq,v 1.1 2001/03/23 15:57:46 agc Exp $
+
+Patch from Wofgang Solfrank:
+
+The changes to unproven-pthreads fix a problem with fstat not using
+the pthreads filedescriptors, but the native ones (the code for this
+was already there (slightly buggy), but it wasn't used for some
+unknown reason). In addition, the handling of select is improved, as
+the original code may wake up not all threads waiting for some event.
+
+--- pthreads/stat.c.orig Sat Nov 6 23:30:50 1999
++++ pthreads/stat.c Fri Mar 23 15:43:59 2001
+@@ -54,7 +54,7 @@
+ int ret;
+
+ if ((ret = fd_lock(fd, FD_READ, NULL)) == OK) {
+- if ((ret = machdep_sys_fstat(fd_table[fd]->fd.i, buf)) < OK) {
++ if ((ret = machdep_sys_fstat(fd_table[fd]->fd, buf)) < OK) {
+ SET_ERRNO(-ret);
+ ret = NOTOK;
+ }
+@@ -63,6 +63,7 @@
+ return(ret);
+ }
+
++#ifdef __notdef__ /* Not neccessary (for now) */
+ /* ==========================================================================
+ * stat()
+ */
+@@ -92,4 +93,4 @@
+ return(ret);
+
+ }
+-
++#endif
diff --git a/devel/unproven-pthreads/patches/patch-ar b/devel/unproven-pthreads/patches/patch-ar
new file mode 100644
index 00000000000..59f42065d53
--- /dev/null
+++ b/devel/unproven-pthreads/patches/patch-ar
@@ -0,0 +1,100 @@
+$NetBSD: patch-ar,v 1.1 2001/03/23 15:57:46 agc Exp $
+
+Patch from Wofgang Solfrank:
+
+The changes to unproven-pthreads fix a problem with fstat not using
+the pthreads filedescriptors, but the native ones (the code for this
+was already there (slightly buggy), but it wasn't used for some
+unknown reason). In addition, the handling of select is improved, as
+the original code may wake up not all threads waiting for some event.
+
+--- pthreads/fd_kern.c.orig Mon Jul 10 19:23:28 2000
++++ pthreads/fd_kern.c Fri Mar 23 15:43:59 2001
+@@ -173,23 +173,26 @@
+ ; i++) {
+ int count_dec = 0;
+
+- if ((FD_ISSET(i, &pthread->data.select_data->exceptfds) &&
+- ! FD_ISSET(i, &fd_set_except))) {
+- FD_CLR(i, &pthread->data.select_data->exceptfds);
+- } else {
+- count_dec++;
+- }
+- if ((FD_ISSET(i, &pthread->data.select_data->writefds) &&
+- ! FD_ISSET(i, &fd_set_write))) {
+- FD_CLR(i, &pthread->data.select_data->writefds);
+- } else {
+- count_dec++;
+- }
+- if ((FD_ISSET(i, &pthread->data.select_data->readfds) &&
+- ! FD_ISSET(i, &fd_set_read))) {
+- FD_CLR(i, &pthread->data.select_data->readfds);
+- } else {
+- count_dec++;
++ if (FD_ISSET(i, &pthread->data.select_data->exceptfds)) {
++ if (!FD_ISSET(i, &fd_set_except)) {
++ FD_CLR(i, &pthread->data.select_data->exceptfds);
++ } else {
++ count_dec++;
++ }
++ }
++ if (FD_ISSET(i, &pthread->data.select_data->writefds)) {
++ if (!FD_ISSET(i, &fd_set_write)) {
++ FD_CLR(i, &pthread->data.select_data->writefds);
++ } else {
++ count_dec++;
++ }
++ }
++ if (FD_ISSET(i, &pthread->data.select_data->readfds)) {
++ if (!FD_ISSET(i, &fd_set_read)) {
++ FD_CLR(i, &pthread->data.select_data->readfds);
++ } else {
++ count_dec++;
++ }
+ }
+ if (count_dec) {
+ found_one++;
+@@ -312,23 +315,26 @@
+ for (i = 0; i < pthread->data.select_data->nfds; i++) {
+ int count_dec = 0;
+
+- if ((FD_ISSET(i, &pthread->data.select_data->exceptfds) &&
+- ! FD_ISSET(i, &fd_set_except))) {
+- FD_CLR(i, &pthread->data.select_data->exceptfds);
+- } else {
+- count_dec++;
+- }
+- if ((FD_ISSET(i, &pthread->data.select_data->writefds) &&
+- ! FD_ISSET(i, &fd_set_write))) {
+- FD_CLR(i, &pthread->data.select_data->writefds);
+- } else {
+- count_dec++;
+- }
+- if ((FD_ISSET(i, &pthread->data.select_data->readfds) &&
+- ! FD_ISSET(i, &fd_set_read))) {
+- FD_CLR(i, &pthread->data.select_data->readfds);
+- } else {
+- count_dec++;
++ if (FD_ISSET(i, &pthread->data.select_data->exceptfds)) {
++ if (!FD_ISSET(i, &fd_set_except)) {
++ FD_CLR(i, &pthread->data.select_data->exceptfds);
++ } else {
++ count_dec++;
++ }
++ }
++ if (FD_ISSET(i, &pthread->data.select_data->writefds)) {
++ if (!FD_ISSET(i, &fd_set_write)) {
++ FD_CLR(i, &pthread->data.select_data->writefds);
++ } else {
++ count_dec++;
++ }
++ }
++ if (FD_ISSET(i, &pthread->data.select_data->readfds)) {
++ if (!FD_ISSET(i, &fd_set_read)) {
++ FD_CLR(i, &pthread->data.select_data->readfds);
++ } else {
++ count_dec++;
++ }
+ }
+ if (count_dec) {
+ found_one++;