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

TARGET = udp_qtwidget_client

OBJFILES = main.o bus.o mutex.o iowarrior_i2c.o base.o thread.o socket.o abstractdatagram.o multiplexer.o stepper.o

INCPATHS = -I../../../src/
LIBPATHS = 
LIBS = -lrt -lpthread
CXXFLAGS = $(CXXFLAGS_ALL)
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 

bus.o: ../../../src/iic/Bus.cpp ../../../src/iic/Bus.h
	$(CXX) $(CXXFLAGS) $(INCPATHS) -c ../../../src/iic/Bus.cpp -o bus.o

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

iowarrior_i2c.o: ../../../src/tools/iowarrior_i2c.c ../../../src/tools/iowarrior_i2c.h
	$(CXX) $(CXXFLAGS) $(INCPATHS) -c ../../../src/tools/iowarrior_i2c.c -o iowarrior_i2c.o

base.o: ../../../src/iic/Base.cpp ../../../src/iic/Base.h
	$(CXX) $(CXXFLAGS) $(INCPATHS) -c ../../../src/iic/Base.cpp -o base.o

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

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

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

multiplexer.o: ../../../src/iic/Multiplexer.cpp ../../../src/iic/Multiplexer.h
	$(CXX) $(CXXFLAGS) $(INCPATHS) -c ../../../src/iic/Multiplexer.cpp -o multiplexer.o

stepper.o: ../../../src/iic/Stepper.cpp ../../../src/iic/Stepper.h
	$(CXX) $(CXXFLAGS) $(INCPATHS) -c ../../../src/iic/Stepper.cpp -o stepper.o
     
clean:
	$(RM) $(TARGET) $(OBJFILES)


