CC := g++ CFLAGS := -O3 LFLAGS := -L/opt/lib -lpthread -lcrypto -lcurl -lboost_regex -lboost_filesystem -lboost_system -ljpeg ifeq ($(BUILD),debug) # Debug flags CFLAGS += -O0 -g endif ifeq ($(BUILD),release) # Optimization flags valid for Intel Atom (DS1813+) CFLAGS += -march=prescott -mtune=pentium -mfpmath=sse -O3 -s -DNDEBUG endif %.o: %.cpp $(CC) -c $(CFLAGS) $< -o $@ AlarmServer: main.cpp server.o connection.o protocol.o message.o mimeImage.o outputImage.o inputImage.o util.o httpClient.o base64.o g++ -o AlarmServer main.cpp server.o connection.o protocol.o message.o mimeImage.o outputImage.o inputImage.o util.o httpClient.o base64.o $(LFLAGS) $(LDFLAGS) $(CFLAGS) server.o: server.cpp server.h connection.h protocol.h util.h httpClient.h connection.o: connection.cpp connection.h protocol.h util.h httpClient.h protocol.o: protocol.cpp protocol.h util.h httpClient.h message.o: message.cpp message.h mimeImage.h outputImage.h inputImage.h util.h httpClient.h base64.h mimeImage.o: mimeImage.cpp mimeImage.h outputImage.h inputImage.h base64.h outputImage.o: outputImage.cpp outputImage.h inputImage.h inputImage.o: inputImage.cpp inputImage.h util.o: util.cpp util.h httpClient.h httpClient.o: httpClient.cpp httpClient.h base64.o: base64.cpp base64.h all: AlarmServer debug: make "BUILD=debug" release: make "BUILD=release" clean: -rm *.o AlarmServer