GITREV=`git describe --tags | cut -c 2-` LDFLAGS=-ldflags="-X 'github.com/writeas/writefreely.softwareVer=$(GITREV)'" GOCMD=go GOINSTALL=$(GOCMD) install $(LDFLAGS) GOBUILD=$(GOCMD) build $(LDFLAGS) GOTEST=$(GOCMD) test $(LDFLAGS) GOGET=$(GOCMD) get BINARY_NAME=writefreely DOCKERCMD=docker IMAGE_NAME=writeas/writefreely all : build build: deps cd cmd/writefreely; $(GOBUILD) -v build-linux: deps cd cmd/writefreely; GOOS=linux GOARCH=amd64 $(GOBUILD) -v build-windows: deps cd cmd/writefreely; GOOS=windows GOARCH=amd64 $(GOBUILD) -v build-darwin: deps cd cmd/writefreely; GOOS=darwin GOARCH=amd64 $(GOBUILD) -v build-docker : $(DOCKERCMD) build -t $(IMAGE_NAME):latest -t $(IMAGE_NAME):$(GITREV) . test: $(GOTEST) -v ./... run: $(GOINSTALL) ./... $(BINARY_NAME) --debug deps : $(GOGET) -v ./... install : build cmd/writefreely/$(BINARY_NAME) --gen-keys cd less/; $(MAKE) install $(MFLAGS) release : clean ui mkdir build cp -r templates build cp -r pages build cp -r static build mkdir build/keys cp schema.sql build $(MAKE) build-linux cp cmd/writefreely/$(BINARY_NAME) build cd build; tar -cvzf ../$(BINARY_NAME)_$(GITREV)_linux_amd64.tar.gz * rm build/$(BINARY_NAME) $(MAKE) build-darwin cp cmd/writefreely/$(BINARY_NAME) build cd build; tar -cvzf ../$(BINARY_NAME)_$(GITREV)_darwin_amd64.tar.gz * rm build/$(BINARY_NAME) $(MAKE) build-windows cp cmd/writefreely/$(BINARY_NAME).exe build cd build; zip -r ../$(BINARY_NAME)_$(GITREV)_windows_amd64.zip ./* $(MAKE) build-docker $(MAKE) release-docker release-docker : $(DOCKERCMD) push $(IMAGE_NAME) ui : force_look cd less/; $(MAKE) $(MFLAGS) clean : -rm -rf build cd less/; $(MAKE) clean $(MFLAGS) force_look : true