]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
Windows: Finish converting vol apps to pthread only
authorJeffrey Altman <jaltman@your-file-system.com>
Thu, 28 Oct 2010 05:19:17 +0000 (01:19 -0400)
committerDerrick Brashear <shadow@dementia.org>
Wed, 3 Nov 2010 10:58:39 +0000 (03:58 -0700)
The src/vol directory on Windows is one of the rare examples
where a single directory builds both lwp and pthreaded versions
of libraries and executables.  With this patchset the executables
are fully converted from lwp to pthread.  This requires that
afsrpc.dll include the pthread implementations of the threadname,
fasttime, and lock implementations from the LWP directory.
The inclusion within afsrpc.dll permits the dviced and
dvolser directories to avoid rebuilding those object modules.

Reviewed-on: http://gerrit.openafs.org/3181
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit 5fce5754cee4f466f99681fcd7f42e5735e9776d)
Change-Id: I3b2215f017aae91a91e1a1955f34bf149679223b
Reviewed-on: http://gerrit.openafs.org/3236
Tested-by: BuildBot <buildbot@rampaginggeek.com>
NTMakefile
src/dviced/NTMakefile
src/dvolser/NTMakefile
src/libafsrpc/NTMakefile
src/libafsrpc/afsrpc.def
src/vol/NTMakefile

index 65c7f1f425d035551b39653915ba05329a4d7e9f..b7d45a59e5b8016f757c2b432b8e208cdfed2446 100644 (file)
@@ -340,7 +340,14 @@ dir: butm
        $(NTMAKE)
        $(CD) ..\..
 
-vol: dir
+libafsrpc: dir
+     @echo ***** $@
+       $(DOCD) $(SRC)\$@
+       $(CD) $(SRC)\$@
+       $(NTMAKE)
+       $(CD) ..\..
+
+vol: libafsrpc
      @echo ***** $@
        $(DOCD) $(SRC)\$@
        $(CD) $(SRC)\$@
@@ -403,14 +410,7 @@ bu_utils: bosctlsvc
        $(NTMAKE)
        $(CD) ..\..
 
-libafsrpc: bu_utils
-     @echo ***** $@
-       $(DOCD) $(SRC)\$@
-       $(CD) $(SRC)\$@
-       $(NTMAKE)
-       $(CD) ..\..
-
-libafsauthent: libafsrpc
+libafsauthent: bu_utils
      @echo ***** $@
        $(DOCD) $(SRC)\$@
        $(CD) $(SRC)\$@
index 0d9ff5b31926c3f8968d748374f13450cc53954d..3a96b61f4cdd37211d86149898bfd8309f17d1ae 100644 (file)
@@ -18,7 +18,6 @@ EXEFILE = $(DESTDIR)\root.server\usr\afs\bin\dafileserver.exe
 
 VICED = ..\viced
 TVICED = ..\tviced
-LWP = ..\lwp
 LIBACL = ..\libacl
 DIR = ..\dir
 FSINT = ..\fsint
@@ -33,15 +32,13 @@ TVICEDOBJS = $(OUT)\serialize_state.obj
 
 DAFS_VICEDRES =  $(OUT)\dafileserver.res
 
-LWPOBJS = $(OUT)\lock.obj $(OUT)\fasttime.obj $(OUT)\threadname.obj
-
 LIBACLOBJS = $(OUT)\aclprocs.obj $(OUT)\netprocs.obj
 
 DIROBJS = $(OUT)\buffer.obj $(OUT)\dir.obj $(OUT)\salvage.obj
 
 FSINTOBJS = $(OUT)\afsaux.obj $(OUT)\afscbint.cs.obj $(OUT)\afsint.ss.obj $(OUT)\afsint.xdr.obj
 
-EXEOBJS = $(VICEDOBJS) $(TVICEDOBJS) $(DAFS_VICEDRES) $(LWPOBJS) $(LIBACLOBJS) \
+EXEOBJS = $(VICEDOBJS) $(TVICEDOBJS) $(DAFS_VICEDRES) $(LIBACLOBJS) \
          $(DIROBJS) $(FSINTOBJS) $(RXOBJS)
 
 noversion: install
@@ -60,9 +57,6 @@ $(DAFS_VICEDRES): dafileserver.rc AFS_component_version_number.h
 $(TVICEDOBJS): $(TVICED)\$$(@B).c
        $(C2OBJ) -I$(TVICED) $**
 
-$(LWPOBJS): $(LWP)\$$(@B).C
-       $(C2OBJ) -I$(LWP) $**
-
 $(LIBACLOBJS): $(LIBACL)\$$(@B).C
        $(C2OBJ) -I$(LIBACL) $**
 
