diff --git a/.gitignore b/.gitignore index d696aff5f..774a100be 100644 --- a/.gitignore +++ b/.gitignore @@ -36,3 +36,4 @@ docker/docker/init_gogs.sh gogs.sublime-project gogs.sublime-workspace .tags* +release diff --git a/Makefile b/Makefile new file mode 100644 index 000000000..971727d70 --- /dev/null +++ b/Makefile @@ -0,0 +1,30 @@ +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)" + +TAGS = "" + +RELEASE_ROOT = "release" +RELEASE_GOGS = "release/gogs" +NOW = $(shell date -u '+%Y%m%d%I%M%S') + +.PHONY: build pack release bindata clean + +build: + go install -ldflags '$(LDFLAGS)' -tags '$(TAGS)' + go build -ldflags '$(LDFLAGS)' -tags '$(TAGS)' + +pack: + find . -name ".DS_Store" -print0 | xargs -0 rm + 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: + go-bindata -o=modules/bindata/bindata.go -ignore="\\.DS_Store|README.md" -pkg=bindata conf/... + +clean: + go clean -i ./... \ No newline at end of file diff --git a/cmd/web.go b/cmd/web.go index 7e18b938c..e52138c72 100644 --- a/cmd/web.go +++ b/cmd/web.go @@ -82,11 +82,11 @@ func checkVersion() { checkers := []VerChecker{ {"github.com/go-xorm/xorm", func() string { return xorm.Version }, "0.4.3.0806"}, {"github.com/Unknwon/macaron", macaron.Version, "0.5.4"}, - {"github.com/macaron-contrib/binding", binding.Version, "0.1.0"}, - {"github.com/macaron-contrib/cache", cache.Version, "0.1.2"}, - {"github.com/macaron-contrib/csrf", csrf.Version, "0.0.3"}, - {"github.com/macaron-contrib/i18n", i18n.Version, "0.0.7"}, - {"github.com/macaron-contrib/session", session.Version, "0.1.6"}, + {"github.com/go-macaron/binding", binding.Version, "0.1.0"}, + {"github.com/go-macaron/cache", cache.Version, "0.1.2"}, + {"github.com/go-macaron/csrf", csrf.Version, "0.0.3"}, + {"github.com/go-macaron/i18n", i18n.Version, "0.0.7"}, + {"github.com/go-macaron/session", session.Version, "0.1.6"}, {"gopkg.in/ini.v1", ini.Version, "1.3.4"}, } for _, c := range checkers { diff --git a/modules/setting/setting.go b/modules/setting/setting.go index a3527b6b8..65c5d0fb8 100644 --- a/modules/setting/setting.go +++ b/modules/setting/setting.go @@ -42,6 +42,10 @@ const ( ) var ( + // Build information. + BuildTime string + BuildGitHash string + // App settings. AppVer string AppName string @@ -471,6 +475,11 @@ var logLevels = map[string]string{ func newLogService() { log.Info("%s %s", AppName, AppVer) + if len(BuildTime) > 0 { + log.Info("Build Time: %s", BuildTime) + log.Info("Build Git Hash: %s", BuildGitHash) + } + // Get and check log mode. LogModes = strings.Split(Cfg.Section("log").Key("MODE").MustString("console"), ",") LogConfigs = make([]string, len(LogModes))