# makefile for BSG.
# date : 29/09/1993

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

distrib : ../bin/bsg ../include/gbs200.h ../lib/libGbs200.a
	$(TOUCH) distrib
	@if [ -f ../bin/INSTALLED ]; then $(RM) ../bin/INSTALLED; else exit 0; fi
	@if [ -f ../lib/INSTALLED ]; then $(RM) ../lib/INSTALLED; else exit 0; fi
	@if [ -f ../include/INSTALLED ]; then $(RM) ../include/INSTALLED; else exit 0; fi

clean :
	-@$(RM) distrib bsg_*.o ../bin/bsg ../bin/bsg.old ../include/gbs*.h ../lib/libGbs*.a > /dev/null 2>&1

##### Barrel shifter generator compilation.

ALC_INC          = -I$(ALLIANCE_INCLUDE)\
                   -DICU_H='<icu201.h>'\
                   -DICN_H='<icn201.h>'\
                   -DIAC_H='<iac201.h>'
ALC_LIB          = -L$(ALLIANCE_LIB)\
                   -lMgn319\
                   -lMlu411\
                   -lMpu402\
                   -lMcp401\
                   -lMap402\
                   -lMmg401\
                   -lMcl408\
                   -lMal404\
                   -lMvl406\
                   -lMel406\
                   -lMsl608\
                   -lMhl402\
                   -lMlo404\
                   -lMph402\
                   -lIcu201\
                   -lIcc201\
                   -lIca201\
                   -lIcn201\
                   -lMut315\
                   -lm

../bin/bsg : bsg_main.o bsg_disp.o
	$(CC) $(CFLAGS) bsg_main.o bsg_disp.o $(ALC_LIB) -o ../bin/bsg;
	$(STRIP) ../bin/bsg;
	@ echo ""

bsg_main.o : bsg_main.c bsg_head.h gbs200.h
	$(CC) $(CFLAGS) -I$(ALLIANCE_INCLUDE) -DALC_VER=$(ALLIANCE_VERSION) bsg_main.c -c;
	@ echo ""

bsg_disp.o : bsg_disp.c bsg_head.h bsg_layo.c bsg_icon.c bsg_vhdl.c bsg_patt.c bsg_netl.c bsg_data.c
	$(CC) $(CFLAGS) $(ALC_INC) bsg_disp.c -c;
	@ echo ""

##### Include file copy.

../include/gbs200.h : gbs200.h
	$(CP) gbs200.h ../include/gbs200.h;
	@ echo ""

##### Barrel shifter generator library make.

../lib/libGbs200.a : bsg_disp.o
	$(AR) $(ARFLAGS) ../lib/libGbs200.a bsg_disp.o;
	$(RANLIB) ../lib/libGbs200.a;
	@ echo ""

