Move string manipulation functions out of util
[openafs.git] / src / ptserver / 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 # Override default definitions in NTMakefile.$(SYS_NAME) before including.
9
10 RELDIR=ptserver
11 !INCLUDE ..\config\NTMakefile.$(SYS_NAME)
12 !include ..\config\NTMakefile.version
13 AFSDEV_AUXCDEFINES = -DAFS_USE_GETTIMEOFDAY -DSUPERGROUPS
14
15 ############################################################################
16 # Definitions for installing header files
17
18 INCFILEDIR = $(DESTDIR)\include 
19
20 INCFILES =\
21         $(INCFILEDIR)\afs\ptserver.h \
22         $(INCFILEDIR)\afs\ptint.h \
23         $(INCFILEDIR)\afs\pterror.h \
24         ptopcodes.h \
25         $(INCFILEDIR)\afs\ptclient.h \
26         $(INCFILEDIR)\afs\ptuser.h
27
28 ############################################################################
29 # build afsprot.lib
30
31 LIBFILE = $(DESTDIR)\lib\afs\afsprot.lib
32
33 LIBOBJS =\
34         $(OUT)\ptuser.obj \
35         $(OUT)\pterror.obj \
36         $(OUT)\ptint.cs.obj \
37         $(OUT)\ptint.xdr.obj \
38         $(OUT)\AFS_component_version_number.obj
39
40 $(LIBFILE):  $(LIBOBJS)
41         $(LIBARCH) 
42
43 ############################################################################
44 # build ptserver.exe
45
46 PTSERVER = $(DESTDIR)\root.server\usr\afs\bin\ptserver.exe
47
48 PTSERVER_EXEOBJS =\
49         $(OUT)\ptint.ss.obj \
50         $(OUT)\ptint.xdr.obj \
51         $(OUT)\ptserver.obj \
52         $(OUT)\ptutils.obj \
53         $(OUT)\ptprocs.obj \
54         $(OUT)\utils.obj \
55         $(OUT)\map.obj \
56         $(OUT)\ptserver.res
57
58
59 PTSERVER_EXELIBS =\
60         $(DESTDIR)\lib\afs\afscmd.lib \
61         $(DESTDIR)\lib\afsubik.lib \
62         $(DESTDIR)\lib\afs\afsauth.lib \
63         $(DESTDIR)\lib\afsrxkad.lib \
64         $(DESTDIR)\lib\afsrxstat.lib \
65         $(DESTDIR)\lib\afsrx.lib \
66         $(DESTDIR)\lib\afslwp.lib \
67         $(DESTDIR)\lib\afs\afscom_err.lib \
68         $(DESTDIR)\lib\afs\afsutil.lib \
69         $(DESTDIR)\lib\afs\afsaudit.lib \
70         $(DESTDIR)\lib\afs\afseventlog.lib \
71         $(DESTDIR)\lib\afs\afsreg.lib \
72         $(DESTDIR)\lib\libafsconf.lib \
73         $(DESTDIR)\lib\afs\afspioctl.lib \
74         $(DESTDIR)\lib\opr.lib \
75         $(DESTDIR)\lib\afshcrypto.lib \
76         $(DESTDIR)\lib\afsroken.lib
77
78 !IF (("$(SYS_NAME)"!="i386_win95" ) && ("$(SYS_NAME)"!="I386_WIN95" ))
79 PTSERVER_EXELIBS =$(PTSERVER_EXELIBS) $(DESTDIR)\lib\afs\afsprocmgmt.lib
80 !ENDIF
81
82 $(PTSERVER): $(PTSERVER_EXEOBJS) $(RXKADOBJS) $(PTSERVER_EXELIBS)
83         $(EXECONLINK) dnsapi.lib mpr.lib iphlpapi.lib shell32.lib
84         $(_VC_MANIFEST_EMBED_EXE)
85         $(EXEPREP) 
86         $(CODESIGN_USERLAND)
87         $(SYMSTORE_IMPORT)
88
89 ############################################################################
90 # build pts.exe
91
92 PTS = $(DESTDIR)\bin\pts.exe
93 PTCLIENT = $(DESTDIR)\bin\ptclient.exe
94 PT_UTIL  = $(DESTDIR)\bin\pt_util.exe
95
96 PTS_EXEOBJS =\
97         $(OUT)\pts.obj \
98         $(OUT)\pts.res
99
100 PTCLIENT_EXEOBJS =\
101         $(OUT)\ptclient.obj \
102         $(OUT)\display.obj \
103         $(OUT)\ptclient.res
104
105 PT_UTIL_EXEOBJS = \
106         $(OUT)\pt_util.obj \
107         $(OUT)\ptutils.obj \
108         $(OUT)\ubik.obj \
109         $(OUT)\utils.obj \
110         $(OUT)\map.obj \
111         $(OUT)\pt_util.res
112
113 PTS_EXELIBS =\
114         $(DESTDIR)\lib\afsubik.lib \
115         $(DESTDIR)\lib\afs\afsauth.lib \
116         $(DESTDIR)\lib\afsrxkad.lib \
117         $(DESTDIR)\lib\afsrx.lib \
118         $(DESTDIR)\lib\afslwp.lib \
119         $(DESTDIR)\lib\afs\afscom_err.lib \
120         $(DESTDIR)\lib\afs\afsutil.lib \
121         $(DESTDIR)\lib\afs\afsprot.lib \
122         $(DESTDIR)\lib\afs\afscmd.lib \
123         $(DESTDIR)\lib\afs\afsreg.lib \
124         $(DESTDIR)\lib\afs\afseventlog.lib \
125         $(DESTDIR)\lib\afs\afspioctl.lib \
126         $(DESTDIR)\lib\libafsconf.lib \
127         $(DESTDIR)\lib\opr.lib \
128         $(DESTDIR)\lib\afshcrypto.lib \
129         $(DESTDIR)\lib\afsroken.lib
130
131 $(PTS): $(PTS_EXEOBJS) $(PTS_EXELIBS) 
132         $(EXECONLINK) dnsapi.lib mpr.lib iphlpapi.lib shell32.lib
133         $(_VC_MANIFEST_EMBED_EXE)
134         $(EXEPREP) 
135         $(CODESIGN_USERLAND)
136         $(SYMSTORE_IMPORT)
137
138 $(PTCLIENT): $(PTCLIENT_EXEOBJS) $(PTS_EXELIBS)
139         $(EXECONLINK) dnsapi.lib mpr.lib iphlpapi.lib shell32.lib
140         $(_VC_MANIFEST_EMBED_EXE)
141         $(EXEPREP) 
142         $(CODESIGN_USERLAND)
143         $(SYMSTORE_IMPORT)
144
145 $(PT_UTIL): $(PT_UTIL_EXEOBJS) $(PTS_EXELIBS)
146         $(EXECONLINK) dnsapi.lib mpr.lib iphlpapi.lib shell32.lib
147         $(_VC_MANIFEST_EMBED_EXE)
148         $(EXEPREP) 
149         $(CODESIGN_USERLAND)
150         $(SYMSTORE_IMPORT)
151
152
153 ############################################################################
154 # generate versioninfo resources
155
156 $(OUT)\ptserver.res: AFS_component_version_number.h
157
158 $(OUT)\pts.res: AFS_component_version_number.h
159
160 $(OUT)\ptclient.res: AFS_component_version_number.h
161
162 $(OUT)\pt_util.res: AFS_component_version_number.h
163
164 ############################################################################
165 # rxgen on pting.xg
166
167 $(INCFILEDIR)\afs\ptint.h : ptint.h
168
169 ptint.cs.c: ptint.xg ptint.h
170         $(RXGEN) -x -C -u -o $@ ptint.xg
171
172 ptint.ss.c: ptint.xg ptint.h
173         $(RXGEN) -x -S -o $@ ptint.xg
174
175 ptint.xdr.c: ptint.xg ptint.h
176         $(RXGEN) -x -c -o $@ ptint.xg
177
178 ptint.h: ptint.xg
179         $(RXGEN) -x -h -u -o $@ ptint.xg
180
181 ############################################################################
182 # Definitions for generating files via COMPILE_ET
183
184 $(DESTDIR)\include\afs\pterror.h: pterror.h
185
186 pterror.h pterror.c: pterror.et
187         $(DEL) pterror.h pterror.c
188         $(COMPILE_ET) pterror  -h pterror
189
190 ############################################################################
191 # install pts, ptserver and afsprot.lib
192
193 install: $(INCFILES) ptint.ss.c ptint.cs.c ptint.xdr.c $(LIBFILE) $(PTSERVER) $(PTS) $(PTCLIENT) $(PT_UTIL) $(OUT)\readgroup.exe \
194         $(OUT)\readpwd.exe  $(OUT)\testpt.exe $(OUT)\db_verify.exe  \
195         $(DESTDIR)\root.server\usr\afs\bin\pts.exe \
196         $(DESTDIR)\root.server\usr\afs\bin\ptclient.exe \
197         $(DESTDIR)\root.server\usr\afs\bin\pt_util.exe \
198         $(INCFILEDIR)\afs\prserver.h $(INCFILEDIR)\afs\print.h \
199         $(INCFILEDIR)\afs\prerror.h $(INCFILEDIR)\afs\prclient.h
200
201 install9X: $(INCFILES) $(LIBFILE) $(PTS) \
202         $(DESTDIR)\root.server\usr\afs\bin\pts.exe \
203         $(INCFILEDIR)\afs\prserver.h $(INCFILEDIR)\afs\print.h \
204         $(INCFILEDIR)\afs\prerror.h $(INCFILEDIR)\afs\prclient.h
205
206 install_libutils: $(INCFILES) $(LIBFILE) $(PTS)
207
208 # install various exe's and header files
209 $(DESTDIR)\root.server\usr\afs\bin\pts.exe: $(PTS)
210         $(COPY) $(PTS) $(DESTDIR)\root.server\usr\afs\bin\pts.exe
211
212 $(DESTDIR)\root.server\usr\afs\bin\ptclient.exe: $(PTCLIENT)
213         $(COPY) $(PTCLIENT) $(DESTDIR)\root.server\usr\afs\bin\ptclient.exe
214
215 $(DESTDIR)\root.server\usr\afs\bin\pt_util.exe: $(PT_UTIL)
216         $(COPY) $(PT_UTIL) $(DESTDIR)\root.server\usr\afs\bin\pt_util.exe
217
218 $(INCFILEDIR)\afs\prserver.h: $(INCFILEDIR)\afs\ptserver.h
219         $(COPY) $(INCFILEDIR)\afs\ptserver.h $(INCFILEDIR)\afs\prserver.h
220
221 $(INCFILEDIR)\afs\print.h: $(INCFILEDIR)\afs\ptint.h 
222         $(COPY) $(INCFILEDIR)\afs\ptint.h    $(INCFILEDIR)\afs\print.h
223
224 $(INCFILEDIR)\afs\prerror.h: $(INCFILEDIR)\afs\pterror.h
225         $(COPY) $(INCFILEDIR)\afs\pterror.h  $(INCFILEDIR)\afs\prerror.h
226
227 $(INCFILEDIR)\afs\prclient.h: $(INCFILEDIR)\afs\ptclient.h
228         $(COPY) $(INCFILEDIR)\afs\ptclient.h $(INCFILEDIR)\afs\prclient.h
229         $(ECHO) #define ERROR_TABLE_BASE_pr ERROR_TABLE_BASE_PT >> $(INCFILEDIR)\afs\prclient.h
230
231 ############################################################################
232 # clean up
233
234 clean::
235         $(DEL) ptint.cs.c ptint.ss.c ptint.xdr.c ptint.h
236         $(DEL) $(OUT)\readgroup.exe $(OUT)\readpwd.exe $(OUT)\db_verify.exe $(OUT)\testpt.exe 
237         $(DEL) pterror.h pterror.c
238         $(DEL) $(PTS) $(PTCLIENT) $(PT_UTIL)
239
240 ############################################################################
241 # tests?
242 TEST_LIBS = $(PTS_EXELIBS)
243
244 $(OUT)\readgroup.exe: $(OUT)\readgroup.obj $(LIBFILE) $(TEST_LIBS)
245         $(EXECONLINK) dnsapi.lib mpr.lib iphlpapi.lib shell32.lib
246         $(_VC_MANIFEST_EMBED_EXE)
247         $(CODESIGN_USERLAND)
248         $(SYMSTORE_IMPORT)
249
250 $(OUT)\readpwd.exe: $(OUT)\readpwd.obj $(LIBFILE) $(TEST_LIBS)
251         $(EXECONLINK) dnsapi.lib mpr.lib iphlpapi.lib shell32.lib
252         $(_VC_MANIFEST_EMBED_EXE)
253         $(CODESIGN_USERLAND)
254         $(SYMSTORE_IMPORT)
255
256 $(OUT)\testpt.exe: $(OUT)\testpt.obj $(LIBFILE) $(TEST_LIBS)
257         $(EXECONLINK) dnsapi.lib mpr.lib iphlpapi.lib shell32.lib 
258         $(_VC_MANIFEST_EMBED_EXE)
259         $(CODESIGN_USERLAND)
260         $(SYMSTORE_IMPORT)
261
262 $(OUT)\db_verify.exe: $(OUT)\db_verify.obj $(OUT)\pterror.obj $(OUT)\display.obj $(LIBFILE) $(TEST_LIBS)
263         $(EXECONLINK) dnsapi.lib mpr.lib iphlpapi.lib shell32.lib
264         $(_VC_MANIFEST_EMBED_EXE)
265         $(CODESIGN_USERLAND)
266         $(SYMSTORE_IMPORT)
267
268 mkdir:
269