#
#       $Id: Smakefile,v 4.2 1994/09/29 23:48:50 jraja Exp $
# 
#       Smakefile for AmiTCP/IP Sun RPC library 
#
#       Copyright  1994 AmiTCP/IP Group,
#                        Network Solutions Development Inc.
#		         All rights reserved. 
#
# How to select an RPC library? Use following table:
#
# |  PAREMETERS | DATA MODE  | DEBUGGING | USE DOSIO | Library name 
# | STACK | REG | NEAR | FAR | YES | NO  | YES | NO  |
# +-------+-----+------+-----+-----+-----+-----+-----+--------------
# |   x   |     |  x   |     |     |  x  |     |  x  | rpc.lib
# |       |  x  |  x   |     |     |  x  |     |  x  | rpcr.lib (*)
# |   x   |     |      |  x  |     |  x  |     |  x  | rpcnb.lib
# |       |  x  |      |  x  |     |  x  |     |  x  | rpcnbr.lib
# |   x   |     |  x   |     |  x  |     |     |  x  | grpc.lib
# |       |  x  |  x   |     |  x  |     |     |  x  | grpcr.lib
# |   x   |     |      |  x  |  x  |     |     |  x  | grpcnb.lib
# |       |  x  |      |  x  |  x  |     |     |  x  | grpcnbr.lib
# |   x   |     |  x   |     |     |  x  |  x  |     | rpcd.lib
# |       |  x  |  x   |     |     |  x  |  x  |     | rpcdr.lib (*)
# |   x   |     |      |  x  |     |  x  |  x  |     | rpcdnb.lib
# |       |  x  |      |  x  |     |  x  |  x  |     | rpcdnbr.lib
# |   x   |     |  x   |     |  x  |     |  x  |     | grpcd.lib
# |       |  x  |  x   |     |  x  |     |  x  |     | grpcdr.lib
# |   x   |     |      |  x  |  x  |     |  x  |     | grpcdnb.lib
# |       |  x  |      |  x  |  x  |     |  x  |     | grpcdnbr.lib
# 
#
# (*) Compiled by default by this Smakefile, supplied precompiled
#     in the SDK distribution.
#
# $Log: Smakefile,v $
# Revision 4.2  1994/09/29  23:48:50  jraja
# Updated copyright.
#
# Revision 4.1  1994/09/26  09:02:30  jraja
# Added USE_DOSIO libraries.
# Updated for the AmiTCP/IP 4.0.
#
# Revision 1.2  1994/03/09  01:42:37  jraja
# Completely new version.
#
#

DEST = AmiTCP:

MAKE = smake

RM= delete
RM_RECURSIVE= delete all
MKDIR= makedir
MV= rename
CP= copy dates

CC= sc
LD= slink

OFLAGS= Optimize NoDebug
GFLAGS= NoOptimize Debug=fullflush

CFLAGS=    DATA=NEAR
CFLAGS_D=  DATA=NEAR DEF=USE_DOSIO
CFLAGS_NB= DATA=FAR
CFLAGS_DNB=DATA=FAR DEF=USE_DOSIO

PARREG= PARAMETERS=REGISTERS
PARSTK= PARAMETERS=STACK

DEFS= "DEF=RCS_ID_C=//" DEF=AMITCP=1 DEF=AMIGA=1 \
      DEF __USE_SYSBASE=1 DEF USE_BUILTIN_MATH=1

IDIRS= IDIR=netinclude:
SCOPTIONS= NoStackCheck StringMerge \
	NoVersion NoIcons NoErrorHighlight \
	NoGenProtoExterns GenProtoStatics NoGenProtoDataItems \
	OptimizerInlineLocal OptimizerScheduler OptimizerTime \
	OptimizerComplexity=5 OptimizerDepth=5 OptimizerRecurDepth=5 \
	Map MapHunk MapSymbols MapLib MapXReference \
	SmallCode SmallData LinkerOptions=plain \
	$(DEFS) $(IDIRS)

