2
2
mirror of https://github.com/octoleo/restic.git synced 2024-11-27 15:26:37 +00:00
restic/Makefile

72 lines
1.5 KiB
Makefile
Raw Normal View History

2015-05-10 20:43:42 +00:00
.PHONY: all clean env test bench gox test-integration
2014-08-05 21:13:19 +00:00
2015-05-10 20:43:42 +00:00
TMPGOPATH=$(PWD)/.gopath
VENDORPATH=$(PWD)/Godeps/_workspace
BASE=github.com/restic/restic
BASEPATH=$(TMPGOPATH)/src/$(BASE)
2015-05-10 20:43:42 +00:00
GOPATH=$(TMPGOPATH):$(VENDORPATH)
2015-05-10 20:43:42 +00:00
GOTESTFLAGS ?= -v
GOX_OS ?= linux darwin openbsd freebsd
SFTP_PATH ?= /usr/lib/ssh/sftp-server
2015-05-11 19:09:32 +00:00
CMDS=$(patsubst cmd/%,%,$(wildcard cmd/*))
CMDS_DEBUG=$(patsubst %,%.debug,$(CMDS))
SOURCE=$(wildcard *.go) $(wildcard */*.go) $(wildcard */*/*.go)
2015-05-10 20:43:42 +00:00
export GOPATH GOX_OS
all: restic
.gopath:
mkdir -p .gopath/src/github.com/restic
2015-05-14 09:10:01 +00:00
ln -snf ../../../.. .gopath/src/github.com/restic/restic
2015-05-10 20:43:42 +00:00
%: cmd/% .gopath $(SOURCE)
2015-05-10 20:43:42 +00:00
cd $(BASEPATH) && \
2015-05-11 19:09:32 +00:00
go build -a -ldflags "-s" -o $@ ./$<
2015-05-10 20:43:42 +00:00
%.debug: cmd/% .gopath $(SOURCE)
2015-05-10 20:43:42 +00:00
cd $(BASEPATH) && \
2015-05-11 19:09:32 +00:00
go build -a -tags debug -ldflags "-s" -o $@ ./$<
2014-08-05 21:13:19 +00:00
clean:
2015-05-11 19:09:32 +00:00
rm -rf .gopath $(CMDS) $(CMDS_DEBUG) *.cov restic_*
2015-01-14 20:36:33 +00:00
go clean ./...
2015-05-10 20:43:42 +00:00
test: .gopath
cd $(BASEPATH) && \
go test $(GOTESTFLAGS) ./...
bench: .gopath
cd $(BASEPATH) && \
2015-05-11 16:26:56 +00:00
go test $(GOTESTFLAGS) -bench ./...
2015-05-10 20:43:42 +00:00
gox: .gopath $(SOURCE)
2015-05-10 20:43:42 +00:00
cd $(BASEPATH) && \
gox -verbose -os "$(GOX_OS)" ./cmd/restic
2015-05-11 19:09:32 +00:00
test-integration: .gopath restic restic.debug dirdiff
# run testsuite
PATH=.:$(PATH) ./testsuite.sh
# run sftp integration tests
2015-05-10 20:43:42 +00:00
cd $(BASEPATH)/backend && \
go test $(GOTESTFLAGS) -test.sftppath $(SFTP_PATH) ./...
all.cov: .gopath $(SOURCE)
2015-05-10 20:43:42 +00:00
cd $(BASEPATH) && \
./coverage_all.sh all.cov
2015-05-10 20:43:42 +00:00
env:
@echo export GOPATH=\"$(GOPATH)\"
goenv:
go env
list: .gopath
cd $(BASEPATH) && \
go list ./...