## El Makefile mas generico que vas a ver en tu vida

# nombre del ejecutable de salida
EXEC = ejemplo
# librerias a linkear
LIBS = -lm

# todo lo de aca abajo no importa
CC = gcc
CFLAGS = -Wall -g
BINFOLDER = bin

SRC_PATH = ./src
SRC := $(wildcard $(SRC_PATH)/*.c)
OBJ := $(subst $(SRC_PATH),$(BINFOLDER),$(SRC:.c=.o))

all: $(BINFOLDER) $(EXEC)

$(BINFOLDER)/%.o: $(SRC_PATH)/%.c
	@echo ""
	@echo " == Compilando $< == "
	$(CC) -c -o $@ $< $(CFLAGS)

$(EXEC): $(OBJ)
	@echo ""
	@echo " === Linkeando $(EXEC) === "
	$(CC) -o $@ $(wildcard $(BINFOLDER)/*.o) $(CFLAGS) $(LIBS)

clean:
	@rm -rf $(BINFOLDER)/
	@rm -f $(EXEC)

$(BINFOLDER):
	@mkdir -p $(BINFOLDER)/