RPCSRC=	auth_none.c auth_unix.c authunix_prot.c bindresvport.c \
	clnt_generic.c clnt_perror.c clnt_raw.c clnt_simple.c \
	clnt_tcp.c clnt_udp.c rpc_dtablesize.c get_myaddress.c \
	getrpcent.c getrpcport.c pmap_clnt.c pmap_getmaps.c \
	pmap_getport.c pmap_prot.c pmap_prot2.c pmap_rmt.c \
	rpc_prot.c rpc_commondata.c rpc_callmsg.c svc.c \
	svc_auth.c svc_auth_unix.c svc_raw.c svc_run.c \
	svc_simple.c svc_tcp.c svc_udp.c xdr.c xdr_array.c \
	xdr_mem.c xdr_rec.c xdr_reference.c xdr_stdio.c \
	xdr_float.c 

EXTSRC=	chkabort.c

RPCHDR=	netinclude:rpc/auth.h netinclude:rpc/auth_unix.h \
	netinclude:rpc/clnt.h netinclude:rpc/pmap_clnt.h \
	netinclude:rpc/pmap_prot.h netinclude:rpc/pmap_rmt.h \
	netinclude:rpc/rpc.h netinclude:rpc/rpc_msg.h \
	netinclude:rpc/svc.h netinclude:rpc/svc_auth.h \
	netinclude:rpc/types.h netinclude:rpc/xdr.h

LIBS=	rpcd.lib rpcdr.lib rpcdnb.lib rpcdnbr.lib \
	rpc.lib rpcr.lib rpcnb.lib rpcnbr.lib 

DEBUGLIBS= grpcd.lib grpcdr.lib grpcdnb.lib grpcdnbr.lib \
	grpc.lib grpcr.lib grpcnb.lib grpcnbr.lib

DEFAULTLIBS = rpcdr.lib rpcr.lib # these are done and installed by default

RPCOBJ=	auth_none.o auth_unix.o authunix_prot.o bindresvport.o \
	clnt_generic.o clnt_perror.o clnt_raw.o clnt_simple.o \
	clnt_tcp.o clnt_udp.o rpc_dtablesize.o get_myaddress.o \
	getrpcent.o getrpcport.o pmap_clnt.o pmap_getmaps.o \
	pmap_getport.o pmap_prot.o pmap_prot2.o pmap_rmt.o \
	rpc_prot.o rpc_commondata.o rpc_callmsg.o svc.o \
	svc_auth.o svc_auth_unix.o svc_raw.o svc_run.o \
	svc_simple.o svc_tcp.o svc_udp.o xdr.o xdr_array.o \
	xdr_mem.o xdr_rec.o xdr_reference.o xdr_stdio.o \
	xdr_float.o chkabort.o

RPCROBJ=\
	auth_none.ro auth_unix.ro authunix_prot.ro bindresvport.ro \
	clnt_generic.ro clnt_perror.ro clnt_raw.ro clnt_simple.ro \
	clnt_tcp.ro clnt_udp.ro rpc_dtablesize.ro get_myaddress.ro \
	getrpcent.ro getrpcport.ro pmap_clnt.ro pmap_getmaps.ro \
	pmap_getport.ro pmap_prot.ro pmap_prot2.ro pmap_rmt.ro \
	rpc_prot.ro rpc_commondata.ro rpc_callmsg.ro svc.ro \
	svc_auth.ro svc_auth_unix.ro svc_raw.ro svc_run.ro \
	svc_simple.ro svc_tcp.ro svc_udp.ro xdr.ro xdr_array.ro \
	xdr_mem.ro xdr_rec.ro xdr_reference.ro xdr_stdio.ro \
	xdr_float.ro chkabort.ro

RPCNBOBJ= auth_none.nbo auth_unix.nbo authunix_prot.nbo bindresvport.nbo \
	clnt_generic.nbo clnt_perror.nbo clnt_raw.nbo clnt_simple.nbo \
	clnt_tcp.nbo clnt_udp.nbo rpc_dtablesize.nbo get_myaddress.nbo \
	getrpcent.nbo getrpcport.nbo pmap_clnt.nbo pmap_getmaps.nbo \
	pmap_getport.nbo pmap_prot.nbo pmap_prot2.nbo pmap_rmt.nbo \
	rpc_prot.nbo rpc_commondata.nbo rpc_callmsg.nbo svc.nbo \
	svc_auth.nbo svc_auth_unix.nbo svc_raw.nbo svc_run.nbo \
	svc_simple.nbo svc_tcp.nbo svc_udp.nbo xdr.nbo xdr_array.nbo \
	xdr_mem.nbo xdr_rec.nbo xdr_reference.nbo xdr_stdio.nbo \
	xdr_float.nbo chkabort.nbo

