X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=Makefile;h=eef4a38dd6ae4abc3da13d8ae3ff142e8f3f97c8;hb=c6813ca85e93d07e044201c3a5cdfa8323c3b9f9;hp=c80ab9d537d5bee77f999c646997b2d733eb553f;hpb=97bdb597d4847308ce9d6982505b56a3a09e930b;p=cubemap diff --git a/Makefile b/Makefile index c80ab9d..eef4a38 100644 --- a/Makefile +++ b/Makefile @@ -1,20 +1,52 @@ CC=gcc CXX=g++ -CXXFLAGS=-Wall -O2 -g -LDLIBS=-lcurl +INSTALL=install +PROTOC=protoc +CXXFLAGS=-Wall -O2 -g -pthread +LDLIBS=-lprotobuf -pthread -lrt -OBJS=cubemap.o server.o mutexlock.o +OBJS=main.o client.o server.o stream.o udpstream.o serverpool.o mutexlock.o input.o input_stats.o httpinput.o udpinput.o parse.o config.o markpool.o acceptor.o stats.o accesslog.o thread.o util.o log.o metacube2.o state.pb.o all: cubemap -%.o: %.cpp +%.pb.cc %.pb.h : %.proto + $(PROTOC) --cpp_out=. $< + +%.o: %.cpp state.pb.h + $(CXX) -MMD -MP $(CPPFLAGS) $(CXXFLAGS) -o $@ -c $< +%.pb.o: %.pb.cc $(CXX) -MMD -MP $(CPPFLAGS) $(CXXFLAGS) -o $@ -c $< cubemap: $(OBJS) - $(CXX) -o cubemap $(OBJS) $(LDLIBS) + $(CXX) -o cubemap $(OBJS) $(LDLIBS) $(LDFLAGS) DEPS=$(OBJS:.o=.d) -include $(DEPS) clean: - $(RM) cubemap $(OBJS) $(DEPS) + $(RM) cubemap $(OBJS) $(DEPS) state.pb.h state.pb.cc + +PREFIX=/usr/local +SYSCONFDIR=/etc +LOCALSTATEDIR=/var +install: + $(INSTALL) -m 755 -o root -g root -d \ + $(DESTDIR)$(PREFIX)/bin \ + $(DESTDIR)$(PREFIX)/share/man/man1 \ + $(DESTDIR)$(SYSCONFDIR) \ + $(DESTDIR)$(LOCALSTATEDIR)/lib/cubemap \ + $(DESTDIR)$(LOCALSTATEDIR)/log/cubemap \ + $(DESTDIR)$(PREFIX)/share/munin/plugins + $(INSTALL) -m 755 -o root -g root cubemap $(DESTDIR)$(PREFIX)/bin/cubemap + $(INSTALL) -m 755 -o root -g root munin/cubemap munin/cubemap_input $(DESTDIR)$(PREFIX)/share/munin/plugins/ + sed \ + -e "s,cubemap\.stats,$(LOCALSTATEDIR)/lib/cubemap/\0,g" \ + -e "s,cubemap-input\.stats,$(LOCALSTATEDIR)/lib/cubemap/\0,g" \ + -e "s,access\.log,$(LOCALSTATEDIR)/log/cubemap/\0,g" \ + -e "s,cubemap\.log,$(LOCALSTATEDIR)/log/cubemap/\0,g" \ + -e 's,^stream,#\0,g' \ + -e 's,^udpstream,#\0,g' \ + cubemap.config.sample > $(DESTDIR)$(SYSCONFDIR)/cubemap.config + gzip -c cubemap.1 > $(DESTDIR)$(PREFIX)/share/man/man1/cubemap.1.gz +.PHONY: clean install +.SUFFIXES: