#SHELL = /bin/sh

LIBS = ../../../lib/libi8k.a
LIBS_i8094 = ../../../lib/libi8094.a
CFLAGS = -O2 -Wall -I. -I../../../include
LDFLAGS = -lm

CROSS_COMPILE 	= arm-linux-gnueabihf-

AS		= $(CROSS_COMPILE)as
LD		= $(CROSS_COMPILE)ld
CC		= $(CROSS_COMPILE)gcc
CPP		= $(CC) -E
AR		= $(CROSS_COMPILE)ar
NM		= $(CROSS_COMPILE)nm
STRIP		= $(CROSS_COMPILE)strip
OBJCOPY		= $(CROSS_COMPILE)objcopy
OBJDUMP		= $(CROSS_COMPILE)objdump

all:   auto_home  conti_interp  FRnet  int_factor line_move line2_move line3_move mpg
all:   motion_io  scan_card  set_range  soft_limit  synch_action

auto_home: ./auto_home/auto_home.o
	$(CC) $(CFLAGS) -o ./auto_home/$@ ./auto_home/auto_home.o $(LIBS) $(LIBS_i8094) $(LDFLAGS) 
	rm -f ./auto_home/auto_home.o
 
conti_interp: ./conti_interp/conti_interp.o
	$(CC) $(CFLAGS) -o ./conti_interp/$@ ./conti_interp/conti_interp.o $(LIBS) $(LIBS_i8094) $(LDFLAGS) 
	rm -f ./conti_interp/conti_interp.o
  
FRnet: ./FRnet/FRnet.o
	$(CC) $(CFLAGS) -o ./FRnet/$@ ./FRnet/FRnet.o $(LIBS) $(LIBS_i8094) $(LDFLAGS) 
	rm -f ./FRnet/FRnet.o
  
int_factor: ./int_factor/int_factor.o
	$(CC) $(CFLAGS) -o ./int_factor/$@ ./int_factor/int_factor.o $(LIBS) $(LIBS_i8094) $(LDFLAGS) 
	rm -f ./int_factor/int_factor.o   

line_move: ./line_move/line_move.o
	$(CC) $(CFLAGS) -o ./line_move/$@ ./line_move/line_move.o $(LIBS) $(LIBS_i8094) $(LDFLAGS) 
	rm -f ./line_move/line_move.o 
	
line2_move: ./line2_move/line2_move.o
	$(CC) $(CFLAGS) -o ./line2_move/$@ ./line2_move/line2_move.o $(LIBS) $(LIBS_i8094) $(LDFLAGS) 
	rm -f ./line2_move/line2_move.o   
  
line3_move: ./line3_move/line3_move.o
	$(CC) $(CFLAGS) -o ./line3_move/$@ ./line3_move/line3_move.o $(LIBS) $(LIBS_i8094) $(LDFLAGS) 
	rm -f ./line3_move/line3_move.o   

mpg: ./Manual_Pulse_Generator/mpg.o
	$(CC) $(CFLAGS) -o ./Manual_Pulse_Generator/$@ ./Manual_Pulse_Generator/mpg.o $(LIBS) $(LIBS_i8094) $(LDFLAGS) 
	rm -f ./Manual_Pulse_Generator/mpg.o   
  	
motion_io: ./motion_io/motion_io.o
	$(CC) $(CFLAGS) -o ./motion_io/$@ ./motion_io/motion_io.o $(LIBS) $(LIBS_i8094) $(LDFLAGS) 
	rm -f ./motion_io/motion_io.o   

scan_card: ./scan_card/scan_card.o
	$(CC) $(CFLAGS) -o ./scan_card/$@ ./scan_card/scan_card.o $(LIBS) $(LIBS_i8094) $(LDFLAGS) 
	rm -f ./scan_card/scan_card.o   
	
set_range: ./set_range/set_range.o
	$(CC) $(CFLAGS) -o ./set_range/$@ ./set_range/set_range.o $(LIBS) $(LIBS_i8094) $(LDFLAGS) 
	rm -f ./set_range/set_range.o   	
	
soft_limit: ./soft_limit/soft_limit.o
	$(CC) $(CFLAGS) -o ./soft_limit/$@ ./soft_limit/soft_limit.o $(LIBS) $(LIBS_i8094) $(LDFLAGS) 
	rm -f ./soft_limit/soft_limit.o   	

synch_action: ./synch_action/synch_action.o
	$(CC) $(CFLAGS) -o ./synch_action/$@ ./synch_action/synch_action.o $(LIBS) $(LIBS_i8094) $(LDFLAGS) 
	rm -f ./synch_action/synch_action.o   	

   
       
clean:
	rm -f ./*/*.o ./*/auto_home  ./*/conti_interp  ./*/FRnet  ./*/auto_home  ./*/line_move  ./*/line2_move  ./*/line3_move ./*/mpg  ./*/motion_io  ./*/scan_card  ./*/set_range  ./*/soft_limit  ./*/synch_action  
  