RPCNBROBJ=\
	auth_none.nbro auth_unix.nbro authunix_prot.nbro bindresvport.nbro \
	clnt_generic.nbro clnt_perror.nbro clnt_raw.nbro clnt_simple.nbro \
	clnt_tcp.nbro clnt_udp.nbro rpc_dtablesize.nbro get_myaddress.nbro \
	getrpcent.nbro getrpcport.nbro pmap_clnt.nbro pmap_getmaps.nbro \
	pmap_getport.nbro pmap_prot.nbro pmap_prot2.nbro pmap_rmt.nbro \
	rpc_prot.nbro rpc_commondata.nbro rpc_callmsg.nbro svc.nbro \
	svc_auth.nbro svc_auth_unix.nbro svc_raw.nbro svc_run.nbro \
	svc_simple.nbro svc_tcp.nbro svc_udp.nbro xdr.nbro xdr_array.nbro \
	xdr_mem.nbro xdr_rec.nbro xdr_reference.nbro xdr_stdio.nbro \
	xdr_float.nbro chkabort.nbro

GRPCOBJ= auth_none.go auth_unix.go authunix_prot.go bindresvport.go \
	clnt_generic.go clnt_perror.go clnt_raw.go clnt_simple.go \
	clnt_tcp.go clnt_udp.go rpc_dtablesize.go get_myaddress.go \
	getrpcent.go getrpcport.go pmap_clnt.go pmap_getmaps.go \
	pmap_getport.go pmap_prot.go pmap_prot2.go pmap_rmt.go \
	rpc_prot.go rpc_commondata.go rpc_callmsg.go svc.go \
	svc_auth.go svc_auth_unix.go svc_raw.go svc_run.go \
	svc_simple.go svc_tcp.go svc_udp.go xdr.go xdr_array.go \
	xdr_mem.go xdr_rec.go xdr_reference.go xdr_stdio.go \
	xdr_float.go chkabort.go

GRPCROBJ=\
	auth_none.gro auth_unix.gro authunix_prot.gro bindresvport.gro \
	clnt_generic.gro clnt_perror.gro clnt_raw.gro clnt_simple.gro \
	clnt_tcp.gro clnt_udp.gro rpc_dtablesize.gro get_myaddress.gro \
	getrpcent.gro getrpcport.gro pmap_clnt.gro pmap_getmaps.gro \
	pmap_getport.gro pmap_prot.gro pmap_prot2.gro pmap_rmt.gro \
	rpc_prot.gro rpc_commondata.gro rpc_callmsg.gro svc.gro \
	svc_auth.gro svc_auth_unix.gro svc_raw.gro svc_run.gro \
	svc_simple.gro svc_tcp.gro svc_udp.gro xdr.gro xdr_array.gro \
	xdr_mem.gro xdr_rec.gro xdr_reference.gro xdr_stdio.gro \
	xdr_float.gro chkabort.gro

GRPCNBOBJ=\
	auth_none.gnbo auth_unix.gnbo authunix_prot.gnbo bindresvport.gnbo \
	clnt_generic.gnbo clnt_perror.gnbo clnt_raw.gnbo clnt_simple.gnbo \
	clnt_tcp.gnbo clnt_udp.gnbo rpc_dtablesize.gnbo get_myaddress.gnbo \
	getrpcent.gnbo getrpcport.gnbo pmap_clnt.gnbo pmap_getmaps.gnbo \
	pmap_getport.gnbo pmap_prot.gnbo pmap_prot2.gnbo pmap_rmt.gnbo \
	rpc_prot.gnbo rpc_commondata.gnbo rpc_callmsg.gnbo svc.gnbo \
	svc_auth.gnbo svc_auth_unix.gnbo svc_raw.gnbo svc_run.gnbo \
	svc_simple.gnbo svc_tcp.gnbo svc_udp.gnbo xdr.gnbo xdr_array.gnbo \
	xdr_mem.gnbo xdr_rec.gnbo xdr_reference.gnbo xdr_stdio.gnbo \
	xdr_float.gnbo chkabort.gnbo

GRPCNBROBJ=\
	auth_none.gnbro auth_unix.gnbro authunix_prot.gnbro bindresvport.gnbro \
	clnt_generic.gnbro clnt_perror.gnbro clnt_raw.gnbro clnt_simple.gnbro \
	clnt_tcp.gnbro clnt_udp.gnbro rpc_dtablesize.gnbro get_myaddress.gnbro \
	getrpcent.gnbro getrpcport.gnbro pmap_clnt.gnbro pmap_getmaps.gnbro \
	pmap_getport.gnbro pmap_prot.gnbro pmap_prot2.gnbro pmap_rmt.gnbro \
	rpc_prot.gnbro rpc_commondata.gnbro rpc_callmsg.gnbro svc.gnbro \
	svc_auth.gnbro svc_auth_unix.gnbro svc_raw.gnbro svc_run.gnbro \
	svc_simple.gnbro svc_tcp.gnbro svc_udp.gnbro xdr.gnbro xdr_array.gnbro \
	xdr_mem.gnbro xdr_rec.gnbro xdr_reference.gnbro xdr_stdio.gnbro \
	xdr_float.gnbro chkabort.gnbro

RPCDOBJ=auth_none.do auth_unix.do authunix_prot.do bindresvport.do \
	clnt_generic.do clnt_perror.do clnt_raw.do clnt_simple.do \
	clnt_tcp.do clnt_udp.do rpc_dtablesize.do get_myaddress.do \
	getrpcent.do getrpcport.do pmap_clnt.do pmap_getmaps.do \
	pmap_getport.do pmap_prot.do pmap_prot2.do pmap_rmt.do \
	rpc_prot.do rpc_commondata.do rpc_callmsg.do svc.do \
	svc_auth.do svc_auth_unix.do svc_raw.do svc_run.do \
	svc_simple.do svc_tcp.do svc_udp.do xdr.do xdr_array.do \
	xdr_mem.do xdr_rec.do xdr_reference.do xdr_stdio.do \
	xdr_float.do chkabort.do

RPCDROBJ=\
	auth_none.dro auth_unix.dro authunix_prot.dro bindresvport.dro \
	clnt_generic.dro clnt_perror.dro clnt_raw.dro clnt_simple.dro \
	clnt_tcp.dro clnt_udp.dro rpc_dtablesize.dro get_myaddress.dro \
	getrpcent.dro getrpcport.dro pmap_clnt.dro pmap_getmaps.dro \
	pmap_getport.dro pmap_prot.dro pmap_prot2.dro pmap_rmt.dro \
	rpc_prot.dro rpc_commondata.dro rpc_callmsg.dro svc.dro \
	svc_auth.dro svc_auth_unix.dro svc_raw.dro svc_run.dro \
	svc_simple.dro svc_tcp.dro svc_udp.dro xdr.dro xdr_array.dro \
	xdr_mem.dro xdr_rec.dro xdr_reference.dro xdr_stdio.dro \
	xdr_float.dro chkabort.dro

RPCDNBOBJ= auth_none.dnbo auth_unix.dnbo authunix_prot.dnbo bindresvport.dnbo \
	clnt_generic.dnbo clnt_perror.dnbo clnt_raw.dnbo clnt_simple.dnbo \
	clnt_tcp.dnbo clnt_udp.dnbo rpc_dtablesize.dnbo get_myaddress.dnbo \
	getrpcent.dnbo getrpcport.dnbo pmap_clnt.dnbo pmap_getmaps.dnbo \
	pmap_getport.dnbo pmap_prot.dnbo pmap_prot2.dnbo pmap_rmt.dnbo \
	rpc_prot.dnbo rpc_commondata.dnbo rpc_callmsg.dnbo svc.dnbo \
	svc_auth.dnbo svc_auth_unix.dnbo svc_raw.dnbo svc_run.dnbo \
	svc_simple.dnbo svc_tcp.dnbo svc_udp.dnbo xdr.dnbo xdr_array.dnbo \
	xdr_mem.dnbo xdr_rec.dnbo xdr_reference.dnbo xdr_stdio.dnbo \
	xdr_float.dnbo chkabort.dnbo

