# Makefile for rds construction
SHELL = /bin/sh
CC     = cc
CFLAGS = -g -D$(MACHINE)

RCSSOURCES = Makefile rds.h rds103.h rdsacces.c rdsacces.h rdsdebug.c rdsdebug.h rdsdefine.h rdserror.c rdserror.h rdsmem.c rdsmem.h rdstools.c rdstools.h rdsutil.c rdsutil.h rfm.c rfm.h rfm103.h rpr105.h rpracces.c rpracces.h rprparse.c rprparse.h rut101.h
ALLIANCE_INCLUDE = /labo/include
ALLIANCE_ETC = /labo/etc
MACHINE = sparc
RDSOBJ = rdsacces.o rdsdebug.o rdsmem.o rdserror.o
RTLOBJ = rdstools.o
RFMOBJ = rfm.o
RUTOBJ = rdsutil.o
RPROBJ = rprparse.o rpracces.o
VERSION = 1.4
RDSHEADERS = rds103.h rpr105.h rut101.h rfm103.h
HEADER = -I$(ALLIANCE_INCLUDE) \
-DRDS_H='"rds103.h"' -DRPR_H='"rpr105.h"' -DRFM_H='"rfm103.h"' -DRUT_H='"rut101.h"'\
-DMPH_H='"mph306.h"' -DMUT_H='"mut309.h"'\
-DDEFINE_RDS_TECHNO_NAME='"$(ALLIANCE_ETC)/prol15.rds"'
RDSLIB = libRds103.a
RTLLIB = libRtl100.a
RFMLIB = libRfm103.a
RUTLIB = libRut101.a
RPRLIB = libRpr105.a

distrib : install

install : all
	cp $(RDSHEADERS) ../include

all : $(RUTOBJ) $(RDSOBJ) $(RTLOBJ) $(RFMOBJ) $(RPROBJ)
	ar rv ../lib/$(RDSLIB) $(RDSOBJ)
	ar rv ../lib/$(RTLLIB) $(RTLOBJ)
	ar rv ../lib/$(RFMLIB) $(RFMOBJ)
	ar rv ../lib/$(RPRLIB) $(RPROBJ)
	ar rv ../lib/$(RUTLIB) $(RUTOBJ)
	if [ -f /usr/bin/ranlib -o -f /bin/ranlib ] ; then \
		ranlib ../lib/$(RDSLIB) ; \
		ranlib ../lib/$(RTLLIB) ; \
		ranlib ../lib/$(RFMLIB) ; \
		ranlib ../lib/$(RPRLIB) ; \
		ranlib ../lib/$(RPRLIB) ; \
		ranlib ../lib/$(RUTLIB) ; \
	fi

rdsacces.o : rdsacces.c rdsacces.h
	$(CC) $(CFLAGS) $(HEADER) -c rdsacces.c

rdstools.o : rdstools.c rdstools.h rds.h
	$(CC) $(CFLAGS) $(HEADER) -c rdstools.c

rdsdebug.o : rdsdebug.c  rdsdebug.h rdsdefine.h
	$(CC) $(CFLAGS) $(HEADER) -c rdsdebug.c

rdserror.o : rdserror.c rdserror.h
	$(CC) $(CFLAGS) $(HEADER) -c rdserror.c

rdsmem.o : rdsmem.c rdsmem.h
	$(CC) $(CFLAGS) $(HEADER) -c rdsmem.c

rfm.o : rfm.c rfm.h
	$(CC) $(CFLAGS) $(HEADER) -c rfm.c

rpracces.o : rpracces.c rpracces.h
	$(CC) $(CFLAGS) $(HEADER) -c rpracces.c

rprparse.o : rprparse.c  rprparse.h
	$(CC) $(CFLAGS) $(HEADER) -c rprparse.c

rdsutil.o : rdsutil.c
	$(CC) $(CFLAGS) $(HEADER) -c rdsutil.c

checkin :
	echo "y" > 1
	for i in $(RCSSOURCES); do \
		ci -l$(VERSION) -f -m"rcs version number consistency" $$i < 1 ; \
	done
	tail +14 Makefile | head -8 > ./RCS/rcs$(VERSION)
	-rm 1

clean :
	-rm $(RDSOBJ) $(RTLOBJ) $(RFMOBJ) $(RPROBJ) $(RUTOBJ)

realclean :
	-rm $(RDSOBJ) $(RTLOBJ) $(RFMOBJ) $(RPROBJ) $(RUTOBJ) ../lib/*

cpp :
	$(CC) -P $(HEADER) $(CFLAGS) rprparse.c

lint :
	lint -u $(HEADER) rfm.c
