#### Start of system configuration section. ####
#-----------------------------------------------------
TOPDIR  :=  $(shell /bin/pwd)
TOPDIR  :=  $(TOPDIR)/../..

include $(TOPDIR)/prerules.mk
#-----------------------------------------------------

top_builddir := $(shell /bin/pwd)


# Where the system [n]dbm routines are...
LIBS =  -lc

# Common prefix for installation directories
.c.o:
	$(CC) -c $(CPPFLAGS) $(DEFS) -I. $(CFLAGS) $<
	
DBM_OF = dbminit.o delete.o fetch.o store.o seq.o close.o
NDBM_OF = dbmopen.o dbmdelete.o dbmfetch.o dbmstore.o dbmseq.o \
	dbmclose.o dbmdirfno.o dbmpagfno.o dbmrdonly.o
GDBM_OF = gdbmopen.o gdbmdelete.o gdbmfetch.o  gdbmstore.o gdbmclose.o \
	gdbmreorg.o gdbmseq.o gdbmsync.o gdbmerrno.o gdbmexists.o gdbmfdesc.o \
	gdbmsetopt.o bucket.o falloc.o findkey.o global.o hash.o update.o \
	version.o
# The new split libraries:
OBJS = $(GDBM_OF)

C_OBJS = $(DBM_OF) $(NDBM_OF)

all: libgdbm

libgdbm: $(OBJS)
	$(CC) -shared -Wl,-soname,libgdbm.so.3 -o libgdbm.so.3.0.0 $(OBJS)
	$(STRIP) libgdbm.so.3.0.0
	ln -sf libgdbm.so.3.0.0 libgdbm.so.3
	ln -sf libgdbm.so.3 libgdbm.so
	cp -a libgdbm.so* $(COMM_LIB_PATH)
	cp -a gdbm.h $(COMM_INC_PATH)
	
install: $(LIBS)
	cp -af libgdbm.so.* $(T_LIB)
		
clean:
	rm -rf  *.o *.lo libgdbm*

# dbm files
dbminit.o:	autoconf.h gdbmdefs.h proto.h extern.h gdbmerrno.h
delete.o:	autoconf.h gdbmdefs.h proto.h extern.h
fetch.o:	autoconf.h gdbmdefs.h proto.h extern.h
store.o:	autoconf.h gdbmdefs.h proto.h extern.h
seq.o:		autoconf.h gdbmdefs.h proto.h extern.h

# ndbm files
dbmopen.o:	autoconf.h gdbmdefs.h extern.h gdbmerrno.h
dbmdelete.o:	autoconf.h gdbmdefs.h extern.h
dbmfetch.o:	autoconf.h gdbmdefs.h extern.h
dbmstore.o:	autoconf.h gdbmdefs.h extern.h
dbmseq.o:	autoconf.h gdbmdefs.h extern.h
dbmclose.o:	autoconf.h gdbmdefs.h systems.h
dbmpagfno.o:	autoconf.h gdbmdefs.h extern.h
dbmdirfno.o:	autoconf.h gdbmdefs.h extern.h


# gdbm files
gdbmclose.o:	autoconf.h gdbmdefs.h 
gdbmdelete.o:	autoconf.h gdbmdefs.h gdbmerrno.h 
gdbmfetch.o:	autoconf.h gdbmdefs.h gdbmerrno.h 
gdbmfdesc.o:	autoconf.h gdbmdefs.h
gdbmopen.o:	autoconf.h gdbmdefs.h gdbmerrno.h 
gdbmreorg.o:	autoconf.h gdbmdefs.h gdbmerrno.h extern.h
gdbmseq.o:	autoconf.h gdbmdefs.h 
gdbmstore.o:	autoconf.h gdbmdefs.h gdbmerrno.h 

# gdbm support files
bucket.o:	autoconf.h gdbmdefs.h
falloc.o:	autoconf.h gdbmdefs.h
findkey.o:	autoconf.h gdbmdefs.h
global.o:	autoconf.h gdbmdefs.h gdbmerrno.h 
hash.o:		autoconf.h gdbmdefs.h
update.o:	autoconf.h gdbmdefs.h
version.o:
extern.h:
gdbmdefs.h:	gdbmconst.h systems.h
	touch gdbmdefs.h

# other programs
testgdbm.o:	autoconf.h gdbmdefs.h extern.h gdbmerrno.h systems.h
testdbm.o:	autoconf.h
testndbm.o:	autoconf.h ndbm.h
tdbm.o:		autoconf.h
conv2gdbm.o:	autoconf.h gdbm.h
