# makefile for BSG.
# date : 02/03/1995

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

distrib : ../bin/bsg ../include/gbs201.h ../lib/libGbs201.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)\
                   -DMUT_H='<'$(MUT_H)'>'\
                   -DICU_H='<'$(ICU_H)'>'\
                   -DICN_H='<'$(ICN_H)'>'\
                   -DIAC_H='<'$(IAC_H)'>'
ALC_LIB          = -L$(ALLIANCE_LIB)\
                   $(MGN_L)\
                   $(MLU_L)\
                   $(MPU_L)\
                   $(MCP_L)\
                   $(MAP_L)\
                   $(MMG_L)\
                   $(MCL_L)\
                   $(MAL_L)\
                   $(MVL_L)\
                   $(MEL_L)\
                   $(MSL_L)\
                   $(MHL_L)\
                   $(MLO_L)\
                   $(MPH_L)\
                   $(ICU_L)\
                   $(ICC_L)\
                   $(ICA_L)\
                   $(ICN_L)\
                   $(MUT_L)\
                   -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 gbs201.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/gbs201.h : gbs201.h
	$(CP) gbs201.h ../include/gbs201.h;
	@ echo ""

##### Barrel shifter generator library make.

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

