This library is only required by physac module to compulte physics in a second threadpull/135/head
| @ -0,0 +1,150 @@ | |||||
| pthreads-win32 - a POSIX threads library for Microsoft Windows | |||||
| This file is Copyrighted | |||||
| ------------------------ | |||||
| This file is covered under the following Copyright: | |||||
| Copyright (C) 2001,2006 Ross P. Johnson | |||||
| All rights reserved. | |||||
| Everyone is permitted to copy and distribute verbatim copies | |||||
| of this license document, but changing it is not allowed. | |||||
| Pthreads-win32 is covered by the GNU Lesser General Public License | |||||
| ------------------------------------------------------------------ | |||||
| Pthreads-win32 is open software; you can redistribute it and/or | |||||
| modify it under the terms of the GNU Lesser General Public License | |||||
| as published by the Free Software Foundation version 2.1 of the | |||||
| License. | |||||
| Pthreads-win32 is several binary link libraries, several modules, | |||||
| associated interface definition files and scripts used to control | |||||
| its compilation and installation. | |||||
| Pthreads-win32 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 Lesser General Public License for more details. | |||||
| A copy of the GNU Lesser General Public License is distributed with | |||||
| pthreads-win32 under the filename: | |||||
| COPYING.LIB | |||||
| You should have received a copy of the version 2.1 GNU Lesser General | |||||
| Public License with pthreads-win32; if not, write to: | |||||
| Free Software Foundation, Inc. | |||||
| 59 Temple Place | |||||
| Suite 330 | |||||
| Boston, MA 02111-1307 | |||||
| USA | |||||
| The contact addresses for pthreads-win32 is as follows: | |||||
| Web: http://sources.redhat.com/pthreads-win32 | |||||
| Email: Ross Johnson | |||||
| Please use: Firstname.Lastname@homemail.com.au | |||||
| Pthreads-win32 copyrights and exception files | |||||
| --------------------------------------------- | |||||
| With the exception of the files listed below, Pthreads-win32 | |||||
| is covered under the following GNU Lesser General Public License | |||||
| Copyrights: | |||||
| Pthreads-win32 - POSIX Threads Library for Win32 | |||||
| Copyright(C) 1998 John E. Bossom | |||||
| Copyright(C) 1999,2006 Pthreads-win32 contributors | |||||
| The current list of contributors is contained | |||||
| in the file CONTRIBUTORS included with the source | |||||
| code distribution. The current list of CONTRIBUTORS | |||||
| can also be seen at the following WWW location: | |||||
| http://sources.redhat.com/pthreads-win32/contributors.html | |||||
| Contact Email: Ross Johnson | |||||
| Please use: Firstname.Lastname@homemail.com.au | |||||
| These files are not covered under one of the Copyrights listed above: | |||||
| COPYING | |||||
| COPYING.LIB | |||||
| tests/rwlock7.c | |||||
| This file, COPYING, is distributed under the Copyright found at the | |||||
| top of this file. It is important to note that you may distribute | |||||
| verbatim copies of this file but you may not modify this file. | |||||
| The file COPYING.LIB, which contains a copy of the version 2.1 | |||||
| GNU Lesser General Public License, is itself copyrighted by the | |||||
| Free Software Foundation, Inc. Please note that the Free Software | |||||
| Foundation, Inc. does NOT have a copyright over Pthreads-win32, | |||||
| only the COPYING.LIB that is supplied with pthreads-win32. | |||||
| The file tests/rwlock7.c is derived from code written by | |||||
| Dave Butenhof for his book 'Programming With POSIX(R) Threads'. | |||||
| The original code was obtained by free download from his website | |||||
| http://home.earthlink.net/~anneart/family/Threads/source.html | |||||
| and did not contain a copyright or author notice. It is assumed to | |||||
| be freely distributable. | |||||
| In all cases one may use and distribute these exception files freely. | |||||
| And because one may freely distribute the LGPL covered files, the | |||||
| entire pthreads-win32 source may be freely used and distributed. | |||||
| General Copyleft and License info | |||||
| --------------------------------- | |||||
| For general information on Copylefts, see: | |||||
| http://www.gnu.org/copyleft/ | |||||
| For information on GNU Lesser General Public Licenses, see: | |||||
| http://www.gnu.org/copyleft/lesser.html | |||||
| http://www.gnu.org/copyleft/lesser.txt | |||||
| Why pthreads-win32 did not use the GNU General Public License | |||||
| ------------------------------------------------------------- | |||||
| The goal of the pthreads-win32 project has been to | |||||
| provide a quality and complete implementation of the POSIX | |||||
| threads API for Microsoft Windows within the limits imposed | |||||
| by virtue of it being a stand-alone library and not | |||||
| linked directly to other POSIX compliant libraries. For | |||||
| example, some functions and features, such as those based | |||||
| on POSIX signals, are missing. | |||||
| Pthreads-win32 is a library, available in several different | |||||
| versions depending on supported compilers, and may be used | |||||
| as a dynamically linked module or a statically linked set of | |||||
| binary modules. It is not an application on it's own. | |||||
| It was fully intended that pthreads-win32 be usable with | |||||
| commercial software not covered by either the GPL or the LGPL | |||||
| licenses. Pthreads-win32 has many contributors to it's | |||||
| code base, many of whom have done so because they have | |||||
| used the library in commercial or proprietry software | |||||
| projects. | |||||
| Releasing pthreads-win32 under the LGPL ensures that the | |||||
| library can be used widely, while at the same time ensures | |||||
| that bug fixes and improvements to the pthreads-win32 code | |||||
| itself is returned to benefit all current and future users | |||||
| of the library. | |||||
| Although pthreads-win32 makes it possible for applications | |||||
| that use POSIX threads to be ported to Win32 platforms, the | |||||
| broader goal of the project is to encourage the use of open | |||||
| standards, and in particular, to make it just a little easier | |||||
| for developers writing Win32 applications to consider | |||||
| widening the potential market for their products. | |||||
| @ -0,0 +1,183 @@ | |||||
| /* | |||||
| * Module: sched.h | |||||
| * | |||||
| * Purpose: | |||||
| * Provides an implementation of POSIX realtime extensions | |||||
| * as defined in | |||||
| * | |||||
| * POSIX 1003.1b-1993 (POSIX.1b) | |||||
| * | |||||
| * -------------------------------------------------------------------------- | |||||
| * | |||||
| * Pthreads-win32 - POSIX Threads Library for Win32 | |||||
| * Copyright(C) 1998 John E. Bossom | |||||
| * Copyright(C) 1999,2005 Pthreads-win32 contributors | |||||
| * | |||||
| * Contact Email: rpj@callisto.canberra.edu.au | |||||
| * | |||||
| * The current list of contributors is contained | |||||
| * in the file CONTRIBUTORS included with the source | |||||
| * code distribution. The list can also be seen at the | |||||
| * following World Wide Web location: | |||||
| * http://sources.redhat.com/pthreads-win32/contributors.html | |||||
| * | |||||
| * This library is free software; you can redistribute it and/or | |||||
| * modify it under the terms of the GNU Lesser 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 | |||||
| * Lesser General Public License for more details. | |||||
| * | |||||
| * You should have received a copy of the GNU Lesser General Public | |||||
| * License along with this library in the file COPYING.LIB; | |||||
| * if not, write to the Free Software Foundation, Inc., | |||||
| * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA | |||||
| */ | |||||
| #if !defined(_SCHED_H) | |||||
| #define _SCHED_H | |||||
| #undef PTW32_SCHED_LEVEL | |||||
| #if defined(_POSIX_SOURCE) | |||||
| #define PTW32_SCHED_LEVEL 0 | |||||
| /* Early POSIX */ | |||||
| #endif | |||||
| #if defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 199309 | |||||
| #undef PTW32_SCHED_LEVEL | |||||
| #define PTW32_SCHED_LEVEL 1 | |||||
| /* Include 1b, 1c and 1d */ | |||||
| #endif | |||||
| #if defined(INCLUDE_NP) | |||||
| #undef PTW32_SCHED_LEVEL | |||||
| #define PTW32_SCHED_LEVEL 2 | |||||
| /* Include Non-Portable extensions */ | |||||
| #endif | |||||
| #define PTW32_SCHED_LEVEL_MAX 3 | |||||
| #if ( defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 200112 ) || !defined(PTW32_SCHED_LEVEL) | |||||
| #define PTW32_SCHED_LEVEL PTW32_SCHED_LEVEL_MAX | |||||
| /* Include everything */ | |||||
| #endif | |||||
| #if defined(__GNUC__) && !defined(__declspec) | |||||
| # error Please upgrade your GNU compiler to one that supports __declspec. | |||||
| #endif | |||||
| /* | |||||
| * When building the library, you should define PTW32_BUILD so that | |||||
| * the variables/functions are exported correctly. When using the library, | |||||
| * do NOT define PTW32_BUILD, and then the variables/functions will | |||||
| * be imported correctly. | |||||
| */ | |||||
| #if !defined(PTW32_STATIC_LIB) | |||||
| # if defined(PTW32_BUILD) | |||||
| # define PTW32_DLLPORT __declspec (dllexport) | |||||
| # else | |||||
| # define PTW32_DLLPORT __declspec (dllimport) | |||||
| # endif | |||||
| #else | |||||
| # define PTW32_DLLPORT | |||||
| #endif | |||||
| /* | |||||
| * This is a duplicate of what is in the autoconf config.h, | |||||
| * which is only used when building the pthread-win32 libraries. | |||||
| */ | |||||
| #if !defined(PTW32_CONFIG_H) | |||||
| # if defined(WINCE) | |||||
| # define NEED_ERRNO | |||||
| # define NEED_SEM | |||||
| # endif | |||||
| # if defined(__MINGW64__) | |||||
| # define HAVE_STRUCT_TIMESPEC | |||||
| # define HAVE_MODE_T | |||||
| # elif defined(_UWIN) || defined(__MINGW32__) | |||||
| # define HAVE_MODE_T | |||||
| # endif | |||||
| #endif | |||||
| /* | |||||
| * | |||||
| */ | |||||
| #if PTW32_SCHED_LEVEL >= PTW32_SCHED_LEVEL_MAX | |||||
| #if defined(NEED_ERRNO) | |||||
| #include "need_errno.h" | |||||
| #else | |||||
| #include <errno.h> | |||||
| #endif | |||||
| #endif /* PTW32_SCHED_LEVEL >= PTW32_SCHED_LEVEL_MAX */ | |||||
| #if (defined(__MINGW64__) || defined(__MINGW32__)) || defined(_UWIN) | |||||
| # if PTW32_SCHED_LEVEL >= PTW32_SCHED_LEVEL_MAX | |||||
| /* For pid_t */ | |||||
| # include <sys/types.h> | |||||
| /* Required by Unix 98 */ | |||||
| # include <time.h> | |||||
| # else | |||||
| typedef int pid_t; | |||||
| # endif | |||||
| #else | |||||
| typedef int pid_t; | |||||
| #endif | |||||
| /* Thread scheduling policies */ | |||||
| enum { | |||||
| SCHED_OTHER = 0, | |||||
| SCHED_FIFO, | |||||
| SCHED_RR, | |||||
| SCHED_MIN = SCHED_OTHER, | |||||
| SCHED_MAX = SCHED_RR | |||||
| }; | |||||
| struct sched_param { | |||||
| int sched_priority; | |||||
| }; | |||||
| #if defined(__cplusplus) | |||||
| extern "C" | |||||
| { | |||||
| #endif /* __cplusplus */ | |||||
| PTW32_DLLPORT int __cdecl sched_yield (void); | |||||
| PTW32_DLLPORT int __cdecl sched_get_priority_min (int policy); | |||||
| PTW32_DLLPORT int __cdecl sched_get_priority_max (int policy); | |||||
| PTW32_DLLPORT int __cdecl sched_setscheduler (pid_t pid, int policy); | |||||
| PTW32_DLLPORT int __cdecl sched_getscheduler (pid_t pid); | |||||
| /* | |||||
| * Note that this macro returns ENOTSUP rather than | |||||
| * ENOSYS as might be expected. However, returning ENOSYS | |||||
| * should mean that sched_get_priority_{min,max} are | |||||
| * not implemented as well as sched_rr_get_interval. | |||||
| * This is not the case, since we just don't support | |||||
| * round-robin scheduling. Therefore I have chosen to | |||||
| * return the same value as sched_setscheduler when | |||||
| * SCHED_RR is passed to it. | |||||
| */ | |||||
| #define sched_rr_get_interval(_pid, _interval) \ | |||||
| ( errno = ENOTSUP, (int) -1 ) | |||||
| #if defined(__cplusplus) | |||||
| } /* End of extern "C" */ | |||||
| #endif /* __cplusplus */ | |||||
| #undef PTW32_SCHED_LEVEL | |||||
| #undef PTW32_SCHED_LEVEL_MAX | |||||
| #endif /* !_SCHED_H */ | |||||
| @ -0,0 +1,169 @@ | |||||
| /* | |||||
| * Module: semaphore.h | |||||
| * | |||||
| * Purpose: | |||||
| * Semaphores aren't actually part of the PThreads standard. | |||||
| * They are defined by the POSIX Standard: | |||||
| * | |||||
| * POSIX 1003.1b-1993 (POSIX.1b) | |||||
| * | |||||
| * -------------------------------------------------------------------------- | |||||
| * | |||||
| * Pthreads-win32 - POSIX Threads Library for Win32 | |||||
| * Copyright(C) 1998 John E. Bossom | |||||
| * Copyright(C) 1999,2005 Pthreads-win32 contributors | |||||
| * | |||||
| * Contact Email: rpj@callisto.canberra.edu.au | |||||
| * | |||||
| * The current list of contributors is contained | |||||
| * in the file CONTRIBUTORS included with the source | |||||
| * code distribution. The list can also be seen at the | |||||
| * following World Wide Web location: | |||||
| * http://sources.redhat.com/pthreads-win32/contributors.html | |||||
| * | |||||
| * This library is free software; you can redistribute it and/or | |||||
| * modify it under the terms of the GNU Lesser 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 | |||||
| * Lesser General Public License for more details. | |||||
| * | |||||
| * You should have received a copy of the GNU Lesser General Public | |||||
| * License along with this library in the file COPYING.LIB; | |||||
| * if not, write to the Free Software Foundation, Inc., | |||||
| * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA | |||||
| */ | |||||
| #if !defined( SEMAPHORE_H ) | |||||
| #define SEMAPHORE_H | |||||
| #undef PTW32_SEMAPHORE_LEVEL | |||||
| #if defined(_POSIX_SOURCE) | |||||
| #define PTW32_SEMAPHORE_LEVEL 0 | |||||
| /* Early POSIX */ | |||||
| #endif | |||||
| #if defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 199309 | |||||
| #undef PTW32_SEMAPHORE_LEVEL | |||||
| #define PTW32_SEMAPHORE_LEVEL 1 | |||||
| /* Include 1b, 1c and 1d */ | |||||
| #endif | |||||
| #if defined(INCLUDE_NP) | |||||
| #undef PTW32_SEMAPHORE_LEVEL | |||||
| #define PTW32_SEMAPHORE_LEVEL 2 | |||||
| /* Include Non-Portable extensions */ | |||||
| #endif | |||||
| #define PTW32_SEMAPHORE_LEVEL_MAX 3 | |||||
| #if !defined(PTW32_SEMAPHORE_LEVEL) | |||||
| #define PTW32_SEMAPHORE_LEVEL PTW32_SEMAPHORE_LEVEL_MAX | |||||
| /* Include everything */ | |||||
| #endif | |||||
| #if defined(__GNUC__) && ! defined (__declspec) | |||||
| # error Please upgrade your GNU compiler to one that supports __declspec. | |||||
| #endif | |||||
| /* | |||||
| * When building the library, you should define PTW32_BUILD so that | |||||
| * the variables/functions are exported correctly. When using the library, | |||||
| * do NOT define PTW32_BUILD, and then the variables/functions will | |||||
| * be imported correctly. | |||||
| */ | |||||
| #if !defined(PTW32_STATIC_LIB) | |||||
| # if defined(PTW32_BUILD) | |||||
| # define PTW32_DLLPORT __declspec (dllexport) | |||||
| # else | |||||
| # define PTW32_DLLPORT __declspec (dllimport) | |||||
| # endif | |||||
| #else | |||||
| # define PTW32_DLLPORT | |||||
| #endif | |||||
| /* | |||||
| * This is a duplicate of what is in the autoconf config.h, | |||||
| * which is only used when building the pthread-win32 libraries. | |||||
| */ | |||||
| #if !defined(PTW32_CONFIG_H) | |||||
| # if defined(WINCE) | |||||
| # define NEED_ERRNO | |||||
| # define NEED_SEM | |||||
| # endif | |||||
| # if defined(__MINGW64__) | |||||
| # define HAVE_STRUCT_TIMESPEC | |||||
| # define HAVE_MODE_T | |||||
| # elif defined(_UWIN) || defined(__MINGW32__) | |||||
| # define HAVE_MODE_T | |||||
| # endif | |||||
| #endif | |||||
| /* | |||||
| * | |||||
| */ | |||||
| #if PTW32_SEMAPHORE_LEVEL >= PTW32_SEMAPHORE_LEVEL_MAX | |||||
| #if defined(NEED_ERRNO) | |||||
| #include "need_errno.h" | |||||
| #else | |||||
| #include <errno.h> | |||||
| #endif | |||||
| #endif /* PTW32_SEMAPHORE_LEVEL >= PTW32_SEMAPHORE_LEVEL_MAX */ | |||||
| #define _POSIX_SEMAPHORES | |||||
| #if defined(__cplusplus) | |||||
| extern "C" | |||||
| { | |||||
| #endif /* __cplusplus */ | |||||
| #if !defined(HAVE_MODE_T) | |||||
| typedef unsigned int mode_t; | |||||
| #endif | |||||
| typedef struct sem_t_ * sem_t; | |||||
| PTW32_DLLPORT int __cdecl sem_init (sem_t * sem, | |||||
| int pshared, | |||||
| unsigned int value); | |||||
| PTW32_DLLPORT int __cdecl sem_destroy (sem_t * sem); | |||||
| PTW32_DLLPORT int __cdecl sem_trywait (sem_t * sem); | |||||
| PTW32_DLLPORT int __cdecl sem_wait (sem_t * sem); | |||||
| PTW32_DLLPORT int __cdecl sem_timedwait (sem_t * sem, | |||||
| const struct timespec * abstime); | |||||
| PTW32_DLLPORT int __cdecl sem_post (sem_t * sem); | |||||
| PTW32_DLLPORT int __cdecl sem_post_multiple (sem_t * sem, | |||||
| int count); | |||||
| PTW32_DLLPORT int __cdecl sem_open (const char * name, | |||||
| int oflag, | |||||
| mode_t mode, | |||||
| unsigned int value); | |||||
| PTW32_DLLPORT int __cdecl sem_close (sem_t * sem); | |||||
| PTW32_DLLPORT int __cdecl sem_unlink (const char * name); | |||||
| PTW32_DLLPORT int __cdecl sem_getvalue (sem_t * sem, | |||||
| int * sval); | |||||
| #if defined(__cplusplus) | |||||
| } /* End of extern "C" */ | |||||
| #endif /* __cplusplus */ | |||||
| #undef PTW32_SEMAPHORE_LEVEL | |||||
| #undef PTW32_SEMAPHORE_LEVEL_MAX | |||||
| #endif /* !SEMAPHORE_H */ | |||||