34
34
MISSPELL_PACKAGE ?= github.com/client9/misspell/cmd/
[email protected]
35
35
SWAGGER_PACKAGE ?= github.com/go-swagger/go-swagger/cmd/
[email protected]
36
36
XGO_PACKAGE ?= src.techknowlogick.com/xgo@latest
37
+ GO_LICENSES_PACKAGE ?= github.com/google/
[email protected]
37
38
38
39
DOCKER_IMAGE ?= gitea/gitea
39
40
DOCKER_TAG ?= latest
@@ -114,13 +115,16 @@ SVG_DEST_DIR := public/img/svg
114
115
115
116
AIR_TMP_DIR := .air
116
117
118
+ GO_LICENSE_TMP_DIR := .go-licenses
119
+ GO_LICENSE_FILE := assets/go-licenses.json
120
+
117
121
TAGS ?=
118
122
TAGS_SPLIT := $(subst $(COMMA ) , ,$(TAGS ) )
119
123
TAGS_EVIDENCE := $(MAKE_EVIDENCE_DIR ) /tags
120
124
121
125
TEST_TAGS ?= sqlite sqlite_unlock_notify
122
126
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 )
124
128
125
129
GO_DIRS := cmd tests models modules routers build services tools
126
130
@@ -199,8 +203,9 @@ help:
199
203
@echo " - generate-swagger generate the swagger spec from code comments"
200
204
@echo " - swagger-validate check if the swagger spec is valid"
201
205
@echo " - golangci-lint run golangci-lint linter"
206
+ @echo " - go-licenses regenerate go licenses"
202
207
@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 "
204
209
@echo " - test[\#TestSpecificName] run unit test"
205
210
@echo " - test-sqlite[\#TestSpecificName] run integration test for sqlite"
206
211
@echo " - pr#<index> build and start gitea from a PR with integration test data loaded"
@@ -393,6 +398,7 @@ unit-test-coverage:
393
398
tidy :
394
399
$(eval MIN_GO_VERSION := $(shell grep -Eo '^go\s+[0-9]+\.[0-9.]+' go.mod | cut -d' ' -f2) )
395
400
$(GO ) mod tidy -compat=$(MIN_GO_VERSION )
401
+ @$(MAKE ) --no-print-directory assets/go-licenses.json
396
402
397
403
.PHONY : vendor
398
404
vendor : tidy
@@ -407,6 +413,14 @@ tidy-check: tidy
407
413
exit 1; \
408
414
fi
409
415
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
+
410
424
generate-ini-sqlite :
411
425
sed -e ' s|{{REPO_TEST_DIR}}|${REPO_TEST_DIR}|g' \
412
426
-e ' s|{{TEST_LOGGER}}|$(or $(TEST_LOGGER),test$(COMMA)file)|g' \
@@ -782,6 +796,7 @@ deps-backend:
782
796
$(GO ) install $(MISSPELL_PACKAGE )
783
797
$(GO ) install $(SWAGGER_PACKAGE )
784
798
$(GO ) install $(XGO_PACKAGE )
799
+ $(GO ) install $(GO_LICENSES_PACKAGE )
785
800
786
801
node_modules : package-lock.json
787
802
npm install --no-save
0 commit comments