CC=gcc
CFLAGS= -ggdb `pkg-config --cflags opencv` `pkg-config --libs opencv` -Wall
NASM=nasm
NASMFLAGS=-f elf -ggdb
OBJASM= o/Prewitt.o o/Sobel.o o/Roberts.o o/Scharr.o o/Laplace.o o/Negative.o o/dilation.o o/erosion.o o/morphology.o o/Sumas.o o/Blur.o 
OBJC= o/main.o o/main_c.o

Asm= ./asm
H=./h
C= ./c
O= ./o


.PHONY	: all clean tiempos

all	: main main_c

tiempos: tiempos_asm tiempos_c

main : $(OBJASM) $(O)/main.o
	$(CC) $(CFLAGS) $(OBJASM) $(O)/main.o -o tp
	
main_c : $(O)/main_c.o $(H)/funciones.h
	$(CC) $(CFLAGS) $(O)/main_c.o $(H)/funciones.h -o main_c

tiempos_asm : $(OBJASM) $(O)/tiempos_asm.o
	$(CC) $(CFLAGS) $(OBJASM) $(O)/tiempos_asm.o -o tiempos_asm

tiempos_c : $(O)/tiempos_c.o $(H)/funciones.h
	$(CC) $(CFLAGS) $(O)/tiempos_c.o $(H)/funciones.h -o tiempos_c

$(O)/%.o : $(C)/%.c
	$(CC) $(CFLAGS) $^ -c -o $@ 	
	./sh/move-main.sh

$(O)/%.o : $(Asm)/%.asm 
	$(NASM) $(NASMFLAGS) $<
	./sh/move-asm.sh

clean :
	rm -f $(OBJASM) $(OBJMAIN) tp main_c
