#
# Makefile for the 8051 simulator.
#
# Note! Dependencies are done automagically by 'make dep', which also
# removes any old dependencies. DON'T put your own dependencies here
# unless it's something special (ie not a .c file).
#

SUBDIRS = tab src sim

#use -DSIM8052 to simulate 8052 microcontroller
SIM8051FLAGS = '-DSIM8052 -g'

#
# include a objects description file if one exists 
#
ifeq (.objs,$(wildcard .objs))
include .objs
endif

all: compiling sim8051

compiling: 
	@for i in $(SUBDIRS); do $(MAKE) -C $$i SIM8051FLAGS=$(SIM8051FLAGS); done

sim8051: $(OBJS)
	$(CC) -o sim8051 $(OBJS) -lfl
	@/bin/echo "sim8051 done"

clean: 
	/bin/rm -f sim8051
	@for i in $(SUBDIRS); do $(MAKE) -C $$i clean; done

dep:
	@/bin/echo "Generating dependeces"
	@/bin/echo -n "OBJS= " > .objs
	@for i in $(SUBDIRS); do find $$i -name "*.o" -exec echo -n {}" " \;>> .objs ; done
	@/bin/echo " " >> .objs
	@for i in $(SUBDIRS); do \
	  test ! -d $$i || $(MAKE)  -C $$i dep; done

