@@ -34,6 +34,7 @@ GXZ_PAGAGE ?= github.com/ulikunitz/xz/cmd/
[email protected] 3434MISSPELL_PACKAGE ?= github.com/client9/misspell/cmd/
[email protected] 3535SWAGGER_PACKAGE ?= github.com/go-swagger/go-swagger/cmd/
[email protected] 3636XGO_PACKAGE ?= src.techknowlogick.com/xgo@latest
37+ GO_LICENSES_PACKAGE ?= github.com/google/
[email protected] 3738
3839DOCKER_IMAGE ?= gitea/gitea
3940DOCKER_TAG ?= latest
@@ -114,13 +115,16 @@ SVG_DEST_DIR := public/img/svg
114115
115116AIR_TMP_DIR := .air
116117
118+ GO_LICENSE_TMP_DIR := .go-licenses
119+ GO_LICENSE_FILE := assets/go-licenses.json
120+
117121TAGS ?=
118122TAGS_SPLIT := $(subst $(COMMA ) , ,$(TAGS ) )
119123TAGS_EVIDENCE := $(MAKE_EVIDENCE_DIR ) /tags
120124
121125TEST_TAGS ?= sqlite sqlite_unlock_notify
122126
123- TAR_EXCLUDES := .git data indexers queues log node_modules $(EXECUTABLE ) $(FOMANTIC_WORK_DIR ) /node_modules $(DIST ) $(MAKE_EVIDENCE_DIR ) $(AIR_TMP_DIR )
127+ TAR_EXCLUDES := .git data indexers queues log node_modules $(EXECUTABLE ) $(FOMANTIC_WORK_DIR ) /node_modules $(DIST ) $(MAKE_EVIDENCE_DIR ) $(AIR_TMP_DIR ) $( GO_LICENSE_TMP_DIR )
124128
125129GO_DIRS := cmd tests models modules routers build services tools
126130
@@ -199,8 +203,9 @@ help:
199203 @echo " - generate-swagger generate the swagger spec from code comments"
200204 @echo " - swagger-validate check if the swagger spec is valid"
201205 @echo " - golangci-lint run golangci-lint linter"
206+ @echo " - go-licenses regenerate go licenses"
202207 @echo " - vet examines Go source code and reports suspicious constructs"
203- @echo " - tidy run go mod tidy"
208+ @echo " - tidy run go mod tidy and regenerate go licenses "
204209 @echo " - test[\#TestSpecificName] run unit test"
205210 @echo " - test-sqlite[\#TestSpecificName] run integration test for sqlite"
206211 @echo " - pr#<index> build and start gitea from a PR with integration test data loaded"
@@ -393,6 +398,7 @@ unit-test-coverage:
393398tidy :
394399 $(eval MIN_GO_VERSION := $(shell grep -Eo '^go\s+[0-9]+\.[0-9.]+' go.mod | cut -d' ' -f2) )
395400 $(GO ) mod tidy -compat=$(MIN_GO_VERSION )
401+ @$(MAKE ) --no-print-directory assets/go-licenses.json
396402
397403.PHONY : vendor
398404vendor : tidy
@@ -407,6 +413,14 @@ tidy-check: tidy
407413 exit 1; \
408414 fi
409415
416+ .PHONY : go-licenses
417+ go-licenses : assets/go-licenses.json
418+
419+ assets/go-licenses.json : go.mod go.sum build/generate-go-licenses.js
420+ -$(GO ) run $(GO_LICENSES_PACKAGE ) save . --force --save_path=" $( GO_LICENSE_TMP_DIR) " 2> /dev/null
421+ node build/generate-go-licenses.js " $( GO_LICENSE_TMP_DIR) " " $( GO_LICENSE_FILE) "
422+ @rm -rf " $( GO_LICENSE_TMP_DIR) "
423+
410424generate-ini-sqlite :
411425 sed -e ' s|{{REPO_TEST_DIR}}|${REPO_TEST_DIR}|g' \
412426 -e ' s|{{TEST_LOGGER}}|$(or $(TEST_LOGGER),test$(COMMA)file)|g' \
@@ -782,6 +796,7 @@ deps-backend:
782796 $(GO ) install $(MISSPELL_PACKAGE )
783797 $(GO ) install $(SWAGGER_PACKAGE )
784798 $(GO ) install $(XGO_PACKAGE )
799+ $(GO ) install $(GO_LICENSES_PACKAGE )
785800
786801node_modules : package-lock.json
787802 npm install --no-save
0 commit comments