8194f6fd953a1f62def4e7e3d1b4d2e63ed17b60
[openafs.git] / src / rx / 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 DESTDIR=@DESTDIR@
9 SRCDIR=@SRCDIR@
10 TOP_SRCDIR=@TOP_SRCDIR@
11 SYS_NAME=@AFS_SYSNAME@
12 MKAFS_OSTYPE=@MKAFS_OSTYPE@
13
14 SHELL = /bin/sh
15
16 include ../config/Makefile.${SYS_NAME}
17
18 KERNELDIR = ../libafs/
19 UKERNELDIR = ../libuafs/
20
21 CFLAGS = ${OPTMZ} -I${TOP_SRCDIR}/config -I${SRCDIR}/include -DRXDEBUG ${XCFLAGS}
22
23 #
24 # Generic xdr objects (or, at least, xdr stuff that's not newly defined for rx).
25 # Really the xdr stuff should be in its own directory.
26 #
27 XDROBJS = xdr_arrayn.o xdr_rx.o xdr_afsuuid.o
28
29 RXOBJS = rx_clock.o rx_event.o rx_user.o rx_lwp.o rx.o rx_null.o rx_globals.o \
30         rx_getaddr.o rx_misc.o rx_packet.o rx_rdwr.o  rx_trace.o rx_conncache.o \
31         xdr_int64.o 
32
33 MULTIOBJS = rx_multi.o
34
35 LIBOBJS = ${RXOBJS} ${MULTIOBJS} ${XDROBJS}
36
37 LIBOBJS_djgpp = ${RXOBJS_djgpp} ${MULTIOBJS} ${XDROBJS_djgpp}
38
39 XDROBJS_djgpp = xdr.o xdr_rec.o xdr_stdio.o \
40         xdr_float.o  xdr_refernce.o  xdr_update.o \
41         xdr_array.o xdr_mem.o xdr_rx.o xdr_afsuuid.o
42
43 RXOBJS_djgpp = rx_clock.o rx_event.o rx_user.o rx_lwp.o rx.o rx_null.o rx_globals.o \
44                 rx_getaddr.o rx_misc.o rx_packet.o rx_rdwr.o  rx_trace.o rx_conncache.o \
45                 xdr_int64.o rx_xmit_nt.o
46
47 BASICINCLS = ${SRCDIR}/include/lwp.h ${SRCDIR}/include/lock.h \
48              rx_clock.h rx_queue.h rx_event.h
49
50 LIBS = librx.a ${SRCDIR}/lib/liblwp.a ${SRCDIR}/lib/afs/libcmd.a \
51                ${SRCDIR}/lib/afs/util.a 
52
53 KSRCS = rx.c rx.h rx_clock.c rx_clock.h rx_event.c rx_event.h \
54         rx_globals.c rx_globals.h rx_kernel.h rx_misc.h \
55         rx_null.c rx_null.h rx_queue.h rx_getaddr.c rx_packet.c rx_packet.h \
56         rx_multi.h rx_kcommon.h rx_kcommon.c \
57         xdr.c xdr.h xdr_array.c xdr_arrayn.c xdr_rx.c rx_misc.c rx_rdwr.c \
58         xdr_afsuuid.c rx_trace.h xdr_int64.c
59 UKSRCS = $(KSRCS) rx_conncache.c
60
61 all: install
62
63 RX_component_version_number.c: AFS_component_version_number.c
64         sed 's/cml_version/rx_cml_version/' <AFS_component_version_number.c >RX_component_version_number.c
65
66 RX_component_version_number.o: RX_component_version_number.c
67
68 ${RXOBJS}: ${BASICINCLS} rx.h rx_user.h rx_globals.h
69
70 ${MULTIOBJS}: rx.h rx_multi.h
71
72 ${XDROBJS}: xdr.h
73
74 rx_user.o: rx.h rx_user.h
75
76 rxdebug.o: rxdebug.c
77
78 rx_packet.o: rx_packet.c rx_packet.h
79
80 rx_rdwr.o: rx_rdwr.c rx.h
81
82 rx.o: rx.h rx_user.h
83
84 rx_conncache.o: rx.h
85
86 rx_trace.o: rx_trace.h 
87
88 rxdumptrace: rx_trace.c
89         $(RM) -f rxdumptrace
90         $(CC) $(CFLAGS) -DDUMPTRACE -c -o rxdumptrace.o rx_trace.c
91         $(CC) $(CFLAGS) -o rxdumptrace rxdumptrace.o  ${LIBS} ${XLIBS}
92
93 rx_getaddr.o: rx.h rx_getaddr.c
94
95 rx_globals.o: rx.h rx_user.h rx_globals.h
96
97 xdr_rx.o: xdr.h rx.h
98
99 xdr_refernce.o: xdr_refernce.c xdr.h
100
101 librx.a: ${LIBOBJS} RX_component_version_number.o
102         -$(RM) -f $@
103         $(AR) crv $@ ${LIBOBJS} RX_component_version_number.o
104         $(RANLIB) $@
105
106 librx-djgpp.a: ${LIBOBJS_djgpp} RX_component_version_number.o
107         -$(RM) -f librx-djgpp.a
108         $(AR) crv librx-djgpp.a RX_component_version_number.o ${LIBOBJS_djgpp}
109         $(RANLIB) librx-djgpp.a
110
111 ${DESTDIR}/etc/rxdebug: rxdebug
112         ${INSTALL} rxdebug ${DESTDIR}/etc/rxdebug
113
114 rxdebug: rxdebug.o ${DESTDIR}/lib/afs/util.a ${DESTDIR}/lib/afs/libsys.a
115         ${CC} ${CFLAGS} -o $@ $@.o ${LIBS} ${SRCDIR}/lib/afs/libsys.a ${XLIBS}
116
117 #
118 # Install targets
119 #
120 install: includes kinstall ukinstall \
121         ${DESTDIR}/lib/librx.a
122
123 includes: \
124         ${DESTDIR}/include/rx \
125         ${DESTDIR}/include/rx/rx_packet.h \
126         ${DESTDIR}/include/rx/rx.h \
127         ${DESTDIR}/include/rx/rx_user.h \
128         ${DESTDIR}/include/rx/rx_event.h \
129         ${DESTDIR}/include/rx/rx_queue.h \
130         ${DESTDIR}/include/rx/rx_globals.h \
131         ${DESTDIR}/include/rx/rx_clock.h \
132         ${DESTDIR}/include/rx/rx_multi.h \
133         ${DESTDIR}/include/rx/rx_pthread.h \
134         ${DESTDIR}/include/rx/rx_lwp.h \
135         ${DESTDIR}/include/rx/rx_misc.h \
136         ${DESTDIR}/include/rx/rx_null.h \
137         ${DESTDIR}/include/rx/xdr.h 
138
139 kinstall: ${KERNELDIR}/rx
140         $(INSTALL) $(MKAFS_OSTYPE)/*.[ch] $(KERNELDIR)rx
141         $(INSTALL) $(KSRCS) $(KERNELDIR)rx
142
143 ukinstall: ${UKERNELDIR}/rx
144         $(INSTALL) $(UKSRCS) $(UKERNELDIR)rx
145         -$(INSTALL) UKERNEL/*.[ch] $(UKERNELDIR)rx
146
147 ${DESTDIR}/include/rx/rx_packet.h: rx_packet.h
148         ${INSTALL} $? $@
149
150 ${DESTDIR}/include/rx/rx.h: rx.h
151         ${INSTALL} $? $@
152
153 ${DESTDIR}/include/rx/rx_user.h: rx_user.h
154         ${INSTALL} $? $@
155
156 ${DESTDIR}/include/rx/rx_event.h: rx_event.h
157         ${INSTALL} $? $@
158
159 ${DESTDIR}/include/rx/rx_queue.h: rx_queue.h
160         ${INSTALL} $? $@
161
162 ${DESTDIR}/include/rx/rx_globals.h: rx_globals.h
163         ${INSTALL} $? $@
164
165 ${DESTDIR}/include/rx/rx_clock.h: rx_clock.h
166         ${INSTALL} $? $@
167
168 ${DESTDIR}/include/rx/rx_multi.h: rx_multi.h
169         ${INSTALL} $? $@
170
171 ${DESTDIR}/include/rx/rx_pthread.h: rx_pthread.h
172         ${INSTALL} $? $@
173
174 ${DESTDIR}/include/rx/rx_lwp.h: rx_lwp.h
175         ${INSTALL} $? $@
176
177 ${DESTDIR}/include/rx/rx_misc.h: rx_misc.h
178         ${INSTALL} $? $@
179
180 ${DESTDIR}/include/rx/rx_null.h: rx_null.h
181         ${INSTALL} $? $@
182
183 ${DESTDIR}/include/rx/xdr.h: xdr.h
184         ${INSTALL} $? $@
185
186 ${UKERNELDIR}/rx:
187         mkdir -p ${UKERNELDIR}/rx
188
189 ${KERNELDIR}/rx:
190         mkdir -p ${KERNELDIR}/rx
191
192 install-djgpp: includes kinstall ukinstall librx-djgpp ${DESTDIR}/include/rx/rx_xmit_nt.h ${DESTDIR}/lib/librx-djgpp.a
193
194 ${DESTDIR}/lib/librx.a: librx.a
195         ${INSTALL} $? $@
196
197 # rule will never be satisfied
198 ${DESTDIR}/lib/librx-djgpp.a: librx-djgpp.a
199         ${INSTALL} $? ${DESTdIR}/lib/librx.a
200
201 ${DESTDIR}/include/rx:
202         mkdir -p ${DESTDIR}/include/rx
203
204 ${DESTDIR}/include/rx/rx_xmit_nt.h: rx_xmit_nt.h ${DESTDIR}/include/rx
205         ${INSTALL} $? $@
206
207 #
208 # Misc. targets
209 #
210 clean:
211         $(RM) -f *.o *.a core *_component_version_number.c rxdumptrace rxdebug
212
213 include ../config/Makefile.version
214
215 test tests: install ${DESTDIR}/etc/rxdebug rxdumptrace 
216