CC=gcc
CFLAGS=-std=c99 -Werror -Wall -Wextra -pedantic -Wshadow -Wno-missing-field-initializers -Wstrict-overflow -ljansson
DEPFLAGS=-MMD -MF
OUTPUT=../bin/Release/GINPA
OBJ=../obj/Release
DEP=Dep

ifdef DEBUG
	CFLAGS+=-g
	LDFLAGS+=-g
	OUTPUT=../bin/Debug/GINPA
	OBJ=../obj/Debug
endif

.SILENT:

all: $(OBJ)/fileIO.o $(OBJ)/agglo.o $(OBJ)/route.o $(OBJ)/calcul.o $(OBJ)/others.o $(OBJ)/verification.o $(OBJ)/suppression.o $(OBJ)/GMapsAPI.o $(OBJ)/conversion.o $(OBJ)/destruction.o

$(OBJ)/%.o: %.c 
	$(CC) -c -o $@ $< $(CFLAGS) $(DEPFLAGS) $(DEP)/$(basename $<).d 

-include $(DEP)/*.d

.PHONY: debug clean mrproper doc doc-config clean-doc

debug:
	make DEBUG=1

doc:
	make doc -C ..

doc-config:
	make doc-config -C ..

clean-doc:
	make clean-doc -C ..
	
clean:
	make clean -C ..

mrproper:
	make mrproper -C ..