mirror of
https://github.com/go-gitea/gitea
synced 2024-08-18 21:31:02 +02:00
This allows the user to specify build flags from the make command line. For example to force a complete rebuild one could use: make BUILD_FLAGS='-v -a' TAGS="sqlite"
63 lines
1.6 KiB
Makefile
63 lines
1.6 KiB
Makefile
LDFLAGS += -X "github.com/gogits/gogs/modules/setting.BuildTime=$(shell date -u '+%Y-%m-%d %I:%M:%S %Z')"
|
|
LDFLAGS += -X "github.com/gogits/gogs/modules/setting.BuildGitHash=$(shell git rev-parse HEAD)"
|
|
|
|
DATA_FILES := $(shell find conf | sed 's/ /\\ /g')
|
|
LESS_FILES := $(wildcard public/less/gogs.less public/less/_*.less)
|
|
GENERATED := modules/bindata/bindata.go public/css/gogs.css
|
|
|
|
TAGS = ""
|
|
BUILD_FLAGS = "-v"
|
|
|
|
RELEASE_ROOT = "release"
|
|
RELEASE_GOGS = "release/gogs"
|
|
NOW = $(shell date -u '+%Y%m%d%I%M%S')
|
|
|
|
.PHONY: build pack release bindata clean
|
|
|
|
.IGNORE: public/css/gogs.css
|
|
|
|
build: $(GENERATED)
|
|
go install $(BUILD_FLAGS) -ldflags '$(LDFLAGS)' -tags '$(TAGS)'
|
|
cp '$(GOPATH)/bin/gogs' .
|
|
|
|
govet:
|
|
go tool vet -composites=false -methods=false -structtags=false .
|
|
|
|
build-dev: $(GENERATED) govet
|
|
go install $(BUILD_FLAGS) -race -tags '$(TAGS)'
|
|
cp '$(GOPATH)/bin/gogs' .
|
|
|
|
pack:
|
|
rm -rf $(RELEASE_GOGS)
|
|
mkdir -p $(RELEASE_GOGS)
|
|
cp -r gogs LICENSE README.md README_ZH.md templates public scripts $(RELEASE_GOGS)
|
|
rm -rf $(RELEASE_GOGS)/public/config.codekit $(RELEASE_GOGS)/public/less
|
|
cd $(RELEASE_ROOT) && zip -r gogs.$(NOW).zip "gogs"
|
|
|
|
release: build pack
|
|
|
|
bindata: modules/bindata/bindata.go
|
|
|
|
modules/bindata/bindata.go: $(DATA_FILES)
|
|
go-bindata -o=$@ -ignore="\\.DS_Store|README.md|TRANSLATORS" -pkg=bindata conf/...
|
|
|
|
less: public/css/gogs.css
|
|
|
|
public/css/gogs.css: $(LESS_FILES)
|
|
lessc $< $@
|
|
|
|
clean:
|
|
go clean -i ./...
|
|
|
|
clean-mac: clean
|
|
find . -name ".DS_Store" -print0 | xargs -0 rm
|
|
|
|
test:
|
|
go test -cover -race ./...
|
|
|
|
fixme:
|
|
grep -rnw "FIXME" routers models modules
|
|
|
|
todo:
|
|
grep -rnw "TODO" routers models modules
|