#CFLAGS = -g -DSDBM -DDEBUG -DDUFF # -OOLD -DDEBUGP
#CFLAGS = -O -p -DSDBM -DDUFF -DSVID -DDUPERROR -DSPLITERROR -DLiamSysV
#CFLAGS = -traditional -I/usr/include -I. -O -g -DSDBM -DDUFF -DDUPERROR -DSPLITERROR -DLiamSysV -DSVID
EXTRA = -DSDBM -DDUFF -DDUPERROR -DSPLITERROR
CFLAGS = -g -DBSD -USYSV $(EXTRA)
CC=cc
LIBDIR=../lib
#CC=gcc
# LDFLAGS = -p
# LDFLAGS = -O
LDFLAGS=

PWD=sdbm

PROGS = dbm dba dbd
OBJS = sdbm.o pair.o hash.o
SRCS = sdbm.c pair.c hash.c dbm.c dba.c dbd.c
HDRS = port.h sdbm.h pair.h
MISC = README CHANGES WISHLIST howtodbm.txt COMPARE ndbmalg.txt
RANLIB=echo

default: install

all: $(PROGS)

saber_src:
	#cd $(PWD)
	#load $(CFLAGS) $(SRCS)
	#cd ..

saber_obj:
	#cd $(PWD)
	#load $(CFLAGS) $(SRCS)
	#cd ..

install: sdbm
	mv libsdbm.a $(LIBDIR)
	$(RANLIB) $(LIBDIR)/libsdbm.a

dbm: dbm.o sdbm
	cc $(LDFLAGS) -o dbm dbm.o libsdbm.a

dba: dba.o
	cc $(LDFLAGS) -o dba dba.o
dbd: dbd.o
	cc $(LDFLAGS) -o dbd dbd.o

sdbm: $(OBJS)
	ar cr libsdbm.a $(OBJS)
	$(RANLIB) libsdbm.a
###	cp libsdbm.a /usr/lib/libsdbm.a

dba.o: sdbm.h
dbm.o: sdbm.h
$(OBJS): sdbm.h port.h pair.h

#
# dbm using berkelezoid ndbm routines
#
x-dbm: dbm.o
	cc $(CFLAGS) -o x-dbm dbm.o
lint:
	lint -abchx $(SRCS)
redc:
	rcc -flint $(CFLAGS) $(SRCS)
clean:
	rm -f *.o mon.out core $(PROGS) libsdbm.a

purge: 	clean
	rm -f dbm libsdbm.a dbd dba x-dbm *.dir *.pag
shar:
	shar $(MISC) makefile $(SRCS) $(HDRS) >SDBM.SHAR
