all: frank_module.o frank_app
# simple.o

include ../../../rtl.mk

frank_app: frank_app.c
	$(CC) ${INCLUDE} -O2 -Wall frank_app.c -o frank_app

frank_module.o: frank_module.c
	$(CC) ${INCLUDE} ${CFLAGS} -c frank_module.c -o frank_module.o 

#test, remove any modules, load new ones and run app
test: 
	@echo "This tests runs two real time tasks that send"
	@echo "data down a fifo to a Linux application that"
	@echo "prints the data on the terminal"
	@echo "One task outputs the data \"Frank\" "
	@echo "The other task outputs the data \"Zappa\" "
	@echo "This test is due to Michael Barabanov: a fan of the late composer"
	@echo "First we remove any existing rtl-modules"
	@echo "You may see error warnings from \"make\" - ignore them"
	@echo "Type <return> to continue"
	@read junk
	-rmmod frank_module 
	(cd $(RTL_DIR); scripts/rmrtl)
	@echo "Now insert the fifo and the scheduler"
	@echo "Type <return> to continue"
	@read junk
	(cd $(RTL_DIR); scripts/insrtl)
	@echo "Now start the real-time tasks  module"
	@echo "Type <return> to continue"
	@read junk
	@insmod frank_module.o
	@echo "Now start the application"
	@echo "Type <return> to continue"
	@read junk
	@./frank_app

clean:
	rm -f frank_app *.o

include $(RTL_DIR)/Rules.make
