# makefile for logical edif view
# version : 406
# date    : 09/24/1993

include $(TOP)/etc/$(MACHINE).mk
include $(TOP)/etc/libraries.mk

EDIF_LIB     = libMel406.a
LOCAL_OBJ    = parser_yac.o parser_lex.o driver.o time.o
LOCAL_TRGLIB = ../lib

LOCAL_CFLAGS = $(CFLAGS) -g -I$(ALLIANCE_INCLUDE) \
	           -DMLO_H="<$(MLO_H)>" -DMUT_H="<$(MUT_H)>"

distrib : $(LOCAL_TRGLIB)/$(EDIF_LIB)
	$(TOUCH) distrib
	if [ -f $(LOCAL_TRGLIB)/INSTALLED ];     \
	then                            \
        	$(RM) $(LOCAL_TRGLIB)/INSTALLED;     \
	else                            \
        	exit 0;                     \
	fi;



mbkedif : $(LOCAL_TRGLIB)/$(EDIF_LIB)

$(LOCAL_TRGLIB)/$(EDIF_LIB) : $(LOCAL_OBJ)
	$(RM) -f $(LOCAL_TRGLIB)/$(EDIF_LIB)
	$(AR) $(ARFLAGS) $(LOCAL_TRGLIB)/$(EDIF_LIB) $(LOCAL_OBJ) 
	$(RANLIB) $(LOCAL_TRGLIB)/$(EDIF_LIB)

parser_yac.o : parser.yac
	$(YACC) $(YACCFLAGS) -d parser.yac
	echo "s/yy/edifl/g" > trans
	echo "s/YY/EDIFL/g" >> trans
	$(SED) -f trans y.tab.c > parser_yac.c
	$(RM) -f trans y.tab.c
	$(CC) $(LOCAL_CFLAGS) -c parser_yac.c

parser_lex.o : parser.lex y.tab.h
	$(LEX) parser.lex
	echo "s/yy/edifl/g" > trans
	echo "s/YY/EDIFL/g" >> trans
	$(SED) -f trans lex.yy.c > parser_lex.c
	$(SED) -f trans y.tab.h > x.tab.h
	$(RM) -f trans lex.yy.c
	mv x.tab.h y.tab.h
	$(CC) $(LOCAL_CFLAGS) -c parser_lex.c

driver.o : driver.c
	$(CC) $(LOCAL_CFLAGS) -c driver.c

time.o : time.c
	$(CC) $(LOCAL_CFLAGS) -c time.c

clean :
	$(RM) -f $(LOCAL_OBJ)
	$(RM) -f distrib
	$(RM) -f parser_yac.c parser_lex.c trans y.tab.c lex.yy.c y.tab.h
	$(RM) -f $(LOCAL_TRGLIB)/$(EDIF_LIB)
