DEFS = INCS = -Iinclude -I3rdparty/snmp++/include CXXFLAGS += -W -Wall -Wextra $(INCS) $(DEFS) LIBS = -lpthread \ -lssl \ -lcurl \ -lboost_system \ -lboost_program_options \ 3rdparty/snmp++/libsnmp++.a PROG = gssmd # GTS SNMP Switch Management Daemon VERSION = 1.0.4 SOURCES = src/main.cpp \ src/pidfile.cpp \ src/settings.cpp \ src/settingsfileparser.cpp \ src/logger.cpp \ src/syncer.cpp \ src/subscriber.cpp \ src/switch.cpp \ src/acl.cpp \ src/snmptable.cpp \ src/dataparser.cpp .PHONY: all clean snmplib version tests all: $(PROG) tests: $(MAKE) $(MAKECMDGOALS) -C tests snmplib: $(MAKE) $(MAKECMDGOALS) -C 3rdparty include/version.h: version version: @sed 's/@VERSION@/$(VERSION)/g' include/version.h.in > include/version.h @sed -i 's/@GIT_SHA@/'`git rev-parse --short HEAD`'/g' include/version.h $(PROG): version $(subst .cpp,.o,$(SOURCES)) snmplib $(CXX) $(subst .cpp,.o,$(SOURCES)) $(LIBS) -o $@ clean: snmplib rm -f src/*.o src/*.d $(PROG) include/version.h ifneq ($(MAKECMDGOALS),distclean) ifneq ($(MAKECMDGOALS),clean) -include $(subst .cpp,.d,$(SOURCES)) endif endif %.d: %.cpp @$(CXX) -MM $(CXXFLAGS) $< > $@.$$$$; \ sed 's,\($*\).o[ :]*,src\/\1.o $@ : ,g' < $@.$$$$ > $@; \ rm -f $@.$$$$