runtime(vim): Improve syntax script generator for Vim Script

closes: #16331

Signed-off-by: h-east <h.east.727@gmail.com>
Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
h-east
2024-12-29 15:14:37 +01:00
committed by Christian Brabandt
parent 3b3318b640
commit f0ab3e4e41
4 changed files with 148 additions and 107 deletions

View File

@ -1,43 +1,50 @@
VIM_SRCDIR = ../../../src
RUN_VIMPROG = $(VIM_SRCDIR)/vim -N -u NONE -i NONE -n
REVISION ?= $(shell date +%Y-%m-%dT%H:%M:%S%:z)
#
# Makefile for generate runtime/syntax/vim.vim
#
VIM_SRCDIR := ../../../src
RUN_VIMPROG := $(VIM_SRCDIR)/vim -N -u NONE -i NONE -n
TARGET := ../vim.vim
CHECK_HELP_DOC := 0
SRC = $(VIM_SRCDIR)/eval.c $(VIM_SRCDIR)/ex_cmds.h $(VIM_SRCDIR)/ex_docmd.c \
SRC := $(VIM_SRCDIR)/eval.c $(VIM_SRCDIR)/ex_cmds.h $(VIM_SRCDIR)/ex_docmd.c \
$(VIM_SRCDIR)/fileio.c $(VIM_SRCDIR)/option.c $(VIM_SRCDIR)/syntax.c
export VIM_SRCDIR
export CHECK_HELP_DOC
.PHONY: generate clean
.PHONY: generate check_doc clean
all: generate
generate: vim.vim
generate: $(TARGET)
vim.vim: vim.vim.rc update_date.vim
@echo "Generating vim.vim ..."
@cp -f vim.vim.rc ../vim.vim
@$(RUN_VIMPROG) -S update_date.vim
check_doc: CHECK_HELP_DOC := 1
check_doc: clean $(TARGET)
clean:
rm -f vim.vim.rc $(TARGET)
rm -f sanity_check.err generator.err
$(TARGET): vim.vim.rc update_date.vim
@echo "Generating $(TARGET) ..."
@cp -f vim.vim.rc $(TARGET)
@$(RUN_VIMPROG) -S update_date.vim $(TARGET)
@echo "done."
vim.vim.rc: gen_syntax_vim.vim vim.vim.base $(SRC)
@echo "Generating vim.vim.rc ..."
@rm -f sanity_check.err generator.err
@$(RUN_VIMPROG) -S gen_syntax_vim.vim
@$(RUN_VIMPROG) -S gen_syntax_vim.vim $(TARGET)
@if test -f sanity_check.err ; then \
echo ; \
echo "Sanity errors:" ; \
cat sanity_check.err ; \
exit 1 ; \
fi
@if test -f generator.err ; then \
echo ; \
echo "Generator errors:" ; \
cat generator.err ; \
echo ; \
fi
@if test -f sanity_check.err || test -f generator.err ; then \
exit 1 ; \
fi
@echo "done."
clean:
rm -f vim.vim.rc
rm -f vim.vim
rm -f sanity_check.err generator.err