diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | Makefile | 20 | ||||
-rw-r--r-- | Makefile.in | 20 | ||||
-rw-r--r-- | README | 30 | ||||
-rw-r--r-- | attr.c | 18 | ||||
-rw-r--r-- | cancel.c | 18 | ||||
-rw-r--r-- | cleanup.c | 18 | ||||
-rw-r--r-- | condvar.c | 18 | ||||
-rw-r--r-- | create.c | 18 | ||||
-rw-r--r-- | dll.c | 18 | ||||
-rw-r--r-- | exit.c | 18 | ||||
-rw-r--r-- | fork.c | 150 | ||||
-rw-r--r-- | global.c | 18 | ||||
-rw-r--r-- | implement.h | 18 | ||||
-rw-r--r-- | misc.c | 18 | ||||
-rw-r--r-- | mutex.c | 18 | ||||
-rw-r--r-- | private.c | 18 | ||||
-rw-r--r-- | pthread.h | 12 | ||||
-rw-r--r-- | sched.c | 18 | ||||
-rw-r--r-- | semaphore.c | 18 | ||||
-rw-r--r-- | signal.c | 18 | ||||
-rw-r--r-- | sync.c | 18 | ||||
-rw-r--r-- | tsd.c | 20 |
23 files changed, 395 insertions, 149 deletions
@@ -1,3 +1,7 @@ +Tue Mar 16 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au> + + * all: Add GNU LGPL and Copyright and Warranty. + Mon Mar 15 00:20:13 1999 Ross Johnson <rpj@ixobrychus.canberra.edu.au> * condvar.c (pthread_cond_init): fix possible uninitialised use @@ -1,3 +1,23 @@ +# +# Pthreads-win32 - POSIX Threads Library for Win32 +# Copyright (C) 1998 +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Library General Public +# License as published by the Free Software Foundation; either +# version 2 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Library General Public License for more details. +# +# You should have received a copy of the GNU Library General Public +# License along with this library; if not, write to the Free +# Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +# MA 02111-1307, USA +# + RM = erase CC = g++ diff --git a/Makefile.in b/Makefile.in index 4ee92b0..55228a9 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,3 +1,23 @@ +# +# Pthreads-win32 - POSIX Threads Library for Win32 +# Copyright (C) 1998 +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Library General Public +# License as published by the Free Software Foundation; either +# version 2 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Library General Public License for more details. +# +# You should have received a copy of the GNU Library General Public +# License along with this library; if not, write to the Free +# Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +# MA 02111-1307, USA +# + RM = erase CC = g++ @@ -1,24 +1,30 @@ -This directory contains an implementation of pthreads for Win32. +PTHREADS-WIN32 +============== + +Pthreads-win32 is free software, distributed under the GNU Library +General Public License (LGPL). See the file 'COPYING.LIB' for terms +and conditions. Mailing list ------------ -There is a mailing list for discussing pthreads on Win32 which is -managed by Majordomo. To subscribe, send mail to majordomo@air.net.au -and place the fllowing text in the message body: +There is a mailing list for discussing pthreads on Win32. To join, send +enail to: + + pthreads-win32-subscribe@sourceware.cygnus.com + - subscribe pthreads-win32 +Acknowledgements +---------------- +Pthreads-win32 is based substantially on a Win32 Pthreads implementation +contributed by John E. Bossom <jebossom@cognos.com>. -Building the library with Cygwin or Mingw32 ---------------------------------------------- -Feb 18, 1999 +See the 'MAINTAINERS' file for the list of contributors. -If you have a suitable environment then you can run the configure script, -otherwise you should edit "Makefile" and "config.h" as required. -gcc cannot be used because the library requires C++ EH. g++ must be usedi -(but see below). +Why you cannot build the library with Cygwin or Mingw32 +------------------------------------------------------- The DLL pthread.dll still cannot be built using g++ due to non thread-safe exception handling in g++. Thanks to Kevin Ruland for researching this @@ -3,6 +3,24 @@ * * Description: * This translation unit implements operations on thread attribute objects. + * + * Pthreads-win32 - POSIX Threads Library for Win32 + * Copyright (C) 1998 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free + * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + * MA 02111-1307, USA */ #include <memory.h> @@ -3,6 +3,24 @@ * * Description: * POSIX thread functions related to thread cancellation. + * + * Pthreads-win32 - POSIX Threads Library for Win32 + * Copyright (C) 1998 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free + * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + * MA 02111-1307, USA */ #include "pthread.h" @@ -4,6 +4,24 @@ * Description: * This translation unit implements routines associated cleaning up * threads. + * + * Pthreads-win32 - POSIX Threads Library for Win32 + * Copyright (C) 1998 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free + * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + * MA 02111-1307, USA */ #if !defined(_MSC_VER) && !defined(__cplusplus) && defined(__GNUC__) @@ -3,6 +3,24 @@ * * Description: * This translation unit implements condition variables and their primitives. + * + * Pthreads-win32 - POSIX Threads Library for Win32 + * Copyright (C) 1998 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free + * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + * MA 02111-1307, USA */ /* @@ -4,6 +4,24 @@ * Description: * This translation unit implements routines associated with spawning a new * thread. + * + * Pthreads-win32 - POSIX Threads Library for Win32 + * Copyright (C) 1998 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free + * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + * MA 02111-1307, USA */ #include "pthread.h" @@ -3,6 +3,24 @@ * * Description: * This translation unit implements DLL initialisation. + * + * Pthreads-win32 - POSIX Threads Library for Win32 + * Copyright (C) 1998 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free + * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + * MA 02111-1307, USA */ #include <malloc.h> @@ -4,6 +4,24 @@ * Description: * This translation unit implements routines associated with exiting from * a thread. + * + * Pthreads-win32 - POSIX Threads Library for Win32 + * Copyright (C) 1998 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free + * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + * MA 02111-1307, USA */ #include "pthread.h" @@ -3,141 +3,27 @@ * * Description: * Implementation of fork() for POSIX threads. + * + * Pthreads-win32 - POSIX Threads Library for Win32 + * Copyright (C) 1998 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free + * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + * MA 02111-1307, USA */ #include "pthread.h" #include "implement.h" -#if 0 /* Pre Bossom */ - -int -pthread_atfork(void (*prepare)(void), - void (*parent)(void), - void (*child)(void)) -{ - /* Push handlers (unless NULL) onto their respective stacks. - - Local implementation semantics: - If we get an ENOMEM at any time in here then ALL handlers - (including those from previous pthread_atfork() calls) will be - popped off each of the three atfork stacks before we return. */ - - int ret = 0; - - if (prepare != NULL) - { - /* Push prepare. */ - if (_pthread_handler_push(_PTHREAD_FORKPREPARE_STACK, - _PTHREAD_HANDLER_POP_FIFO, - (void (*)(void *)) prepare, - NULL) == ENOMEM) - { - ret = ENOMEM; - } - } - - if (parent != NULL && - ret != ENOMEM) - { - /* Push parent. */ - if (_pthread_handler_push(_PTHREAD_FORKPARENT_STACK, - _PTHREAD_HANDLER_POP_LIFO, - (void (*)(void *)) parent, - NULL) == ENOMEM) - { - ret = ENOMEM; - } - } - - if (child != NULL && - ret != ENOMEM) - { - /* Push child. */ - if (_pthread_handler_push(_PTHREAD_FORKCHILD_STACK, - _PTHREAD_HANDLER_POP_LIFO, - (void (*)(void *)) child, - NULL) == ENOMEM) - { - ret = ENOMEM; - } - } - - if (ret == ENOMEM) - { - /* Pop all handlers without executing them before we return - the error. */ - _pthread_handler_pop_all(_PTHREAD_FORKPREPARE_STACK, - _PTHREAD_HANDLER_NOEXECUTE); - - _pthread_handler_pop_all(_PTHREAD_FORKPARENT_STACK, - _PTHREAD_HANDLER_NOEXECUTE); - - _pthread_handler_pop_all(_PTHREAD_FORKCHILD_STACK, - _PTHREAD_HANDLER_NOEXECUTE); - } - - return ret; -} - -/* It looks like the GNU linker is capable of selecting this version of - fork() over a version provided in more primitive libraries further down - the linker command line. */ - -#if HAVE_PID_T && HAVE_FORK - -pid_t -fork() -{ - pid_t pid; - - /* Pop prepare handlers here. */ - _pthread_handler_pop_all(_PTHREAD_FORKPREPARE_STACK, - _PTHREAD_HANDLER_EXECUTE); - - /* Now call the real fork(). */ - - if ((pid = _fork()) > 0) - { - /* PARENT */ - /* Clear the child handler stack. */ - _pthread_handler_pop_all(_PTHREAD_FORKCHILD_STACK, - _PTHREAD_HANDLER_NOEXECUTE); - - /* Pop parent handlers and execute them. */ - _pthread_handler_pop_all(_PTHREAD_FORKPARENT_STACK, - _PTHREAD_HANDLER_EXECUTE); - - /* At this point all three atfork stacks are empty. */ - return pid; - } - else - { - /* CHILD */ - /* Clear the parent handler stack. */ - _pthread_handler_pop_all(_PTHREAD_FORKPARENT_STACK, - _PTHREAD_HANDLER_NOEXECUTE); - - /* Pop child handlers and execute them. */ - _pthread_handler_pop_all(_PTHREAD_FORKCHILD_STACK, - _PTHREAD_HANDLER_EXECUTE); - - /* At this point all three atfork stacks are empty. */ - - /* Terminate all threads except pthread_self() using - pthread_cancel(). */ - _pthread_cancel_all_not_self(); - - /* Wait for them to finish before we continue. */ - _pthread_join_all_not_self(); - - return 0; - } - - /* Not reached. */ - return 0; -} - -#endif /* HAVE_PID_T && HAVE_FORK */ - -#endif /* Pre Bossom */ @@ -4,6 +4,24 @@ * Description: * This translation unit instantiates data associated with the implementation * as a whole. + * + * Pthreads-win32 - POSIX Threads Library for Win32 + * Copyright (C) 1998 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free + * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + * MA 02111-1307, USA */ #include "pthread.h" diff --git a/implement.h b/implement.h index 6b7ae7a..3e9ff50 100644 --- a/implement.h +++ b/implement.h @@ -4,6 +4,24 @@ * Definitions that don't need to be public. * * Keeps all the internals out of pthread.h + * + * Pthreads-win32 - POSIX Threads Library for Win32 + * Copyright (C) 1998 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free + * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + * MA 02111-1307, USA */ #ifndef _IMPLEMENT_H @@ -3,6 +3,24 @@ * * Description: * This translation unit implements miscellaneous thread functions. + * + * Pthreads-win32 - POSIX Threads Library for Win32 + * Copyright (C) 1998 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free + * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + * MA 02111-1307, USA */ #include "pthread.h" @@ -3,6 +3,24 @@ * * Description: * This translation unit implements mutual exclusion (mutex) primitives. + * + * Pthreads-win32 - POSIX Threads Library for Win32 + * Copyright (C) 1998 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free + * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + * MA 02111-1307, USA */ #include <errno.h> @@ -4,6 +4,24 @@ * Description: * This translation unit implements routines which are private to * the implementation and may be used throughout it. + * + * Pthreads-win32 - POSIX Threads Library for Win32 + * Copyright (C) 1998 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free + * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + * MA 02111-1307, USA */ #if !defined(_MSC_VER) && !defined(__cplusplus) && defined(__GNUC__) @@ -1,18 +1,22 @@ /* This is the POSIX thread API (POSIX 1003). * + * Pthreads-win32 - POSIX Threads Library for Win32 + * Copyright (C) 1998 + * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. - * + * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Library General Public License for more details. - * + * * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * License along with this library; if not, write to the Free + * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + * MA 02111-1307, USA */ #if !defined( PTHREAD_H ) @@ -3,6 +3,24 @@ * * Description: * POSIX thread functions that deal with thread scheduling. + * + * Pthreads-win32 - POSIX Threads Library for Win32 + * Copyright (C) 1998 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free + * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + * MA 02111-1307, USA */ #define ENOSUP 0 diff --git a/semaphore.c b/semaphore.c index 5f7d083..4cb0a80 100644 --- a/semaphore.c +++ b/semaphore.c @@ -33,6 +33,24 @@ * --------------- * * ------------------------------------------------------------- + * + * Pthreads-win32 - POSIX Threads Library for Win32 + * Copyright (C) 1998 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free + * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + * MA 02111-1307, USA */ #include <sys/timeb.h> @@ -3,6 +3,24 @@ * * Description: * Thread-aware signal functions. + * + * Pthreads-win32 - POSIX Threads Library for Win32 + * Copyright (C) 1998 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free + * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + * MA 02111-1307, USA */ #include <errno.h> @@ -4,6 +4,24 @@ * Description: * This translation unit implements functions related to thread * synchronisation. + * + * Pthreads-win32 - POSIX Threads Library for Win32 + * Copyright (C) 1998 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free + * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + * MA 02111-1307, USA */ #include "pthread.h" @@ -3,8 +3,26 @@ * * Description: * POSIX thread functions which implement thread-specific data (TSD). + * + * Pthreads-win32 - POSIX Threads Library for Win32 + * Copyright (C) 1998 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free + * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, + * MA 02111-1307, USA */ - + #include "pthread.h" #include "implement.h" |