SRC_PATH=./src
OUT_PATH=./bin
TEST_SRC=$(wildcard ${SRC_PATH}/*_spec.cpp)
TEST_BIN= $(TEST_SRC:${SRC_PATH}/%.cpp=${OUT_PATH}/%)
VPATH=${SRC_PATH}
SHIM_FILES=${SRC_PATH}/lib/*.cpp
PSC_FILE=../src/PubSubClient.cpp
CC=g++
CFLAGS=-I${SRC_PATH}/lib -I../src

all: $(TEST_BIN)

${OUT_PATH}/%: ${SRC_PATH}/%.cpp ${PSC_FILE} ${SHIM_FILES}
	mkdir -p ${OUT_PATH}
	${CC} ${CFLAGS} $^ -o $@

clean:
	@rm -rf ${OUT_PATH}

test:
	@bin/connect_spec
	@bin/publish_spec
	@bin/receive_spec
	@bin/subscribe_spec
	@bin/keepalive_spec