# BuildSystemHeader added automatically
/**/# $Header: [Imakefile,v 1.1 91/05/04 07:14:01 afuller Exp ]$

#ifdef VaxArchitecture
CPU=vax
#endif
#ifdef MipsArchitecture
CPU=max
#endif

LIBSRCS = decMalloc.c decPlumber.c decUtils.c 
LIBOBJS = decMalloc.o decPlumber.o decUtils.o
BOUNCE_SRCS = $(CPU)Bounce.c
BOUNCE_OBJS = fosBounce.o sysBounce.o XBounce.o DPSBounce.o DPSBounce2.o

all::	$(BOUNCE_OBJS) liballoc.a

NormalLibraryObjectRule()
NormalLibraryTarget(alloc,$(LIBOBJS))
LintLibraryTarget(alloc,$(SRCS))
NormalLintTarget($(LINTDEFS) $(SRCS))

DependTarget()

DPSBounce.o:	$(CPU)Bounce.c
	$(RM) -f DPSBounce.c
	$(LN) $(CPU)Bounce.c DPSBounce.c
	$(CC) -DMALLOC=os_malloc -DREALLOC=os_realloc -DFREE=os_free \
		-DCALLOC=os_calloc -DVOLATILE=volatile\
		$(CFLAGS) -c DPSBounce.c
	$(RM) -f DPSBounce.c

DPSBounce2.o:	$(CPU)Bounce.c
	$(RM) -f DPSBounce2.c
	$(LN) $(CPU)Bounce.c DPSBounce2.c
	$(CC) -DMALLOC=os_sureMalloc -DCALLOC=os_sureCalloc \
		-DVOLATILE=volatile \
		$(CFLAGS) -c DPSBounce2.c
	$(RM) -f DPSBounce2.c

XBounce.o:	$(CPU)Bounce.c
	$(RM) -f XBounce.c
	$(LN) $(CPU)Bounce.c XBounce.c
	$(CC) -DMALLOC=Xalloc -DREALLOC=Xrealloc -DFREE=Xfree \
		-DVOLATILE=volatile \
		$(CFLAGS) -c XBounce.c
	$(RM) -f XBounce.c

sysBounce.o:	$(CPU)Bounce.c
	$(RM) -f sysBounce.c
	$(LN) $(CPU)Bounce.c sysBounce.c
	$(CC) -DMALLOC=malloc -DREALLOC=realloc -DFREE=free -DCALLOC=calloc \
		-DVOLATILE=volatile \
		$(CFLAGS) -c sysBounce.c
	$(RM) -f sysBounce.c

fosBounce.o:	$(CPU)Bounce.c
	$(RM) -f fosBounce.c
	$(LN) $(CPU)Bounce.c fosBounce.c
	$(CC) -DMALLOC=fosAlloc -DREALLOC=fosRealloc -DFREE=fosFree \
		-DCALLOC=fosCalloc  -DTMPALLOC=fosTmpAlloc \
		-DTMPFREE=fosTmpFree -DVOLATILE=volatile $(CFLAGS) \
		$(CFLAGS) -c fosBounce.c
	$(RM) -f fosBounce.c

clean::
	$(RM) -f fosBounce.c XBounce.c DPSBounce.c DPSBounce2.cj sysBounce.c