index c55c8544874b6ee89154d5b86d0b7e3be6854b20..ee4dda731ce49ed0b6305628edc4a3ad752a6063 100644 (file)
@@ -14,7 +14,6 @@ RELDIR=dvolser
 VOLSER = ..\volser
 DVOLSER = .
 VLSERVER = ..\vlserver
-LWP = ..\lwp
 LIBACL = ..\libacl
 UTIL = ..\util
 DIR = ..\dir
@@ -68,15 +67,12 @@ VOLSERVER_EXEFILE = $(DESTDIR)\root.server\usr\afs\bin\davolserver.exe
 
 VOLSEROBJS=$(OUT)\volmain.obj $(OUT)\volprocs.obj $(OUT)\physio.obj $(OUT)\voltrans.obj $(OUT)\dumpstuff.obj
 
-LWPOBJS=$(OUT)\lock.obj $(OUT)\threadname.obj $(OUT)\fasttime.obj
-
 LIBACLOBJS=$(OUT)\aclprocs.obj $(OUT)\netprocs.obj
 
 DIROBJS=$(OUT)\buffer.obj $(OUT)\dir.obj $(OUT)\salvage.obj
 
 VOLSERVER_EXEOBJS = $(VOLSEROBJS) \
         $(VLSERVEROBJS) \
-        $(LWPOBJS) \
         $(LIBACLOBJS) \
         $(DIROBJS) \
         $(FSINTOBJS) \
@@ -110,9 +106,6 @@ $(OUT)\vscommon.obj: $(VOLSER)\common.c
 $(VOLSEROBJS): $(VOLSER)\$$(@B).c
         $(C2OBJ) -I$(VOLSER) -I$(UTIL) $**
 
-$(LWPOBJS): $(LWP)\$$(@B).C
-       $(C2OBJ) -I$(LWP) $**
-
 $(LIBACLOBJS): $(LIBACL)\$$(@B).C
        $(C2OBJ) -I$(LIBACL) $**
 
index 3c1ae3f032b92d9ef63d6894bf0a48c8fbff9f4f..1ef356f595ff7e64662f96923a6c3c2bd6e840ee 100644 (file)
@@ -17,6 +17,7 @@ DES = ..\des
 UTIL = ..\util
 FSINT = ..\fsint
 COMERR = ..\comerr
+LWP = ..\lwp
 
 # Additional debugging flag for RX.
 !IF ("$(AFSDEV_BUILDTYPE)" == "CHECKED")
@@ -53,12 +54,14 @@ UTILOBJS = $(OUT)\casestrcpy.obj $(OUT)\winsock_nt.obj
 
 COMERRBJS = $(OUT)\error_msg.obj $(OUT)\et_name.obj $(OUT)\com_err.obj
 
+LWPOBJS = $(OUT)\lock.obj $(OUT)\fasttime.obj $(OUT)\threadname.obj
+
 FSINTBJS = $(OUT)\afsint.cs.obj $(OUT)\afsint.xdr.obj $(OUT)\afscbint.cs.obj $(OUT)\afscbint.xdr.obj \
        $(OUT)\afsaux.obj
 
 DLLOBJS = $(MULTIOBJS) $(RXOBJS) $(XDROBJS) $(RXSTATBJS) $(LIBRXKAD_OBJS) \
        $(DESOBJS) $(LIBRXKAD_REGOBJS) $(UTILBJS) $(COMERRBJS) \
-       $(FSINTBJS) $(OUT)\afsrpc.res
+       $(FSINTBJS) $(LWPOBJS) $(OUT)\afsrpc.res
 
 $(MULTIOBJS) $(RXOBJS) $(XDROBJS):$(RX)\$$(@B).c
        $(C2OBJ) $** -I$(RX) 
@@ -84,6 +87,9 @@ $(FSINTBJS):$(FSINT)\$$(@B).c
 $(UTILOBJS):$(UTIL)\$$(@B).c
        $(C2OBJ) $** -I$(UTIL)
 
+$(LWPOBJS): $(LWP)\$$(@B).C
+       $(C2OBJ) $** -I$(LWP)
+
 NTMAKE = nmake /nologo /f ntmakefile
 
 
@@ -134,4 +140,4 @@ libstub:
                $(DESTDIR)\lib\afsrpc.exp
 
 clean::
-       $(DEL) $(DESTDIR)\lib\afsrpc.dll $(DESTDIR)\lib\afsrpc.lib $(DESTDIR)\lib\afsrpc.exp
\ No newline at end of file
+       $(DEL) $(DESTDIR)\lib\afsrpc.dll $(DESTDIR)\lib\afsrpc.lib $(DESTDIR)\lib\afsrpc.exp
index 39f08b2036bb82af42d806a0f3a340c72625e71f..dd6fd0cfb9ca2938d0292df831970c87cecd984b 100755 (executable)
@@ -269,6 +269,21 @@ EXPORTS
 ;      rx_InterruptCall                        @274
         osi_Panic                              @275
 
