github.com/ilyakaznacheev/glide@v0.13.2/Makefile (about) 1 GLIDE_GO_EXECUTABLE ?= go 2 DIST_DIRS := find * -type d -exec 3 VERSION ?= $(shell git describe --tags) 4 VERSION_INCODE = $(shell perl -ne '/^var version.*"([^"]+)".*$$/ && print "v$$1\n"' glide.go) 5 VERSION_INCHANGELOG = $(shell perl -ne '/^\# Release (\d+(\.\d+)+) / && print "$$1\n"' CHANGELOG.md | head -n1) 6 7 build: 8 ${GLIDE_GO_EXECUTABLE} build -o glide -ldflags "-X main.version=${VERSION}" glide.go 9 10 install: build 11 install -d ${DESTDIR}/usr/local/bin/ 12 install -m 755 ./glide ${DESTDIR}/usr/local/bin/glide 13 14 test: 15 ${GLIDE_GO_EXECUTABLE} test . ./gb ./path ./action ./tree ./util ./godep ./godep/strip ./gpm ./cfg ./dependency ./importer ./msg ./repo ./mirrors 16 17 integration-test: 18 ${GLIDE_GO_EXECUTABLE} build 19 ./glide up 20 ./glide install 21 22 clean: 23 rm -f ./glide.test 24 rm -f ./glide 25 rm -rf ./dist 26 27 bootstrap-dist: 28 ${GLIDE_GO_EXECUTABLE} get -u github.com/Masterminds/gox 29 30 build-all: 31 gox -verbose \ 32 -ldflags "-X main.version=${VERSION}" \ 33 -os="linux darwin windows freebsd openbsd netbsd" \ 34 -arch="amd64 386 armv5 armv6 armv7 arm64 s390x" \ 35 -osarch="!darwin/arm64" \ 36 -output="dist/{{.OS}}-{{.Arch}}/{{.Dir}}" . 37 38 dist: build-all 39 cd dist && \ 40 $(DIST_DIRS) cp ../LICENSE {} \; && \ 41 $(DIST_DIRS) cp ../README.md {} \; && \ 42 $(DIST_DIRS) tar -zcf glide-${VERSION}-{}.tar.gz {} \; && \ 43 $(DIST_DIRS) zip -r glide-${VERSION}-{}.zip {} \; && \ 44 cd .. 45 46 verify-version: 47 @if [ "$(VERSION_INCODE)" = "v$(VERSION_INCHANGELOG)" ]; then \ 48 echo "glide: $(VERSION_INCHANGELOG)"; \ 49 elif [ "$(VERSION_INCODE)" = "v$(VERSION_INCHANGELOG)-dev" ]; then \ 50 echo "glide (development): $(VERSION_INCHANGELOG)"; \ 51 else \ 52 echo "Version number in glide.go does not match CHANGELOG.md"; \ 53 echo "glide.go: $(VERSION_INCODE)"; \ 54 echo "CHANGELOG : $(VERSION_INCHANGELOG)"; \ 55 exit 1; \ 56 fi 57 58 .PHONY: build test install clean bootstrap-dist build-all dist integration-test verify-version