SHELL = /bin/sh

prefix=/usr/local
exec_prefix=${prefix}
datadir=${prefix}/share
sysconfdir=${prefix}/etc
sbindir=${exec_prefix}/sbin
lsbindir=${sbindir}

includedir=${prefix}/include
mandir=${prefix}/share/man
libdir=${exec_prefix}/lib
LIBS=  -lresolv -ldl 

srcdir=.
top_srcdir=..
BUILDTOP=..

CC=gcc
INSTALL=/usr/bin/install -c
RANLIB=ranlib
FPIC=
DEBUG=-O
CPPFLAGS=
CFLAGS=-g -O2 ${DEBUG} ${FPIC}
ALL_CFLAGS=${CFLAGS} -DSYSCONFDIR=\"${sysconfdir}\" -I${top_srcdir}/h \
	-I${BUILDTOP}/h ${CPPFLAGS} -arch i386 -arch ppc

OBJS =	zephyr_err.o ZAsyncLocate.o ZCkAuth.o ZCkIfNot.o ZClosePort.o \
	ZCmpUID.o ZCmpUIDP.o ZFlsLocs.o ZFlsSubs.o ZFmtAuth.o ZFmtList.o \
	ZFmtNotice.o ZFmtRaw.o ZFmtRawLst.o ZFmtSmRLst.o ZFmtSmRaw.o \
	ZFreeNot.o ZGetLocs.o ZGetSender.o ZGetSubs.o ZGetWGPort.o ZhmStat.o \
	ZIfNotice.o ZInit.o ZLocations.o ZMakeAscii.o ZMkAuth.o ZNewLocU.o \
	ZOpenPort.o ZParseNot.o ZPeekIfNot.o ZPeekNot.o ZPeekPkt.o ZPending.o \
	ZReadAscii.o ZRecvNot.o ZRecvPkt.o ZRetSubs.o ZSendList.o ZSendNot.o \
	ZSendPkt.o ZSendRaw.o ZSendRLst.o ZSetDest.o ZSetFD.o ZSetSrv.o \
	ZSubs.o ZVariables.o ZWait4Not.o Zinternal.o

LIBEXT=a
all: libzephyr.$(LIBEXT)

libzephyr.a: ${OBJS}
	ar cru $@ ${OBJS}
	${RANLIB} $@

libzephyr.so: $(OBJS)
	gcc  -shared -Wl,-soname -Wl,libzephyr.so.$(SONAME) -o libzephyr.so $(OBJS) $(LIBS)  -lcom_err  

zephyr_err.c ${BUILDTOP}/h/zephyr_err.h: zephyr_err.et
	compile_et ${srcdir}/zephyr_err.et
	mv zephyr_err.h ${BUILDTOP}/h

.c.o:
	${CC} -c ${ALL_CFLAGS} $<

check:

install: libzephyr.$(LIBEXT)
	-${INSTALL} -m 644 libzephyr.a ${DESTDIR}${libdir}
	-$(INSTALL) -m 644 libzephyr.so ${DESTDIR}$(libdir)

	${INSTALL} -m 644 ${srcdir}/zephyr.1 ${DESTDIR}${mandir}/man1

clean:
	rm -f ${OBJS} libzephyr.a zephyr_err.c zephyr_err.h

${OBJS}: ${top_srcdir}/h/internal.h ${top_srcdir}/h/sysdep.h
${OBJS}: ${BUILDTOP}/h/config.h ${BUILDTOP}/h/zephyr.h
${OBJS}: ${BUILDTOP}/h/zephyr_err.h

.PHONY: all check install clean

