all: reset rx_perf tx_perf rx_read rx_read_val rx_readv_val tx_write tx_write_val tx_writev_val rx_readv tx_writev rx_mmap tx_mmap mmap_alloc rx_aio tx_aio rx_aio8 tx_aio8 dma_status rx_aio8_val tx_aio8_val hdmi hdmi_jpg hdmi_tjpg hdmi_vps hdmi_vp

CC?=gcc
CFLAGS=-g -mcpu=cortex-a9 -marm  -march=armv7-a -std=c99 -static -lm

reset: reset.o
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

rx_perf: rx_perf.o
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

tx_perf: tx_perf.o
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

rx_read: rx_read.o
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

rx_read_val: rx_read_val.o
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

rx_readv_val: rx_readv_val.o
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

tx_write: tx_write.o
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

tx_write_val: tx_write_val.o
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

tx_writev_val: tx_writev_val.o
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

rx_readv: rx_readv.o
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

tx_writev: tx_writev.o
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

rx_mmap: rx_mmap.o
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

tx_mmap: tx_mmap.o
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

mmap_alloc: mmap_alloc.o
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
	
rx_aio: rx_aio.o libaio.a
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

tx_aio: tx_aio.o libaio.a
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS) 
	
rx_aio8: rx_aio8.o libaio.a
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

tx_aio8: tx_aio8.o libaio.a
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS) 

dma_status: dma_status.o
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS) 

rx_aio8_val: rx_aio8_val.o libaio.a
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

tx_aio8_val: tx_aio8_val.o libaio.a
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS) 
	
hdmi: hdmi.o libaio.a
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS) 
	
hdmi_jpg: hdmi_jpg.o libaio.a
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS) 

hdmi_tjpg: hdmi_tjpg.o libaio.a
	$(CC) -o $@ $^ $(CFLAGS) -O3 $(LIBS) -pthread

hdmi_vps: hdmi_vps.o libaio.a
	$(CC) -o $@ $^ -O3 $(CFLAGS) $(LIBS) 

hdmi_vp: hdmi_vp.o libaio.a
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS) -pthread

clean:
	rm -rf *.o reset rx_perf tx_perf rx_read rx_read_val tx_write tx_write_val rx_readv tx_writev rx_mmap tx_mmap rx_aio tx_aio rx_aio8 tx_aio8 dma_status rx_aio8_val tx_aio8_val hdmi hdmi_jpg hdmi_tjpg hdmi_vps hdmi_vp
	
copy:
	cp rx_perf tx_perf rx_read rx_read_val rx_readv_val tx_write tx_write_val tx_writev_val rx_readv tx_writev rx_mmap tx_mmap mmap_alloc rx_aio tx_aio rx_aio8 tx_aio8 dma_status rx_aio8_val tx_aio8_val hdmi hdmi_jpg hdmi_tjpg hdmi_vps hdmi_vp /media/KINGSTON/mars

