all: libuss libirs_ts liblcd libadj test_function both pwm encoder encoder2 test_duty mode_wait mode_special mode_search mode_approach mode_lost mode_nomal_win mode_emergency_win mode_avoid mode_test mode_hosei main

include rtl.mk

#INCLUDE = -I/usr/src/rtlinux/include
#CFLAGS = -O2 -Wall -g -I/lib/modules/`uname -r`/build/include

libuss: libuss.c gloval_variables.h
	$(CC) ${INCLUDE} -O2 -Wall -c libuss.c

libirs_ts: libirs_ts.c gloval_variables.h irs_ts.h
	$(CC) -O2 -Wall -c libirs_ts.c

liblcd: liblcd.c gloval_variables.h
	$(CC) -O2 -Wall -c liblcd.c

libadj: libadj.c function.h
	$(CC) -O2 -Wall -c libadj.c

test_function: test_function.c libuss.o libirs_ts.o liblcd.o gloval_variables.h define.h function.h
	$(CC) -O2 -Wall libuss.o libirs_ts.o liblcd.o test_function.c -o test_function


both: both.c pwm_enc.h
	$(CC) -O2 -Wall -c both.c

pwm: pwm.c pwm_enc.h
	$(CC) -O2 -Wall -c pwm.c

encoder: encoder.c pwm_enc.h
	$(CC) -O2 -Wall -c encoder.c

encoder2: encoder2.c pwm_enc.h
	$(CC) -O2 -Wall -c encoder2.c

test_duty: test_duty.c both.o encoder2.o pwm.o pwm_enc.h
	$(CC) ${INCLUDE} -O2 -Wall both.o pwm.o encoder2.o test_duty.c -o test_duty

mode_wait: mode_wait.c function.h define.h gloval_variables.h
	$(CC) -O2 -Wall -c mode_wait.c

mode_special: mode_special.c function.h define.h gloval_variables.h
	$(CC) -O2 -Wall -c mode_special.c

mode_search: mode_search.c function.h define.h gloval_variables.h
	$(CC) -O2 -Wall -c mode_search.c

mode_approach: mode_approach.c function.h define.h gloval_variables.h
	$(CC) -O2 -Wall -c mode_approach.c

mode_lost: mode_lost.c function.h define.h gloval_variables.h
	$(CC) -O2 -Wall -c mode_lost.c

mode_nomal_win: mode_nomal_win.c function.h define.h gloval_variables.h
	$(CC) -O2 -Wall -c mode_nomal_win.c

mode_emergency_win: mode_emergency_win.c function.h define.h gloval_variables.h
	$(CC) -O2 -Wall -c mode_emergency_win.c

mode_avoid: mode_avoid.c function.h define.h gloval_variables.h
	$(CC) -O2 -Wall -c mode_avoid.c

mode_test: mode_test.c function.h define.h gloval_variables.h
	$(CC) -O2 -Wall -c mode_test.c

mode_hosei: mode_hosei.c function.h define.h gloval_variables.h
	$(CC) -O2 -Wall -c mode_hosei.c


main: main.c both.o encoder2.o pwm.o libirs_ts.o libuss.o libadj.o mode_wait.o mode_special.o mode_approach.o mode_search.o mode_lost.o mode_nomal_win.o mode_emergency_win.o mode_avoid.o mode_test.o mode_hosei.o pwm_enc.h gloval_variables.h define.h function.h
	$(CC) ${INCLUDE} -O2 -Wall both.o pwm.o encoder2.o libirs_ts.o libuss.o libadj.o mode_wait.o mode_special.o mode_approach.o mode_search.o mode_lost.o mode_nomal_win.o mode_emergency_win.o mode_avoid.o mode_test.o mode_hosei.o main.c -o main



clean:
	rm -f *.o test_function test_duty main
