 
CC = gcc

# Eredeti CFLAGS
CFLAGS = -Wall -Wextra -g

#GRPOF profilizáshoz 
#CFLAGS = -pg -no-pie -fno-builtin

CUNITHOME = /home/jasy/CUnitHome

# Könyvtárak
SRC_DIR = src
BIN_DIR = bin

# Forrásfájlok
SRC = main.c image.c pgm.c ppm.c
OBJ = $(SRC:.c=.o)
TST_DIR = test

# Statikus könyvtár neve
STATIC_LIB = libimage.a

# Végrehajtható állomány
EXE = prog


all: $(BIN_DIR)/$(EXE)

$(BIN_DIR)/%.o: $(SRC_DIR)/%.c
	$(CC) $(CFLAGS) -c $< -o $@

$(BIN_DIR)/$(STATIC_LIB): $(BIN_DIR)/image.o $(BIN_DIR)/pgm.o $(BIN_DIR)/ppm.o
	ar rcs $@ $^

$(BIN_DIR)/$(EXE): $(BIN_DIR)/main.o $(BIN_DIR)/$(STATIC_LIB)
	$(CC) $(CFLAGS) $^ -o $@ 

$(BIN_DIR)/test_%: $(TST_DIR)/test_%.c $(BIN_DIR)/$(STATIC_LIB)
	$(CC) -L$(BIN_DIR) -L$(CUNITHOME)/lib -I$(CUNITHOME)/include/ $< -o $@ -static -lcunit $(BIN_DIR)/$(STATIC_LIB)

.SECONDARY:

test_%: $(BIN_DIR)/test_% $(TST_DIR)/test_%.c 
	

clean:
	rm -f  $(BIN_DIR)/* *.xml 

.PHONY: all clean 

