public inbox for pthreads-win32@sourceware.org
 help / color / mirror / Atom feed
From: "Dr. Michael Heitland \(caatoosee ag\)" <michael.heitland@caatoosee.com>
To: "Will Bryant" <will.bryant@ecosm.com>,
	"Francisco Vinotinto" <fvinotinto@yahoo.es>
Cc: <pthreads-win32@sources.redhat.com>
Subject: Re: Borland Builder
Date: Fri, 18 Jul 2003 07:22:00 -0000	[thread overview]
Message-ID: <000d01c34cfd$553688a0$3932a8c0@localnet> (raw)
In-Reply-To: <00c701c34cd4$9a5c3de0$1402a8c0@orca>

[-- Attachment #1: Type: text/plain, Size: 2158 bytes --]

Hello,

I did already the port to generate a static BCB6 library.
- create a new project 'pthreads_bcb6' for a static library
- set compiler switch (= preprocessor #define) NEED_ERRNO;NEED_FTIME
- set all warnings but not 8004 and 8057
- choose release target
- modify the following sources as I have attached: 'pthread.c',
'need_errno.h' and  ''ptw32_InterlockedCompareExchange.c'

Greetings,
Dr. Michael Heitland

----- Original Message ----- 
From: "Will Bryant" <will.bryant@ecosm.com>
To: "Francisco Vinotinto" <fvinotinto@yahoo.es>
Cc: <pthreads-win32@sources.redhat.com>
Sent: Friday, July 18, 2003 4:30 AM
Subject: Re: Borland Builder


> Hi Francisco,
>
> > Is it possible to use this library with Borland
> > Builder?
>
> I assume you mean C++Builder: Yes it is.
>
> As a quick and dirty solution you can use the MSVC dll, pthreadVC.dll, but
> you need to generate an import library for use with the Borland compiler.
> To do this just go into the pre-built directory and run:
>
> impdef -a pthreadBC.def pthreadBC.dll
> implib pthreadBC.lib pthreadBC.def
>
> You'll prolly need to move or copy the .lib somewhere else, the C++Builder
5
> IDE doesn't seem to like linking libraries from directories with hyphens
in
> them.
>
>
> This is enough to get you started and does seem to work ok.  However, from
> what I understand, it's not a 'correct' solution because that DLL is
linked
> against the MSVC C runtime library, and that's not compatible with the
> Borland runtime.  As such IMHO it's quite surprising that it runs so well.
>
> I'm working on a proper port right now so that you can build it with
> C++Builder, hopefully I'll be mailing the list about that sometime in the
> next week - mainly it just requires a new makefile and a couple of small
> changes elsewhere.
>
> So if you're thinking of using pthreads-win32 with the Borland tools then
> use the quick solution above for now and keep an eye out for the
forthcoming
> port work, which fingers crossed the maintainers will accept into the next
> release.
>
> Cheers,
> Will
>
> --
> Will Bryant
> Systems Architect, eCOSM Limited
> Phone +64 3 365 4176
> http://www.ecosm.com/
>
>

[-- Attachment #2: pthreads_bcb6.bpr --]
[-- Type: application/octet-stream, Size: 3136 bytes --]

<?xml version='1.0' encoding='utf-8' ?>
<!-- C++Builder XML Project -->
<PROJECT>
  <MACROS>
    <VERSION value="BCB.06.00"/>
    <PROJECT value="pthreads_bcb6.lib"/>
    <OBJFILES value="pthread.obj"/>
    <RESFILES value=""/>
    <DEFFILE value=""/>
    <RESDEPEN value="$(RESFILES)"/>
    <LIBFILES value=""/>
    <LIBRARIES value=""/>
    <PACKAGES value=""/>
    <PATHCPP value=".;"/>
    <PATHPAS value=".;"/>
    <PATHRC value=".;"/>
    <PATHASM value=".;"/>
    <LINKER value="TLib"/>
    <USERDEFINES value="NEED_ERRNO;NEED_FTIME"/>
    <SYSDEFINES value="_RTLDLL;NO_STRICT"/>
    <MAINSOURCE value="pthreads_bcb6.bpf"/>
    <INCLUDEPATH value="D:\Programme\pthreads-snap-2003-5-10\pthreads;$(BCB)\include;$(BCB)\include\vcl"/>
    <LIBPATH value="&quot;D:\Programme\pthreads-snap-2003-5-10\pthreads&quot;;$(BCB)\lib\obj;$(BCB)\lib"/>
    <WARNINGS value="-w8092 -w8091 -w8090 -w8089 -w8087 -wprc -wuse -wucp -wstv -wstu -wsig 
      -wpin -w-par -wnod -wnak -wdef -wcln -wbbf -w-aus -wasm -wamp -wamb"/>
    <LISTFILE value=""/>
    <OTHERFILES value=""/>
  </MACROS>
  <OPTIONS>
    <CFLAG1 value="-O2 -Vx -Ve -X- -a8 -b -k- -vi -c -tW -tWM"/>
    <PFLAGS value="-$Y- -$L- -$D- -$A8 -v -JPHNE -M"/>
    <AFLAGS value="/mx /w2 /zn"/>
    <LFLAGS value=""/>
    <OTHERFILES value=""/>
  </OPTIONS>
  <LINKER>
    <ALLOBJ value="$(OBJFILES)"/>
    <ALLLIB value=""/>
    <OTHERFILES value=""/>
  </LINKER>
  <FILELIST>
      <FILE FILENAME="pthreads_bcb6.bpf" FORMNAME="" UNITNAME="pthreads_bcb6" CONTAINERID="BPF" DESIGNCLASS="" LOCALCOMMAND=""/>
      <FILE FILENAME="pthread.c" FORMNAME="" UNITNAME="pthread" CONTAINERID="CCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
  </FILELIST>
  <BUILDTOOLS>
  </BUILDTOOLS>

  <IDEOPTIONS>
[Version Info]
IncludeVerInfo=0
AutoIncBuild=0
MajorVer=1
MinorVer=0
Release=0
Build=0
Debug=0
PreRelease=0
Special=0
Private=0
DLL=0
Locale=1031
CodePage=1252

[Version Info Keys]
CompanyName=
FileDescription=
FileVersion=1.0.0.0
InternalName=
LegalCopyright=
LegalTrademarks=
OriginalFilename=
ProductName=
ProductVersion=1.0.0.0
Comments=

[HistoryLists\hlIncludePath]
Count=1
Item0=D:\Programme\pthreads-snap-2003-5-10\pthreads;$(BCB)\include;$(BCB)\include\vcl

[HistoryLists\hlLibraryPath]
Count=1
Item0=D:\Programme\pthreads-snap-2003-5-10\pthreads;$(BCB)\lib\obj;$(BCB)\lib

[HistoryLists\hlDebugSourcePath]
Count=1
Item0=$(BCB)\source\vcl

[HistoryLists\hlConditionals]
Count=8
Item0=NEED_ERRNO;NEED_FTIME
Item1=PTW32_BUILD;NEED_ERRNO;NEED_FTIME;_DLL
Item2=PTW32_BUILD;NEED_ERRNO;NEED_FTIME
Item3=_DEBUG__CLEANUP_C;PTW32_BUILD;NEED_ERRNO;NEED_FTIME
Item4=_DEBUG__CLEANUP_C;PTW32_BUILD;NEED_ERRNO;NEED_TIME
Item5=_DEBUG__CLEANUP_C;PTW32_BUILD;NEED_ERRNO
Item6=_DEBUG__CLEANUP_C;PTW32_BUILD
Item7=_DEBUG

[Debugging]
DebugSourceDirs=$(BCB)\source\vcl

[Parameters]
RunParams=
Launcher=
UseLauncher=0
DebugCWD=
HostApplication=
RemoteHost=
RemotePath=
RemoteLauncher=
RemoteCWD=
RemoteDebug=0

[Compiler]
ShowInfoMsgs=0
LinkDebugVcl=0
LinkCGLIB=0
  </IDEOPTIONS>
</PROJECT>

[-- Attachment #3: need_errno.h --]
[-- Type: text/plain, Size: 3234 bytes --]

/***
* errno.h - system wide error numbers (set by system calls)
*
*       Copyright (c) 1985-1997, Microsoft Corporation. All rights reserved.
*
* Purpose:
*       This file defines the system-wide error numbers (set by
*       system calls).  Conforms to the XENIX standard.  Extended
*       for compatibility with Uniforum standard.
*       [System V]
*
*       [Public]
*
****/

#if     _MSC_VER > 1000
#pragma once
#endif

#ifndef _INC_ERRNO
#define _INC_ERRNO

#if     !defined(_WIN32) && !defined(_MAC)
#error ERROR: Only Mac or Win32 targets supported!
#endif

#include <winsock.h>

#ifdef __BORLANDC__ /* TWAH */
#include <errno.h>
#endif // __BORLANDC__ /* TWAH */

#ifdef  __cplusplus
extern "C" {
#endif



/* Define _CRTIMP */

#ifndef _CRTIMP
#ifdef  _DLL
#define _CRTIMP __declspec(dllimport)
#else   /* ndef _DLL */
#define _CRTIMP
#endif  /* _DLL */
#endif  /* _CRTIMP */


/* Define __cdecl for non-Microsoft compilers */

#if     ( !defined(_MSC_VER) && !defined(__cdecl) )
#define __cdecl
#endif

/* Define _CRTAPI1 (for compatibility with the NT SDK) */

#ifndef _CRTAPI1
#if	_MSC_VER >= 800 && _M_IX86 >= 300
#define _CRTAPI1 __cdecl
#else
#define _CRTAPI1
#endif
#endif


/* declare reference to errno */

#if     (defined(_MT) || defined(_MD) || defined(_DLL)) && !defined(_MAC)
#ifndef __BORLANDC__ /* TWAH */
_CRTIMP extern int * __cdecl _errno(void);
#define errno   (*_errno())
#endif // ndef __BORLANDC__ /* TWAH */
#else   /* ndef _MT && ndef _MD && ndef _DLL */
_CRTIMP extern int errno;
#endif  /* _MT || _MD || _DLL */

/* Error Codes */
#ifndef __BORLANDC__ /* TWAH */
#define EPERM           1
#define ENOENT          2
#define ESRCH           3
#define EINTR           4
#define EIO             5
#define ENXIO           6
#define E2BIG           7
#define ENOEXEC         8
#define EBADF           9
#define ECHILD          10
#define EAGAIN          11
#define ENOMEM          12
#define EACCES          13
#define EFAULT          14
#define EBUSY           16
#define EEXIST          17
#define EXDEV           18
#define ENODEV          19
#define ENOTDIR         20
#define EISDIR          21
#define EINVAL          22
#define ENFILE          23
#define EMFILE          24
#define ENOTTY          25
#define EFBIG           27
#define ENOSPC          28
#define ESPIPE          29
#define EROFS           30
#define EMLINK          31
#define EPIPE           32
#define EDOM            33
#define ERANGE          34
#endif __BORLANDC__ /* TWAH */
#define EDEADLK         36

/* defined differently in winsock.h on WinCE */
#ifndef __BORLANDC__ /* TWAH */
#ifndef ENAMETOOLONG
#define ENAMETOOLONG    38
#endif
#endif __BORLANDC__ /* TWAH */

#define ENOLCK          39
#define ENOSYS          40

/* defined differently in winsock.h on WinCE */
#ifndef __BORLANDC__ /* TWAH */
#ifndef ENOTEMPTY
#define ENOTEMPTY       41
#endif

#define EILSEQ          42

/*
 * Support EDEADLOCK for compatibiity with older MS-C versions.
 */
#define EDEADLOCK       EDEADLK
#endif __BORLANDC__ /* TWAH */

#ifdef  __cplusplus
}
#endif

#endif  /* _INC_ERRNO */

[-- Attachment #4: pthreads_bcb6.lib --]
[-- Type: application/octet-stream, Size: 44544 bytes --]

[-- Attachment #5: ptw32_InterlockedCompareExchange.c --]
[-- Type: text/plain, Size: 3401 bytes --]

/*
 * ptw32_InterlockedCompareExchange.c
 *
 * 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 John E. Bossom
 *      Copyright(C) 1999,2002 Pthreads-win32 contributors
 * 
 *      Contact Email: rpj@ise.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
 */

#include "pthread.h"
#include "implement.h"


/*
 * ptw32_InterlockedCompareExchange --
 *
 * Needed because W95 doesn't support InterlockedCompareExchange.
 * It is only used when running the dll on W95. Other versions of
 * Windows use the Win32 supported version, which may be running on
 * different processor types.
 *
 * This can't be inlined because we need to know it's address so that
 * we can call it through a pointer.
 */
PTW32_INTERLOCKED_LONG WINAPI
ptw32_InterlockedCompareExchange(PTW32_INTERLOCKED_LPLONG location,
				 PTW32_INTERLOCKED_LONG   value,
				 PTW32_INTERLOCKED_LONG   comparand)
{
  PTW32_INTERLOCKED_LONG result = 0; // MHEI: War vorher nicht initial.

#if defined(_M_IX86) || defined(_X86_)

#if defined(_MSC_VER)

  _asm {
    PUSH	 ecx
    PUSH	 edx
    MOV 	 ecx,dword ptr [location]
    MOV 	 edx,dword ptr [value]
    MOV 	 eax,dword ptr [comparand]
    LOCK CMPXCHG dword ptr [ecx],edx	    ; if (EAX == [ECX]),
					    ;	[ECX] = EDX
					    ; else
					    ;	EAX = [ECX]
    MOV 	 dword ptr [result], eax
    POP 	 edx
    POP 	 ecx
  }

#elif defined(__GNUC__)

  __asm__
    (
     "lock\n\t"
     "cmpxchgl	     %3,(%0)"	 /* if (EAX == [location]), */
				 /*   [location] = value    */
				 /* else		    */
				 /*   EAX = [location]		 */
     :"=r" (location), "=a" (result)
     :"0"  (location), "q" (value), "a" (comparand)
     : "memory" );

#endif

#else

  /*
   * If execution gets to here then we should be running on a Win95 system
   * but either running on something other than an X86 processor, or a
   * compiler other than MSVC or GCC. Pthreads-win32 doesn't support that
   * platform (yet).
   */

  result = 0;

#endif

  return result;
}

[-- Attachment #6: pthreads_bcb6.bpf --]
[-- Type: application/octet-stream, Size: 240 bytes --]

//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop
#define Library

// Um der Bibliothek eine Datei hinzuzufügen, wählen Sie im Menü 'Projekt' 'Zum Projekt hinzufügen'.

 

[-- Attachment #7: need_errno.h.orig --]
[-- Type: application/octet-stream, Size: 2879 bytes --]

/***
* errno.h - system wide error numbers (set by system calls)
*
*       Copyright (c) 1985-1997, Microsoft Corporation. All rights reserved.
*
* Purpose:
*       This file defines the system-wide error numbers (set by
*       system calls).  Conforms to the XENIX standard.  Extended
*       for compatibility with Uniforum standard.
*       [System V]
*
*       [Public]
*
****/

#if     _MSC_VER > 1000
#pragma once
#endif

#ifndef _INC_ERRNO
#define _INC_ERRNO

#if     !defined(_WIN32) && !defined(_MAC)
#error ERROR: Only Mac or Win32 targets supported!
#endif

#include <winsock.h>

#ifdef  __cplusplus
extern "C" {
#endif



/* Define _CRTIMP */

#ifndef _CRTIMP
#ifdef  _DLL
#define _CRTIMP __declspec(dllimport)
#else   /* ndef _DLL */
#define _CRTIMP
#endif  /* _DLL */
#endif  /* _CRTIMP */


/* Define __cdecl for non-Microsoft compilers */

#if     ( !defined(_MSC_VER) && !defined(__cdecl) )
#define __cdecl
#endif

/* Define _CRTAPI1 (for compatibility with the NT SDK) */

#ifndef _CRTAPI1
#if	_MSC_VER >= 800 && _M_IX86 >= 300
#define _CRTAPI1 __cdecl
#else
#define _CRTAPI1
#endif
#endif


/* declare reference to errno */

#if     (defined(_MT) || defined(_MD) || defined(_DLL)) && !defined(_MAC)
_CRTIMP extern int * __cdecl _errno(void);
#define errno   (*_errno())
#else   /* ndef _MT && ndef _MD && ndef _DLL */
_CRTIMP extern int errno;
#endif  /* _MT || _MD || _DLL */

/* Error Codes */

#define EPERM           1
#define ENOENT          2
#define ESRCH           3
#define EINTR           4
#define EIO             5
#define ENXIO           6
#define E2BIG           7
#define ENOEXEC         8
#define EBADF           9
#define ECHILD          10
#define EAGAIN          11
#define ENOMEM          12
#define EACCES          13
#define EFAULT          14
#define EBUSY           16
#define EEXIST          17
#define EXDEV           18
#define ENODEV          19
#define ENOTDIR         20
#define EISDIR          21
#define EINVAL          22
#define ENFILE          23
#define EMFILE          24
#define ENOTTY          25
#define EFBIG           27
#define ENOSPC          28
#define ESPIPE          29
#define EROFS           30
#define EMLINK          31
#define EPIPE           32
#define EDOM            33
#define ERANGE          34
#define EDEADLK         36

/* defined differently in winsock.h on WinCE */
#ifndef ENAMETOOLONG
#define ENAMETOOLONG    38
#endif

#define ENOLCK          39
#define ENOSYS          40

/* defined differently in winsock.h on WinCE */
#ifndef ENOTEMPTY
#define ENOTEMPTY       41
#endif

#define EILSEQ          42

/*
 * Support EDEADLOCK for compatibiity with older MS-C versions.
 */
#define EDEADLOCK       EDEADLK

#ifdef  __cplusplus
}
#endif

#endif  /* _INC_ERRNO */

[-- Attachment #8: ptw32_InterlockedCompareExchange.c.orig --]
[-- Type: application/octet-stream, Size: 3363 bytes --]

/*
 * ptw32_InterlockedCompareExchange.c
 *
 * 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 John E. Bossom
 *      Copyright(C) 1999,2002 Pthreads-win32 contributors
 * 
 *      Contact Email: rpj@ise.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
 */

#include "pthread.h"
#include "implement.h"


/*
 * ptw32_InterlockedCompareExchange --
 *
 * Needed because W95 doesn't support InterlockedCompareExchange.
 * It is only used when running the dll on W95. Other versions of
 * Windows use the Win32 supported version, which may be running on
 * different processor types.
 *
 * This can't be inlined because we need to know it's address so that
 * we can call it through a pointer.
 */
PTW32_INTERLOCKED_LONG WINAPI
ptw32_InterlockedCompareExchange(PTW32_INTERLOCKED_LPLONG location,
				 PTW32_INTERLOCKED_LONG   value,
				 PTW32_INTERLOCKED_LONG   comparand)
{
  PTW32_INTERLOCKED_LONG result;

#if defined(_M_IX86) || defined(_X86_)

#if defined(_MSC_VER)

  _asm {
    PUSH	 ecx
    PUSH	 edx
    MOV 	 ecx,dword ptr [location]
    MOV 	 edx,dword ptr [value]
    MOV 	 eax,dword ptr [comparand]
    LOCK CMPXCHG dword ptr [ecx],edx	    ; if (EAX == [ECX]), 
					    ;	[ECX] = EDX
					    ; else
					    ;	EAX = [ECX]
    MOV 	 dword ptr [result], eax
    POP 	 edx
    POP 	 ecx
  }

#elif defined(__GNUC__)

  __asm__
    (
     "lock\n\t"
     "cmpxchgl	     %3,(%0)"	 /* if (EAX == [location]), */
				 /*   [location] = value    */
				 /* else		    */
				 /*   EAX = [location]		 */
     :"=r" (location), "=a" (result)
     :"0"  (location), "q" (value), "a" (comparand)
     : "memory" );

#endif

#else

  /*
   * If execution gets to here then we should be running on a Win95 system
   * but either running on something other than an X86 processor, or a
   * compiler other than MSVC or GCC. Pthreads-win32 doesn't support that
   * platform (yet).
   */

  result = 0;

#endif

  return result;
}

[-- Attachment #9: pthread.c --]
[-- Type: text/plain, Size: 2194 bytes --]

/*
 * pthread.c
 *
 * Description:
 * This translation unit agregates pthreads-win32 translation units.
 * It is used for inline optimisation of the library,
 * maximising for speed at the expense of size.
 *
 * --------------------------------------------------------------------------
 *
 *      Pthreads-win32 - POSIX Threads Library for Win32
 *      Copyright(C) 1998 John E. Bossom
 *      Copyright(C) 1999,2002 Pthreads-win32 contributors
 * 
 *      Contact Email: rpj@ise.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
 */

#include "pthread.h"
#include "implement.h"

#include "attr.c"
#include "barrier.c"
#include "cancel.c"
#include "cleanup.c"
#include "condvar.c"
#include "create.c"
//MHEI für Lib auskommentiert 29.5.03: #include "dll.c"
#include "errno.c"
#include "exit.c"
#include "fork.c"
#include "global.c"
#include "misc.c"
#include "mutex.c"
#include "nonportable.c"
#include "private.c"
#include "rwlock.c"
#include "sched.c"
#include "semaphore.c"
#include "signal.c"
#include "spin.c"
#include "sync.c"
#include "tsd.c"

[-- Attachment #10: pthread.c.orig --]
[-- Type: application/octet-stream, Size: 2155 bytes --]

/*
 * pthread.c
 *
 * Description:
 * This translation unit agregates pthreads-win32 translation units.
 * It is used for inline optimisation of the library,
 * maximising for speed at the expense of size.
 *
 * --------------------------------------------------------------------------
 *
 *      Pthreads-win32 - POSIX Threads Library for Win32
 *      Copyright(C) 1998 John E. Bossom
 *      Copyright(C) 1999,2002 Pthreads-win32 contributors
 * 
 *      Contact Email: rpj@ise.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
 */

#include "pthread.h"
#include "implement.h"

#include "attr.c"
#include "barrier.c"
#include "cancel.c"
#include "cleanup.c"
#include "condvar.c"
#include "create.c"
#include "dll.c"
#include "errno.c"
#include "exit.c"
#include "fork.c"
#include "global.c"
#include "misc.c"
#include "mutex.c"
#include "nonportable.c"
#include "private.c"
#include "rwlock.c"
#include "sched.c"
#include "semaphore.c"
#include "signal.c"
#include "spin.c"
#include "sync.c"
#include "tsd.c"

  reply	other threads:[~2003-07-18  7:22 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-07-18  2:29 Will Bryant
2003-07-18  7:22 ` Dr. Michael Heitland (caatoosee ag) [this message]
2003-07-21  5:51   ` Will Bryant
  -- strict thread matches above, loose matches on Subject: below --
2003-06-20 15:18 Francisco Vinotinto
     [not found] <B148DA6A21DBD311AEEF00104B28C229E113@w5.daf.concentric.net>
2000-07-18 14:27 ` borland builder uGAH man
2000-07-18 11:57 uGAH man

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='000d01c34cfd$553688a0$3932a8c0@localnet' \
    --to=michael.heitland@caatoosee.com \
    --cc=fvinotinto@yahoo.es \
    --cc=pthreads-win32@sources.redhat.com \
    --cc=will.bryant@ecosm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).