# avl -- balanced binary tree package
#---------------------------------------------------------------------------

CAD	= /net/eros/octtools/pmax
MIS	= /misII/pmax/src

HOST	= beeblebrox
DIST	= /misII/pmax/src
LINTCREATEFLAG = -C

P	= avl
PSRC	= avl.c
POBJ	= avl.o
PHDR	= avl.h
MISC	= avl.doc Makefile avl_bench1.c

TARGET	= avl_bench1
SRC	= avl_bench1.c
OBJ	= avl_bench1.o
HDR	=

LIBS	= ../util/libutil.a ../array/libarray.a
LINTLIBS= ../util/llib-lutil.ln ../array/llib-larray.ln
INCLUDE	= -I$(MIS)/include -I$(CAD)/include

CFLAGS	= -g $(INCLUDE)
LDFLAGS	= -g
LINTFLAGS =  $(INCLUDE) ${LINTEXTRAS}

#---------------------------------------------------------------------------

install: lib$(P).a llib-l$(P).ln

lib$(P).a: $(POBJ)
	ar cr lib$(P).a $(POBJ)
	ranlib lib$(P).a

llib-l$(P).ln: $(PSRC) $(PHDR)
	lint $(LINTFLAGS) ${LINTCREATEFLAG}$(P) -n $(PSRC)

$(TARGET): $(PHDR) $(OBJ) $(POBJ) $(LIBS)
	$(CC) $(LDFLAGS) -o $(TARGET) $(OBJ) $(POBJ) $(LIBS)

lint: $(PSRC) $(PHDR) $(SRC) $(HDR)
	lint $(LINTFLAGS) $(SRC) $(PSRC) $(LINTLIBS)

clean:
	rm -f $(TARGET) *.a *.ln *.o \
	    [Tt]ags [Mm]ake.out lint malloc.out gmon.out __.SYMDEF

tags: _force
	@for i in $(PSRC) $(PHDR); do			\
	    cwd=`pwd`; ctags -a $$cwd/$$i;		\
	done;

depend:
	sed '/^#--DO NOT CHANGE ANYTHING AFTER THIS LINE/,$$d' Makefile >mktemp
	echo '#--DO NOT CHANGE ANYTHING AFTER THIS LINE' >>mktemp
	$(CAD)/bin/cc-M $(INCLUDE) $(PSRC) | \
	    sed 's|$(CAD)|$$(CAD)|g' | \
	    grep -v '/usr/include' >>mktemp
	mv mktemp Makefile

dist:
	rdist -Richw $(PSRC) $(PHDR) $(MISC) $(HOST):$(DIST)/$(P)

strip_depend:
	sed '/^#--DO NOT CHANGE ANYTHING AFTER THIS LINE/,$$d' Makefile >mktemp
	mv mktemp Makefile

#-------------------------- IBM 3090 support -----------------
IBMHOST	= beeblebrox
IBMDIST	= /misII/pmax/src
ibmdist: $(PSRC) $(PHDR)
	rdist -Richw $(PSRC) $(PHDR) $(IBMHOST):$(IBMDIST)
#-------------------------------------------------------------
_force:

