CC=g++
LD=g++

PROJECT_DIR=./
WORK_DIR=./
SRC_DIR=$(PROJECT_DIR)
SRCS=$(shell cd $(SRC_DIR); ls *.cpp)
BUILD_DIR=$(WORK_DIR)_debug
TARGET = sentinel
OBJS = $(SRCS:.cpp=.o)

INCLUDE=-I/usr/local/include
CFLAGS=-c -g -lefence -D_GCC -DLINUX -D_DEBUG -D_XOPEN_SOURCE -MMD -MP -Wall $(INCLUDE)

LDFLAGS = -L$(SSG_DIR)/debug 
LIBS = -lpthread -lrt -lhiredis -levent -levent_pthreads -lcrypt -lcurl

all : $(BUILD_DIR) $(patsubst %,$(BUILD_DIR)/%,$(TARGET))

$(BUILD_DIR):
	mkdir $(BUILD_DIR)

$(BUILD_DIR)/%.o : $(SRC_DIR)/%.cpp
	$(CC) $(CFLAGS) -o $@ $<

$(BUILD_DIR)/$(TARGET) : $(patsubst %,$(BUILD_DIR)/%,$(OBJS))
	$(CC) $(LDFLAGS) -o $@ $^ $(LIBS)

clean:
	rm -fr $(BUILD_DIR)

.PHONY: all clean

