# Luis Figueiredo (luisf@casemyway.com) # GOPATH=$(CURDIR)/deps:$(CURDIR) DIST=./DIST BUILDENV= GETENV= # Source in packages names # What packages to build # CLI Packages CLI=flowserver/cmd/flowserver BIN=$(addprefix $(DIST)/, $(notdir $(CLI))) # Windows build ifeq ($(GOOS),windows) ENV+=CC=i686-w64-mingw32-gcc CXX=i686-w64-mingw32-g++ CGO_ENABLED=1 GOOS=$(GOOS) GOARCH=$(GOARCH) BIN:=$(addsuffix .exe, $(BIN)) endif .PHONY: all deps clean dist-clean $(BIN) all: $(BIN) deps @$(ENV) echo -e "\e[32;01mBuilt for OS: `go env GOOS`, ARCH: `go env GOARCH`\e[0m" $(BIN): deps $(BUILDENV) GOPATH="$(GOPATH)" go build -o $@ $(CLI) # generate generate: GOPATH="$(GOPATH)" go generate -v ./src/... test: $(ENV) gocov test ./src/... | gocov report #$(BIN): $(addprefix src/,$(SOURCE)) # echo $< deps: $(GETENV) GOPATH="$(GOPATH)" go get -v ./src/... # everything from source # test package $(GETENV) GOPATH="$(GOPATH)" go get -v -t ./src/... clean: rm -rf $(DIST) dist-clean: clean rm -rf bin rm -rf pkg rm -rf deps $(DIST): mkdir -p $(DIST)