
include ../../../src/Makefile.config

TARGET = queue

OBJFILES = main.o thread.o mutex.o waitcondition.o

INCPATHS = -I../../../src/
LIBPATHS = -L../../../lib/
LIBS = -lpthread
CXXFLAGS = $(CXXFLAGS_ALL) -g
LDFLAGS = $(LDFLAGS_ALL)

all: $(TARGET)

$(TARGET): $(OBJFILES)
	$(CXX) $(CXXFLAGS) $(INCPATHS) $(OBJFILES) $(LIBPATHS) $(LIBS) $(LDFLAGS) -o $(TARGET)

main.o: main.cpp
	$(CXX) $(CXXFLAGS) $(INCPATHS) -c main.cpp -o main.o

thread.o: ../../../src/tools/Thread.cpp ../../../src/tools/Thread.h
	$(CXX) $(CXXFLAGS) $(INCPATHS) -c ../../../src/tools/Thread.cpp -o thread.o

mutex.o: ../../../src/tools/Mutex.cpp ../../../src/tools/Mutex.h
	$(CXX) $(CXXFLAGS) $(INCPATHS) -c ../../../src/tools/Mutex.cpp -o mutex.o

waitcondition.o: ../../../src/tools/WaitCondition.cpp ../../../src/tools/WaitCondition.h
	$(CXX) $(CXXFLAGS) $(INCPATHS) -c ../../../src/tools/WaitCondition.cpp -o waitcondition.o

clean:
	$(RM) $(TARGET) $(OBJFILES)


