X-Git-Url: https://git.sesse.net/?p=cubemap;a=blobdiff_plain;f=Makefile;h=40ae397705fdc9f932368669fe754a71f33e6278;hp=8d26f4984c06bed137ea7743bbb1a336f2f1da8d;hb=f2530dbb8415f9e7cc0f2d4b45741120c95e8a05;hpb=c555641af6f4021d744a50abd5084a174614dd54 diff --git a/Makefile b/Makefile index 8d26f49..40ae397 100644 --- a/Makefile +++ b/Makefile @@ -1,20 +1,57 @@ 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 +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 sa_compare.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 \ + $(DESTDIR)$(PREFIX)/lib/systemd/system + $(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 + sed \ + -e "s,@prefix@,$(PREFIX),g" \ + -e "s,@sysconfdir@,$(SYSCONFDIR),g" \ + cubemap.service.in > $(DESTDIR)$(PREFIX)/lib/systemd/system/cubemap.service +.PHONY: clean install +.SUFFIXES: