1 # Copyright 2000, International Business Machines Corporation and others.
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
10 TOP_SRCDIR=@TOP_SRCDIR@
11 SYS_NAME=@AFS_SYSNAME@
12 MKAFS_OSTYPE=@MKAFS_OSTYPE@
16 include ../config/Makefile.${SYS_NAME}
18 KERNELDIR = ../libafs/
19 UKERNELDIR = ../libuafs/
20 MKDIR_IF_NEEDED=[ -d $$1 ] || mkdir -p $$1
23 CFLAGS = ${OPTMZ} -I${TOP_SRCDIR}/config -I${SRCDIR}include -DRXDEBUG ${XCFLAGS}
26 # Generic xdr objects (or, at least, xdr stuff that's not newly defined for rx).
27 # Really the xdr stuff should be in its own directory.
29 XDROBJS = xdr_arrayn.o xdr_rx.o xdr_afsuuid.o
31 RXOBJS = rx_clock.o rx_event.o rx_user.o rx_lwp.o rx.o rx_null.o rx_globals.o \
32 rx_getaddr.o rx_misc.o rx_packet.o rx_rdwr.o rx_trace.o rx_conncache.o \
35 MULTIOBJS = rx_multi.o
37 LIBOBJS = ${RXOBJS} ${MULTIOBJS} ${XDROBJS}
39 LIBOBJS_djgpp = ${RXOBJS_djgpp} ${MULTIOBJS} ${XDROBJS_djgpp}
44 XDROBJS_djgpp = xdr.o xdr_rec.o xdr_stdio.o \
45 xdr_float.o xdr_refernce.o xdr_update.o \
46 xdr_array.o xdr_mem.o xdr_rx.o xdr_afsuuid.o
48 RXOBJS_djgpp = rx_clock.o rx_event.o rx_user.o rx_lwp.o rx.o rx_null.o rx_globals.o \
49 rx_getaddr.o rx_misc.o rx_packet.o rx_rdwr.o rx_trace.o rx_conncache.o \
52 BASICINCLS = ${SRCDIR}include/lwp.h ${SRCDIR}include/lock.h \
53 rx_clock.h rx_queue.h rx_event.h
55 LIBS = librx.a ${SRCDIR}lib/liblwp.a ${SRCDIR}lib/afs/libcmd.a \
56 ${SRCDIR}lib/afs/util.a
58 LINK = ${CC} ${CFLAGS} -o $@ $@.o ${LIBS} ${SRCDIR}lib/afs/libsys.a ${XLIBS}
60 KSRCS = rx.c rx.h rx_clock.c rx_clock.h rx_event.c rx_event.h \
61 rx_globals.c rx_globals.h rx_kernel.h rx_misc.h \
62 rx_null.c rx_null.h rx_queue.h rx_getaddr.c rx_packet.c rx_packet.h \
63 rx_multi.h rx_kcommon.h rx_kcommon.c \
64 xdr.c xdr.h xdr_array.c xdr_arrayn.c xdr_rx.c rx_misc.c rx_rdwr.c \
65 xdr_afsuuid.c rx_trace.h xdr_int64.c
66 UKSRCS = $(KSRCS) rx_conncache.c
68 include ../config/Makefile.version
70 test tests: install ${DESTDIR}etc/rxdebug rxdumptrace
72 RX_component_version_number.c: AFS_component_version_number.c
73 sed 's/cml_version/rx_cml_version/' <AFS_component_version_number.c >RX_component_version_number.c
75 RX_component_version_number.o: RX_component_version_number.c
79 ${RXOBJS}: ${BASICINCLS} rx.h rx_user.h rx_globals.h
81 ${MULTIOBJS}: rx.h rx_multi.h
85 rx_user.o: rx.h rx_user.h
89 rx_packet.o: rx_packet.c rx_packet.h
91 rx_rdwr.o: rx_rdwr.c rx.h
92 # $(CC) -c -O -I${SRCDIR}include -DRXDEBUG ${XCFLAGS} rx_rdwr.c
98 rx_trace.o: rx_trace.h
100 rxdumptrace: rx_trace.c
102 $(CC) $(CFLAGS) -DDUMPTRACE -c -o rxdumptrace.o rx_trace.c
103 $(CC) $(CFLAGS) -o rxdumptrace rxdumptrace.o ${LIBS} ${XLIBS}
105 rx_getaddr.o: rx.h rx_getaddr.c
107 rx_globals.o: rx.h rx_user.h rx_globals.h
111 xdr_refernce.o: xdr_refernce.c xdr.h
113 #rx_vab.o: rx_vab.c rx_vab.h rx_user.h ${BASICINCLS}
115 librx.a: ${LIBOBJS} RX_component_version_number.o
117 $(AR) rv $@ RX_component_version_number.o ${LIBOBJS}
120 librx-djgpp: ${LIBOBJS_djgpp} RX_component_version_number.o
122 $(AR) rv librx.a RX_component_version_number.o ${LIBOBJS_djgpp}
125 ${DESTDIR}etc/rxdebug: rxdebug
126 ${INSTALL} rxdebug ${DESTDIR}etc/rxdebug
128 rxdebug: rxdebug.o ${DESTDIR}lib/afs/util.a ${DESTDIR}lib/afs/libsys.a
131 install.noversion noversion install all system: librx.a includes kinstall ukinstall
132 ${INSTALL} librx.a ${DESTDIR}lib
134 install-djgpp: librx-djgpp includes includes-djgpp kinstall ukinstall
135 ${INSTALL} librx.a ${DESTDIR}lib
137 includes-djgpp: $(XMIT_H)
138 set ${DESTDIR}include/rx; $(MKDIR_IF_NEEDED)
139 ${INSTALL} $(XMIT_H) ${DESTDIR}include/rx
141 includes: rx.h rx_user.h rx_event.h rx_queue.h rx_clock.h xdr.h rx_null.h rx_globals.h
142 set ${DESTDIR}include/rx; $(MKDIR_IF_NEEDED)
143 ${INSTALL} rx_packet.h rx.h rx_user.h rx_event.h rx_queue.h \
145 rx_clock.h rx_multi.h ${DESTDIR}include/rx
146 ${INSTALL} xdr.h rx_null.h ${DESTDIR}include/rx
147 ${INSTALL} rx_pthread.h rx_lwp.h rx_misc.h ${DESTDIR}include/rx
150 set $(KERNELDIR)rx; $(MKDIR_IF_NEEDED)
151 $(INSTALL) $(KSRCS) $(KERNELDIR)rx
152 $(INSTALL) $(MKAFS_OSTYPE)/*.[ch] $(KERNELDIR)rx
154 ukinstall webinstall: includes
155 set $(UKERNELDIR)rx; $(MKDIR_IF_NEEDED)
156 $(INSTALL) $(UKSRCS) $(UKERNELDIR)rx
157 -$(INSTALL) UKERNEL/*.[ch] $(UKERNELDIR)rx
160 rm -f *.o *.a core *_component_version_number.c rxdumptrace rxdebug