#
#       Copyright (c) 1990,1991, OPEN SOFTWARE FOUNDATION, INC.
#       ALL RIGHTS RESERVED
#
#  $Header: /project/docsrc/src/sml/RCS/Makefile,v 1.11 91/12/31 12:18:43 bowe Exp Locker: bowe $

ROOT		= /project/docsrc

SHELL		= /bin/sh
TOP		= /tmp/DTE
BINDIR		= $(TOP)/bin/$(MACHINE)
LIBDIR		= $(TOP)/libdata
MANDIR		= $(TOP)/man
MAN1DIR		= $(MANDIR)/man1
MAN4DIR		= $(MANDIR)/man4

#  SNAPSRCDIR is the destination path for this source for snapshot
SNAPSHOT	=
SNAPSRCDIR	= $(SNAPSHOT)/tools/src/sml

SMLLIBDIR	= $(LIBDIR)/sml

HEADS		= sml_def.h sml_glob.h sml_proto.h sml_str.h
CFILES		= sml_check.c sml_trans.c sml_util.c
SHFILES		= sml_check.sh sml_tran.sh sml_tree.sh
YACCS		= sml_synt.y
MAN1FILES	= sml_check.1 sml_tran.1
MANFILES	= $(MAN1FILES)
COMMONOBJ	= sml_util.o sml_synt.o
OBJ		= sml_check.o sml_trans.o $(COMMONOBJ)
CPROGS		= sml_check.bin sml_trans.bin
SHPROGS		= sml_check sml_tran sml_tree
PROGS		= $(CPROGS) $(SHPROGS)
DATAFILES	= sml.desc mm.desc rsml.desc man.desc \
			motif_acc.desc motif_mm.desc
SOURCES		= Makefile README $(CFILES) $(YACCS) $(HEADS) $(SHFILES) \
			$(MANFILES) $(DATAFILES)

SHTESTFILES	= sml_test_f.sh rsml_test_f.sh sml_tr_dir.sh rsml_tr_dir.sh 
SHTESTPROGS	= sml_test_f rsml_test_f sml_tr_dir rsml_tr_dir

CC	= cc

all:	$(PROGS)

sml_tran:	sml_tran.sh	; rm -f $@ ; cp $@.sh $@; chmod +x $@
sml_check:	sml_check.sh	; rm -f $@ ; cp $@.sh $@; chmod +x $@
sml_tree:	sml_tree.sh	; rm -f $@ ; cp $@.sh $@; chmod +x $@

sml_check.bin:	sml_check.o $(COMMONOBJ)
	$(CC) -o $@ sml_check.o $(COMMONOBJ)

sml_trans.bin:	sml_trans.o $(COMMONOBJ)
	$(CC) -o $@ sml_trans.o $(COMMONOBJ)

sml_synt.o:	sml_synt.y $(HEADS)
	yacc sml_synt.y
	mv -f y.tab.c sml_synt.c
	$(CC) -c sml_synt.c

sml_util.o:	sml_util.c $(HEADS)
	$(CC) -c sml_util.c

sml_check.o:	sml_check.c $(HEADS)
	$(CC) -c sml_check.c

sml_trans.o:	sml_trans.c $(HEADS)
	$(CC) -g -c sml_trans.c

install: all
	-( if [ -d $(MANDIR) ]; then true; else mkdir $(MANDIR); fi )
	-( if [ -d $(MAN1DIR) ]; then true; else mkdir $(MAN1DIR); fi )
	@sh -c 'if [ -d $(SMLLIBDIR) ]; then true ; else mkdir $(SMLLIBDIR); fi'
	-(cd $(MAN1DIR) ; rm -f $(MAN1FILES) )
	cp $(MAN1FILES) $(MAN1DIR)
	-( cd $(BINDIR); rm -f $(PROGS) )
	cp $(PROGS) $(BINDIR)
	-( cd $(SMLLIBDIR); rm -f $(DATAFILES) )
	cp $(DATAFILES) $(SMLLIBDIR)

clean:
	-rm -f $(OBJ)
	-rm -f sml_synt.c

clobber:	clean
	-rm -f $(PROGS)

snapshot:
	-( cd $(SNAPSRCDIR) ;  rm -f $(SOURCES) )
	cp $(SOURCES) $(SNAPSRCDIR)

rev-list:
	@echo "# Files in `pwd`"
	@(p=`pwd` ; rcsstat -R -V $(SOURCES) | sed -e "s@^\.@$$p@" )
	@echo ""

# __________________________________________________________________

#  Below is for local (i.e. at OSF) testing programs.
#  Don't worry if you dont have these files.

tests: $(TESTPROGS)

sml_test_f:	sml_test_f.sh	; rm -f $@ ; cp $@.sh $@; chmod +x $@
rsml_test_f:	rsml_test_f.sh	; rm -f $@ ; cp $@.sh $@; chmod +x $@
sml_tr_dir:	sml_tr_dir.sh	; rm -f $@ ; cp $@.sh $@; chmod +x $@
rsml_tr_dir:	rsml_tr_dir.sh	; rm -f $@ ; cp $@.sh $@; chmod +x $@