RPCDNBROBJ=\
	auth_none.dnbro auth_unix.dnbro authunix_prot.dnbro bindresvport.dnbro \
	clnt_generic.dnbro clnt_perror.dnbro clnt_raw.dnbro clnt_simple.dnbro \
	clnt_tcp.dnbro clnt_udp.dnbro rpc_dtablesize.dnbro get_myaddress.dnbro \
	getrpcent.dnbro getrpcport.dnbro pmap_clnt.dnbro pmap_getmaps.dnbro \
	pmap_getport.dnbro pmap_prot.dnbro pmap_prot2.dnbro pmap_rmt.dnbro \
	rpc_prot.dnbro rpc_commondata.dnbro rpc_callmsg.dnbro svc.dnbro \
	svc_auth.dnbro svc_auth_unix.dnbro svc_raw.dnbro svc_run.dnbro \
	svc_simple.dnbro svc_tcp.dnbro svc_udp.dnbro xdr.dnbro xdr_array.dnbro \
	xdr_mem.dnbro xdr_rec.dnbro xdr_reference.dnbro xdr_stdio.dnbro \
	xdr_float.dnbro chkabort.dnbro

GRPCDOBJ= auth_none.gdo auth_unix.gdo authunix_prot.gdo bindresvport.gdo \
	clnt_generic.gdo clnt_perror.gdo clnt_raw.gdo clnt_simple.gdo \
	clnt_tcp.gdo clnt_udp.gdo rpc_dtablesize.gdo get_myaddress.gdo \
	getrpcent.gdo getrpcport.gdo pmap_clnt.gdo pmap_getmaps.gdo \
	pmap_getport.gdo pmap_prot.gdo pmap_prot2.gdo pmap_rmt.gdo \
	rpc_prot.gdo rpc_commondata.gdo rpc_callmsg.gdo svc.gdo \
	svc_auth.gdo svc_auth_unix.gdo svc_raw.gdo svc_run.gdo \
	svc_simple.gdo svc_tcp.gdo svc_udp.gdo xdr.gdo xdr_array.gdo \
	xdr_mem.gdo xdr_rec.gdo xdr_reference.gdo xdr_stdio.gdo \
	xdr_float.gdo chkabort.gdo

GRPCDROBJ=\
	auth_none.gdro auth_unix.gdro authunix_prot.gdro bindresvport.gdro \
	clnt_generic.gdro clnt_perror.gdro clnt_raw.gdro clnt_simple.gdro \
	clnt_tcp.gdro clnt_udp.gdro rpc_dtablesize.gdro get_myaddress.gdro \
	getrpcent.gdro getrpcport.gdro pmap_clnt.gdro pmap_getmaps.gdro \
	pmap_getport.gdro pmap_prot.gdro pmap_prot2.gdro pmap_rmt.gdro \
	rpc_prot.gdro rpc_commondata.gdro rpc_callmsg.gdro svc.gdro \
	svc_auth.gdro svc_auth_unix.gdro svc_raw.gdro svc_run.gdro \
	svc_simple.gdro svc_tcp.gdro svc_udp.gdro xdr.gdro xdr_array.gdro \
	xdr_mem.gdro xdr_rec.gdro xdr_reference.gdro xdr_stdio.gdro \
	xdr_float.gdro chkabort.gdro

GRPCDNBOBJ=\
	auth_none.gdnbo auth_unix.gdnbo authunix_prot.gdnbo bindresvport.gdnbo \
	clnt_generic.gdnbo clnt_perror.gdnbo clnt_raw.gdnbo clnt_simple.gdnbo \
	clnt_tcp.gdnbo clnt_udp.gdnbo rpc_dtablesize.gdnbo get_myaddress.gdnbo \
	getrpcent.gdnbo getrpcport.gdnbo pmap_clnt.gdnbo pmap_getmaps.gdnbo \
	pmap_getport.gdnbo pmap_prot.gdnbo pmap_prot2.gdnbo pmap_rmt.gdnbo \
	rpc_prot.gdnbo rpc_commondata.gdnbo rpc_callmsg.gdnbo svc.gdnbo \
	svc_auth.gdnbo svc_auth_unix.gdnbo svc_raw.gdnbo svc_run.gdnbo \
	svc_simple.gdnbo svc_tcp.gdnbo svc_udp.gdnbo xdr.gdnbo xdr_array.gdnbo \
	xdr_mem.gdnbo xdr_rec.gdnbo xdr_reference.gdnbo xdr_stdio.gdnbo \
	xdr_float.gdnbo chkabort.gdnbo

