f10ae67d351e9a72ceeb58ac2e85741332fa1cf9
[openafs.git] / src / vol / NTMakefile
1 # Copyright 2000, International Business Machines Corporation and others.
2 # All Rights Reserved.
3
4 # This software has been released under the terms of the IBM Public
5 # License.  For details, see the LICENSE file in the top-level source
6 # directory or online at http://www.openafs.org/dl/license10.html
7
8 AFSDEV_AUXCDEFINES = -DFSSYNC_BUILD_SERVER -DFSSYNC_BUILD_CLIENT
9
10 RELDIR=vol
11 !INCLUDE ..\config\NTMakefile.$(SYS_NAME)
12 !INCLUDE ..\config\NTMakefile.version
13
14 ############################################################################
15 # Definitions for installing header files
16
17 INCFILEDIR = $(DESTDIR)\include  # header file install directory
18
19 INCFILES =\
20         $(INCFILEDIR)\afs\fssync.h \
21         $(INCFILEDIR)\afs\ihandle.h \
22         $(INCFILEDIR)\afs\nfs.h \
23         $(INCFILEDIR)\afs\ntops.h \
24         $(INCFILEDIR)\afs\partition.h \
25         $(INCFILEDIR)\afs\viceinode.h \
26         $(INCFILEDIR)\afs\vnode.h \
27         $(INCFILEDIR)\afs\vnode_inline.h \
28         $(INCFILEDIR)\afs\volume.h \
29         $(INCFILEDIR)\afs\volume_inline.h \
30         $(INCFILEDIR)\afs\voldefs.h \
31         $(INCFILEDIR)\afs\daemon_com.h \
32         $(INCFILEDIR)\afs\vol_prototypes.h
33
34 ############################################################################
35 # Build afsvol.lib
36
37 LIBFILE = $(DESTDIR)\lib\afs\afsvol.lib
38
39 MT_LIBFILE = $(DESTDIR)\lib\afs\mtafsvol.lib
40
41 LIBOBJS =\
42         $(OUT)\common.obj \
43         $(OUT)\clone.obj \
44         $(OUT)\fssync-client.obj \
45         $(OUT)\fssync-server.obj \
46         $(OUT)\daemon_com.obj \
47         $(OUT)\ntops.obj \
48         $(OUT)\nuke.obj \
49         $(OUT)\partition.obj \
50         $(OUT)\purge.obj \
51         $(OUT)\vnode.obj \
52         $(OUT)\volume.obj \
53         $(OUT)\vutil.obj \
54         $(OUT)\ihandle.obj \
55         $(OUT)\AFS_component_version_number.obj 
56
57 MT_LIBOBJS =\
58         $(OUT)\common.obj \
59         $(OUT)\clone_mt.obj \
60         $(OUT)\fssync-client_mt.obj \
61         $(OUT)\fssync-server_mt.obj \
62         $(OUT)\daemon_com_mt.obj \
63         $(OUT)\ntops.obj \
64         $(OUT)\nuke_mt.obj \
65         $(OUT)\partition_mt.obj \
66         $(OUT)\purge.obj \
67         $(OUT)\vnode_mt.obj \
68         $(OUT)\volume_mt.obj \
69         $(OUT)\vutil_mt.obj \
70         $(OUT)\ihandle_mt.obj \
71         $(OUT)\AFS_component_version_number.obj 
72
73 $(OUT)\clone_mt.obj:clone.c
74         $(C2OBJ) $** -DAFS_PTHREAD_ENV
75
76 $(OUT)\daemon_com_mt.obj:daemon_com.c
77         $(C2OBJ) $** -DAFS_PTHREAD_ENV
78
79 $(OUT)\fssync-client_mt.obj:fssync-client.c
80         $(C2OBJ) $** -DAFS_PTHREAD_ENV
81
82 $(OUT)\fssync-server_mt.obj:fssync-server.c
83         $(C2OBJ) $** -DAFS_PTHREAD_ENV
84
85 $(OUT)\ihandle_mt.obj:ihandle.c
86         $(C2OBJ) $** -DAFS_PTHREAD_ENV
87
88 $(OUT)\nuke_mt.obj:nuke.c
89         $(C2OBJ) $** -DAFS_PTHREAD_ENV
90
91 $(OUT)\partition_mt.obj:partition.c
92         $(C2OBJ) $** -DAFS_PTHREAD_ENV
93
94 $(OUT)\vnode_mt.obj:vnode.c
95         $(C2OBJ) $** -DAFS_PTHREAD_ENV
96
97 $(OUT)\volume_mt.obj:volume.c
98         $(C2OBJ) $** -DAFS_PTHREAD_ENV
99
100 $(OUT)\vutil_mt.obj:vutil.c
101         $(C2OBJ) $** -DAFS_PTHREAD_ENV
102
103 $(LIBFILE): $(LIBOBJS)
104         $(LIBARCH)
105
106 $(MT_LIBFILE): $(MT_LIBOBJS)
107         $(LIBARCH)
108
109 ############################################################################
110 # External libraries
111
112 EXEC_LIBS = \
113         $(DESTDIR)\lib\afs\afscmd.lib \
114         $(DESTDIR)\lib\afs\afsvol.lib \
115         $(DESTDIR)\lib\afs\afsutil.lib \
116         $(DESTDIR)\lib\afs\afsdir.lib \
117         $(DESTDIR)\lib\afslwp.lib \
118         $(DESTDIR)\lib\afs\afsacl.lib \
119         $(DESTDIR)\lib\afs\afsreg.lib \
120         $(DESTDIR)\lib\afs\afsprocmgmt.lib \
121         $(DESTDIR)\lib\afs\afseventlog.lib \
122         $(DESTDIR)\lib\afspthread.lib
123
124 ############################################################################
125 # build salvager
126 SALVAGER = $(DESTDIR)\root.server\usr\afs\bin\salvager.exe
127
128 SALVAGER_EXEOBJS =\
129         $(OUT)\salvager.obj \
130         $(OUT)\vol-salvage.obj \
131         $(OUT)\physio.obj \
132         $(OUT)\AFS_component_version_number.obj \
133         $(OUT)\salvager.res
134
135 $(SALVAGER): $(SALVAGER_EXEOBJS) $(EXEC_LIBS)
136         $(EXECONLINK) shell32.lib
137         $(_VC_MANIFEST_EMBED_EXE)
138         $(EXEPREP)
139         $(CODESIGN_USERLAND)
140         $(SYMSTORE_IMPORT)
141
142
143 ############################################################################
144 # build fssync-debug
145 FSSYNC_DEBUG = $(DESTDIR)\root.server\usr\afs\bin\fssync-debug.exe
146
147 FSSYNC_DEBUG_EXEOBJS =\
148         $(OUT)\fssync-debug.obj \
149         $(OUT)\AFS_component_version_number.obj \
150         $(OUT)\fssync-debug.res
151
152 $(FSSYNC_DEBUG): $(FSSYNC_DEBUG_EXEOBJS) $(EXEC_LIBS)
153         $(EXECONLINK) shell32.lib
154         $(_VC_MANIFEST_EMBED_EXE)
155         $(EXEPREP)
156         $(CODESIGN_USERLAND)
157         $(SYMSTORE_IMPORT)
158
159 ############################################################################
160 # build volinfo
161 VOLINFO = $(DESTDIR)\root.server\usr\afs\bin\volinfo.exe
162
163 $(VOLINFO): $(OUT)\vol-info.obj $(OUT)\physio.obj $(OUT)\volinfo.res $(EXEC_LIBS)
164         $(EXECONLINK) shell32.lib
165         $(_VC_MANIFEST_EMBED_EXE)
166         $(EXEPREP)
167         $(CODESIGN_USERLAND)
168         $(SYMSTORE_IMPORT)
169
170 ############################################################################
171 # build volinfo
172 VOLBLESS = $(DESTDIR)\root.server\usr\afs\bin\vol-bless.exe
173
174 $(VOLBLESS): $(OUT)\vol-bless.obj $(OUT)\physio.obj $(OUT)\vol-bless.res $(EXEC_LIBS)
175         $(EXECONLINK) shell32.lib
176         $(_VC_MANIFEST_EMBED_EXE)
177         $(EXEPREP)
178         $(CODESIGN_USERLAND)
179         $(SYMSTORE_IMPORT)
180
181 ############################################################################
182 # generate versioninfo resources
183 $(OUT)\salvager.res: salvager.rc AFS_component_version_number.h
184
185 $(OUT)\volinfo.res: AFS_component_version_number.h
186
187 ############################################################################
188 # Install targets
189 install: $(INCFILES) $(LIBFILE) $(MT_LIBFILE) $(SALVAGER) $(VOLINFO) 
190
191 mkdir:
192