DEVEL15-tubik-more-makefile-fun-20080404
[openafs.git] / src / tptserver / Makefile.in
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 srcdir=@srcdir@
9 include @TOP_OBJDIR@/src/config/Makefile.config
10
11
12 CCRULE=${MT_CC} ${CFLAGS} ${MT_CFLAGS} -c $?
13
14 RX=../rx
15 UTIL=../util
16 PTSERVER=../ptserver
17
18 RXOBJS= rx_pthread.o rxkad_errs.o
19
20 UTILOBJS=assert.o uuid.o serverLog.o fileutil.o netutils.o dirpath.o \
21      volparse.o flipbase64.o softsig.o hostparse.o snprintf.o pthread_glock.o
22
23 INCLS=${TOP_INCDIR}/ubik.h \
24         ${TOP_INCDIR}/lock.h  \
25         ${TOP_INCDIR}/lwp.h \
26         ${TOP_INCDIR}/rx/rx.h \
27         ${TOP_INCDIR}/rx/xdr.h \
28         ${TOP_INCDIR}/afs/keys.h \
29         ${TOP_INCDIR}/afs/cellconfig.h \
30         ${PTSERVER}/ptserver.h \
31         ${PTSERVER}/ptclient.h \
32         ${PTSERVER}/ptuser.h \
33         ptint.h \
34         pterror.h \
35         ${PTSERVER}/map.h \
36         ${PTSERVER}/ptprototypes.h
37
38 LINCLS=${TOP_INCDIR}/ubik.h \
39         ${TOP_INCDIR}/lock.h \
40         ${TOP_INCDIR}/rx/rx.h \
41         ${TOP_INCDIR}/rx/xdr.h  \
42         ${TOP_INCDIR}/rx/rxkad.h \
43         ${TOP_INCDIR}/afs/auth.h \
44         ${TOP_INCDIR}/afs/cellconfig.h \
45         ${PTSERVER}/ptclient.h \
46         ${PTSERVER}/ptuser.h \
47         ptint.h \
48         pterror.h
49
50 LIBS=${RXOBJS} ${UTILOBJS}\
51         ${TOP_LIBDIR}/libubik_pthread.a \
52         ${TOP_LIBDIR}/libafsauthent.a \
53         ${TOP_LIBDIR}/libafsrpc.a \
54         ${TOP_LIBDIR}/libcmd.a \
55         ${TOP_LIBDIR}/libafsutil.a 
56
57 PTOBJS=ptuser.o pterror.o ptint.cs.o ptint.xdr.o
58
59 all: ptserver pts pt_util db_verify \
60         depinstall readgroup readpwd testpt
61
62 depinstall: 
63
64 #
65 # Build targets
66 #
67
68 rx_pthread.o: ${RX}/rx_pthread.c
69         ${CCRULE}
70
71 rxkad_errs.o: ../rxkad/rxkad_errs.c
72         ${CCRULE}
73
74 #
75 # get the pthreaded util stuff compiled here.  we do this instead of
76 # using the non-pthreaded libutil.a.  There probably should be a
77 # pthreaded version of this library, as we are doing with ubik itself, but...
78 #
79
80 assert.o: ${UTIL}/assert.c
81         ${CCRULE}
82
83 uuid.o: ${UTIL}/uuid.c
84         ${CCRULE}
85
86 serverLog.o: ${UTIL}/serverLog.c
87         ${CCRULE}
88
89 fileutil.o: ${UTIL}/fileutil.c
90         ${CCRULE}
91
92 volparse.o: ${UTIL}/volparse.c
93         ${CCRULE}
94
95 flipbase64.o: ${UTIL}/flipbase64.c
96         ${CCRULE}
97
98 netutils.o: ${UTIL}/netutils.c
99         ${CCRULE}
100
101 dirpath.o: ${UTIL}/dirpath.c
102         ${CCRULE}
103
104 softsig.o: ${UTIL}/softsig.c
105         ${CCRULE}
106
107 hostparse.o: ${UTIL}/hostparse.c
108         ${CCRULE}
109
110 snprintf.o: ${UTIL}/snprintf.c
111         ${CCRULE}
112
113 pthread_glock.o: ${UTIL}/pthread_glock.c
114         ${CCRULE}
115
116
117 ptserver.o: ${PTSERVER}/ptserver.c
118         ${CCRULE}
119
120 ptutils.o: ${PTSERVER}/ptutils.c
121         ${CCRULE}
122
123 ptprocs.o: ${PTSERVER}/ptprocs.c
124         ${CCRULE}
125
126 utils.o: ${PTSERVER}/utils.c
127         ${CCRULE}
128
129 map.o: ${PTSERVER}/map.c
130         ${CCRULE}
131
132 ptint.ss.o: ptint.ss.c
133         ${CCRULE}
134
135 ptint.cs.o: ptint.cs.c
136         ${CCRULE}
137
138 ptint.xdr.o: ptint.xdr.c
139         ${CCRULE}
140
141 ptint.cs.c: ${PTSERVER}/ptint.xg
142         ${RXGEN} -x -C -u -o $@ ${PTSERVER}/ptint.xg
143
144 ptint.ss.c: ${PTSERVER}/ptint.xg
145         ${RXGEN} -x -S -o $@ ${PTSERVER}/ptint.xg
146
147 ptint.xdr.c: ${PTSERVER}/ptint.xg
148         ${RXGEN} -x -c -o $@ ${PTSERVER}/ptint.xg
149
150 ptint.h: ${PTSERVER}/ptint.xg
151         ${RXGEN} -x -h -u -o $@ ${PTSERVER}/ptint.xg
152
153 ptint.cs.c: ptint.h
154 ptint.ss.c: ptint.h
155 ptint.xdr.c: ptint.h
156
157 Kptint.cs.c: ${PTSERVER}/ptint.xg Kptint.h
158         ${RXGEN} -x -k -C -o Kptint.cs.c ${PTSERVER}/ptint.xg
159  
160 Kptint.xdr.c: ${PTSERVER}/ptint.xg
161         ${RXGEN} -x -k -c -o Kptint.xdr.c ${PTSERVER}/ptint.xg
162  
163 Kptint.h: ${PTSERVER}/ptint.xg
164         ${RXGEN} -x -k -h -o Kptint.h ${PTSERVER}/ptint.xg
165
166 display.o: ${PTSERVER}/display.c
167         ${CCRULE}
168
169 ptserver: ptserver.o ptutils.o ptprocs.o ptint.ss.o ptint.xdr.o utils.o $(LIBS) ${TOP_LIBDIR}/libaudit.a map.o
170         ${CC} ${LDFLAGS} -o ptserver ptserver.o ptutils.o ptprocs.o ptint.ss.o ptint.xdr.o utils.o map.o $(LIBS) ${MT_LIBS} ${XLIBS} ${TOP_LIBDIR}/libaudit.a
171
172 db_verify.o: ${PTSERVER}/db_verify.c
173         ${CCRULE}
174
175 db_verify: db_verify.o pterror.o display.o $(LIBS)
176         $(CC) ${LDFLAGS} -o db_verify db_verify.o display.o pterror.o $(LIBS) ${MT_LIBS} ${XLIBS}
177
178 ptclient: ptclient.o display.o ptuser.o pterror.o ptint.cs.o ptint.xdr.o AFS_component_version_number.o $(LIBS)
179         $(CC) ${LDFLAGS} -o ptclient ptclient.o display.o $(PTOBJS) $(LIBS) ${MT_LIBS} ${XLIBS}
180
181 ptclient.o: ${PTSERVER}/ptclient.c
182         ${CCRULE}
183
184 ptuser.o: ${PTSERVER}/ptuser.c
185         ${CCRULE}
186
187 pterror.h pterror.c: ${PTSERVER}/pterror.et
188         $(RM) -f pterror.h pterror.c
189         ${COMPILE_ET} -p ${PTSERVER} pterror
190
191 pts: pts.o $(PTOBJS) ${TOP_LIBDIR}/libcmd.a $(LIBS)
192         $(CC) ${LDFLAGS} -o pts pts.o ${TOP_LIBDIR}/libcmd.a $(PTOBJS) ${LIBS} ${MT_LIBS} ${XLIBS}
193
194 pts.o: ${PTSERVER}/pts.c
195         ${CCRULE}
196
197 readgroup: readgroup.o $(PTOBJS) $(LIBS)
198         $(CC) ${CFLAGS} -o readgroup readgroup.o $(PTOBJS) ${LIBS} ${MT_LIBS} ${XLIBS}
199
200 readgroup.o: ${PTSERVER}/readgroup.c
201         ${CCRULE}
202
203 readpwd: readpwd.o $(PTOBJS) $(LIBS)
204         $(CC) ${CFLAGS} -o readpwd readpwd.o $(PTOBJS) ${LIBS} ${MT_LIBS} ${XLIBS}
205
206 readpwd.o: ${PTSERVER}/readpwd.c
207         ${CCRULE}
208
209 testpt: testpt.o $(PTOBJS) ${TOP_LIBDIR}/libcmd.a $(LIBS)
210         $(CC) ${CFLAGS} -o testpt testpt.o -lm ${TOP_LIBDIR}/libcmd.a $(PTOBJS) $(LIBS) ${MT_LIBS} ${XLIBS}
211
212 testpt.o: ${PTSERVER}/testpt.c
213         ${CCRULE}
214
215 pt_util: pt_util.o ptutils.o ubik.o utils.o map.o $(PTOBJS) $(LIBS)
216         $(CC) ${CFLAGS} -o pt_util pt_util.o ptutils.o ubik.o utils.o map.o $(PTOBJS) ${TOP_LIBDIR}/libcmd.a $(LIBS) ${MT_LIBS} ${XLIBS}
217
218 pt_util.o: ${PTSERVER}/pt_util.c
219         ${CCRULE}
220
221 ubik.o: ${PTSERVER}/ubik.c
222         ${CCRULE}
223
224 prerror.h: pterror.h
225         ${INSTALL} $? $@
226         echo '#define ERROR_TABLE_BASE_pr ERROR_TABLE_BASE_PT' >> $@
227
228 #
229 # Installation targets
230 #
231 install: \
232         ${DESTDIR}${afssrvlibexecdir}/ptserver \
233         ${DESTDIR}${afssrvbindir}/pts \
234         ${DESTDIR}${bindir}/pts \
235         ${DESTDIR}${afssrvsbindir}/pt_util \
236         ${DESTDIR}${afssrvsbindir}/prdb_check 
237
238 ${DEST}/root.server/usr/afs/bin/ptserver: ptserver
239         ${INSTALL} $? $@
240
241 ${DEST}/bin/pts ${DEST}/root.server/usr/afs/bin/pts: pts
242         ${INSTALL} $? $@
243
244 ${DEST}/root.server/usr/afs/bin/pt_util: pt_util
245         ${INSTALL} $? $@
246
247 ${DEST}/etc/prdb_check: db_verify
248         ${INSTALL} -f $? $@
249
250 #
251 # Misc. targets
252 #
253 clean:
254         $(RM) -f *.a *.o ptserver ptint.cs.c ptint.ss.c ptclient ptint.xdr.c ptint.h \
255         pts readgroup readpwd db_verify testpt pt_util pterror.h pterror.c \
256         core AFS_component_version_number.c Kptint.cs.c Kptint.h Kptint.xdr.c
257
258 include ../config/Makefile.version
259 ${DESTDIR}${afssrvlibexecdir}/ptserver: ptserver
260         ${INSTALL} $? $@
261
262 ${DESTDIR}${afssrvbindir}/pts: pts
263         ${INSTALL} $? $@
264
265 ${DESTDIR}${bindir}/pts: pts
266         ${INSTALL} $? $@
267
268 ${DESTDIR}${afssrvsbindir}/pt_util: pt_util
269         ${INSTALL} $? $@
270
271 ${DESTDIR}${afssrvsbindir}/prdb_check: db_verify
272         ${INSTALL} -f $? $@
273
274 dest: \
275         ${DEST}/root.server/usr/afs/bin/ptserver \
276         ${DEST}/root.server/usr/afs/bin/pts \
277         ${DEST}/bin/pts \
278         ${DEST}/root.server/usr/afs/bin/pt_util \
279         ${DEST}/etc/prdb_check