GRPCDNBROBJ=\
	auth_none.gdnbro auth_unix.gdnbro authunix_prot.gdnbro bindresvport.gdnbro \
	clnt_generic.gdnbro clnt_perror.gdnbro clnt_raw.gdnbro clnt_simple.gdnbro \
	clnt_tcp.gdnbro clnt_udp.gdnbro rpc_dtablesize.gdnbro get_myaddress.gdnbro \
	getrpcent.gdnbro getrpcport.gdnbro pmap_clnt.gdnbro pmap_getmaps.gdnbro \
	pmap_getport.gdnbro pmap_prot.gdnbro pmap_prot2.gdnbro pmap_rmt.gdnbro \
	rpc_prot.gdnbro rpc_commondata.gdnbro rpc_callmsg.gdnbro svc.gdnbro \
	svc_auth.gdnbro svc_auth_unix.gdnbro svc_raw.gdnbro svc_run.gdnbro \
	svc_simple.gdnbro svc_tcp.gdnbro svc_udp.gdnbro xdr.gdnbro xdr_array.gdnbro \
	xdr_mem.gdnbro xdr_rec.gdnbro xdr_reference.gdnbro xdr_stdio.gdnbro \
	xdr_float.gdnbro chkabort.gdnbro

.SUFFIXES: .c .o .ro .nbo .nbro .go .gro .gnbo .gnbro .do .dro .dnbo .dnbro .gdo .gdro .gdnbo .gdnbro

#
# Generic rules
#
.c.o:
	$(CC) $(PARSTK) $(CFLAGS) $(OFLAGS) GST=rpc.gst $*.c
.c.ro:
	$(CC) $(PARREG) $(CFLAGS) $(OFLAGS) GST=rpcr.gst $*.c OBJNAME=$*.ro
.c.nbo:
	$(CC) $(PARSTK) $(CFLAGS_NB) $(OFLAGS) GST=rpcnb.gst $*.c OBJNAME=$*.nbo
.c.nbro:
	$(CC) $(PARREG) $(CFLAGS_NB) $(OFLAGS) GST=rpcnbr.gst $*.c OBJNAME=$*.nbro
.c.go:
	$(CC) $(PARSTK) $(CFLAGS) $(GFLAGS) GST=grpc.gst $*.c OBJNAME=$*.go
.c.gro:
	$(CC) $(PARREG) $(CFLAGS) $(GFLAGS) GST=grpcr.gst $*.c OBJNAME=$*.gro
.c.gnbo:
	$(CC) $(PARSTK) $(CFLAGS_NB) $(GFLAGS) GST=grpcnb.gst $*.c OBJNAME=$*.gnbo
.c.gnbro:
	$(CC) $(PARREG) $(CFLAGS_NB) $(GFLAGS) GST=grpcnbr.gst $*.c OBJNAME=$*.gnbro
.c.do:
	$(CC) $(PARSTK) $(CFLAGS_D) $(OFLAGS) GST=rpcd.gst $*.c OBJNAME=$*.do
.c.dro:
	$(CC) $(PARREG) $(CFLAGS_D) $(OFLAGS) GST=rpcdr.gst $*.c OBJNAME=$*.dro
.c.dnbo:
	$(CC) $(PARSTK) $(CFLAGS_DNB) $(OFLAGS) GST=rpcdnb.gst $*.c OBJNAME=$*.dnbo
.c.dnbro:
	$(CC) $(PARREG) $(CFLAGS_DNB) $(OFLAGS) GST=rpcdnbr.gst $*.c OBJNAME=$*.dnbro
.c.gdo:
	$(CC) $(PARSTK) $(CFLAGS_D) $(GFLAGS) GST=grpcd.gst $*.c OBJNAME=$*.gdo
