github.com/nsqio/nsq@v1.3.0/Makefile (about) 1 PREFIX=/usr/local 2 BINDIR=${PREFIX}/bin 3 DESTDIR= 4 BLDDIR = build 5 BLDFLAGS= 6 EXT= 7 ifeq (${GOOS},windows) 8 EXT=.exe 9 endif 10 11 APPS = nsqd nsqlookupd nsqadmin nsq_to_nsq nsq_to_file nsq_to_http nsq_tail nsq_stat to_nsq 12 all: $(APPS) 13 14 $(BLDDIR)/nsqd: $(wildcard apps/nsqd/*.go nsqd/*.go nsq/*.go internal/*/*.go) 15 $(BLDDIR)/nsqlookupd: $(wildcard apps/nsqlookupd/*.go nsqlookupd/*.go nsq/*.go internal/*/*.go) 16 $(BLDDIR)/nsqadmin: $(wildcard apps/nsqadmin/*.go nsqadmin/*.go nsqadmin/templates/*.go internal/*/*.go) 17 $(BLDDIR)/nsq_to_nsq: $(wildcard apps/nsq_to_nsq/*.go nsq/*.go internal/*/*.go) 18 $(BLDDIR)/nsq_to_file: $(wildcard apps/nsq_to_file/*.go nsq/*.go internal/*/*.go) 19 $(BLDDIR)/nsq_to_http: $(wildcard apps/nsq_to_http/*.go nsq/*.go internal/*/*.go) 20 $(BLDDIR)/nsq_tail: $(wildcard apps/nsq_tail/*.go nsq/*.go internal/*/*.go) 21 $(BLDDIR)/nsq_stat: $(wildcard apps/nsq_stat/*.go internal/*/*.go) 22 $(BLDDIR)/to_nsq: $(wildcard apps/to_nsq/*.go internal/*/*.go) 23 24 $(BLDDIR)/%: 25 @mkdir -p $(dir $@) 26 go build ${BLDFLAGS} -o $@ ./apps/$* 27 28 $(APPS): %: $(BLDDIR)/% 29 30 clean: 31 rm -fr $(BLDDIR) 32 33 .PHONY: install clean all 34 .PHONY: $(APPS) 35 36 install: $(APPS) 37 install -m 755 -d ${DESTDIR}${BINDIR} 38 for APP in $^ ; do install -m 755 ${BLDDIR}/$$APP ${DESTDIR}${BINDIR}/$$APP${EXT} ; done