############################################################################
# $Id: Makefile,v 1.1.1.1 1996/06/30 00:09:17 mtp Exp $
############################################################################
# @Header@
############################################################################
# $Log: Makefile,v $
# Revision 1.1.1.1  1996/06/30 00:09:17  mtp
# Resubmission of PD DCE sources
#
# Revision 1.1.1.1  1995/12/31 05:20:05  mtp
# + Placed under CVS control
#
############################################################################
include ${DCE}/Rules.mk

IFNAME         = simple
#DEBUG_FLAGS    = ${GDB}
DEBUG_FLAGS    = -O2
INCDIR         = ../../inc
INCFLAGS       = -I. -I$(INCDIR)

IDLFLAGS       +=  -v -keep c_source -I$(INCDIR)

IDL            = ../../rpc/idl/idl_compiler/idl
CFLAGS         += $(INCFLAGS) $(DEBUG_FLAGS) 

LIBIDL         = ../../rpc/idl/lib/libidl.a
LIBNCK         = ../../rpc/runtime/libnck.a

DCELIBS        =  ${LIBIDL} ${LIBNCK} ${LIBNCK}

LINKS          = $(DCELIBS) ${PTHREAD_LIBS} -lm
DEPENDS        = ${LINKS}

SSTUB_SRC      = ${IFNAME}_sstub.c
SSTUB          = ${IFNAME}_sstub.o

CSTUB_SRC      = ${IFNAME}_cstub.c
CSTUB          = ${IFNAME}_cstub.o

SVR_LINKS      = str.o sum.o $(SSTUB) $(LINKS)
CLIENT_LINKS   = str.o $(CSTUB) ${SSTUB} $(LINKS)

all: client server


#---------------------------------------------------------------------
# CLIENT BUILD 
#
client: client.c ${IFNAME}.h str.o ${CSTUB} ${SSTUB} $(DEPENDS)
	   @echo + building client program
	   @$(CC) $(CFLAGS) client.c $(CLIENT_LINKS) -o client

str.o: str_namespace.c str_namespace.h
	   @echo + building str.o
	   @$(CC) -c $(CFLAGS) str_namespace.c -o str.o

stp: stop.c str.o $(DEPENDS)
	   @echo + building stp
	   @$(CC) $(CFLAGS) stop.c str.o $(CSTUB) ${SSTUB} $(LINKS) -o stp

${CSTUB}: ${CSTUB_SRC}
	   @echo + building client stubs
	   @$(CC) -c $(CFLAGS) ${CSTUB_SRC}

#---------------------------------------------------------------------
# SERVER BUILD 
#
server: server.c str.o ${IFNAME}.h sum.o ${CSTUB} ${SSTUB} $(DEPENDS)
	   @echo + building server program
	   @$(CC) $(CFLAGS) server.c $(SVR_LINKS) -o server

sum.o: sum.c ${IFNAME}.h
	   @echo + building manager code, sum.o
	   @$(CC) -c $(CFLAGS) sum.c

${SSTUB}: ${SSTUB_SRC}
	   @echo + building server stubs
	   @$(CC) -c $(CFLAGS) ${SSTUB_SRC}

#---------------------------------------------------------------------
# INTERFACE BUILD 
#
${IFNAME}.h ${SSTUB_SRC} ${CSTUB_SRC}: ${IFNAME}.idl
	   @echo + generating interface header and stub sources
	   @$(IDL) $(IDLFLAGS) ${IFNAME}.idl


clobber: clean
	   @rm -f  *.o *_cstub* *_sstub* ${IFNAME}.h

clean:
	   @rm -f client server stp *.bak *~ foo *.dat sum.o
