|
|
|
@@ -82,20 +82,17 @@ endef
|
|
|
|
lint:
|
|
|
|
lint:
|
|
|
|
@echo "==> Merging..."
|
|
|
|
@echo "==> Merging..."
|
|
|
|
@rm -f $(LINT_TMP_LUA) $(LINT_TMP_MAP)
|
|
|
|
@rm -f $(LINT_TMP_LUA) $(LINT_TMP_MAP)
|
|
|
|
@touch $(LINT_TMP_LUA)
|
|
|
|
|
|
|
|
@line=1; \
|
|
|
|
@line=1; \
|
|
|
|
while IFS= read -r f || [ -n "$$f" ]; do \
|
|
|
|
while IFS= read -r f || [ -n "$$f" ]; do \
|
|
|
|
[ -z "$$f" ] && continue; \
|
|
|
|
[ -z "$$f" ] && continue; \
|
|
|
|
before=$$(wc -l < $(LINT_TMP_LUA)); \
|
|
|
|
linecount=$$(awk 'END{print NR}' "$(SRC_DIR)/$$f"); \
|
|
|
|
cat "$(SRC_DIR)/$$f" >> $(LINT_TMP_LUA); \
|
|
|
|
|
|
|
|
printf '\n' >> $(LINT_TMP_LUA); \
|
|
|
|
|
|
|
|
after=$$(wc -l < $(LINT_TMP_LUA)); \
|
|
|
|
|
|
|
|
linecount=$$((after - before)); \
|
|
|
|
|
|
|
|
echo "$$line $$linecount $(SRC_DIR)/$$f" >> $(LINT_TMP_MAP); \
|
|
|
|
echo "$$line $$linecount $(SRC_DIR)/$$f" >> $(LINT_TMP_MAP); \
|
|
|
|
line=$$((line + linecount)); \
|
|
|
|
cat "$(SRC_DIR)/$$f" >> $(LINT_TMP_LUA); \
|
|
|
|
|
|
|
|
echo "" >> $(LINT_TMP_LUA); \
|
|
|
|
|
|
|
|
line=$$((line + linecount + 1)); \
|
|
|
|
done < $(ORDER)
|
|
|
|
done < $(ORDER)
|
|
|
|
@echo "==> luacheck..."
|
|
|
|
@echo "==> luacheck..."
|
|
|
|
@LINT_OUTPUT=$$(luacheck --no-max-line-length $(LINT_TMP_LUA) 2>&1 | awk -v map=$(LINT_TMP_MAP) ' \
|
|
|
|
@luacheck --no-max-line-length $(LINT_TMP_LUA) 2>&1 | awk -v map=$(LINT_TMP_MAP) ' \
|
|
|
|
BEGIN { \
|
|
|
|
BEGIN { \
|
|
|
|
NR_map = 0; \
|
|
|
|
NR_map = 0; \
|
|
|
|
while ((getline line < map) > 0) { \
|
|
|
|
while ((getline line < map) > 0) { \
|
|
|
|
@@ -117,7 +114,7 @@ lint:
|
|
|
|
rest = substr(rest2, colon3); \
|
|
|
|
rest = substr(rest2, colon3); \
|
|
|
|
found = 0; \
|
|
|
|
found = 0; \
|
|
|
|
for (i = 0; i < NR_map; i++) { \
|
|
|
|
for (i = 0; i < NR_map; i++) { \
|
|
|
|
end_line = start[i] + count[i] -1; \
|
|
|
|
end_line = start[i] + count[i]; \
|
|
|
|
if (absline >= start[i] && absline <= end_line) { \
|
|
|
|
if (absline >= start[i] && absline <= end_line) { \
|
|
|
|
relline = absline - start[i] + 1; \
|
|
|
|
relline = absline - start[i] + 1; \
|
|
|
|
print fname[i] ":" relline ":" col ":" rest; \
|
|
|
|
print fname[i] ":" relline ":" col ":" rest; \
|
|
|
|
@@ -129,16 +126,7 @@ lint:
|
|
|
|
next; \
|
|
|
|
next; \
|
|
|
|
} \
|
|
|
|
} \
|
|
|
|
{ print } \
|
|
|
|
{ print } \
|
|
|
|
'); \
|
|
|
|
'; true
|
|
|
|
echo "$$LINT_OUTPUT"; \
|
|
|
|
|
|
|
|
NUM_ISSUES=$$(echo "$$LINT_OUTPUT" | grep -cE "^[^:]+:[0-9]+:[0-9]+:"); \
|
|
|
|
|
|
|
|
if [ "$$NUM_ISSUES" -gt 0 ]; then \
|
|
|
|
|
|
|
|
echo "Total: $$NUM_ISSUES issue(s) found, commit aborted."; \
|
|
|
|
|
|
|
|
exit 1; \
|
|
|
|
|
|
|
|
else \
|
|
|
|
|
|
|
|
echo "Checking /tmp/_lint_combined.lua OK"; \
|
|
|
|
|
|
|
|
echo "Total: 0 warnings / 0 errors in 1 file"; \
|
|
|
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
@rm -f $(LINT_TMP_LUA) $(LINT_TMP_MAP)
|
|
|
|
@rm -f $(LINT_TMP_LUA) $(LINT_TMP_MAP)
|
|
|
|
|
|
|
|
|
|
|
|
export_assets:
|
|
|
|
export_assets:
|
|
|
|
@@ -160,7 +148,7 @@ clean:
|
|
|
|
|
|
|
|
|
|
|
|
# CI/CD Targets
|
|
|
|
# CI/CD Targets
|
|
|
|
ci-version:
|
|
|
|
ci-version:
|
|
|
|
@VERSION=$$(sed -n "s/^-- version: //p" inc/meta/meta.header.lua | head -n 1 | tr -d "[:space:]"); \
|
|
|
|
@VERSION=$$(sed -n "s/^-- version: //p" inc-meta-meta.header.lua | head -n 1 | tr -d "[:space:]"); \
|
|
|
|
BRANCH=$${CI_COMMIT_BRANCH:-$${WOODPECKER_BRANCH}}; \
|
|
|
|
BRANCH=$${CI_COMMIT_BRANCH:-$${WOODPECKER_BRANCH}}; \
|
|
|
|
BRANCH=$$(echo "$$BRANCH" | tr '/' '-'); \
|
|
|
|
BRANCH=$$(echo "$$BRANCH" | tr '/' '-'); \
|
|
|
|
if [ "$$BRANCH" != "main" ] && [ "$$BRANCH" != "master" ] && [ -n "$$BRANCH" ]; then \
|
|
|
|
if [ "$$BRANCH" != "main" ] && [ "$$BRANCH" != "master" ] && [ -n "$$BRANCH" ]; then \
|
|
|
|
@@ -190,20 +178,7 @@ ci-update:
|
|
|
|
echo "==> Triggering update for version $$VERSION"; \
|
|
|
|
echo "==> Triggering update for version $$VERSION"; \
|
|
|
|
curl "$(UPDATE_SERVER)/update?secret=$(UPDATE_SECRET)&name=$(PROJECT)&platform=tic80&version=$$VERSION"
|
|
|
|
curl "$(UPDATE_SERVER)/update?secret=$(UPDATE_SECRET)&name=$(PROJECT)&platform=tic80&version=$$VERSION"
|
|
|
|
|
|
|
|
|
|
|
|
install_precommit_hook:
|
|
|
|
.PHONY: all build export watch import_assets export_assets clean lint ci-version ci-export ci-upload ci-update
|
|
|
|
@echo "Installing Git pre-commit hook (lint check)..."
|
|
|
|
|
|
|
|
@mkdir -p .git/hooks
|
|
|
|
|
|
|
|
@printf '#!/bin/bash\n' > .git/hooks/pre-commit
|
|
|
|
|
|
|
|
@printf 'echo "Running lint before commit..."\n' >> .git/hooks/pre-commit
|
|
|
|
|
|
|
|
@printf 'make lint\n' >> .git/hooks/pre-commit
|
|
|
|
|
|
|
|
@printf 'if [ $$? -ne 0 ]; then\n' >> .git/hooks/pre-commit
|
|
|
|
|
|
|
|
@printf ' echo "Lint failed! Commit aborted."\n' >> .git/hooks/pre-commit
|
|
|
|
|
|
|
|
@printf ' exit 1\n' >> .git/hooks/pre-commit
|
|
|
|
|
|
|
|
@printf 'fi\n' >> .git/hooks/pre-commit
|
|
|
|
|
|
|
|
@chmod +x .git/hooks/pre-commit
|
|
|
|
|
|
|
|
@echo "Pre-commit hook installed successfully."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.PHONY: all build export watch import_assets export_assets clean lint ci-version ci-export ci-upload ci-update install_precommit_hook
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#-- <WAVES>
|
|
|
|
#-- <WAVES>
|
|
|
|
#-- 000:224578acdeeeeddcba95434567653100
|
|
|
|
#-- 000:224578acdeeeeddcba95434567653100
|
|
|
|
|