+; lwp functions
+        Afs_Lock_Obtain                         @276
+        Afs_Lock_ReleaseR                       @277
+        Afs_Lock_ReleaseW                       @278
+        Afs_Lock_WakeupR                        @279
+        Lock_Init                               @280
+        Lock_Destroy                            @281
+        FT_Init                                 @282
+        FT_GetTimeOfDay                         @283
+        FT_AGetTimeOfDay                        @284
+        FT_ApproxTime                           @285
+        threadname                              @286
+        registerthread                          @287
+        swapthreadname                          @288
+
 ; for performance testing
         rx_TSFPQGlobSize                        @2001 DATA
         rx_TSFPQLocalMax                        @2002 DATA
index cba51dd5952708bf5d59d80d18155b31a549b787..d149662617bb8b6710ada0e6659ba5bee081fe0e 100644 (file)
@@ -170,11 +170,10 @@ $(DAFS_LIBFILE): $(DAFS_LIBOBJS)
 
 EXEC_LIBS = \
        $(DESTDIR)\lib\afs\afscmd.lib \
-       $(DESTDIR)\lib\afs\afsvol.lib \
-       $(DESTDIR)\lib\afs\afsutil.lib \
+       $(DESTDIR)\lib\afs\mtafsvol.lib \
+       $(DESTDIR)\lib\afs\mtafsutil.lib \
+        $(DESTDIR)\lib\afsrpc.lib \
        $(DESTDIR)\lib\afs\afsdir.lib \
-       $(DESTDIR)\lib\afsrx.lib \
-       $(DESTDIR)\lib\afslwp.lib \
        $(DESTDIR)\lib\afs\afsacl.lib \
        $(DESTDIR)\lib\afs\afsreg.lib \
        $(DESTDIR)\lib\afs\afsprocmgmt.lib \
@@ -185,6 +184,15 @@ EXEC_LIBS = \
 # build salvager
 SALVAGER = $(DESTDIR)\root.server\usr\afs\bin\salvager.exe
 
+$(OUT)\salvager.obj: salvager.c
+       $(C2OBJ) $** -DAFS_PTHREAD_ENV
+
+$(OUT)\vol-salvage.obj: vol-salvage.c
+       $(C2OBJ) $** -DAFS_PTHREAD_ENV
+
+$(OUT)\physio.obj: physio.c
+       $(C2OBJ) $** -DAFS_PTHREAD_ENV
+
 SALVAGER_EXEOBJS =\
        $(OUT)\salvager.obj \
        $(OUT)\vol-salvage.obj \
@@ -204,6 +212,9 @@ $(SALVAGER): $(SALVAGER_EXEOBJS) $(EXEC_LIBS)
 # build fssync-debug
 FSSYNC_DEBUG = $(DESTDIR)\root.server\usr\afs\bin\fssync-debug.exe
 
+$(OUT)\fssync-debug.obj: fssync-debug.c
+       $(C2OBJ) $** -DAFS_PTHREAD_ENV
+
 FSSYNC_DEBUG_EXEOBJS =\
        $(OUT)\fssync-debug.obj \
        $(OUT)\AFS_component_version_number.obj \
@@ -220,6 +231,9 @@ $(FSSYNC_DEBUG): $(FSSYNC_DEBUG_EXEOBJS) $(EXEC_LIBS)
 # build volinfo
 VOLINFO = $(DESTDIR)\root.server\usr\afs\bin\volinfo.exe
 
+$(OUT)\vol-info.obj: vol-info.c
+       $(C2OBJ) $** -DAFS_PTHREAD_ENV
+
 $(VOLINFO): $(OUT)\vol-info.obj $(OUT)\physio.obj $(OUT)\volinfo.res $(EXEC_LIBS)
        $(EXECONLINK) shell32.lib
         $(_VC_MANIFEST_EMBED_EXE)
@@ -231,6 +245,9 @@ $(VOLINFO): $(OUT)\vol-info.obj $(OUT)\physio.obj $(OUT)\volinfo.res $(EXEC_LIBS
 # build volinfo
 VOLBLESS = $(DESTDIR)\root.server\usr\afs\bin\vol-bless.exe
 
+$(OUT)\vol-bless.obj: vol-bless.c
+       $(C2OBJ) $** -DAFS_PTHREAD_ENV
+
 $(VOLBLESS): $(OUT)\vol-bless.obj $(OUT)\physio.obj $(OUT)\vol-bless.res $(EXEC_LIBS)
        $(EXECONLINK) shell32.lib
         $(_VC_MANIFEST_EMBED_EXE)