2020-10-22 16:51:41 +00:00
|
|
|
|
2021-01-01 11:52:39 +00:00
|
|
|
export PJ_ROOT=$(PWD)
|
2020-11-23 20:01:12 +00:00
|
|
|
|
2021-12-13 12:05:50 +00:00
|
|
|
FILTER ?= .*
|
2021-03-13 11:47:35 +00:00
|
|
|
|
2024-05-23 08:29:55 +00:00
|
|
|
export NVIM_RUNNER_VERSION := v0.10.0
|
|
|
|
export NVIM_TEST_VERSION ?= v0.10.0
|
2021-02-27 10:50:11 +00:00
|
|
|
|
2023-06-11 15:41:47 +00:00
|
|
|
ifeq ($(shell uname -s),Darwin)
|
2023-09-23 10:01:18 +00:00
|
|
|
UNAME ?= MACOS
|
2023-06-11 15:41:47 +00:00
|
|
|
else
|
2023-09-23 10:01:18 +00:00
|
|
|
UNAME ?= LINUX
|
2023-06-11 15:41:47 +00:00
|
|
|
endif
|
2022-10-07 14:13:15 +00:00
|
|
|
|
2023-06-11 15:41:47 +00:00
|
|
|
.DEFAULT_GOAL := build
|
2022-08-19 10:40:54 +00:00
|
|
|
|
2024-04-03 15:40:25 +00:00
|
|
|
nvim-test:
|
|
|
|
git clone https://github.com/lewis6991/nvim-test
|
|
|
|
nvim-test/bin/nvim-test --init
|
2023-09-24 16:30:11 +00:00
|
|
|
|
2020-11-23 20:01:12 +00:00
|
|
|
.PHONY: test
|
2024-04-03 15:40:25 +00:00
|
|
|
test: nvim-test
|
|
|
|
NVIM_TEST_VERSION=$(NVIM_TEST_VERSION) \
|
|
|
|
nvim-test/bin/nvim-test test \
|
2021-06-21 19:30:54 +00:00
|
|
|
--lpath=$(PWD)/lua/?.lua \
|
2024-04-03 15:40:25 +00:00
|
|
|
--verbose \
|
|
|
|
--filter="$(FILTER)"
|
2021-07-21 16:22:35 +00:00
|
|
|
|
2021-06-19 15:05:37 +00:00
|
|
|
-@stty sane
|
2020-11-23 20:01:12 +00:00
|
|
|
|
2023-10-05 13:18:40 +00:00
|
|
|
.PHONY: test-all
|
|
|
|
test-all:
|
2024-04-03 15:40:25 +00:00
|
|
|
$(MAKE) test NVIM_TEST_VERSION=v0.9.5
|
2024-05-23 08:29:55 +00:00
|
|
|
$(MAKE) test NVIM_TEST_VERSION=v0.10.0
|
2023-10-05 13:18:40 +00:00
|
|
|
$(MAKE) test NVIM_TEST_VERSION=nightly
|
|
|
|
|
2024-04-03 15:40:25 +00:00
|
|
|
export XDG_DATA_HOME ?= $(HOME)/.data
|
|
|
|
|
2021-03-17 11:01:57 +00:00
|
|
|
.PHONY: gen_help
|
2024-04-03 15:40:25 +00:00
|
|
|
gen_help: nvim-test
|
|
|
|
$(XDG_DATA_HOME)/nvim-test/nvim-runner-$(NVIM_RUNNER_VERSION)/bin/nvim -l ./gen_help.lua
|
2021-03-17 11:01:57 +00:00
|
|
|
@echo Updated help
|
|
|
|
|
2023-09-23 10:01:18 +00:00
|
|
|
STYLUA_PLATFORM_MACOS := macos-aarch64
|
|
|
|
STYLUA_PLATFORM_LINUX := linux-x86_64
|
|
|
|
STYLUA_PLATFORM := $(STYLUA_PLATFORM_$(UNAME))
|
|
|
|
|
|
|
|
STYLUA_VERSION := v0.18.2
|
|
|
|
STYLUA_ZIP := stylua-$(STYLUA_PLATFORM).zip
|
|
|
|
STYLUA_URL_BASE := https://github.com/JohnnyMorganz/StyLua/releases/download
|
|
|
|
STYLUA_URL := $(STYLUA_URL_BASE)/$(STYLUA_VERSION)/$(STYLUA_ZIP)
|
|
|
|
|
|
|
|
.INTERMEDIATE: $(STYLUA_ZIP)
|
|
|
|
$(STYLUA_ZIP):
|
|
|
|
wget $(STYLUA_URL)
|
|
|
|
|
|
|
|
stylua: $(STYLUA_ZIP)
|
|
|
|
unzip $<
|
|
|
|
|
|
|
|
.PHONY: stylua-check
|
|
|
|
stylua-check: stylua
|
|
|
|
./stylua --check lua/**/*.lua
|
|
|
|
|
|
|
|
.PHONY: stylua-run
|
|
|
|
stylua-run: stylua
|
2023-10-05 16:11:47 +00:00
|
|
|
./stylua \
|
2024-04-03 16:21:49 +00:00
|
|
|
lua/**/*.lua \
|
|
|
|
lua/*.lua \
|
|
|
|
test/*.lua
|
2023-09-23 10:01:18 +00:00
|
|
|
|
2021-03-17 11:01:57 +00:00
|
|
|
.PHONY: build
|
2023-09-23 10:01:18 +00:00
|
|
|
build: gen_help stylua-run
|
|
|
|
|
|
|
|
.PHONY: doc-check
|
|
|
|
doc-check: gen_help
|
|
|
|
git diff --exit-code -- doc
|
|
|
|
|
2024-04-17 09:22:45 +00:00
|
|
|
LUALS_VERSION := 3.7.4
|
|
|
|
LUALS_TARBALL := lua-language-server-$(LUALS_VERSION)-$(shell uname -s)-$(shell uname -m).tar.gz
|
|
|
|
LUALS_URL := https://github.com/LuaLS/lua-language-server/releases/download/$(LUALS_VERSION)/$(LUALS_TARBALL)
|
|
|
|
|
|
|
|
luals:
|
|
|
|
wget $(LUALS_URL)
|
|
|
|
mkdir luals
|
|
|
|
tar -xf $(LUALS_TARBALL) -C luals
|
|
|
|
rm -rf $(LUALS_TARBALL)
|
|
|
|
|
|
|
|
.PHONY: luals-check
|
|
|
|
luals-check: luals nvim-test
|
|
|
|
VIMRUNTIME=$(XDG_DATA_HOME)/nvim-test/nvim-test-$(NVIM_TEST_VERSION)/share/nvim/runtime \
|
2024-04-17 10:02:14 +00:00
|
|
|
luals/bin/lua-language-server \
|
2024-04-17 09:22:45 +00:00
|
|
|
--logpath=. \
|
|
|
|
--configpath=../.luarc.json \
|
|
|
|
--check=lua
|