Mercurial > vim
view runtime/doc/Make_mvc.mak @ 33764:f2445075dbeb v9.0.2103
patch 9.0.2103: recursive callback may cause issues on some archs
Commit: https://github.com/vim/vim/commit/2076463e383901cef44685aaf4b63e4306444f9e
Author: Christian Brabandt <cb@256bit.org>
Date: Sun Nov 12 16:59:29 2023 +0100
patch 9.0.2103: recursive callback may cause issues on some archs
Problem: recursive callback may cause issues on some archs
Solution: Decrease the limit drastically to 20
Recursive callback limit causes problems on some architectures
Since commit 47510f3d6598a1218958c03ed11337a43b73f48d we have a test
that causes a recursive popup callback function to be executed. However
it seems the current limit of 'maxfuncdepth' option value is still too
recursive for some 32bit architectures (e.g. 32bit ARM).
So instead of allowing a default limit of 100 (default value for
'maxfuncdepth'), let's reduce this limit to 20. I don't think there is a
use case where one would need such a high recursive callback limit and a
limit of 20 seems reasonable (although it is currently hard-coded).
closes: #13495
closes: #13502
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 12 Nov 2023 17:15:03 +0100 |
parents | b882a17c8e2b |
children | 53bab9f88162 |
line wrap: on
line source
# # Makefile for the Vim documentation on Windows # # 17.11.23, Restorer, <restorer@mail2k.ru> # Common components !INCLUDE Make_all.mak # TODO: to think about what to use instead of awk. PowerShell? #AWK = # Correct the following line for the where executeable file vim is installed VIMEXE = D:\Programs\Vim\vim90\vim.exe # Correct the following line for the directory where gettext et al is installed GETTEXT_PATH = D:\Programs\GetText\bin # In case some package like GnuWin32, UnixUtils # or something similar is installed on the system. # If the "touch" program is installed on the system, but it is not registered # in the %PATH% environment variable, then specify the full path to this file. !IF EXIST ("touch.exe") TOUCH = touch.exe $@ !ELSE TOUCH = @if exist $@ ( copy /b $@+,, ) else ( type nul >$@ ) !ENDIF # In case some package like GnuWin32, UnixUtils, gettext # or something similar is installed on the system. # If the "iconv" program is installed on the system, but it is not registered # in the %PATH% environment variable, then specify the full path to this file. !IF EXIST ("iconv.exe") ICONV = iconv.exe !ELSEIF EXIST ("$(GETTEXT_PATH)\iconv.exe") ICONV="$(GETTEXT_PATH)\iconv.exe" !ENDIF RM = del /q .SUFFIXES : .SUFFIXES : .c .o .txt .html all : tags perlhtml $(CONVERTED) # Use "doctags" to generate the tags file. Only works for English! tags : doctags $(DOCS) doctags $(DOCS) | sort /L C /O tags powershell -nologo -noprofile -Command \ "(Get-Content -Raw tags | Get-Unique | % {$$_ -replace \"`r\", \"\"}) \ | New-Item -Force -Path . -ItemType file -Name tags" doctags : doctags.c $(CC) doctags.c # Use Vim to generate the tags file. Can only be used when Vim has been # compiled and installed. Supports multiple languages. vimtags : $(DOCS) $(VIMEXE) --clean -esX -V1 -u doctags.vim uganda.nsis.txt : uganda.* !powershell -nologo -noprofile -Command \ $$ext=(Get-Item $?).Extension; (Get-Content $? ^| \ % {$$_ -replace '\s*\*[-a-zA-Z0-9.]*\*', '' -replace 'vim:tw=78:.*', ''}) \ ^| Set-Content $*$$ext !powershell -nologo -noprofile -Command \ $$ext=(Get-Item $?).Extension; \ (Get-Content -Raw $(@B)$$ext).Trim() -replace '(\r\n){3,}', '$$1$$1' \ ^| Set-Content $(@B)$$ext # TODO: #html: noerrors tags $(HTMLS) # if exist errors.log (more errors.log) # TODO: #noerrors: # $(RM) errors.log # TODO: #.txt.html: # TODO: #index.html: help.txt # TODO: #vimindex.html: index.txt # TODO: #tags.ref tags.html: tags # Perl version of .txt to .html conversion. # There can't be two rules to produce a .html from a .txt file. # Just run over all .txt files each time one changes. It's fast anyway. perlhtml : tags $(DOCS) vim2html.pl tags $(DOCS) # Check URLs in the help with "curl" or "powershell". test_urls : $(VIMEXE) -S test_urls.vim clean : $(RM) doctags.exe doctags.obj $(RM) *.html vim-stylesheet.css arabic.txt : $(TOUCH) farsi.txt : $(TOUCH) hebrew.txt : $(TOUCH) russian.txt : $(TOUCH) gui_w32.txt : $(TOUCH) if_ole.txt : $(TOUCH) os_390.txt : $(TOUCH) os_amiga.txt : $(TOUCH) os_beos.txt : $(TOUCH) os_dos.txt : $(TOUCH) os_haiku.txt : $(TOUCH) os_mac.txt : $(TOUCH) os_mint.txt : $(TOUCH) os_msdos.txt : $(TOUCH) os_os2.txt : $(TOUCH) os_qnx.txt : $(TOUCH) os_risc.txt : $(TOUCH) os_win32.txt : $(TOUCH) convert-all : $(CONVERTED) !IF [powershell -nologo -noprofile "exit $$psversiontable.psversion.major"] == 2 !ERROR The program "PowerShell" version 3.0 or higher is required to work !ENDIF vim-da.UTF-8.1 : vim-da.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF vimdiff-da.UTF-8.1 : vimdiff-da.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF vimtutor-da.UTF-8.1 : vimtutor-da.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF vim-de.UTF-8.1 : vim-de.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF evim-fr.UTF-8.1 : evim-fr.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF vim-fr.UTF-8.1 : vim-fr.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF vimdiff-fr.UTF-8.1 : vimdiff-fr.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF vimtutor-fr.UTF-8.1 : vimtutor-fr.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-1 -t utf-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF xxd-fr.UTF-8.1 : xxd-fr.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF evim-it.UTF-8.1 : evim-it.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF vim-it.UTF-8.1 : vim-it.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF vimdiff-it.UTF-8.1 : vimdiff-it.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF vimtutor-it.UTF-8.1 : vimtutor-it.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF xxd-it.UTF-8.1 : xxd-it.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF evim-pl.UTF-8.1 : evim-pl.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-2 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28592)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF vim-pl.UTF-8.1 : vim-pl.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-2 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28592)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF vimdiff-pl.UTF-8.1 : vimdiff-pl.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-2 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28592)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF vimtutor-pl.UTF-8.1 : vimtutor-pl.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-2 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28592)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF xxd-pl.UTF-8.1 : xxd-pl.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-2 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28592)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF evim-ru.UTF-8.1 : evim-ru.1 !IF DEFINED (ICONV) $(ICONV) -f KOI8-R -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(20866)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF vim-ru.UTF-8.1 : vim-ru.1 !IF DEFINED (ICONV) $(ICONV) -f KOI8-R -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(20866)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF vimdiff-ru.UTF-8.1 : vimdiff-ru.1 !IF DEFINED (ICONV) $(ICONV) -f KOI8-R -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(20866)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF vimtutor-ru.UTF-8.1 : vimtutor-ru.1 !IF DEFINED (ICONV) $(ICONV) -f KOI8-R -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(20866)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF xxd-ru.UTF-8.1 : xxd-ru.1 !IF DEFINED (ICONV) $(ICONV) -f KOI8-R -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(20866)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF evim-tr.UTF-8.1 : evim-tr.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-9 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28599)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF vim-tr.UTF-8.1 : vim-tr.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-9 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28599)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF vimdiff-tr.UTF-8.1 : vimdiff-tr.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-9 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28599)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF vimtutor-tr.UTF-8.1 : vimtutor-tr.1 !IF DEFINED (ICONV) $(ICONV) -f ISO-8859-9 -t UTF-8 $? >$@ !ELSE # Conversion to UTF-8 encoding without BOM and with UNIX-like line ending powershell -nologo -noprofile -Command \ [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28599)) ^| \ 1>nul New-Item -Force -Path . -ItemType file -Name $@ !ENDIF # vim: set noet sw=8 ts=8 sts=0 wm=0 tw=0 ft=make: