diff -ruN pthreads-w32-2-7-0-release/GNUmakefile pthreads-w32-2-7-0-release-new/GNUmakefile
--- pthreads-w32-2-7-0-release/GNUmakefile	2005-06-03 10:36:27.000000000 +0200
+++ pthreads-w32-2-7-0-release-new/GNUmakefile	1970-01-01 01:00:00.000000000 +0100
@@ -1,583 +0,0 @@
-#
-# --------------------------------------------------------------------------
-#
-#      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
-#
-
-DLL_VER	= 2
-DLL_VERD= $(DLL_VER)d
-
-DEVROOT	= C:\PTHREADS
-
-DLLDEST	= $(DEVROOT)\DLL
-LIBDEST	= $(DEVROOT)\DLL
-
-# If Running MsysDTK
-RM	= rm -f
-MV	= mv -f
-CP	= cp -f
-
-# If not.
-#RM	= erase
-#MV	= rename
-#CP	= copy
-
-# For cross compiling use e.g.
-# make CROSS=i386-mingw32msvc- clean GC-inlined
-CROSS	= 
-
-AR	= $(CROSS)ar
-DLLTOOL = $(CROSS)dlltool
-CC      = $(CROSS)gcc
-CXX     = $(CROSS)g++
-RANLIB  = $(CROSS)ranlib
-RC	= $(CROSS)windres
-
-OPT	= $(CLEANUP) -O3 -finline-functions
-DOPT	= $(CLEANUP) -g -O0
-XOPT	=
-
-RCFLAGS		= --include-dir=.
-LFLAGS		= -lwsock32
-
-# ----------------------------------------------------------------------
-# The library can be built with some alternative behaviour to
-# facilitate development of applications on Win32 that will be ported
-# to other POSIX systems. Nothing definable here will make the library
-# non-compliant, but applications that make assumptions that POSIX
-# does not garrantee may fail or misbehave under some settings.
-#
-# PTW32_THREAD_ID_REUSE_INCREMENT
-# Purpose:
-# POSIX says that applications should assume that thread IDs can be
-# recycled. However, Solaris and some other systems use a [very large]
-# sequence number as the thread ID, which provides virtual uniqueness.
-# Pthreads-win32 provides pseudo-unique IDs when the default increment
-# (1) is used, but pthread_t is not a scalar type like Solaris's.
-#
-# Usage:
-# Set to any value in the range: 0 <= value <= 2^wordsize
-#
-# Examples:
-# Set to 0 to emulate non recycle-unique behaviour like Linux or *BSD.
-# Set to 1 for recycle-unique thread IDs (this is the default).
-# Set to some other +ve value to emulate smaller word size types
-# (i.e. will wrap sooner).
-#
-#PTW32_FLAGS	= "-DPTW32_THREAD_ID_REUSE_INCREMENT=0"
-#
-# ----------------------------------------------------------------------
-
-GC_CFLAGS	= $(PTW32_FLAGS) 
-GCE_CFLAGS	= $(PTW32_FLAGS) -mthreads
-
-## Mingw32
-MAKE		= make
-CFLAGS	= $(OPT) $(XOPT) -I. -DHAVE_CONFIG_H -Wall
-
-DLL_INLINED_OBJS	= \
-		pthread.o \
-		version.o
-
-# Agregate modules for inlinability
-DLL_OBJS	= \
-		attr.o \
-		barrier.o \
-		cancel.o \
-		cleanup.o \
-		condvar.o \
-		create.o \
-		dll.o \
-		errno.o \
-		exit.o \
-		fork.o \
-		global.o \
-		misc.o \
-		mutex.o \
-		nonportable.o \
-		private.o \
-		rwlock.o \
-		sched.o \
-		semaphore.o \
-		signal.o \
-		spin.o \
-		sync.o \
-		tsd.o \
-		version.o
-
-# Separate modules for minimum size statically linked images
-SMALL_STATIC_OBJS	= \
-		pthread_attr_init.o \
-		pthread_attr_destroy.o \
-		pthread_attr_getdetachstate.o \
-		pthread_attr_setdetachstate.o \
-		pthread_attr_getstackaddr.o \
-		pthread_attr_setstackaddr.o \
-		pthread_attr_getstacksize.o \
-		pthread_attr_setstacksize.o \
-		pthread_attr_getscope.o \
-		pthread_attr_setscope.o \
-		pthread_attr_setschedpolicy.o \
-		pthread_attr_getschedpolicy.o \
-		pthread_attr_setschedparam.o \
-		pthread_attr_getschedparam.o \
-		pthread_attr_setinheritsched.o \
-		pthread_attr_getinheritsched.o \
-		pthread_barrier_init.o \
-		pthread_barrier_destroy.o \
-		pthread_barrier_wait.o \
-		pthread_barrierattr_init.o \
-		pthread_barrierattr_destroy.o \
-		pthread_barrierattr_setpshared.o \
-		pthread_barrierattr_getpshared.o \
-		pthread_setcancelstate.o \
-		pthread_setcanceltype.o \
-		pthread_testcancel.o \
-		pthread_cancel.o \
-		cleanup.o \
-		pthread_condattr_destroy.o \
-		pthread_condattr_getpshared.o \
-		pthread_condattr_init.o \
-		pthread_condattr_setpshared.o \
-		pthread_cond_destroy.o \
-		pthread_cond_init.o \
-		pthread_cond_signal.o \
-		pthread_cond_wait.o \
-		create.o \
-		dll.o \
-		errno.o \
-		pthread_exit.o \
-		fork.o \
-		global.o \
-		pthread_mutex_init.o \
-		pthread_mutex_destroy.o \
-		pthread_mutexattr_init.o \
-		pthread_mutexattr_destroy.o \
-		pthread_mutexattr_getpshared.o \
-		pthread_mutexattr_setpshared.o \
-		pthread_mutexattr_settype.o \
-		pthread_mutexattr_gettype.o \
-		pthread_mutex_lock.o \
-		pthread_mutex_timedlock.o \
-		pthread_mutex_unlock.o \
-		pthread_mutex_trylock.o \
-		pthread_mutexattr_setkind_np.o \
-		pthread_mutexattr_getkind_np.o \
-		pthread_getw32threadhandle_np.o \
-		pthread_delay_np.o \
-		pthread_num_processors_np.o \
-		pthread_win32_attach_detach_np.o \
-		pthread_equal.o \
-		pthread_getconcurrency.o \
-		pthread_once.o \
-		pthread_self.o \
-		pthread_setconcurrency.o \
-		pthread_rwlock_init.o \
-		pthread_rwlock_destroy.o \
-		pthread_rwlockattr_init.o \
-		pthread_rwlockattr_destroy.o \
-		pthread_rwlockattr_getpshared.o \
-		pthread_rwlockattr_setpshared.o \
-		pthread_rwlock_rdlock.o \
-		pthread_rwlock_wrlock.o \
-		pthread_rwlock_unlock.o \
-		pthread_rwlock_tryrdlock.o \
-		pthread_rwlock_trywrlock.o \
-		pthread_setschedparam.o \
-		pthread_getschedparam.o \
-		pthread_timechange_handler_np.o \
-		ptw32_is_attr.o \
-		ptw32_cond_check_need_init.o \
-		ptw32_MCS_lock.o \
-		ptw32_mutex_check_need_init.o \
-		ptw32_processInitialize.o \
-		ptw32_processTerminate.o \
-		ptw32_threadStart.o \
-		ptw32_threadDestroy.o \
-		ptw32_tkAssocCreate.o \
-		ptw32_tkAssocDestroy.o \
-		ptw32_callUserDestroyRoutines.o \
-		ptw32_timespec.o \
-		ptw32_throw.o \
-		ptw32_InterlockedCompareExchange.o \
-		ptw32_getprocessors.o \
-		ptw32_calloc.o \
-		ptw32_new.o \
-		ptw32_reuse.o \
-		ptw32_semwait.o \
-		ptw32_relmillisecs.o \
-		ptw32_rwlock_check_need_init.o \
-		sched_get_priority_max.o \
-		sched_get_priority_min.o \
-		sched_setscheduler.o \
-		sched_getscheduler.o \
-		sched_yield.o \
-		sem_init.o \
-		sem_destroy.o \
-		sem_trywait.o \
-		sem_timedwait.o \
-		sem_wait.o \
-		sem_post.o \
-		sem_post_multiple.o \
-		sem_getvalue.o \
-		sem_open.o \
-		sem_close.o \
-		sem_unlink.o \
-		signal.o \
-		pthread_kill.o \
-		ptw32_spinlock_check_need_init.o \
-		pthread_spin_init.o \
-		pthread_spin_destroy.o \
-		pthread_spin_lock.o \
-		pthread_spin_unlock.o \
-		pthread_spin_trylock.o \
-		pthread_detach.o \
-		pthread_join.o \
-		pthread_key_create.o \
-		pthread_key_delete.o \
-		pthread_setspecific.o \
-		pthread_getspecific.o \
-		w32_CancelableWait.o \
-		version.o
-
-INCL	= \
-		config.h \
-		implement.h \
-		semaphore.h \
-		pthread.h \
-		need_errno.h
-
-ATTR_SRCS	= \
-		pthread_attr_init.c \
-		pthread_attr_destroy.c \
-		pthread_attr_getdetachstate.c \
-		pthread_attr_setdetachstate.c \
-		pthread_attr_getstackaddr.c \
-		pthread_attr_setstackaddr.c \
-		pthread_attr_getstacksize.c \
-		pthread_attr_setstacksize.c \
-		pthread_attr_getscope.c \
-		pthread_attr_setscope.c
-
-BARRIER_SRCS = \
-		pthread_barrier_init.c \
-		pthread_barrier_destroy.c \
-		pthread_barrier_wait.c \
-		pthread_barrierattr_init.c \
-		pthread_barrierattr_destroy.c \
-		pthread_barrierattr_setpshared.c \
-		pthread_barrierattr_getpshared.c
-
-CANCEL_SRCS	= \
-		pthread_setcancelstate.c \
-		pthread_setcanceltype.c \
-		pthread_testcancel.c \
-		pthread_cancel.c 
-
-CONDVAR_SRCS	= \
-		ptw32_cond_check_need_init.c \
-		pthread_condattr_destroy.c \
-		pthread_condattr_getpshared.c \
-		pthread_condattr_init.c \
-		pthread_condattr_setpshared.c \
-		pthread_cond_destroy.c \
-		pthread_cond_init.c \
-		pthread_cond_signal.c \
-		pthread_cond_wait.c
-
-EXIT_SRCS	= \
-		pthread_exit.c
-
-MISC_SRCS	= \
-		pthread_equal.c \
-		pthread_getconcurrency.c \
-		pthread_kill.c \
-		pthread_once.c \
-		pthread_self.c \
-		pthread_setconcurrency.c \
-		ptw32_calloc.c \
-		ptw32_MCS_lock.c \
-		ptw32_new.c \
-		ptw32_reuse.c \
-		w32_CancelableWait.c
-
-MUTEX_SRCS	= \
-		ptw32_mutex_check_need_init.c \
-		pthread_mutex_init.c \
-		pthread_mutex_destroy.c \
-		pthread_mutexattr_init.c \
-		pthread_mutexattr_destroy.c \
-		pthread_mutexattr_getpshared.c \
-		pthread_mutexattr_setpshared.c \
-		pthread_mutexattr_settype.c \
-		pthread_mutexattr_gettype.c \
-		pthread_mutex_lock.c \
-		pthread_mutex_timedlock.c \
-		pthread_mutex_unlock.c \
-		pthread_mutex_trylock.c
-
-NONPORTABLE_SRCS = \
-		pthread_mutexattr_setkind_np.c \
-		pthread_mutexattr_getkind_np.c \
-		pthread_getw32threadhandle_np.c \
-		pthread_delay_np.c \
-		pthread_num_processors_np.c \
-		pthread_win32_attach_detach_np.c \
-		pthread_timechange_handler_np.c 
-
-PRIVATE_SRCS	= \
-		ptw32_is_attr.c \
-		ptw32_processInitialize.c \
-		ptw32_processTerminate.c \
-		ptw32_threadStart.c \
-		ptw32_threadDestroy.c \
-		ptw32_tkAssocCreate.c \
-		ptw32_tkAssocDestroy.c \
-		ptw32_callUserDestroyRoutines.c \
-		ptw32_semwait.c \
-		ptw32_relmillisecs.c \
-		ptw32_timespec.c \
-		ptw32_throw.c \
-		ptw32_InterlockedCompareExchange.c \
-		ptw32_getprocessors.c
-
-RWLOCK_SRCS	= \
-		ptw32_rwlock_check_need_init.c \
-		ptw32_rwlock_cancelwrwait.c \
-		pthread_rwlock_init.c \
-		pthread_rwlock_destroy.c \
-		pthread_rwlockattr_init.c \
-		pthread_rwlockattr_destroy.c \
-		pthread_rwlockattr_getpshared.c \
-		pthread_rwlockattr_setpshared.c \
-		pthread_rwlock_rdlock.c \
-		pthread_rwlock_timedrdlock.c \
-		pthread_rwlock_wrlock.c \
-		pthread_rwlock_timedwrlock.c \
-		pthread_rwlock_unlock.c \
-		pthread_rwlock_tryrdlock.c \
-		pthread_rwlock_trywrlock.c
-
-SCHED_SRCS	= \
-		pthread_attr_setschedpolicy.c \
-		pthread_attr_getschedpolicy.c \
-		pthread_attr_setschedparam.c \
-		pthread_attr_getschedparam.c \
-		pthread_attr_setinheritsched.c \
-		pthread_attr_getinheritsched.c \
-		pthread_setschedparam.c \
-		pthread_getschedparam.c \
-		sched_get_priority_max.c \
-		sched_get_priority_min.c \
-		sched_setscheduler.c \
-		sched_getscheduler.c \
-		sched_yield.c
-
-SEMAPHORE_SRCS = \
-		sem_init.c \
-		sem_destroy.c \
-		sem_trywait.c \
-		sem_timedwait.c \
-		sem_wait.c \
-		sem_post.c \
-		sem_post_multiple.c \
-		sem_getvalue.c \
-		sem_open.c \
-		sem_close.c \
-		sem_unlink.c
-
-SPIN_SRCS	= \
-		ptw32_spinlock_check_need_init.c \
-		pthread_spin_init.c \
-		pthread_spin_destroy.c \
-		pthread_spin_lock.c \
-		pthread_spin_unlock.c \
-		pthread_spin_trylock.c
-
-SYNC_SRCS	= \
-		pthread_detach.c \
-		pthread_join.c
-
-TSD_SRCS	= \
-		pthread_key_create.c \
-		pthread_key_delete.c \
-		pthread_setspecific.c \
-		pthread_getspecific.c
-
-
-GCE_DLL	= pthreadGCE$(DLL_VER).dll
-GCED_DLL= pthreadGCE$(DLL_VERD).dll
-GCE_LIB	= libpthreadGCE$(DLL_VER).a
-GCED_LIB= libpthreadGCE$(DLL_VERD).a
-GCE_INLINED_STAMP = pthreadGCE$(DLL_VER).stamp
-GCED_INLINED_STAMP = pthreadGCE$(DLL_VERD).stamp
-
-GC_DLL 	= pthreadGC$(DLL_VER).dll
-GCD_DLL	= pthreadGC$(DLL_VERD).dll
-GC_LIB	= libpthreadGC$(DLL_VER).a
-GCD_LIB	= libpthreadGC$(DLL_VERD).a
-GC_INLINED_STAMP = pthreadGC$(DLL_VER).stamp
-GCD_INLINED_STAMP = pthreadGC$(DLL_VERD).stamp
-GC_STATIC_STAMP = libpthreadGC$(DLL_VER).stamp
-GCD_STATIC_STAMP = libpthreadGC$(DLL_VERD).stamp
-
-PTHREAD_DEF	= pthread.def
-
-help:
-	@ echo "Run one of the following command lines:"
-	@ echo "make clean GC            (to build the GNU C dll with C cleanup code)"
-	@ echo "make clean GCE           (to build the GNU C dll with C++ exception handling)"
-	@ echo "make clean GC-inlined    (to build the GNU C inlined dll with C cleanup code)"
-	@ echo "make clean GCE-inlined   (to build the GNU C inlined dll with C++ exception handling)"
-	@ echo "make clean GC-static     (to build the GNU C inlined static lib with C cleanup code)"
-	@ echo "make clean GC-debug      (to build the GNU C debug dll with C cleanup code)"
-	@ echo "make clean GCE-debug     (to build the GNU C debug dll with C++ exception handling)"
-	@ echo "make clean GC-inlined-debug    (to build the GNU C inlined debug dll with C cleanup code)"
-	@ echo "make clean GCE-inlined-debug   (to build the GNU C inlined debug dll with C++ exception handling)"
-	@ echo "make clean GC-static-debug     (to build the GNU C inlined static debug lib with C cleanup code)"
-
-all:
-	@ $(MAKE) clean GCE
-	@ $(MAKE) clean GC
-
-GC:
-		$(MAKE) CLEANUP=-D__CLEANUP_C XC_FLAGS="$(GC_CFLAGS)" OBJ="$(DLL_OBJS)" $(GC_DLL)
-
-GC-debug:
-		$(MAKE) CLEANUP=-D__CLEANUP_C XC_FLAGS="$(GC_CFLAGS)" OBJ="$(DLL_OBJS)" DLL_VER=$(DLL_VERD) OPT="$(DOPT)" $(GCD_DLL)
-
-GCE:
-		$(MAKE) CC=$(CXX) CLEANUP=-D__CLEANUP_CXX XC_FLAGS="$(GCE_CFLAGS)" OBJ="$(DLL_OBJS)" $(GCE_DLL)
-
-GCE-debug:
-		$(MAKE) CC=$(CXX) CLEANUP=-D__CLEANUP_CXX XC_FLAGS="$(GCE_CFLAGS)" OBJ="$(DLL_OBJS)" DLL_VER=$(DLL_VERD) OPT="$(DOPT)" $(GCED_DLL)
-
-GC-inlined:
-		$(MAKE) XOPT="-DPTW32_BUILD_INLINED" CLEANUP=-D__CLEANUP_C XC_FLAGS="$(GC_CFLAGS)" OBJ="$(DLL_INLINED_OBJS)" $(GC_INLINED_STAMP)
-
-GC-inlined-debug:
-		$(MAKE) XOPT="-DPTW32_BUILD_INLINED" CLEANUP=-D__CLEANUP_C XC_FLAGS="$(GC_CFLAGS)" OBJ="$(DLL_INLINED_OBJS)" DLL_VER=$(DLL_VERD) OPT="$(DOPT)" $(GCD_INLINED_STAMP)
-
-GCE-inlined:
-		$(MAKE) CC=$(CXX) XOPT="-DPTW32_BUILD_INLINED" CLEANUP=-D__CLEANUP_CXX XC_FLAGS="$(GCE_CFLAGS)" OBJ="$(DLL_INLINED_OBJS)" $(GCE_INLINED_STAMP)
-
-GCE-inlined-debug:
-		$(MAKE) CC=$(CXX) XOPT="-DPTW32_BUILD_INLINED" CLEANUP=-D__CLEANUP_CXX XC_FLAGS="$(GCE_CFLAGS)" OBJ="$(DLL_INLINED_OBJS)" DLL_VER=$(DLL_VERD) OPT="$(DOPT)" $(GCED_INLINED_STAMP)
-
-GC-static:
-		$(MAKE) XOPT="-DPTW32_BUILD_INLINED -DPTW32_STATIC_LIB" CLEANUP=-D__CLEANUP_C XC_FLAGS="$(GC_CFLAGS)" OBJ="$(DLL_INLINED_OBJS)" $(GC_STATIC_STAMP)
-
-GC-static-debug:
-		$(MAKE) XOPT="-DPTW32_BUILD_INLINED -DPTW32_STATIC_LIB" CLEANUP=-D__CLEANUP_C XC_FLAGS="$(GC_CFLAGS)" OBJ="$(DLL_INLINED_OBJS)" DLL_VER=$(DLL_VERD) OPT="$(DOPT)" $(GCD_STATIC_STAMP)
-
-tests:
-	@ cd tests
-	@ $(MAKE) auto
-
-%.pre: %.c
-	$(CC) -E -o $@ $(CFLAGS) $^
-
-%.s: %.c
-	$(CC) -c $(CFLAGS) -DPTW32_BUILD_INLINED -Wa,-ahl $^ > $@
-
-%.o: %.rc
-	$(RC) $(RCFLAGS) $(CLEANUP) -o $@ $<
-
-.SUFFIXES: .dll .rc .c .o
-
-.c.o:;		 $(CC) -c -o $@ $(CFLAGS) $(XC_FLAGS) $<
-
-
-$(GC_DLL) $(GCD_DLL): $(DLL_OBJS)
-	$(CC) $(OPT) -shared -o $(GC_DLL) $(DLL_OBJS) $(LFLAGS)
-	$(DLLTOOL) -z pthread.def $(DLL_OBJS)
-	$(DLLTOOL) -k --dllname $@ --output-lib $(GC_LIB) --def $(PTHREAD_DEF)
-
-$(GCE_DLL): $(DLL_OBJS)
-	$(CC) $(OPT) -mthreads -shared -o $(GCE_DLL) $(DLL_OBJS) $(LFLAGS)
-	$(DLLTOOL) -z pthread.def $(DLL_OBJS)
-	$(DLLTOOL) -k --dllname $@ --output-lib $(GCE_LIB) --def $(PTHREAD_DEF)
-
-$(GC_INLINED_STAMP) $(GCD_INLINED_STAMP): $(DLL_INLINED_OBJS)
-	$(CC) $(OPT) $(XOPT) -shared -o $(GC_DLL) $(DLL_INLINED_OBJS) $(LFLAGS)
-	$(DLLTOOL) -z pthread.def $(DLL_INLINED_OBJS)
-	$(DLLTOOL) -k --dllname $(GC_DLL) --output-lib $(GC_LIB) --def $(PTHREAD_DEF)
-	echo touched > $(GC_INLINED_STAMP)
-
-$(GCE_INLINED_STAMP) $(GCED_INLINED_STAMP): $(DLL_INLINED_OBJS)
-	$(CC) $(OPT) $(XOPT) -mthreads -shared -o $(GCE_DLL) $(DLL_INLINED_OBJS)  $(LFLAGS)
-	$(DLLTOOL) -z pthread.def $(DLL_INLINED_OBJS)
-	$(DLLTOOL) -k --dllname $(GCE_DLL) --output-lib $(GCE_LIB) --def $(PTHREAD_DEF)
-	echo touched > $(GCE_INLINED_STAMP)
-
-$(GC_STATIC_STAMP) $(GCD_STATIC_STAMP): $(DLL_INLINED_OBJS)
-	$(RM) $(GC_LIB)
-	$(AR) -rv $(GC_LIB) $(DLL_INLINED_OBJS)
-	$(RANLIB) $(GC_LIB)
-	echo touched > $(GC_STATIC_STAMP)
-
-clean:
-	-$(RM) *~
-	-$(RM) *.i
-	-$(RM) *.o
-	-$(RM) *.obj
-	-$(RM) *.exe
-	-$(RM) $(PTHREAD_DEF)
-
-realclean: clean
-	-$(RM) $(GC_LIB)
-	-$(RM) $(GCE_LIB)
-	-$(RM) $(GC_DLL)
-	-$(RM) $(GCE_DLL)
-	-$(RM) $(GC_INLINED_STAMP)
-	-$(RM) $(GCE_INLINED_STAMP)
-	-$(RM) $(GC_STATIC_STAMP)
-	-$(RM) $(GCD_LIB)
-	-$(RM) $(GCED_LIB)
-	-$(RM) $(GCD_DLL)
-	-$(RM) $(GCED_DLL)
-	-$(RM) $(GCD_INLINED_STAMP)
-	-$(RM) $(GCED_INLINED_STAMP)
-	-$(RM) $(GCD_STATIC_STAMP)
-
-attr.o:		attr.c $(ATTR_SRCS) $(INCL)
-barrier.o:	barrier.c $(BARRIER_SRCS) $(INCL)
-cancel.o:	cancel.c $(CANCEL_SRCS) $(INCL)
-condvar.o:	condvar.c $(CONDVAR_SRCS) $(INCL)
-exit.o:		exit.c $(EXIT_SRCS) $(INCL)
-misc.o:		misc.c $(MISC_SRCS) $(INCL)
-mutex.o:	mutex.c $(MUTEX_SRCS) $(INCL)
-nonportable.o:	nonportable.c $(NONPORTABLE_SRCS) $(INCL)
-private.o:	private.c $(PRIVATE_SRCS) $(INCL)
-rwlock.o:	rwlock.c $(RWLOCK_SRCS) $(INCL)
-sched.o:	sched.c $(SCHED_SRCS) $(INCL)
-semaphore.o:	semaphore.c $(SEMAPHORE_SRCS) $(INCL)
-spin.o:		spin.c $(SPIN_SRCS) $(INCL)
-sync.o:		sync.c $(SYNC_SRCS) $(INCL)
-tsd.o:		tsd.c $(TSD_SRCS) $(INCL)
-version.o:	version.rc $(INCL)
diff -ruN pthreads-w32-2-7-0-release/Makefile pthreads-w32-2-7-0-release-new/Makefile
--- pthreads-w32-2-7-0-release/Makefile	2005-06-03 10:36:27.000000000 +0200
+++ pthreads-w32-2-7-0-release-new/Makefile	2005-10-31 17:38:36.000000000 +0100
@@ -1,213 +1,183 @@
-# This makefile is compatible with MS nmake and can be used as a
-# replacement for buildlib.bat. I've changed the target from an ordinary dll
-# (/LD) to a debugging dll (/LDd).
-# 
-# The variables $DLLDEST and $LIBDEST hold the destination directories for the
-# dll and the lib, respectively. Probably all that needs to change is $DEVROOT.
-
-
-# DLL_VER:
-# See pthread.h and README - This number is computed as 'current - age'
-DLL_VER	= 2
-DLL_VERD= $(DLL_VER)d
-
-DEVROOT	= C:\pthreads
-
-DLLDEST	= $(DEVROOT)\DLL
-LIBDEST	= $(DEVROOT)\LIB
-HDRDEST	= $(DEVROOT)\INCLUDE
-
-DLLS	= pthreadVCE$(DLL_VER).dll pthreadVSE$(DLL_VER).dll pthreadVC$(DLL_VER).dll \
-		  pthreadVCE$(DLL_VERD).dll pthreadVSE$(DLL_VERD).dll pthreadVC$(DLL_VERD).dll
-INLINED_STAMPS	= pthreadVCE$(DLL_VER).stamp pthreadVSE$(DLL_VER).stamp pthreadVC$(DLL_VER).stamp \
-				  pthreadVCE$(DLL_VERD).stamp pthreadVSE$(DLL_VERD).stamp pthreadVC$(DLL_VERD).stamp
-STATIC_STAMPS	= pthreadVCE$(DLL_VER).static pthreadVSE$(DLL_VER).static pthreadVC$(DLL_VER).static \
-				  pthreadVCE$(DLL_VERD).static pthreadVSE$(DLL_VERD).static pthreadVC$(DLL_VERD).static
-
-OPTIM	= /O2 /Ob2
-OPTIMD	=
-
-CFLAGS	= /W3 /MD /nologo /Yd /I. /D_WIN32_WINNT=0x400 /DHAVE_CONFIG_H
-CFLAGSD	= /Zi $(CFLAGS)
-
-
-# Default cleanup style
-CLEANUP	= __CLEANUP_C
-
-# C++ Exceptions
-VCEFLAGS	= /GX /TP $(CFLAGS)
-VCEFLAGSD	= /GX /TP $(CFLAGSD)
-#Structured Exceptions
-VSEFLAGS	= $(CFLAGS)
-VSEFLAGSD	= $(CFLAGSD)
-#C cleanup code
-VCFLAGS	= $(CFLAGS)
-VCFLAGSD= $(CFLAGSD)
+include $(CONFIG)
+
+LIBRARY=lib$(TARGET)$(STATICEXTENSION)
+LIBRARY_DLL=lib$(TARGET)$(SHAREDEXTENSION)
+
+RM	= rm -f
+MV	= mv -f
+CP	= cp -f
+
+OPT	= -O3 -finline-functions -mwindows -mno-cygwin -mms-bitfields
+
+LFLAGS		= -lwsock32 #$(EXTRA)
+
+CFLAGS	= $(OPT) -I. -D__CLEANUP_C -D_WIN32_WINNT=0x400 -DHAVE_CONFIG_H -Wall
+
 
 DLL_INLINED_OBJS = \
-		pthread.obj \
-		version.res
+		pthread.o \
+		version.o
 
 # Aggregate modules for inlinability
 DLL_OBJS	= \
-		attr.obj \
-		barrier.obj \
-		cancel.obj \
-		cleanup.obj \
-		condvar.obj \
-		create.obj \
-		dll.obj \
-		errno.obj \
-		exit.obj \
-		fork.obj \
-		global.obj \
-		misc.obj \
-		mutex.obj \
-		nonportable.obj \
-		private.obj \
-		rwlock.obj \
-		sched.obj \
-		semaphore.obj \
-		signal.obj \
-		spin.obj \
-		sync.obj \
-		tsd.obj \
-		version.res
+		attr.o \
+		barrier.o \
+		cancel.o \
+		cleanup.o \
+		condvar.o \
+		create.o \
+		dll.o \
+		errno.o \
+		exit.o \
+		fork.o \
+		global.o \
+		misc.o \
+		mutex.o \
+		nonportable.o \
+		private.o \
+		rwlock.o \
+		sched.o \
+		semaphore.o \
+		signal.o \
+		spin.o \
+		sync.o \
+		tsd.o \
+		version.o
 
 # Separate modules for minimising the size of statically linked images
 SMALL_STATIC_OBJS	= \
-		pthread_attr_init.obj \
-		pthread_attr_destroy.obj \
-		pthread_attr_getdetachstate.obj \
-		pthread_attr_setdetachstate.obj \
-		pthread_attr_getstackaddr.obj \
-		pthread_attr_setstackaddr.obj \
-		pthread_attr_getstacksize.obj \
-		pthread_attr_setstacksize.obj \
-		pthread_attr_getscope.obj \
-		pthread_attr_setscope.obj \
-		pthread_attr_setschedpolicy.obj \
-		pthread_attr_getschedpolicy.obj \
-		pthread_attr_setschedparam.obj \
-		pthread_attr_getschedparam.obj \
-		pthread_attr_setinheritsched.obj \
-		pthread_attr_getinheritsched.obj \
-		pthread_barrier_init.obj \
-		pthread_barrier_destroy.obj \
-		pthread_barrier_wait.obj \
-		pthread_barrierattr_init.obj \
-		pthread_barrierattr_destroy.obj \
-		pthread_barrierattr_setpshared.obj \
-		pthread_barrierattr_getpshared.obj \
-		pthread_setcancelstate.obj \
-		pthread_setcanceltype.obj \
-		pthread_testcancel.obj \
-		pthread_cancel.obj \
-		cleanup.obj \
-		pthread_condattr_destroy.obj \
-		pthread_condattr_getpshared.obj \
-		pthread_condattr_init.obj \
-		pthread_condattr_setpshared.obj \
-		pthread_cond_destroy.obj \
-		pthread_cond_init.obj \
-		pthread_cond_signal.obj \
-		pthread_cond_wait.obj \
-		create.obj \
-		dll.obj \
-		errno.obj \
-		pthread_exit.obj \
-		fork.obj \
-		global.obj \
-		pthread_mutex_init.obj \
-		pthread_mutex_destroy.obj \
-		pthread_mutexattr_init.obj \
-		pthread_mutexattr_destroy.obj \
-		pthread_mutexattr_getpshared.obj \
-		pthread_mutexattr_setpshared.obj \
-		pthread_mutexattr_settype.obj \
-		pthread_mutexattr_gettype.obj \
-		pthread_mutex_lock.obj \
-		pthread_mutex_timedlock.obj \
-		pthread_mutex_unlock.obj \
-		pthread_mutex_trylock.obj \
-		pthread_mutexattr_setkind_np.obj \
-		pthread_mutexattr_getkind_np.obj \
-		pthread_getw32threadhandle_np.obj \
-		pthread_delay_np.obj \
-		pthread_num_processors_np.obj \
-		pthread_win32_attach_detach_np.obj \
-		pthread_equal.obj \
-		pthread_getconcurrency.obj \
-		pthread_once.obj \
-		pthread_self.obj \
-		pthread_setconcurrency.obj \
-		pthread_rwlock_init.obj \
-		pthread_rwlock_destroy.obj \
-		pthread_rwlockattr_init.obj \
-		pthread_rwlockattr_destroy.obj \
-		pthread_rwlockattr_getpshared.obj \
-		pthread_rwlockattr_setpshared.obj \
-		pthread_rwlock_rdlock.obj \
-		pthread_rwlock_wrlock.obj \
-		pthread_rwlock_unlock.obj \
-		pthread_rwlock_tryrdlock.obj \
-		pthread_rwlock_trywrlock.obj \
-		pthread_setschedparam.obj \
-		pthread_getschedparam.obj \
-		pthread_timechange_handler_np.obj \
-		ptw32_is_attr.obj \
-		ptw32_processInitialize.obj \
-		ptw32_processTerminate.obj \
-		ptw32_threadStart.obj \
-		ptw32_threadDestroy.obj \
-		ptw32_tkAssocCreate.obj \
-		ptw32_tkAssocDestroy.obj \
-		ptw32_callUserDestroyRoutines.obj \
-		ptw32_timespec.obj \
-		ptw32_throw.obj \
-		ptw32_InterlockedCompareExchange.obj \
-		ptw32_getprocessors.obj \
-		ptw32_calloc.obj \
-		ptw32_new.obj \
-		ptw32_reuse.obj \
-		ptw32_rwlock_check_need_init.obj \
-		ptw32_cond_check_need_init.obj \
-		ptw32_mutex_check_need_init.obj \
-		ptw32_semwait.obj \
-		ptw32_relmillisecs.obj \
-		ptw32_MCS_lock.obj \
-		sched_get_priority_max.obj \
-		sched_get_priority_min.obj \
-		sched_setscheduler.obj \
-		sched_getscheduler.obj \
-		sched_yield.obj \
-		sem_init.obj \
-		sem_destroy.obj \
-		sem_trywait.obj \
-		sem_timedwait.obj \
-		sem_wait.obj \
-		sem_post.obj \
-		sem_post_multiple.obj \
-		sem_getvalue.obj \
-		sem_open.obj \
-		sem_close.obj \
-		sem_unlink.obj \
-		signal.obj \
-		pthread_kill.obj \
-		ptw32_spinlock_check_need_init.obj \
-		pthread_spin_init.obj \
-		pthread_spin_destroy.obj \
-		pthread_spin_lock.obj \
-		pthread_spin_unlock.obj \
-		pthread_spin_trylock.obj \
-		pthread_detach.obj \
-		pthread_join.obj \
-		pthread_key_create.obj \
-		pthread_key_delete.obj \
-		pthread_setspecific.obj \
-		pthread_getspecific.obj \
-		w32_CancelableWait.obj \
-		version.res
+		pthread_attr_init.o \
+		pthread_attr_destroy.o \
+		pthread_attr_getdetachstate.o \
+		pthread_attr_setdetachstate.o \
+		pthread_attr_getstackaddr.o \
+		pthread_attr_setstackaddr.o \
+		pthread_attr_getstacksize.o \
+		pthread_attr_setstacksize.o \
+		pthread_attr_getscope.o \
+		pthread_attr_setscope.o \
+		pthread_attr_setschedpolicy.o \
+		pthread_attr_getschedpolicy.o \
+		pthread_attr_setschedparam.o \
+		pthread_attr_getschedparam.o \
+		pthread_attr_setinheritsched.o \
+		pthread_attr_getinheritsched.o \
+		pthread_barrier_init.o \
+		pthread_barrier_destroy.o \
+		pthread_barrier_wait.o \
+		pthread_barrierattr_init.o \
+		pthread_barrierattr_destroy.o \
+		pthread_barrierattr_setpshared.o \
+		pthread_barrierattr_getpshared.o \
+		pthread_setcancelstate.o \
+		pthread_setcanceltype.o \
+		pthread_testcancel.o \
+		pthread_cancel.o \
+		cleanup.o \
+		pthread_condattr_destroy.o \
+		pthread_condattr_getpshared.o \
+		pthread_condattr_init.o \
+		pthread_condattr_setpshared.o \
+		pthread_cond_destroy.o \
+		pthread_cond_init.o \
+		pthread_cond_signal.o \
+		pthread_cond_wait.o \
+		create.o \
+		dll.o \
+		errno.o \
+		pthread_exit.o \
+		fork.o \
+		global.o \
+		pthread_mutex_init.o \
+		pthread_mutex_destroy.o \
+		pthread_mutexattr_init.o \
+		pthread_mutexattr_destroy.o \
+		pthread_mutexattr_getpshared.o \
+		pthread_mutexattr_setpshared.o \
+		pthread_mutexattr_settype.o \
+		pthread_mutexattr_gettype.o \
+		pthread_mutex_lock.o \
+		pthread_mutex_timedlock.o \
+		pthread_mutex_unlock.o \
+		pthread_mutex_trylock.o \
+		pthread_mutexattr_setkind_np.o \
+		pthread_mutexattr_getkind_np.o \
+		pthread_getw32threadhandle_np.o \
+		pthread_delay_np.o \
+		pthread_num_processors_np.o \
+		pthread_win32_attach_detach_np.o \
+		pthread_equal.o \
+		pthread_getconcurrency.o \
+		pthread_once.o \
+		pthread_self.o \
+		pthread_setconcurrency.o \
+		pthread_rwlock_init.o \
+		pthread_rwlock_destroy.o \
+		pthread_rwlockattr_init.o \
+		pthread_rwlockattr_destroy.o \
+		pthread_rwlockattr_getpshared.o \
+		pthread_rwlockattr_setpshared.o \
+		pthread_rwlock_rdlock.o \
+		pthread_rwlock_wrlock.o \
+		pthread_rwlock_unlock.o \
+		pthread_rwlock_tryrdlock.o \
+		pthread_rwlock_trywrlock.o \
+		pthread_setschedparam.o \
+		pthread_getschedparam.o \
+		pthread_timechange_handler_np.o \
+		ptw32_is_attr.o \
+		ptw32_processInitialize.o \
+		ptw32_processTerminate.o \
+		ptw32_threadStart.o \
+		ptw32_threadDestroy.o \
+		ptw32_tkAssocCreate.o \
+		ptw32_tkAssocDestroy.o \
+		ptw32_callUserDestroyRoutines.o \
+		ptw32_timespec.o \
+		ptw32_throw.o \
+		ptw32_InterlockedCompareExchange.o \
+		ptw32_getprocessors.o \
+		ptw32_calloc.o \
+		ptw32_new.o \
+		ptw32_reuse.o \
+		ptw32_rwlock_check_need_init.o \
+		ptw32_cond_check_need_init.o \
+		ptw32_mutex_check_need_init.o \
+		ptw32_semwait.o \
+		ptw32_relmillisecs.o \
+		ptw32_MCS_lock.o \
+		sched_get_priority_max.o \
+		sched_get_priority_min.o \
+		sched_setscheduler.o \
+		sched_getscheduler.o \
+		sched_yield.o \
+		sem_init.o \
+		sem_destroy.o \
+		sem_trywait.o \
+		sem_timedwait.o \
+		sem_wait.o \
+		sem_post.o \
+		sem_post_multiple.o \
+		sem_getvalue.o \
+		sem_open.o \
+		sem_close.o \
+		sem_unlink.o \
+		signal.o \
+		pthread_kill.o \
+		ptw32_spinlock_check_need_init.o \
+		pthread_spin_init.o \
+		pthread_spin_destroy.o \
+		pthread_spin_lock.o \
+		pthread_spin_unlock.o \
+		pthread_spin_trylock.o \
+		pthread_detach.o \
+		pthread_join.o \
+		pthread_key_create.o \
+		pthread_key_delete.o \
+		pthread_setspecific.o \
+		pthread_getspecific.o \
+		w32_CancelableWait.o \
+		version.rc
 
 INCL	= config.h implement.h semaphore.h pthread.h need_errno.h
 
@@ -369,136 +339,56 @@
 		pthread_getspecific.c
 
 
-help:
-	@ echo Run one of the following command lines:
-	@ echo nmake clean VCE   (to build the MSVC dll with C++ exception handling)
-	@ echo nmake clean VSE   (to build the MSVC dll with structured exception handling)
-	@ echo nmake clean VC    (to build the MSVC dll with C cleanup code)
-	@ echo nmake clean VCE-inlined   (to build the MSVC inlined dll with C++ exception handling)
-	@ echo nmake clean VSE-inlined   (to build the MSVC inlined dll with structured exception handling)
-	@ echo nmake clean VC-inlined    (to build the MSVC inlined dll with C cleanup code)
-	@ echo nmake clean VC-static     (to build the MSVC static lib with C cleanup code)
-	@ echo nmake clean VCE-debug   (to build the debug MSVC dll with C++ exception handling)
-	@ echo nmake clean VSE-debug   (to build the debug MSVC dll with structured exception handling)
-	@ echo nmake clean VC-debug    (to build the debug MSVC dll with C cleanup code)
-	@ echo nmake clean VCE-inlined-debug   (to build the debug MSVC inlined dll with C++ exception handling)
-	@ echo nmake clean VSE-inlined-debug   (to build the debug MSVC inlined dll with structured exception handling)
-	@ echo nmake clean VC-inlined-debug    (to build the debug MSVC inlined dll with C cleanup code)
-	@ echo nmake clean VC-static-debug     (to build the debug MSVC static lib with C cleanup code)
-
-all:
-	@ nmake clean VCE-inlined
-	@ nmake clean VSE-inlined
-	@ nmake clean VC-inlined
-	@ nmake clean VCE-inlined-debug
-	@ nmake clean VSE-inlined-debug
-	@ nmake clean VC-inlined-debug
-
-VCE:
-	@ nmake /nologo EHFLAGS="$(OPTIM) $(VCEFLAGS)" CLEANUP=__CLEANUP_CXX pthreadVCE$(DLL_VER).dll
-
-VCE-debug:
-	@ nmake /nologo EHFLAGS="$(OPTIMD) $(VCEFLAGSD)" CLEANUP=__CLEANUP_CXX pthreadVCE$(DLL_VERD).dll
-
-VSE:
-	@ nmake /nologo EHFLAGS="$(OPTIM) $(VSEFLAGS)" CLEANUP=__CLEANUP_SEH pthreadVSE$(DLL_VER).dll
-
-VSE-debug:
-	@ nmake /nologo EHFLAGS="$(OPTIMD) $(VSEFLAGSD)" CLEANUP=__CLEANUP_SEH pthreadVSE$(DLL_VERD).dll
-
-VC:
-	@ nmake /nologo EHFLAGS="$(OPTIM) $(VCFLAGS)" CLEANUP=__CLEANUP_C pthreadVC$(DLL_VER).dll
-
-VC-debug:
-	@ nmake /nologo EHFLAGS="$(OPTIMD) $(VCFLAGSD)" CLEANUP=__CLEANUP_C pthreadVC$(DLL_VERD).dll
-
-#
-# The so-called inlined DLL is just a single translation unit with
-# inlining optimisation turned on.
-#
-VCE-inlined:
-	@ nmake /nologo EHFLAGS="$(OPTIM) $(VCEFLAGS) /DPTW32_BUILD_INLINED" CLEANUP=__CLEANUP_CXX pthreadVCE$(DLL_VER).stamp
-
-VCE-inlined-debug:
-	@ nmake /nologo EHFLAGS="$(OPTIMD) $(VCEFLAGSD) /DPTW32_BUILD_INLINED" CLEANUP=__CLEANUP_CXX pthreadVCE$(DLL_VERD).stamp
-
-VSE-inlined:
-	@ nmake /nologo EHFLAGS="$(OPTIM) $(VSEFLAGS) /DPTW32_BUILD_INLINED" CLEANUP=__CLEANUP_SEH pthreadVSE$(DLL_VER).stamp
-
-VSE-inlined-debug:
-	@ nmake /nologo EHFLAGS="$(OPTIMD) $(VSEFLAGSD) /DPTW32_BUILD_INLINED" CLEANUP=__CLEANUP_SEH pthreadVSE$(DLL_VERD).stamp
-
-VC-inlined:
-	@ nmake /nologo EHFLAGS="$(OPTIM) $(VCFLAGS) /DPTW32_BUILD_INLINED" CLEANUP=__CLEANUP_C pthreadVC$(DLL_VER).stamp
-
-VC-inlined-debug:
-	nmake /nologo EHFLAGS="$(OPTIMD) $(VCFLAGSD) /DPTW32_BUILD_INLINED" CLEANUP=__CLEANUP_C pthreadVC$(DLL_VERD).stamp
-
-VC-static:
-	@ nmake /nologo EHFLAGS="$(OPTIM) $(VCFLAGS) /DPTW32_BUILD_INLINED /DPTW32_STATIC_LIB" CLEANUP=__CLEANUP_C pthreadVC$(DLL_VER).static
-
-VC-static-debug:
-	@ nmake /nologo EHFLAGS="$(OPTIMD) $(VCFLAGSD) /DPTW32_BUILD_INLINED /DPTW32_STATIC_LIB" CLEANUP=__CLEANUP_C pthreadVC$(DLL_VERD).static
-
-realclean: clean
-	if exist pthread*.dll del pthread*.dll
-	if exist pthread*.lib del pthread*.lib
-	if exist *.stamp del *.stamp
+$(LIBRARY): $(DLL_OBJS)
+	@echo -n " linking "
+	@#$(DLLTOOL) -e exports.o -l lib$(TARGET).lib $(DLL_OBJS)
+	@$(CC) $(OPT) -shared -o $(LIBRARY_DLL) $(DLL_OBJS) $(LFLAGS)
+	@#$(DLLTOOL) -z lib$(TARGET).def $(DLL_OBJS) exports.o
+	@#$(DLLTOOL) -k --dllname $(LIBRARY_DLL) --output-lib $(LIBRARY) --def lib$(TARGET).def
+	@#$(RANLIB) $(LIBRARY)
+	@echo "$(LIBRARY)"
+	@cp pthread.h sched.h semaphore.h $(PREFIX)/include
+	@cp $(LIBRARY_DLL) $(PREFIX)/lib
 
 clean:
-	if exist *.obj del *.obj
-	if exist *.ilk del *.ilk
-	if exist *.pdb del *.pdb
-	if exist *.exp del *.exp
-	if exist *.map del *.map
-	if exist *.o del *.o
-	if exist *.i del *.i
-	if exist *.res del *.res
-
-
-install: $(DLLS)
-	copy pthread*.dll $(DLLDEST)
-	copy pthread*.lib $(LIBDEST)
-	copy pthread.h $(HDRDEST)
-	copy sched.h $(HDRDEST)
-	copy semaphore.h $(HDRDEST)
-
-$(DLLS): $(DLL_OBJS)
-	cl /LDd /Zi /nologo $(DLL_OBJS) \
-		/link /nodefaultlib:libcmt /implib:$*.lib \
-		msvcrt.lib wsock32.lib /out:$@
-
-$(INLINED_STAMPS): $(DLL_INLINED_OBJS)
-	cl /LDd /Zi /nologo $(DLL_INLINED_OBJS) \
-		/link /nodefaultlib:libcmt /implib:$*.lib \
-		msvcrt.lib wsock32.lib /out:$*.dll
-
-$(STATIC_STAMPS): $(DLL_INLINED_OBJS)
-	if exist $*.lib del $*.lib
-	lib $(DLL_INLINED_OBJS) /out:$*.lib
-
-.c.obj:
-	cl $(EHFLAGS) /D$(CLEANUP) -c $<
-
-.rc.res:
-	rc /dPTW32_RC_MSC /d$(CLEANUP) $<
-
-.c.i:
-	cl /P /O2 /Ob1 $(VCFLAGS) $<
-
-attr.obj:	attr.c $(ATTR_SRCS) $(INCL)
-barrier.obj:	barrier.c $(BARRIER_SRCS) $(INCL)
-cancel.obj:	cancel.c $(CANCEL_SRCS) $(INCL)
-condvar.obj:	condvar.c $(CONDVAR_SRCS) $(INCL)
-exit.obj:	exit.c $(EXIT_SRCS) $(INCL)
-misc.obj:	misc.c $(MISC_SRCS) $(INCL)
-mutex.obj:	mutex.c $(MUTEX_SRCS) $(INCL)
-nonportable.obj:	nonportable.c $(NONPORTABLE_SRCS) $(INCL)
-private.obj:	private.c $(PRIVATE_SRCS) $(INCL)
-rwlock.obj:	rwlock.c $(RWLOCK_SRCS) $(INCL)
-sched.obj:	sched.c $(SCHED_SRCS) $(INCL)
-semaphore.obj:	semaphore.c $(SEMAPHORE_SRCS) $(INCL)
-spin.obj:	spin.c $(SPIN_SRCS) $(INCL)
-sync.obj:	sync.c $(SYNC_SRCS) $(INCL)
-tsd.obj:	tsd.c $(TSD_SRCS) $(INCL)
-version.res:	version.rc $(INCL)
+	@-$(RM) *~
+	@$(RM) *.i
+	@$(RM) *.o
+	@$(RM) $(LIBRARY)
+
+
+%.pre: %.c
+	@$(CC) -E -o $@ $(CFLAGS) $^
+
+%.s: %.c
+	@echo " building dep for $<"
+	@$(CC) -c $(CFLAGS) -Wa,-ahl $^ > $@
+
+.SUFFIXES: .dll .c .o
+
+%.o:%.c		 
+	@echo -n " compiling $< -> "
+	@$(CC) -c -o $@ $(CFLAGS) $(CLEANUP_FLAGS) $<
+	@echo "$@"
+
+%.o:%.rc
+	@echo -n " compiling $< -> "
+	@$(WINDRES) $< $@
+	@echo "$@"
+
+attr.o:	attr.c $(ATTR_SRCS) $(INCL)
+barrier.o:	barrier.c $(BARRIER_SRCS) $(INCL)
+cancel.o:	cancel.c $(CANCEL_SRCS) $(INCL)
+condvar.o:	condvar.c $(CONDVAR_SRCS) $(INCL)
+exit.o:	exit.c $(EXIT_SRCS) $(INCL)
+misc.o:	misc.c $(MISC_SRCS) $(INCL)
+mutex.o:	mutex.c $(MUTEX_SRCS) $(INCL)
+nonportable.o:	nonportable.c $(NONPORTABLE_SRCS) $(INCL)
+private.o:	private.c $(PRIVATE_SRCS) $(INCL)
+rwlock.o:	rwlock.c $(RWLOCK_SRCS) $(INCL)
+sched.o:	sched.c $(SCHED_SRCS) $(INCL)
+semaphore.o:	semaphore.c $(SEMAPHORE_SRCS) $(INCL)
+spin.o:	spin.c $(SPIN_SRCS) $(INCL)
+sync.o:	sync.c $(SYNC_SRCS) $(INCL)
+tsd.o:	tsd.c $(TSD_SRCS) $(INCL)
+version.o:	version.rc $(INCL)
Binary files pthreads-w32-2-7-0-release/.Makefile.swp and pthreads-w32-2-7-0-release-new/.Makefile.swp differ


syntax highlighted by Code2HTML, v. 0.9.1