# -------------------------------------------------------------------
# file: makefile
# author: Jean-Michel Richer (jean-michel.richer@univ-angers.fr)
# date: august 2015
# -------------------------------------------------------------------

OBJECT_DIR=$(PROJECT_ROOT_DIR)/obj/$(VERSION)/$(DISTRIB)/$(MODULE)
INCLUDE_DIR=$(PROJECT_ROOT_DIR)/include/$(VERSION)
LIBRARY_DIR=$(PROJECT_ROOT_DIR)/lib/$(VERSION)/$(DISTRIB)
BINARY_DIR=$(PROJECT_ROOT_DIR)/bin/$(VERSION)/$(DISTRIB)

SRCS=$(shell ls *.cpp)
EXES=$(addprefix $(BINARY_DIR)/,$(subst .cpp,.exe,$(SRCS)))
LIBS=$(LIBRARY_DIR)/lib1.a

TARGET=$(EXES)

all: create_directory $(TARGET)

create_directory:
	@mkdir -p $(BINARY_DIR)
	
info:
	@echo "-------------------------------------------------" ; \
	echo "generate "$(TARGET) ; \
	echo "from "$(OBJS) ; \
	echo "-------------------------------------------------" ;

$(BINARY_DIR)/%.exe: %.cpp $(LIBS)
	@$(eval NS := $(shell echo $(PROJECT_ROOT_DIR)/bin/ | tr -c -d '/' | wc -m)) 
	@$(eval FILE := $(shell echo $@ | cut -d'/' -f$(NS)-20))
	@echo "-- compile $< --> $FILE"
	@g++ -o $@ $< -I$(INCLUDE_DIR) $(CFLAGS) $(OFLAGS) -o $@ $(LIBS) 

clean:
	@rm -rf $(TARGET) 