.c.gdro:
	$(CC) $(PARREG) $(CFLAGS_D) $(GFLAGS) GST=grpcdr.gst $*.c OBJNAME=$*.gdro
.c.gdnbo:
	$(CC) $(PARSTK) $(CFLAGS_DNB) $(GFLAGS) GST=grpcdnb.gst $*.c OBJNAME=$*.gdnbo
.c.gdnbro:
	$(CC) $(PARREG) $(CFLAGS_DNB) $(GFLAGS) GST=grpcdnbr.gst $*.c OBJNAME=$*.gdnbro

default: $(DEFAULTLIBS)

all: $(LIBS) $(DEBUGLIBS)

debug: $(DEBUGLIBS)

install:  default $(DEST)netlib
	$(CP) $(DEFAULTLIBS) $(DEST)netlib

$(DEST)netlib:
	-$(MKDIR) $@
	
SCOPTIONS: Smakefile # this file
	copy to $@ <from < 
$(SCOPTIONS) 
<

#
# Rules for the RPC libraries
#
rpc.lib: rpc.gst $(RPCOBJ)
	-$(RM) $@
	oml $@ r <@<
$(RPCOBJ)
<
rpcr.lib: rpcr.gst $(RPCROBJ)
	-$(RM) $@
	oml $@ r <@<
$(RPCROBJ)
<

rpcnb.lib: rpcnb.gst $(RPCNBOBJ)
	-$(RM) $@
	oml $@ r <@<
$(RPCNBOBJ)
<
rpcnbr.lib: rpcnbr.gst $(RPCNBROBJ)
	-$(RM) $@
	oml $@ r <@<
$(RPCNBROBJ)
<

rpcd.lib: rpcd.gst $(RPCDOBJ)
	-$(RM) $@
	oml $@ r <@<
$(RPCDOBJ)
<
rpcdr.lib: rpcdr.gst $(RPCDROBJ)
	-$(RM) $@
	oml $@ r <@<
$(RPCDROBJ)
<

rpcdnb.lib: rpcdnb.gst $(RPCDNBOBJ)
	-$(RM) $@
	oml $@ r <@<
$(RPCDNBOBJ)
<
rpcdnbr.lib: rpcdnbr.gst $(RPCDNBROBJ)
	-$(RM) $@
	oml $@ r <@<
$(RPCDNBROBJ)
<

#
# Debugging libraries
#
grpc.lib: grpc.gst $(GRPCOBJ)
	-$(RM) $@
	oml $@ r <@<
$(GRPCOBJ)
<
grpcr.lib: grpcr.gst $(GRPCROBJ)
	-$(RM) $@
	oml $@ r <@<
$(GRPCROBJ)
<

grpcnb.lib: grpcnb.gst $(GRPCNBOBJ)
	-$(RM) $@
	oml $@ r <@<
$(GRPCNBOBJ)
<
grpcnbr.lib: grpcnbr.gst $(GRPCNBROBJ)
	-$(RM) $@
	oml $@ r <@<
$(GRPCNBROBJ)
<

grpcd.lib: grpcd.gst $(GRPCDOBJ)
	-$(RM) $@
	oml $@ r <@<
$(GRPCDOBJ)
<
grpcdr.lib: grpcdr.gst $(GRPCDROBJ)
	-$(RM) $@
	oml $@ r <@<
$(GRPCDROBJ)
<

grpcdnb.lib: grpcdnb.gst $(GRPCDNBOBJ)
	-$(RM) $@
	oml $@ r <@<
$(GRPCDNBOBJ)
<
grpcdnbr.lib: grpcdnbr.gst $(GRPCDNBROBJ)
	-$(RM) $@
	oml $@ r <@<
$(GRPCDNBROBJ)
<

#protos: 
#	-$(MKDIR) prototypes
#	$(CC) $(CFLAGS) MOD GENPROTO <WITH <
#$(RPCSRC)
#<
#	$(MV) #?_protos.h prototypes/

rpc.gst: SCOPTIONS $(RPCHDR)
	-gst unload `cd`/$@ 
	-$(RM) $@
	$(CC) $(PARSTK) $(CFLAGS) $(OFLAGS) MGST=$@ NOOBJNAME gst.c

