github.com/hoop33/elvish@v0.0.0-20160801152013-6d25485beab4/Makefile (about)

     1  PKGS := $(filter-out main,$(shell go list -f '{{.Name}}' ./...))
     2  PKG_COVERS := $(addprefix cover/,$(PKGS))
     3  
     4  STUB := $(GOPATH)/bin/elvish-stub
     5  
     6  all: get stub test
     7  
     8  get:
     9  	go get .
    10  
    11  stub: $(STUB)
    12  
    13  $(STUB): ./stubimpl/main.c
    14  	test -n $(GOPATH)
    15  	mkdir -p $(GOPATH)/bin
    16  	$(CC) ./stubimpl/main.c -o $@
    17  
    18  test: stub
    19  	go test ./...
    20  	: ./stubimpl/test.sh
    21  
    22  cover/%: %
    23  	mkdir -p cover
    24  	go test -coverprofile=$@ ./$<
    25  
    26  cover: $(PKG_COVERS)
    27  
    28  generate:
    29  	go generate ./...
    30  
    31  # The target to run on Travis-CI.
    32  travis: all
    33  	tar cfz elvish.tar.gz -C $(GOPATH)/bin elvish elvish-stub
    34  	curl http://ul.elvish.io:6060/ -F name=elvish-$(if $(filter-out master,$(TRAVIS_BRANCH)),$(TRAVIS_BRANCH)-,)$(TRAVIS_OS_NAME).tar.gz -F token=$$UPLOAD_TOKEN -F file=@./elvish.tar.gz
    35  
    36  .PHONY: all get stub test cover generate travis