#
# a template makefile for a C function library
#

SHELL =		/bin/sh

INC_DIR =	../../include
CLIB_DIR =	../

INCLUDES =	-I$(INC_DIR) -I$(CLIB_DIR) -I../../objs

MAKE =		make
AR =		ar
ARFLAGS =	rcv
RANLIB =	ranlib

LIBRARY =	foxnet.a

v-mipsel-machINCLUDES = -Ipmax \
			-I/afs/cs/project/mach3/latest/release/@sys/include \
			-I/usr/misc/.kerberos/include \
			-I/usr/cs/include -I/usr/mach/include
v-mipsel-machOBJS = foxnet.o pmax/ml_mach.o

v-alpha32-osf1INCLUDES = -Ialpha
v-alpha32-osf1OBJS = foxnet.o alpha/ml-packetfilter.o alpha/ml-writev.o \
		     alpha/ml-ptystuff.o
v-alpha32-osf1SRCS = alpha/ml-packetfilter.c alpha/ml-writev.c alpha/ml-ptystuff.c

v-mipsel-ultrixINCLUDES = -Iultrix
v-mipsel-ultrixOBJS = foxnet.o ultrix/ml-packetfilter.o ultrix/ml-writev.o \
		      ultrix/ml-ptystuff.o
v-mipsel-ultrixSRCS = ultrix/ml-packetfilter.c ultrix/ml-writev.c \
		      ultrix/ml-ptystuff.c

v-x86-netbsdINCLUDES = -Ibsd
v-x86-netbsdOBJS = foxnet.o bsd/ml-bpf.o
v-x86-netbsdSRCS = bsd/ml-bpf.c

OBJS =		$(${VERSION}OBJS)
FOXNET_INCLUDES = $(${VERSION}INCLUDES)
SRCS = $(${VERSION}SRCS)

VERSION =	v-dummy


$(LIBRARY)	: $(VERSION) $(OBJS)
	echo objs: ${OBJS}
	rm -rf $(LIBRARY)
	$(AR) $(ARFLAGS) $(LIBRARY) $(OBJS)
	$(RANLIB) $(LIBRARY)

$(VERSION) : 
	($(MAKE) MAKE="$(MAKE)" clean)
	echo "$(VERSION)" > $(VERSION)

.c.o:	$(INC_DIR)/ml-osdep.h $(INC_DIR)/ml-base.h $(INC_DIR)/ml-values.h \
	$(CLIB_DIR)/ml-c.h cfun-proto-list.h cfun-list.h \
	$(SRCS)
	$(CC) $(CFLAGS) $(DEFS) $(FOXNET_INCLUDES) $(INCLUDES) -c $< -o $(<:.c=.o)

.s.o:	$(INC_DIR)/ml-osdep.h $(INC_DIR)/ml-base.h $(INC_DIR)/ml-values.h \
	$(CLIB_DIR)/ml-c.h cfun-proto-list.h cfun-list.h $(SRCS)
	$(AS) $(DEFS) $(FOXNET_INCLUDES) $(INCLUDES) -c $< -o $(<:.s=.o)

clean :
	rm -f v-* *.o $(LIBRARY)

