From baacf6c941b44504f703463b053de357a8adb607 Mon Sep 17 00:00:00 2001 From: rpj Date: Wed, 6 Apr 2005 02:15:04 +0000 Subject: '' --- Makefile | 68 +++++++++++++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 55 insertions(+), 13 deletions(-) (limited to 'Makefile') diff --git a/Makefile b/Makefile index cc30244..7745080 100644 --- a/Makefile +++ b/Makefile @@ -5,36 +5,44 @@ # 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 - -DEVROOT = c:\pthreads +DLL_VERD= $(DLL_VER)d + +DEVROOT = C:\pthreads DLLDEST = $(DEVROOT)\DLL -LIBDEST = $(DEVROOT)\DLL +LIBDEST = $(DEVROOT)\LIB +HDRDEST = $(DEVROOT)\INCLUDE -DLLS = pthreadVCE$(DLL_VER).dll pthreadVSE$(DLL_VER).dll pthreadVC$(DLL_VER).dll -INLINED_STAMPS = pthreadVCE$(DLL_VER).stamp pthreadVSE$(DLL_VER).stamp pthreadVC$(DLL_VER).stamp -STATIC_STAMPS = pthreadVCE$(DLL_VER).static pthreadVSE$(DLL_VER).static pthreadVC$(DLL_VER).static +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 -#OPTIM = +OPTIMD = CFLAGS = /W3 /MD /nologo /Yd /I. /D_WIN32_WINNT=0x400 /DHAVE_CONFIG_H -#CFLAGS = /W3 /MD /nologo /Yd /Zi /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) DLL_INLINED_OBJS = \ pthread.obj \ @@ -370,21 +378,40 @@ help: @ 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. @@ -392,15 +419,27 @@ VC: 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 *.dll del *.dll if exist *.lib del *.lib @@ -420,6 +459,9 @@ clean: 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) \ @@ -432,12 +474,12 @@ $(INLINED_STAMPS): $(DLL_INLINED_OBJS) msvcrt.lib wsock32.lib /out:$*.dll $(STATIC_STAMPS): $(DLL_INLINED_OBJS) - if exist $*.lib del $*.lib + 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) $< -- cgit v1.2.3