DIR=	.
SRC1=	hash.c hash_log2.c hash_page.c hash_bigkey.c hash_buf.c hash_func.c
SRC2=	hsearch.c ndbm.c mkstemp.c bcopy.c 
SRCS=	$(SRC1) $(SRC2)
OBJ1=	hash.o hash_log2.o hash_page.o hash_bigkey.o hash_buf.o hash_func.o
OBJ2=	hsearch.o ndbm.o mkstemp.o bcopy.o
OBJS=	$(OBJ1) $(OBJ2)
MAINS=	tread2.c tverify.c tseq.c tdel.c thash4.c tcreat3.c 
HDRS=	hash.h page.h db.h endian.h cdefs.h

DEBUGFLAGS= -DHASH_STATISTICS -g -pg
PROFFLAGS= -p -DHASH_STATISTICS
TIMEFLAGS = -O4
TESTFLAGS= $(DEBUGFLAGS) 
LDFLAGS= 
#CFLAGS=	-I.  $(DEBUGFLAGS)
#CFLAGS=	-I.  $(PROFFLAGS)
CFLAGS=	-I.  $(TIMEFLAGS)
PROGS=tread2 tverify tseq thash4 tcreat3 tdel
RANLIB=ranlib

lib: endian.h ../lib/libhash.a
	@echo libhash up to date

../lib/libhash.a: libhash.a
	test -d ../lib || mkdir ../lib
	cp libhash.a ../lib
	$(RANLIB) ../lib/libhash.a

all:	byte_order lib $(PROGS)

install: lib
	echo up to date

clean:
	/bin/rm -f libhash.a *.o core checkendian $(PROGS) byte_order tags

endian.h: byte_order
	-sed -e `./byte_order` < endian.dst > endian.tmp
	-(cmp -s endian.tmp endian.h || \
		{ \
			echo "********** Endian.h was changed"; \
			cp endian.tmp endian.h; \
			if test -d ../h; then \
				echo "********** and copied into ../h"; \
				/bin/rm -f ../h/endian.h; \
				cp endian.h ../h/endian.h; \
			fi; \
		} \
	)

libhash.a:	endian.h $(OBJS)
	ar ruv libhash.a $(OBJS)

tar:	
	tar chf hash.tar README Makefile $(SRCS) $(MAINS) $(HDRS) ndbm.c ndbm.h hsearch.c search.h byte_order.c db.3 hash.ps DIFFS.*

tdel:	tdel.o $(OBJS)
	cc tdel.o $(LDFLAGS) -o tdel $(OBJS)

tseq:	tseq.o $(OBJS)
	cc tseq.o $(LDFLAGS) -o tseq $(OBJS)

tverify:	tverify.o $(OBJS)
	cc tverify.o $(LDFLAGS) -o tverify $(OBJS)

tcreat3:	tcreat3.o $(OBJS)
	cc tcreat3.o $(LDFLAGS) -o tcreat3 $(OBJS)

tread2:	tread2.o $(OBJS)
	cc tread2.o $(LDFLAGS) -o tread2 $(OBJS)

thash4:	thash4.o $(OBJS)
	cc thash4.o $(LDFLAGS) -o thash4 $(OBJS)


depend:
	chmod +w Makefile
	mkdep $(CFLAGS) *.c

# DO NOT DELETE THIS LINE -- mkdep uses it.
# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY.
tverify.o: /usr/include/sys/stat.h /usr/include/sys/types.h db.h cdefs.h

# IF YOU PUT ANYTHING HERE IT WILL GO AWAY