rpcr.gst: SCOPTIONS $(RPCHDR)
	-gst unload `cd`/$@ 
	-$(RM) $@
	$(CC) $(PARREG) $(CFLAGS) $(OFLAGS) MGST=$@ NOOBJNAME gst.c

rpcnb.gst: SCOPTIONS $(RPCHDR)
	-gst unload `cd`/$@ 
	-$(RM) $@
	$(CC) $(PARSTK) $(CFLAGS_NB) $(OFLAGS) MGST=$@ NOOBJNAME gst.c

rpcnbr.gst: SCOPTIONS $(RPCHDR)
	-gst unload `cd`/$@ 
	-$(RM) $@
	$(CC) $(PARREG) $(CFLAGS_NB) $(OFLAGS) MGST=$@ NOOBJNAME gst.c

grpc.gst: SCOPTIONS $(RPCHDR)
	-gst unload `cd`/$@ 
	-$(RM) $@
	$(CC) $(PARSTK) $(CFLAGS) $(GFLAGS) MGST=$@ NOOBJNAME gst.c

grpcr.gst: SCOPTIONS $(RPCHDR)
	-gst unload `cd`/$@ 
	-$(RM) $@
	$(CC) $(PARREG) $(CFLAGS) $(GFLAGS) MGST=$@ NOOBJNAME gst.c

grpcnb.gst: SCOPTIONS $(RPCHDR)
	-gst unload `cd`/$@ 
	-$(RM) $@
	$(CC) $(PARSTK) $(CFLAGS_NB) $(GFLAGS) MGST=$@ NOOBJNAME gst.c

grpcnbr.gst: SCOPTIONS $(RPCHDR)
	-gst unload `cd`/$@ 
	-$(RM) $@
	$(CC) $(PARREG) $(CFLAGS_NB) $(GFLAGS) MGST=$@ NOOBJNAME gst.c

rpcd.gst: SCOPTIONS $(RPCHDR)
	-gst unload `cd`/$@ 
	-$(RM) $@
	$(CC) $(PARSTK) $(CFLAGS_D) $(OFLAGS) MGST=$@ NOOBJNAME gst.c

rpcdr.gst: SCOPTIONS $(RPCHDR)
	-gst unload `cd`/$@ 
	-$(RM) $@
	$(CC) $(PARREG) $(CFLAGS_D) $(OFLAGS) MGST=$@ NOOBJNAME gst.c

rpcdnb.gst: SCOPTIONS $(RPCHDR)
	-gst unload `cd`/$@ 
	-$(RM) $@
	$(CC) $(PARSTK) $(CFLAGS_DNB) $(OFLAGS) MGST=$@ NOOBJNAME gst.c

rpcdnbr.gst: SCOPTIONS $(RPCHDR)
	-gst unload `cd`/$@ 
	-$(RM) $@
	$(CC) $(PARREG) $(CFLAGS_DNB) $(OFLAGS) MGST=$@ NOOBJNAME gst.c

grpcd.gst: SCOPTIONS $(RPCHDR)
	-gst unload `cd`/$@ 
	-$(RM) $@
	$(CC) $(PARSTK) $(CFLAGS_D) $(GFLAGS) MGST=$@ NOOBJNAME gst.c

grpcdr.gst: SCOPTIONS $(RPCHDR)
	-gst unload `cd`/$@ 
	-$(RM) $@
	$(CC) $(PARREG) $(CFLAGS_D) $(GFLAGS) MGST=$@ NOOBJNAME gst.c

grpcdnb.gst: SCOPTIONS $(RPCHDR)
	-gst unload `cd`/$@ 
	-$(RM) $@
	$(CC) $(PARSTK) $(CFLAGS_DNB) $(GFLAGS) MGST=$@ NOOBJNAME gst.c

grpcdnbr.gst: SCOPTIONS $(RPCHDR)
	-gst unload `cd`/$@ 
	-$(RM) $@
	$(CC) $(PARREG) $(CFLAGS_DNB) $(GFLAGS) MGST=$@ NOOBJNAME gst.c

clean:
	-$(RM) \#?! \#?.(o|ro|nbo|nbro|go|gro|gnbo|gnbro|do|dro|dnbo|dnbro|gdo|gdro|gdnbo|gdnbro|lib|gst|map) SCOPTIONS
