libctf

DESCRIPTION

libctf is a c thread foundation library that extends pthread functionality by
providing common utilities for the programmer. This will ease and
enhance threaded program development.

FEATURES

barrier - thread barrier
fifo mutex - first-in-first-out mutex
mgate - two dimensional thread date
pool - thread pool
praq - thread safe Propose Release Aquire Queue
qsort - threaded quick sort
rdwr - read write locks (read, write, toggle preferences)
subpool - thread subpool
tools - thread tools

BUGS

None that I know of.

NOTES

c thread foundation library v 0.1 Release Notes

Platforms Tested:

Platform            Version
-----------------   ------------------
Red Hat Linux/x86   8.0, 9.0, FC[1-6]
Solaris/Sparc       2.6, 2.7, 2.8, 2.9

I. OS Specific Notes

  Red Hat Linux:
    
    Red Hat Linux 8.0
        
      CFLAGS = -D_REENTRANT -D_POSIC_C_SOURCE=199506L -D_XOPEN_SOURCE=600
            
      (1) LinuxThreads pthread_attr_stackaddr() does not behave
    
    Red Hat Linux 9.0
        
      CFLAGS = -D_REENTRANT -D_POSIC_C_SOURCE=199506L -D_XOPEN_SOURCE=600
            
      (1) LinuxThreads pthread_attr_stackaddr() does not behave
    
    Fedora Core 1,2,3,4,5,6
        
      CFLAGS = -D_REENTRANT -D_POSIC_C_SOURCE=200112L -D_XOPEN_SOURCE=600

    Shared Library Flags (gcc compiler)
        
      CFLAGS = -fPIC
      LDFLAGS = -shared -Wl,-h,libctf.so
    
  Solaris:
    
    Solaris 2.6
        
      CFLAGS = -D_REENTRANT -D_POSIC_C_SOURCE=199506L -mt -D_XOPEN_SOURCE=4
    
    Solaris 2.7
        
      CFLAGS = -D_REENTRANT -D_POSIC_C_SOURCE=199506L -mt -D_XOPEN_SOURCE=500
      
      (1) Error checking mutex is broken
    
    Solaris 2.8
        
      CFLAGS = -D_REENTRANT -D_POSIC_C_SOURCE=199506L -mt -D_XOPEN_SOURCE=500
    
    Solaris 2.9
        
      CFLAGS = -D_REENTRANT -D_POSIC_C_SOURCE=199506L -mt -D_XOPEN_SOURCE=500
   
    Shared Library Flags (Sun compiler)
    
      CFLAGS = -G -KPIC -h libctf.so
      
  Irix:
  
    Irix 6.5
    
      CFLAGS = -D_REENTRANT
      LDFLAGS = -shared -Wl,-shared,-soname,libctf.so
        
      (1) Not tested in a long time

