
#
#  xserver - a native X11 release 4 server for Sun 3/50's
#    Project Lunchmeat
#    May, 1990
#    $Date: 90/07/13 16:21:54 $
#    $Revision: 1.3 $
#
#  Makefile - Makefile for xdbm
#

#
# $Log:	Makefile,v $
# Revision 1.3  90/07/13  16:21:54  mjk
# *** empty log message ***
# 
# Revision 1.2  90/07/02  13:05:00  mjk
# made for local version of mkstatic and OPTIMIZE/DEBUG support
# and RCS support
# 
# Revision 1.1  90/06/18  02:10:54  mjk
# Initial revision
# 
#

HOWTOCOMPILE = OPTIMIZE
HOW = $(HOWTOCOMPILE)

SHELL = /bin/sh

TOP = /brazos/petero/projects/xkernel/xserver/User

DBM_LIB = /usr/lib/libdbm.a

AR = ar cq
GET = co
MKSTATIC = ./mkstatic
MV = mv
RM = rm -f
RANLIB = ranlib
CFLAGS = -I.. -I../../../share -I../os/xkernel

DEBUGFLAGS =
OPTIMIZEFLAGS = -O2 -DNDEBUG
CCOPTIONS =
ALLINCLUDES = -I.. -I../../../share -I../os/xkernel
ALLDEFINES = $(ALLINCLUDES) $(STD_DEFINES) $(PROTO_DEFINES) $(DEFINES) $(COMPATFLAGS)

CFLAGS = $(CCOPTIONS) $(ALLDEFINES)

RM_CMD = $(RM) *.CKP *.ln *.BAK *.bak *.o DEBUG/*.o OPTIMIZE/*.o core errs ,* *~ *.a .emacs_* tags TAGS make.log MakeOut *%

SRCS = stubs.c

OBJS = $(SRCS:%.c=$(HOW)/%.o)

DEBUG/%.o : %.c
	$(RM) $@
	$(CC) -c $(CFLAGS) $(DEBUGFLAGS) $< -o $@

OPTIMIZE/%.o : %.c
	$(RM) $@
	$(CC) -c $(CFLAGS) $(OPTIMIZEFLAGS) $< -o $@

all : libxdbm.a

libxdbm.a : $(HOW)/xdbm.o
	$(RM) $@
	$(AR) $@ $(HOW)/xdbm.o
	$(RANLIB) $@

$(HOW)/dbm.o : $(DBM_LIB)
	ar x $(DBM_LIB) dbm.o
	$(MV) dbm.o $@

$(HOW)/xdbm.o : $(HOW)/dbm.o $(HOW)/stubs.o mkstatic
	$(RM) $@
	ld -r $(HOW)/dbm.o $(HOW)/stubs.o -o $@
	$(MKSTATIC) $@ _abort _open _close _read _write _fstat _lseek

mkstatic : mkstatic.c
	$(CC) -o $@ mkstatic.c

clean::
	$(RM_CMD) \#*

$(SRCS) $(HDRS) :
	$(GET) $@

