# Source files for MS Windows (also in the extra archive).
SRC_DOS = \
+ src/auto/nmake/tools.mak \
src/GvimExt/*.mak \
src/GvimExt/GvimExt.reg \
src/GvimExt/Makefile \
#
# Makefile for MS Windows for create self-installing exe of Vim.
-# 05/04/2024, Restorer restorer@mail2k.ru
+# 2024‐04-05, Restorer, restorer@mail2k.ru
#
-#!INCLUDE .\Make_all.mak
+# included common tools
+!INCLUDE ..\src\auto\nmake\tools.mak
+
+# Read MAJOR and MINOR from version.h.
+!IFNDEF MAJOR
+! IF ![for /F "tokens=3" %G in \
+ ('findstr /RC:"VIM_VERSION_MAJOR[ ^]*[0-9^]" ..\src\version.h') \
+ do @(echo:MAJOR=%G>> .\_major.tmp)]
+! INCLUDE .\_major.tmp
+! IF [$(RM) .\_major.tmp]
+! ENDIF
+! ELSE
+MAJOR = 9
+! ENDIF
+!ENDIF
+
+!IFNDEF MINOR
+! IF ![for /F "tokens=3" %G in \
+ ('findstr /RC:"VIM_VERSION_MINOR[ ^]*[0-9^]" ..\src\version.h') \
+ do @(echo:MINOR=%G>> .\_minor.tmp)]
+! INCLUDE .\_minor.tmp
+! IF [$(RM) .\_minor.tmp]
+! ENDIF
+! ELSE
+MINOR = 1
+! ENDIF
+!ENDIF
+
+# Read PATCHLEVEL from version.c
+!IFNDEF PATCHLEVEL
+! IF ![for /F %G in \
+ ('findstr /NBLC:"static int included_patches" ..\src\version.c \
+ ^| (set /p "_t=" ^& set /a _t+=2 ^)') do \
+ @$(CMD) $(CMDFLAGS) "for /F "skip=%G delims=, " %H in \
+ (..\src\version.c) do (echo:PATCHLEVEL=%H> .\_patchlvl.tmp & exit /b)"]
+! INCLUDE .\_patchlvl.tmp
+! IF [$(RM) .\_patchlvl.tmp]
+! ENDIF
+! ELSE
+PATCHLEVEL = 0
+! ENDIF
+!ENDIF
+
+!IF $(PATCHLEVEL) < 10
+PATCHLEVEL = 000$(PATCHLEVEL)
+!ELSEIF $(PATCHLEVEL) < 100
+PATCHLEVEL = 00$(PATCHLEVEL)
+!ELSEIF $(PATCHLEVEL) < 1000
+PATCHLEVEL = 0$(PATCHLEVEL)
+!ENDIF
.SUFFIXES :
# If necessary, correct the full path of the NSIS compiler in the next line.
# Please do not enclose the path in quotation marks.
-MKNSIS = $(ProgFiles)\NSIS
-
-PS = powershell.exe
-RM = del /f /q
-RD = rmdir /s /q
+MKNSIS = $(ProgFiles)\NSIS\makensis.exe
MKNSISFLAGS = /INPUTCHARSET UTF8 $(MKNSISFLAGS)
-PSFLAGS = -NoLogo -NoProfile -Command
-
-# Read MAJOR and MINOR from version.h.
-!IF ![for /F "tokens=2,3" %G in ( \
- 'findstr /rc:"VIM_VERSION_MINOR[ ^]*[0-9^]" \
- /rc:"VIM_VERSION_MAJOR[ ^]*[0-9^]" ..\src\version.h') do \
- @if "VIM_VERSION_MAJOR"=="%G" (echo MAJOR=%H>>_ver.tmp) \
- else echo MINOR=%H>>_ver.tmp]
-! INCLUDE .\_ver.tmp
-! IF [$(RM) .\_ver.tmp]
-! ENDIF
-!ENDIF
-
-# Read PATCHLEVEL from version.c
-!IF ![for /F %G in ( \
- 'findstr /nblc:"static int included_patches[^]" ..\src\version.c \
- ^| (set /p "_t=" ^& set /a _t+=2 ^)') do \
- @cmd /q /c "for /F "skip=%G delims=, " %H in (..\src\version.c) do \
- (echo PATCH=%H>_patchlvl.tmp & exit /b)"]
-! INCLUDE .\_patchlvl.tmp
-! IF [$(RM) .\_patchlvl.tmp]
-! ENDIF
-!ENDIF
-!IF $(PATCH) < 10
-PATCH = 000$(PATCH)
-!ELSEIF $(PATCH) < 100
-PATCH = 00$(PATCH)
-!ELSEIF $(PATCH) < 1000
-PATCH = 0$(PATCH)
-!ENDIF
all : makeinst
makeinst : prepare
- ^"$(MKNSIS)\makensis.exe" $(MKNSISFLAGS) gvim.nsi $(XX)
+ ^"$(MKNSIS)" $(MKNSISFLAGS) gvim.nsi $(XX)
prepare : unzipicons gvim_version.nsh license rename
@ if exist %|fF\nul $(RD) %|fF
@ $(PS) $(PSFLAGS) \
Add-Type -AssemblyName 'System.IO.Compression.FileSystem'; \
- [System.IO.Compression.ZipFile]::ExtractToDirectory(\"$**\", \".\")
+ [System.IO.Compression.ZipFile]::ExtractToDirectory(\"$**\", \
+ \".\")
gvim_version.nsh : Make_mvc.mak
@ 1> $@ echo:^# Generated from Makefile: define the version numbers
@ 1>> $@ echo:^!define __GVIM_VER__NSH__
@ 1>> $@ echo:^!define VER_MAJOR $(MAJOR)
@ 1>> $@ echo:^!define VER_MINOR $(MINOR)
- @ 1>> $@ echo:^!define PATCHLEVEL $(PATCH)
+ @ 1>> $@ echo:^!define PATCHLEVEL $(PATCHLEVEL)
@ 1>> $@ echo:^!endif
license : ..\lang\LICENSE.*.txt ..\LICENSE
@ if exist .\icons\nul $(RD) .\icons
@ if exist .\gvim??.exe $(RM) .\gvim??.exe
-# vim: set noet sw=8 ts=8 sts=0 wm=0 tw=0 ft=make:
+# vim: set noet sw=8 ts=8 sts=0 wm=0 tw=79 ft=make:
#
# Makefile for the Vim documentation on Windows
#
-# 20.03.24, Restorer, <restorer@mail2k.ru>
+# 2024-03-20, Restorer, <restorer@mail2k.ru>
+#
+
+# included common tools
+!INCLUDE ..\..\src\auto\nmake\tools.mak
# Common components
-!INCLUDE Make_all.mak
+!INCLUDE .\Make_all.mak
# TODO: to think about what to use instead of awk. PowerShell?
#AWK =
-# Correct the following line for the where executable file vim is installed.
+# Correct the following line for the where executable file Vim is installed.
# Please do not put the path in quotes.
VIMPROG = ..\..\src\vim.exe
# Please do not put the path in quotes.
ICONV_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 %1
-!ELSE
-TOUCH = if exist %1 ( copy /b %1+,, ) else ( type nul >%1 )
-!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
ICONV = "$(ICONV_PATH)\iconv.exe"
!ENDIF
-RM = del /q
-PS = PowerShell.exe
-
-PSFLAGS = -NoLogo -NoProfile -Command
-
.SUFFIXES :
.SUFFIXES : .c .o .txt .html
tags : doctags $(DOCS)
doctags.exe $(DOCS) | sort /L C /O tags
$(PS) $(PSFLAGS) \
- (Get-Content -Raw tags ^| Get-Unique ^| %%{$$_ -replace \"`r\", \"\"}) \
+ (Get-Content -Raw tags ^| Get-Unique ^| %%{$$_ \
+ -replace \"`r\", \"\"}) \
^| New-Item -Path . -Name tags -ItemType file -Force
doctags : 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)
- @"$(VIMPROG)" --clean -esX -V1 -u doctags.vim
+ @ "$(VIMPROG)" --clean -esX -V1 -u doctags.vim
# TODO:
#html: noerrors tags $(HTMLS)
arabic.txt :
- <<touch.bat $@
+ @ <<touch.bat $@
@$(TOUCH)
<<
farsi.txt :
- <<touch.bat $@
+ @ <<touch.bat $@
@$(TOUCH)
<<
hebrew.txt :
- <<touch.bat $@
+ @ <<touch.bat $@
@$(TOUCH)
<<
russian.txt :
- <<touch.bat $@
+ @ <<touch.bat $@
@$(TOUCH)
<<
gui_w32.txt :
- <<touch.bat $@
+ @ <<touch.bat $@
@$(TOUCH)
<<
if_ole.txt :
- <<touch.bat $@
+ @ <<touch.bat $@
@$(TOUCH)
<<
os_390.txt :
- <<touch.bat $@
+ @ <<touch.bat $@
@$(TOUCH)
<<
os_amiga.txt :
- <<touch.bat $@
+ @ <<touch.bat $@
@$(TOUCH)
<<
os_beos.txt :
- <<touch.bat $@
+ @ <<touch.bat $@
@$(TOUCH)
<<
os_dos.txt :
- <<touch.bat $@
+ @ <<touch.bat $@
@$(TOUCH)
<<
os_haiku.txt :
- <<touch.bat $@
+ @ <<touch.bat $@
@$(TOUCH)
<<
os_mac.txt :
- <<touch.bat $@
+ @ <<touch.bat $@
@$(TOUCH)
<<
os_mint.txt :
- <<touch.bat $@
+ @ <<touch.bat $@
@$(TOUCH)
<<
os_msdos.txt :
- <<touch.bat $@
+ @ <<touch.bat $@
@$(TOUCH)
<<
os_os2.txt :
- <<touch.bat $@
+ @ <<touch.bat $@
@$(TOUCH)
<<
os_qnx.txt :
- <<touch.bat $@
+ @ <<touch.bat $@
@$(TOUCH)
<<
os_risc.txt :
- <<touch.bat $@
+ @ <<touch.bat $@
@$(TOUCH)
<<
os_win32.txt :
- <<touch.bat $@
+ @ <<touch.bat $@
@$(TOUCH)
<<
convert-all : $(CONVERTED)
-!IF [$(PS) $(PSFLAGS) "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)
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28591)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
vimdiff-da.UTF-8.1 : vimdiff-da.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28591)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
vimtutor-da.UTF-8.1 : vimtutor-da.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28591)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
vim-de.UTF-8.1 : vim-de.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28591)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
evim-fr.UTF-8.1 : evim-fr.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28591)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
vim-fr.UTF-8.1 : vim-fr.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28591)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
vimdiff-fr.UTF-8.1 : vimdiff-fr.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28591)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
vimtutor-fr.UTF-8.1 : vimtutor-fr.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28591)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
xxd-fr.UTF-8.1 : xxd-fr.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28591)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
evim-it.UTF-8.1 : evim-it.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28591)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
vim-it.UTF-8.1 : vim-it.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28591)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
vimdiff-it.UTF-8.1 : vimdiff-it.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28591)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
vimtutor-it.UTF-8.1 : vimtutor-it.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28591)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
xxd-it.UTF-8.1 : xxd-it.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28591)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28591)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
evim-pl.UTF-8.1 : evim-pl.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28592)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28592)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
vim-pl.UTF-8.1 : vim-pl.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28592)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28592)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
vimdiff-pl.UTF-8.1 : vimdiff-pl.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28592)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28592)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
vimtutor-pl.UTF-8.1 : vimtutor-pl.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28592)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28592)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
xxd-pl.UTF-8.1 : xxd-pl.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28592)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28592)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
evim-ru.UTF-8.1 : evim-ru.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(20866)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(20866)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
vim-ru.UTF-8.1 : vim-ru.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(20866)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(20866)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
vimdiff-ru.UTF-8.1 : vimdiff-ru.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(20866)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(20866)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
vimtutor-ru.UTF-8.1 : vimtutor-ru.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(20866)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(20866)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
xxd-ru.UTF-8.1 : xxd-ru.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(20866)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(20866)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
evim-tr.UTF-8.1 : evim-tr.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28599)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28599)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
vim-tr.UTF-8.1 : vim-tr.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28599)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28599)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
vimdiff-tr.UTF-8.1 : vimdiff-tr.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28599)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28599)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
vimtutor-tr.UTF-8.1 : vimtutor-tr.1
!ELSE
# Conversion to UTF-8 encoding without BOM and with UNIX-like line ending
$(PS) $(PSFLAGS) \
- [IO.File]::ReadAllText(\"$?\", [Text.Encoding]::GetEncoding(28599)) ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ [IO.File]::ReadAllText(\"$?\", \
+ [Text.Encoding]::GetEncoding(28599)) ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
!ENDIF
-# vim: set noet sw=8 ts=8 sts=0 wm=0 tw=0 ft=make:
+# vim: set noet sw=8 ts=8 sts=0 wm=0 tw=79 ft=make:
+#
# Makefile for running indent tests on OS Windows.
# Made on the base of a indent/Makefile.
-# Restorer, 13.03.2024
+# 2024-03-13, Restorer
+#
+
+# included common tools
+!INCLUDE ..\..\src\auto\nmake\tools.mak
+
+LSFLAGS = /A:-D /B /O:N /L /S
.SUFFIXES:
-VIMPROG = vim.exe
+VIMPROG = ..\..\src\vim.exe
VIMRUNTIME = ..
# Run the tests that didn't run yet or failed previously.
# If a test fails a testdir\*.fail file will be written.
test :
@ set "VIMRUNTIME=$(VIMRUNTIME)"
- $(VIMPROG) --clean --not-a-term -u testdir\runtest.vim
-
+ @ $(VIMPROG) --clean --not-a-term -u testdir\runtest.vim && \
+ (echo:&echo: INDENT TESTS: DONE &echo:) || \
+ <<echofail.bat
+set "retval=%ERRORLEVEL%"
+@echo off
+echo:&echo: INDENT TESTS: FAILED
+for /F %%G in ('2^> nul $(LS) $(LSFLAGS) testdir\*.fail') do (
+call set "fail=%%fail%% %%G")
+if defined fail (
+for %%G in (%fail%) do @(echo:&echo: %%~nxG:&echo: && type %%G)
+)
+exit /B %retval%
+<<
clean testclean :
- @ if exist testdir\*.fail del /q testdir\*.fail
- @ if exist testdir\*.out del /q testdir\*.out
+ @ if exist testdir\*.fail $(RM) testdir\*.fail
+ @ if exist testdir\*.out $(RM) testdir\*.out
+# vim: set noet sw=8 ts=8 sts=0 wm=0 tw=79 ft=make:
#
# Makefile for converted the Vim menu files on Windows
#
-# 08.11.23, Restorer, <restorer@mail2k.ru>
+# 2023-11-08, Restorer, <restorer@mail2k.ru>
+#
-!IF [powershell -nologo -noprofile "exit $$psversiontable.psversion.major"] == 2
-!ERROR The program "PowerShell" version 3.0 or higher is required to work
-!ENDIF
+# included common tools
+!INCLUDE ..\..\src\auto\nmake\tools.mak
# Common components
-!INCLUDE Make_all.mak
+!INCLUDE .\Make_all.mak
# Correct the following line for the directory where iconv is installed.
# Please do not put the path in quotes.
ICONV = "$(ICONV_PATH)\iconv.exe"
!ENDIF
-RM = del /q
-PS = PowerShell.exe
-
-PSFLAGS = -NoLogo -NoProfile -Command
-
-
all : $(CONVERTED)
-# Convert menu_zh_cn.utf-8.vim to create menu_chinese_gb.936.vim.
+# Convert menu_zh_cn.utf-8.vim to menu_chinese_gb.936.vim.
menu_chinese_gb.936.vim : menu_zh_cn.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t CP936 $? >$@
!ELSE
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(936)) -replace \
'scriptencoding utf-8', 'scriptencoding cp936' -replace \
- ' Original translations', ' Generated from $?, DO NOT EDIT'; \
+ 'Original translations', 'Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
[System.Text.Encoding]::GetEncoding(936))
-# Convert menu_zh_tw.utf-8.vim to create menu_chinese_taiwan.950.vim.
+# Convert menu_zh_tw.utf-8.vim to menu_chinese_taiwan.950.vim.
menu_chinese_taiwan.950.vim : menu_zh_tw.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t CP950 $? >$@
!ELSE
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(950)) -replace \
'scriptencoding utf-8', 'scriptencoding cp950' -replace \
- ' Original translations', ' Generated from $?, DO NOT EDIT'; \
+ 'Original translations', 'Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
[System.Text.Encoding]::GetEncoding(950))
-# Convert menu_cs_cz.utf-8.vim to create menu_cs_cz.iso_8859-2.vim.
+# Convert menu_cs_cz.utf-8.vim to menu_cs_cz.iso_8859-2.vim.
menu_cs_cz.iso_8859-2.vim : menu_cs_cz.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t ISO-8859-2 $? >$@
!ELSE
!ENDIF
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(28592)) -replace \
- ' Czech \(UTF-8\)', ' Czech (ISO-8859-2)' -replace \
- \"scriptencoding utf-8\", \"scriptencoding iso-8859-2\" -replace \
- \" Original translations\", \" Generated from $?, DO NOT EDIT\"; \
+ 'Czech \(UTF-8\)', 'Czech (ISO-8859-2)' -replace \
+ 'scriptencoding utf-8', 'scriptencoding iso-8859-2' -replace \
+ 'Original translations', 'Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
[System.Text.Encoding]::GetEncoding(28592))
-# Convert menu_cs_cz.utf-8.vim to create menu_czech_czech_republic.1250.vim.
+# Convert menu_cs_cz.utf-8.vim to menu_czech_czech_republic.1250.vim.
menu_czech_czech_republic.1250.vim : menu_cs_cz.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t CP1250 $? >$@
!ELSE
!ENDIF
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(1250)) -replace \
- ' Czech \(UTF-8\)', ' Czech (CP1250)' -replace \
- \"scriptencoding utf-8\", \"scriptencoding cp1250\" -replace \
- \" Original translations\", \" Generated from $?, DO NOT EDIT\"; \
+ 'Czech \(UTF-8\)', 'Czech (CP1250)' -replace \
+ 'scriptencoding utf-8', 'scriptencoding cp1250' -replace \
+ 'Original translations', 'Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
[System.Text.Encoding]::GetEncoding(1250))
-# Convert menu_cs_cz.utf-8.vim to create menu_czech_czech_republic.ascii.vim.
+# Convert menu_cs_cz.utf-8.vim to menu_czech_czech_republic.ascii.vim.
menu_czech_czech_republic.ascii.vim : menu_cs_cz.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
$(PS) $(PSFLAGS) [System.IO.File]::ReadAllText(\"$?\", \
[System.Text.Encoding]::GetEncoding(65001)) -replace \
'scriptencoding utf-8', 'scriptencoding latin1' -replace \
- ' Original translations', ' Generated from $?, DO NOT EDIT' -replace \
- 'Czech \(UTF-8\)', 'Czech (ASCII - without diacritics)' -creplace \
- [char]193, 'A' -creplace [char]225, 'a' -creplace [char]268, 'C' -creplace \
- [char]269, 'c' -creplace [char]270, 'D' -creplace [char]271, 'd' -creplace \
- [char]201, 'E' -creplace [char]233, 'e' -creplace [char]282, 'E' -creplace \
- [char]283, 'e' -creplace [char]205, 'I' -creplace [char]237, 'i' -creplace \
- [char]327, 'N' -creplace [char]328, 'n' -creplace [char]211, 'O' -creplace \
- [char]243, 'o' -creplace [char]344, 'R' -creplace [char]345, 'r' -creplace \
- [char]352, 'S' -creplace [char]353, 's' -creplace [char]356, 'T' -creplace \
- [char]357, 't' -creplace [char]218, 'U' -creplace [char]250, 'u' -creplace \
- [char]366, 'U' -creplace [char]367, 'u' -creplace [char]221, 'Y' -creplace \
- [char]253, 'y' -creplace [char]381, 'Z' -creplace [char]382, 'z' ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
-
-# Convert menu_hu_hu.utf-8.vim to create menu_hu_hu.iso_8859-2.vim.
+ 'Original translations', 'Generated from $?, DO NOT EDIT' \
+ -replace 'Czech \(UTF-8\)', \
+ 'Czech (ASCII - without diacritics)' \
+ -creplace [char]193, 'A' -creplace [char]225, 'a' \
+ -creplace [char]268, 'C' -creplace [char]269, 'c' \
+ -creplace [char]270, 'D' -creplace [char]271, 'd' \
+ -creplace [char]201, 'E' -creplace [char]233, 'e' \
+ -creplace [char]282, 'E' -creplace [char]283, 'e' \
+ -creplace [char]205, 'I' -creplace [char]237, 'i' \
+ -creplace [char]327, 'N' -creplace [char]328, 'n' \
+ -creplace [char]211, 'O' -creplace [char]243, 'o' \
+ -creplace [char]344, 'R' -creplace [char]345, 'r' \
+ -creplace [char]352, 'S' -creplace [char]353, 's' \
+ -creplace [char]356, 'T' -creplace [char]357, 't' \
+ -creplace [char]218, 'U' -creplace [char]250, 'u' \
+ -creplace [char]366, 'U' -creplace [char]367, 'u' \
+ -creplace [char]221, 'Y' -creplace [char]253, 'y' \
+ -creplace [char]381, 'Z' -creplace [char]382, 'z' \
+ ^| 1>nul New-Item -Path . -Name $@ -ItemType file -Force
+
+# Convert menu_hu_hu.utf-8.vim to menu_hu_hu.iso_8859-2.vim.
menu_hu_hu.iso_8859-2.vim : menu_hu_hu.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t ISO-8859-2 $? >$@
!ELSE
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(28592)) -replace \
'scriptencoding utf-8', 'scriptencoding iso-8859-2' -replace \
- ' Original translations', ' Generated from $?, DO NOT EDIT'; \
+ 'Original translations', 'Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
[System.Text.Encoding]::GetEncoding(28592))
-# Convert menu_ja_jp.utf-8.vim to create menu_ja_jp.euc-jp.vim.
+# Convert menu_ja_jp.utf-8.vim to menu_ja_jp.euc-jp.vim.
menu_ja_jp.euc-jp.vim : menu_ja_jp.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t EUC-JP $? >$@
!ELSE
[System.Text.Encoding]::GetEncoding(51932)) -replace \
'Japanese \(UTF-8\)', 'Japanese (EUC-JP)' -replace \
'scriptencoding utf-8', 'scriptencoding euc-jp' -replace \
- ' Original translations', ' Generated from $?, DO NOT EDIT'; \
+ 'Original translations', 'Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
[System.Text.Encoding]::GetEncoding(51932))
-# Convert menu_ja_jp.utf-8.vim to create menu_japanese_japan.932.vim.
+# Convert menu_ja_jp.utf-8.vim to menu_japanese_japan.932.vim.
menu_japanese_japan.932.vim : menu_ja_jp.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t CP932 $? >$@
!ELSE
[System.Text.Encoding]::GetEncoding(932)) -replace \
'Japanese \(UTF-8\)', 'Japanese (CP932)' -replace \
'scriptencoding utf-8', 'scriptencoding cp932' -replace \
- ' Original translations', ' Generated from $?, DO NOT EDIT'; \
+ 'Original translations', 'Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
[System.Text.Encoding]::GetEncoding(932))
-# Convert menu_ko_kr.utf-8.vim to create menu_ko_kr.euckr.vim.
+# Convert menu_ko_kr.utf-8.vim to menu_ko_kr.euckr.vim.
menu_ko_kr.euckr.vim : menu_ko_kr.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t EUC-KR $? >$@
!ELSE
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(51949)) -replace \
'scriptencoding utf-8', 'scriptencoding euc-kr' -replace \
- ' Original translations', ' Generated from $?, DO NOT EDIT'; \
+ 'Original translations', 'Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
[System.Text.Encoding]::GetEncoding(51949))
-# Convert menu_pl_pl.utf-8.vim to create menu_pl_pl.iso_8859-2.vim.
+# Convert menu_pl_pl.utf-8.vim to menu_pl_pl.iso_8859-2.vim.
menu_pl_pl.iso_8859-2.vim : menu_pl_pl.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t ISO-8859-2 $? >$@
!ELSE
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(28592)) -replace \
'scriptencoding utf-8', 'scriptencoding iso-8859-2' -replace \
- ' Original translations', ' Generated from $?, DO NOT EDIT'; \
+ 'Original translations', 'Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
[System.Text.Encoding]::GetEncoding(28592))
-# Convert menu_pl_pl.utf-8.vim to create menu_polish_poland.1250.vim.
+# Convert menu_pl_pl.utf-8.vim to menu_polish_poland.1250.vim.
menu_polish_poland.1250.vim : menu_pl_pl.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t CP1250 $? >$@
!ELSE
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(1250)) -replace \
'scriptencoding utf-8', 'scriptencoding cp1250' -replace \
- ' Original translations', ' Generated from $?, DO NOT EDIT'; \
+ 'Original translations', 'Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
[System.Text.Encoding]::GetEncoding(1250))
-# Convert menu_ru_ru.utf-8.vim to create menu_ru_ru.cp1251.vim.
+# Convert menu_ru_ru.utf-8.vim to menu_ru_ru.cp1251.vim.
menu_ru_ru.cp1251.vim : menu_ru_ru.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t CP1251 $? >$@
!ELSE
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(1251)) -replace \
'scriptencoding utf-8', 'scriptencoding cp1251' -replace \
- ' Original translations', ' Generated from $?, DO NOT EDIT'; \
+ 'Original translations', 'Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
[System.Text.Encoding]::GetEncoding(1251))
-# Convert menu_ru_ru.utf-8.vim to create menu_ru_ru.koi8-r.vim.
+# Convert menu_ru_ru.utf-8.vim to menu_ru_ru.koi8-r.vim.
menu_ru_ru.koi8-r.vim : menu_ru_ru.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t KOI8-R $? >$@
!ELSE
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(20866)) -replace \
'scriptencoding utf-8', 'scriptencoding koi8-r' -replace \
- ' Original translations', ' Generated from $?, DO NOT EDIT'; \
+ 'Original translations', 'Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
[System.Text.Encoding]::GetEncoding(20866))
-# Convert menu_slovak_slovak_republic.1250.vim to create menu_sk_sk.iso_8859-2.vim.
+# Convert menu_slovak_slovak_republic.1250.vim to menu_sk_sk.iso_8859-2.vim.
menu_sk_sk.iso_8859-2.vim : menu_slovak_slovak_republic.1250.vim
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f CP1250 -t ISO-8859-2 $? >$@
!ELSE
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(28592)) -replace \
'scriptencoding cp1250', 'scriptencoding iso-8859-2' -replace \
- ' Original translations', ' Generated from $?, DO NOT EDIT'; \
+ 'Original translations', 'Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
[System.Text.Encoding]::GetEncoding(28592))
-# Convert menu_sl_si.utf-8.vim to create menu_sl_si.cp1250.vim.
+# Convert menu_sl_si.utf-8.vim to menu_sl_si.cp1250.vim.
menu_sl_si.cp1250.vim : menu_sl_si.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t CP1250 $? >$@
!ELSE
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(1250)) -replace \
'scriptencoding utf-8', 'scriptencoding cp1250' -replace \
- ' Original translations', ' Generated from $?, DO NOT EDIT'; \
+ 'Original translations', 'Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
[System.Text.Encoding]::GetEncoding(1250))
-# Convert menu_sl_si.utf-8.vim to create menu_sl_si.latin2.vim.
+# Convert menu_sl_si.utf-8.vim to menu_sl_si.latin2.vim.
menu_sl_si.latin2.vim : menu_sl_si.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t ISO-8859-2 $? >$@
!ELSE
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(28592)) -replace \
'scriptencoding utf-8', 'scriptencoding iso-8859-2' -replace \
- ' Original translations', ' Generated from $?, DO NOT EDIT'; \
+ 'Original translations', 'Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
[System.Text.Encoding]::GetEncoding(28592))
-# Convert menu_sr_rs.utf-8.vim to create menu_sr_rs.ascii.vim.
+# Convert menu_sr_rs.utf-8.vim to menu_sr_rs.ascii.vim.
menu_sr_rs.ascii.vim : menu_sr_rs.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
$(PS) $(PSFLAGS) [System.IO.File]::ReadAllText(\"$?\", \
[System.Text.Encoding]::GetEncoding(65001)) -replace \
'scriptencoding utf-8', 'scriptencoding latin1' -replace \
- ' Original translations', ' Generated from $?, DO NOT EDIT' -creplace \
- [char]1072, 'a' -creplace [char]1073, 'b' -creplace [char]1074, 'v' -creplace \
- [char]1075, 'g' -creplace [char]1076, 'd' -creplace [char]1106, 'dj' -creplace \
- [char]1077, 'e' -creplace [char]1078, 'z' -creplace [char]1079, 'z' -creplace \
- [char]1080, 'i' -creplace [char]1112, 'j' -creplace [char]1082, 'k' -creplace \
- [char]1083, 'l' -creplace [char]1113, 'lj' -creplace [char]1084, 'm' -creplace \
- [char]1085, 'n' -creplace [char]1114, 'nj' -creplace [char]1086, 'o' -creplace \
- [char]1087, 'p' -creplace [char]1088, 'r' -creplace [char]1089, 's' -creplace \
- [char]1090, 't' -creplace [char]1115, 'c' -creplace [char]1091, 'u' -creplace \
- [char]1092, 'f' -creplace [char]1093, 'h' -creplace [char]1094, 'c' -creplace \
- [char]1095, 'c' -creplace [char]1119, 'dz' -creplace [char]1096, 's' -creplace \
- [char]1040, 'A' -creplace [char]1041, 'B' -creplace [char]1042, 'V' -creplace \
- [char]1043, 'G' -creplace [char]1044, 'D' -creplace [char]1026, 'Đ' -creplace \
- [char]1045, 'E' -creplace [char]1046, 'Z' -creplace [char]1047, 'Z' -creplace \
- [char]1048, 'I' -creplace [char]1032, 'J' -creplace [char]1050, 'K' -creplace \
- [char]1051, 'L' -creplace [char]1033, 'Lj' -creplace [char]1052, 'M' -creplace \
- [char]1053, 'N' -creplace [char]1034, 'Nj' -creplace [char]1054, 'O' -creplace \
- [char]1055, 'P' -creplace [char]1056, 'R' -creplace [char]1057, 'S' -creplace \
- [char]1058, 'T' -creplace [char]1035, 'C' -creplace [char]1059, 'U' -creplace \
- [char]1060, 'F' -creplace [char]1061, 'H' -creplace [char]1062, 'C' -creplace \
- [char]1063, 'C' -creplace [char]1039, 'Dz' -creplace [char]1064, 'S' ^| \
- 1>nul New-Item -Force -Path . -ItemType file -Name $@
-
-# Convert menu_sr_rs.utf-8.vim to create menu_sr_rs.iso_8859-2.vim.
+ 'Original translations', 'Generated from $?, DO NOT EDIT' \
+ -creplace [char]1072, 'a' -creplace [char]1073, 'b' \
+ -creplace [char]1074, 'v' -creplace [char]1075, 'g' \
+ -creplace [char]1076, 'd' -creplace [char]1106, 'dj' \
+ -creplace [char]1077, 'e' -creplace [char]1078, 'z' \
+ -creplace [char]1079, 'z' -creplace [char]1080, 'i' \
+ -creplace [char]1112, 'j' -creplace [char]1082, 'k' \
+ -creplace [char]1083, 'l' -creplace [char]1113, 'lj' \
+ -creplace [char]1084, 'm' -creplace [char]1085, 'n' \
+ -creplace [char]1114, 'nj' -creplace [char]1086, 'o' \
+ -creplace [char]1087, 'p' -creplace [char]1088, 'r' \
+ -creplace [char]1089, 's' -creplace [char]1090, 't' \
+ -creplace [char]1115, 'c' -creplace [char]1091, 'u' \
+ -creplace [char]1092, 'f' -creplace [char]1093, 'h' \
+ -creplace [char]1094, 'c' -creplace [char]1095, 'c' \
+ -creplace [char]1119, 'dz' -creplace [char]1096, 's' \
+ -creplace [char]1040, 'A' -creplace [char]1041, 'B' \
+ -creplace [char]1042, 'V' -creplace [char]1043, 'G' \
+ -creplace [char]1044, 'D' -creplace [char]1026, 'Đ' \
+ -creplace [char]1045, 'E' -creplace [char]1046, 'Z' \
+ -creplace [char]1047, 'Z' -creplace [char]1048, 'I' \
+ -creplace [char]1032, 'J' -creplace [char]1050, 'K' \
+ -creplace [char]1051, 'L' -creplace [char]1033, 'Lj' \
+ -creplace [char]1052, 'M' -creplace [char]1053, 'N' \
+ -creplace [char]1034, 'Nj' -creplace [char]1054, 'O' \
+ -creplace [char]1055, 'P' -creplace [char]1056, 'R' \
+ -creplace [char]1057, 'S' -creplace [char]1058, 'T' \
+ -creplace [char]1035, 'C' -creplace [char]1059, 'U' \
+ -creplace [char]1060, 'F' -creplace [char]1061, 'H' \
+ -creplace [char]1062, 'C' -creplace [char]1063, 'C' \
+ -creplace [char]1039, 'Dz' -creplace [char]1064, 'S' ^| \
+ 1>nul New-Item -Path . -Name $@ -ItemType file -Force
+
+# Convert menu_sr_rs.utf-8.vim to menu_sr_rs.iso_8859-2.vim.
menu_sr_rs.iso_8859-2.vim : menu_sr_rs.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$?\", \
- [System.Text.Encoding]::GetEncoding(65001)) -creplace \
- [char]1072, 'a' -creplace [char]1073, 'b' -creplace [char]1074, 'v' -creplace \
- [char]1075, 'g' -creplace [char]1076, 'd' -creplace [char]1106, [char]273 -creplace \
- [char]1077, 'e' -creplace [char]1078, [char]382 -creplace [char]1079, 'z' -creplace \
- [char]1080, 'i' -creplace [char]1112, 'j' -creplace [char]1082, 'k' -creplace \
- [char]1083, 'l' -creplace [char]1113, 'lj' -creplace [char]1084, 'm' -creplace \
- [char]1085, 'n' -creplace [char]1114, 'nj' -creplace [char]1086, 'o' -creplace \
- [char]1087, 'p' -creplace [char]1088, 'r' -creplace [char]1089, 's' -creplace \
- [char]1090, 't' -creplace [char]1115, [char]263 -creplace [char]1091, 'u' -creplace \
- [char]1092, 'f' -creplace [char]1093, 'h' -creplace [char]1094, 'c' -creplace \
- [char]1095, [char]269 -creplace [char]1119, 'dz' -creplace [char]1096, [char]353 -creplace \
- [char]1040, 'A' -creplace [char]1041, 'B' -creplace [char]1042, 'V' -creplace \
- [char]1043, 'G' -creplace [char]1044, 'D' -creplace [char]1026, 'Đ' -creplace \
- [char]1045, 'E' -creplace [char]1046, [char]381 -creplace [char]1047, 'Z' -creplace \
- [char]1048, 'I' -creplace [char]1032, 'J' -creplace [char]1050, 'K' -creplace \
- [char]1051, 'L' -creplace [char]1033, 'Lj'-creplace [char]1052, 'M' -creplace \
- [char]1053, 'N' -creplace [char]1034, 'Nj' -creplace [char]1054, 'O' -creplace \
- [char]1055, 'P' -creplace [char]1056, 'R' -creplace [char]1057, 'S' -creplace \
- [char]1058, 'T' -creplace [char]1035, [char]262 -creplace [char]1059, 'U' -creplace \
- [char]1060, 'F' -creplace [char]1061, 'H' -creplace [char]1062, 'C' -creplace \
- [char]1063, [char]268 -creplace [char]1039, 'Dz' -creplace [char]1064, [char]352 -replace \
- 'scriptencoding utf-8', 'scriptencoding iso-8859-2' -replace \
- ' Original translations', ' Generated from $?, DO NOT EDIT'; \
- [System.IO.File]::WriteAllText(\"$@\", $$out, [System.Text.Encoding]::GetEncoding(28592))
+ [System.Text.Encoding]::GetEncoding(65001)) \
+ -creplace [char]1072, 'a' -creplace [char]1073, 'b' \
+ -creplace [char]1074, 'v' -creplace [char]1075, 'g' \
+ -creplace [char]1076, 'd' -creplace [char]1106, [char]273 \
+ -creplace [char]1077, 'e' -creplace [char]1078, [char]382 \
+ -creplace [char]1079, 'z' -creplace [char]1080, 'i' \
+ -creplace [char]1112, 'j' -creplace [char]1082, 'k' \
+ -creplace [char]1083, 'l' -creplace [char]1113, 'lj' \
+ -creplace [char]1084, 'm' -creplace [char]1085, 'n' \
+ -creplace [char]1114, 'nj' -creplace [char]1086, 'o' \
+ -creplace [char]1087, 'p' -creplace [char]1088, 'r' \
+ -creplace [char]1089, 's' -creplace [char]1090, 't' \
+ -creplace [char]1115, [char]263 -creplace [char]1091, 'u' \
+ -creplace [char]1092, 'f' -creplace [char]1093, 'h' \
+ -creplace [char]1094, 'c' -creplace [char]1095, [char]269 \
+ -creplace [char]1119, 'dz' -creplace [char]1096, [char]353 \
+ -creplace [char]1040, 'A' -creplace [char]1041, 'B' \
+ -creplace [char]1042, 'V' -creplace [char]1043, 'G' \
+ -creplace [char]1044, 'D' -creplace [char]1026, 'Đ' \
+ -creplace [char]1045, 'E' -creplace [char]1046, [char]381 \
+ -creplace [char]1047, 'Z' -creplace [char]1048, 'I' \
+ -creplace [char]1032, 'J' -creplace [char]1050, 'K' \
+ -creplace [char]1051, 'L' -creplace [char]1033, 'Lj'\
+ -creplace [char]1052, 'M' -creplace [char]1053, 'N' \
+ -creplace [char]1034, 'Nj' -creplace [char]1054, 'O' \
+ -creplace [char]1055, 'P' -creplace [char]1056, 'R' \
+ -creplace [char]1057, 'S' -creplace [char]1058, 'T' \
+ -creplace [char]1035, [char]262 -creplace [char]1059, 'U' \
+ -creplace [char]1060, 'F' -creplace [char]1061, 'H' \
+ -creplace [char]1062, 'C' -creplace [char]1063, [char]268 \
+ -creplace [char]1039, 'Dz' -creplace [char]1064, [char]352 \
+ -replace 'scriptencoding utf-8', 'scriptencoding iso-8859-2' \
+ -replace \
+ 'Original translations', 'Generated from $?, DO NOT EDIT'; \
+ [System.IO.File]::WriteAllText(\"$@\", $$out, \
+ [System.Text.Encoding]::GetEncoding(28592))
-# Convert menu_sr_rs.utf-8.vim to create menu_sr_rs.iso_8859-5.vim.
+# Convert menu_sr_rs.utf-8.vim to menu_sr_rs.iso_8859-5.vim.
menu_sr_rs.iso_8859-5.vim : menu_sr_rs.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t ISO-8859-5 $? >$@
!ELSE
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(28595)) -replace \
'scriptencoding utf-8', 'scriptencoding iso-8859-5' -replace \
- ' Original translations', ' Generated from $?, DO NOT EDIT'; \
+ 'Original translations', 'Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
[System.Text.Encoding]::GetEncoding(28595))
-# Convert menu_tr_tr.utf-8.vim to create menu_tr_tr.cp1254.vim.
+# Convert menu_tr_tr.utf-8.vim to menu_tr_tr.cp1254.vim.
menu_tr_tr.cp1254.vim : menu_tr_tr.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t CP1254 $? >$@
!ELSE
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(1254)) -replace \
'scriptencoding utf-8', 'scriptencoding cp1254' -replace \
- ' Original translations', ' Generated from $?, DO NOT EDIT'; \
+ 'Original translations', 'Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
[System.Text.Encoding]::GetEncoding(1254))
-# Convert menu_tr_tr.utf-8.vim to create menu_tr_tr.iso_8859-9.vim.
+# Convert menu_tr_tr.utf-8.vim to menu_tr_tr.iso_8859-9.vim.
menu_tr_tr.iso_8859-9.vim : menu_tr_tr.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t ISO-8859-9 $? >$@
!ELSE
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(28599)) -replace \
'scriptencoding utf-8', 'scriptencoding iso-8859-9' -replace \
- ' Original translations', ' Generated from $?, DO NOT EDIT'; \
+ 'Original translations', 'Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
[System.Text.Encoding]::GetEncoding(28599))
-# Convert menu_uk_ua.utf-8.vim to create menu_uk_ua.cp1251.vim.
+# Convert menu_uk_ua.utf-8.vim to menu_uk_ua.cp1251.vim.
menu_uk_ua.cp1251.vim : menu_uk_ua.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t CP1251 $? >$@
!ELSE
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(1251)) -replace \
'scriptencoding utf-8', 'scriptencoding cp1251' -replace \
- ' Original translations', ' Generated from $?, DO NOT EDIT'; \
+ 'Original translations', 'Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
[System.Text.Encoding]::GetEncoding(1251))
-# Convert menu_uk_ua.utf-8.vim to create menu_uk_ua.koi8-u.vim.
+# Convert menu_uk_ua.utf-8.vim to menu_uk_ua.koi8-u.vim.
menu_uk_ua.koi8-u.vim : menu_uk_ua.utf-8.vim
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t KOI8-U $? >$@
!ELSE
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(21866)) -replace \
'scriptencoding utf-8', 'scriptencoding koi8-u' -replace \
- ' Original translations', ' Generated from $?, DO NOT EDIT'; \
+ 'Original translations', 'Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
[System.Text.Encoding]::GetEncoding(21866))
clean :
- @for %%G in ($(CONVERTED)) do (if exist .\%%G ($(RM) %%G))
+ @ for %%G in ($(CONVERTED)) do @(if exist .\%%G $(RM) %%G)
-# vim: set noet sw=8 ts=8 sts=0 wm=0 tw=0 ft=make:
+# vim: set noet sw=8 ts=8 sts=0 wm=0 tw=79 ft=make:
# automatically from CPUNR
#
+# included common tools
+!INCLUDE ..\auto\nmake\tools.mak
+
TARGETOS = WINNT
-!ifndef APPVER
+!IFNDEF APPVER
APPVER = 6.01
-!endif
+!ENDIF
# Set the default $(WINVER) to make it work with Windows 7.
-!ifndef WINVER
+!IFNDEF WINVER
WINVER = 0x0601
-!endif
+!ENDIF
-!if "$(DEBUG)" != "yes"
+!IF "$(DEBUG)" != "yes"
NODEBUG = 1
-!endif
+!ENDIF
-!ifndef CPU
+!IFNDEF CPU
CPU = i386
-! ifndef PLATFORM
-! ifdef TARGET_CPU
+! IFNDEF PLATFORM
+! IFDEF TARGET_CPU
PLATFORM = $(TARGET_CPU)
-! elseif defined(VSCMD_ARG_TGT_ARCH)
+! ELSEIF defined(VSCMD_ARG_TGT_ARCH)
PLATFORM = $(VSCMD_ARG_TGT_ARCH)
-! endif
-! endif
-! ifdef PLATFORM
-! if ("$(PLATFORM)" == "x64") || ("$(PLATFORM)" == "X64")
+! ENDIF
+! ENDIF
+! IFDEF PLATFORM
+! IF ("$(PLATFORM)" == "x64") || ("$(PLATFORM)" == "X64")
CPU = AMD64
-! elseif ("$(PLATFORM)" == "arm64") || ("$(PLATFORM)" == "ARM64")
+! ELSEIF ("$(PLATFORM)" == "arm64") || ("$(PLATFORM)" == "ARM64")
CPU = ARM64
-! elseif ("$(PLATFORM)" != "x86") && ("$(PLATFORM)" != "X86")
-! error *** ERROR Unknown target platform "$(PLATFORM)". Make aborted.
-! endif
-! endif
-!endif
-
-!ifdef SDK_INCLUDE_DIR
-! include $(SDK_INCLUDE_DIR)\Win32.mak
-!elseif "$(USE_WIN32MAK)"=="yes"
-! include <Win32.mak>
-!else
+! ELSEIF ("$(PLATFORM)" != "x86") && ("$(PLATFORM)" != "X86")
+! ERROR *** ERROR Unknown target platform "$(PLATFORM)". Make aborted.
+! ENDIF
+! ENDIF
+!ENDIF
+
+!IFDEF SDK_INCLUDE_DIR
+! INCLUDE $(SDK_INCLUDE_DIR)\Win32.mak
+!ELSEIF "$(USE_WIN32MAK)"=="yes"
+! INCLUDE <Win32.mak>
+!ELSE
cc = cl
link = link
rc = rc
lflags = -incremental:no -nologo
rcflags = /r
olelibsdll = ole32.lib uuid.lib oleaut32.lib user32.lib gdi32.lib advapi32.lib
-!endif
+!ENDIF
# include CPUARG
cflags = $(cflags) $(CPUARG)
# set WINVER and _WIN32_WINNT
cflags = $(cflags) -DWINVER=$(WINVER) -D_WIN32_WINNT=$(WINVER)
-!if "$(CL)" == "/D_USING_V110_SDK71_"
+!IF "$(CL)" == "/D_USING_V110_SDK71_"
rcflags = $(rcflags) /D_USING_V110_SDK71_
-!endif
+!ENDIF
SUBSYSTEM = console
-!if "$(SUBSYSTEM_VER)" != ""
+!IF "$(SUBSYSTEM_VER)" != ""
SUBSYSTEM = $(SUBSYSTEM),$(SUBSYSTEM_VER)
-!endif
+!ENDIF
-!if "$(CPU)" == "AMD64" || "$(CPU)" == "ARM64"
+!IF "$(CPU)" == "AMD64" || "$(CPU)" == "ARM64"
OFFSET = 0x11C000000
-!else
+!ELSE
OFFSET = 0x1C000000
-!endif
+!ENDIF
all: gvimext.dll
-gvimext.dll: gvimext.obj \
- gvimext.res
- $(link) $(lflags) -dll -def:gvimext.def -base:$(OFFSET) -out:$*.dll $** $(olelibsdll) shell32.lib comctl32.lib -subsystem:$(SUBSYSTEM)
+gvimext.dll: gvimext.obj gvimext.res
+ $(link) $(lflags) -dll -def:gvimext.def -base:$(OFFSET) \
+ -out:$*.dll $** $(olelibsdll) shell32.lib comctl32.lib \
+ -subsystem:$(SUBSYSTEM)
gvimext.obj: gvimext.h
$(cc) $(cflags) -DFEAT_GETTEXT $(cvarsmt) $*.cpp
gvimext.res: gvimext.rc
- $(rc) /nologo $(rcflags) $(rcvars) gvimext.rc
+ $(rc) /nologo $(rcflags) $(rcvars) gvimext.rc
clean:
- - if exist gvimext.dll del gvimext.dll
- - if exist gvimext.lib del gvimext.lib
- - if exist gvimext.exp del gvimext.exp
- - if exist gvimext.obj del gvimext.obj
- - if exist gvimext.res del gvimext.res
+ - if exist gvimext.dll $(RM) gvimext.dll
+ - if exist gvimext.lib $(RM) gvimext.lib
+ - if exist gvimext.exp $(RM) gvimext.exp
+ - if exist gvimext.obj $(RM) gvimext.obj
+ - if exist gvimext.res $(RM) gvimext.res
+
+# vim: set noet sw=8 ts=8 sts=0 wm=0 tw=79 ft=make:
# MZSCHEME=[Path to MzScheme directory]
# DYNAMIC_MZSCHEME=yes (to load the MzScheme DLLs dynamically)
# MZSCHEME_VER=[MzScheme version] (default is 3m_a0solc (6.6))
-# Used for the DLL file name. E.g.:
-# C:\Program Files (x86)\Racket\lib\libracket3m_XXXXXX.dll
+# Used for the DLL file name. E.g.:
+# C:\Program Files (x86)\Racket\lib\libracket3m_XXXXXX.dll
# MZSCHEME_DEBUG=no
#
# Perl interface:
# DYNAMIC_RUBY=yes (to load the Ruby DLL dynamically)
# RUBY_VER=[Ruby version, eg 19, 22] (default is 22)
# RUBY_API_VER_LONG=[Ruby API version, eg 1.9.1, 2.2.0]
-# (default is 2.2.0)
+# (default is 2.2.0)
# You must set RUBY_API_VER_LONG when change RUBY_VER.
# Note: If you use Ruby 1.9.3, set as follows:
# RUBY_VER=19
# you can set DEFINES on the command line, e.g.,
# nmake -f Make_mvc.mvc "DEFINES=-DEMACS_TAGS"
-RM = del /f /q
+# included common tools
+!INCLUDE .\auto\nmake\tools.mak
# Read MAJOR and MINOR from version.h.
-!IF ![for /f "tokens=2,3" %I in (version.h) do \
- @if "%I"=="VIM_VERSION_MAJOR" ( \
- echo MAJOR=%J> .\major.tmp \
- ) else if "%I"=="VIM_VERSION_MINOR" ( \
- echo MINOR=%J> .\minor.tmp && exit \
- )]
-!ENDIF
-
-!IF EXIST(.\major.tmp)
-! INCLUDE .\major.tmp
-! IF [$(RM) .\major.tmp]
+!IFNDEF MAJOR
+! IF ![for /F "tokens=3" %G in \
+ ('findstr /RC:"VIM_VERSION_MAJOR[ ^]*[0-9^]" .\version.h') \
+ do @(echo:MAJOR=%G> .\_major.tmp)]
+! INCLUDE .\_major.tmp
+! IF [$(RM) .\_major.tmp]
+! ENDIF
+! ELSE
+MAJOR = 9
! ENDIF
-!ELSE
-# Change this value for the new version
-MAJOR = 9
!ENDIF
-!IF EXIST(.\minor.tmp)
-! INCLUDE .\minor.tmp
-! IF [$(RM) .\minor.tmp]
-! ENDIF
-!ELSE
-# Change this value for the new version
-MINOR = 1
-!ENDIF
-
-# Read PATCHLEVEL from version.c.
-!IF ![cmd.exe /V:ON /Q /C "set LINE=0&& set FIND=0&& \
- for /f "tokens=1,3 delims=, " %I in (version.c) do ( \
- set /A LINE+=1 > NUL && \
- if "%J"=="included_patches[^]" ( \
- set /A FIND=LINE+3 > NUL \
- ) else if "!LINE!"=="!FIND!" ( \
- echo PATCHLEVEL=%I> .\patchlvl.tmp && exit \
- ) \
- )"]
-!ENDIF
-!IF EXIST(.\patchlvl.tmp)
-! INCLUDE .\patchlvl.tmp
-! IF [$(RM) .\patchlvl.tmp]
+!IFNDEF MINOR
+! IF ![for /F "tokens=3" %G in \
+ ('findstr /RC:"VIM_VERSION_MINOR[ ^]*[0-9^]" .\version.h') \
+ do @(echo:MINOR=%G> .\_minor.tmp)]
+! INCLUDE .\_minor.tmp
+! IF [$(RM) .\_minor.tmp]
+! ENDIF
+! ELSE
+MINOR = 1
! ENDIF
!ENDIF
-!IFDEF PATCHLEVEL
-RCFLAGS = -DVIM_VERSION_PATCHLEVEL=$(PATCHLEVEL)
+# Read PATCHLEVEL from version.c
+!IFNDEF PATCHLEVEL
+! IF ![for /F %G in \
+ ('findstr /NBLC:"static int included_patches" .\version.c \
+ ^| (set /p "_t=" ^& set /a _t+=2 ^)') do \
+ @$(CMD) $(CMDFLAGS) "for /F "skip=%G delims=, " %H in \
+ (.\version.c) do (echo:PATCHLEVEL=%H> .\_patchlvl.tmp & exit /b)"]
+! INCLUDE .\_patchlvl.tmp
+! IF [$(RM) .\_patchlvl.tmp]
+! ENDIF
+! ELSE
+PATCHLEVEL = 0
+! ENDIF
!ENDIF
-!message Vim version: $(MAJOR).$(MINOR).$(PATCHLEVEL)
+!MESSAGE Vim version: $(MAJOR).$(MINOR).$(PATCHLEVEL)
-!if "$(VIMDLL)" == "yes"
+!IF "$(VIMDLL)" == "yes"
GUI = yes
-!endif
+!ENDIF
-!ifndef DIRECTX
+!IFNDEF DIRECTX
DIRECTX = $(GUI)
-!endif
+!ENDIF
# Select a code directory, depends on GUI, OLE, DEBUG, interfaces and etc.
# If you change something else, do "make clean" first!
-!if "$(VIMDLL)" == "yes"
+!IF "$(VIMDLL)" == "yes"
OBJDIR = .\ObjD
-!elseif "$(GUI)" == "yes"
+!ELSEIF "$(GUI)" == "yes"
OBJDIR = .\ObjG
-!else
+!ELSE
OBJDIR = .\ObjC
-!endif
-!if "$(DIRECTX)" == "yes" && "$(GUI)" == "yes"
+!ENDIF
+!IF "$(DIRECTX)" == "yes" && "$(GUI)" == "yes"
OBJDIR = $(OBJDIR)X
-!endif
-!if "$(OLE)" == "yes"
+!ENDIF
+!IF "$(OLE)" == "yes"
OBJDIR = $(OBJDIR)O
-!endif
-!ifdef LUA
+!ENDIF
+!IFDEF LUA
OBJDIR = $(OBJDIR)U
-!endif
-!ifdef PERL
+!ENDIF
+!IFDEF PERL
OBJDIR = $(OBJDIR)L
-!endif
-!ifdef PYTHON
+!ENDIF
+!IFDEF PYTHON
OBJDIR = $(OBJDIR)Y
-!endif
-!ifdef PYTHON3
+!ENDIF
+!IFDEF PYTHON3
OBJDIR = $(OBJDIR)H
-!endif
-!ifdef TCL
+!ENDIF
+!IFDEF TCL
OBJDIR = $(OBJDIR)T
-!endif
-!ifdef RUBY
+!ENDIF
+!IFDEF RUBY
OBJDIR = $(OBJDIR)R
-!endif
-!ifdef MZSCHEME
+!ENDIF
+!IFDEF MZSCHEME
OBJDIR = $(OBJDIR)Z
-!endif
-!ifdef USE_MSVCRT
+!ENDIF
+!IFDEF USE_MSVCRT
OBJDIR = $(OBJDIR)V
-!endif
-!if "$(DEBUG)" == "yes"
+!ENDIF
+!IF "$(DEBUG)" == "yes"
OBJDIR = $(OBJDIR)d
-!endif
+!ENDIF
-!ifdef CPU
-! if "$(CPU)" == "I386"
+!IFDEF CPU
+! IF "$(CPU)" == "I386"
CPU = i386
-! endif
-!else # !CPU
+! ENDIF
+!ELSE # !CPU
CPU = i386
-! ifndef PLATFORM
-! ifdef TARGET_CPU
+! IFNDEF PLATFORM
+! IFDEF TARGET_CPU
PLATFORM = $(TARGET_CPU)
-! elseif defined(VSCMD_ARG_TGT_ARCH)
+! ELSEIF defined(VSCMD_ARG_TGT_ARCH)
PLATFORM = $(VSCMD_ARG_TGT_ARCH)
-! endif
-! endif
-! ifdef PLATFORM
-! if ("$(PLATFORM)" == "x64") || ("$(PLATFORM)" == "X64")
+! ENDIF
+! ENDIF
+! IFDEF PLATFORM
+! IF ("$(PLATFORM)" == "x64") || ("$(PLATFORM)" == "X64")
CPU = AMD64
-! elseif ("$(PLATFORM)" == "arm64") || ("$(PLATFORM)" == "ARM64")
+! ELSEIF ("$(PLATFORM)" == "arm64") || ("$(PLATFORM)" == "ARM64")
CPU = ARM64
-! elseif ("$(PLATFORM)" != "x86") && ("$(PLATFORM)" != "X86")
-! error *** ERROR Unknown target platform "$(PLATFORM)". Make aborted.
-! endif
-! endif # !PLATFORM
-!endif
+! ELSEIF ("$(PLATFORM)" != "x86") && ("$(PLATFORM)" != "X86")
+! ERROR *** ERROR Unknown target platform "$(PLATFORM)". Make aborted.
+! ENDIF
+! ENDIF # !PLATFORM
+!ENDIF
OBJDIR = $(OBJDIR)$(CPU)
# Build a retail version by default
-!if "$(DEBUG)" != "yes"
+!IF "$(DEBUG)" != "yes"
NODEBUG = 1
-!else
-! undef NODEBUG
+!ELSE
+! UNDEF NODEBUG
MAKEFLAGS_GVIMEXT = DEBUG=yes
-!endif
+!ENDIF
LINK = link
# Check VC version.
-!if [echo MSVCVER=_MSC_VER> msvcver.c && \
+!IF [echo MSVCVER=_MSC_VER> msvcver.c && \
echo MSVC_FULL=_MSC_FULL_VER>> msvcver.c && \
$(CC) /EP msvcver.c > msvcver.~ 2> nul]
-! message *** ERROR
-! message Cannot run Visual C to determine its version. Make sure cl.exe is in your PATH.
-! message This can usually be done by running "vcvarsall.bat", located in the bin directory where Visual Studio was installed.
-! error Make aborted.
-!else
-! include msvcver.~
-! if [del msvcver.c msvcver.~]
-! endif
-!endif
-
-!if $(MSVCVER) < 1900
-! message *** ERROR
-! message Unsupported MSVC version.
-! message Please use Visual C++ 2015 or later.
-! error Make aborted.
-!endif
+! MESSAGE *** ERROR
+! MESSAGE Cannot run Visual C to determine its version. Make sure cl.exe is in your PATH.
+! MESSAGE This can usually be done by running "vcvarsall.bat", located in the bin directory where Visual Studio was installed.
+! ERROR Make aborted.
+!ELSE
+! INCLUDE msvcver.~
+! IF [$(RM) msvcver.c msvcver.~]
+! ENDIF
+!ENDIF
+
+!IF $(MSVCVER) < 1900
+! MESSAGE *** ERROR
+! MESSAGE Unsupported MSVC version.
+! MESSAGE Please use Visual C++ 2015 or later.
+! ERROR Make aborted.
+!ENDIF
MSVC_MAJOR = ($(MSVCVER) / 100 - 5)
MSVCRT_VER = ($(MSVCVER) / 100 * 10 - 50)
# Calculate MSVCRT_VER
-!if [(set /a MSVCRT_VER="$(MSVCRT_VER)" > nul) && set MSVCRT_VER > msvcrtver.~] == 0
-! include msvcrtver.~
-! if [del msvcrtver.~]
-! endif
-!endif
+!IF [(set /a MSVCRT_VER="$(MSVCRT_VER)" > nul) && set MSVCRT_VER > msvcrtver.~] == 0
+! INCLUDE msvcrtver.~
+! IF [$(RM) msvcrtver.~]
+! ENDIF
+!ENDIF
# Show the versions (for debugging).
-#!message _MSC_VER=$(MSVCVER)
-#!message _MSC_FULL_VER=$(MSVC_FULL)
-#!message MSVCRT_VER=$(MSVCRT_VER)
+#!MESSAGE _MSC_VER=$(MSVCVER)
+#!MESSAGE _MSC_FULL_VER=$(MSVC_FULL)
+#!MESSAGE MSVCRT_VER=$(MSVCRT_VER)
# Base name of the msvcrXX.dll (vcruntimeXXX.dll)
MSVCRT_NAME = vcruntime$(MSVCRT_VER)
### Set the default $(WINVER) to make it work with Windows 7
-!ifndef WINVER
-! if "$(CPU)" == "ARM64"
+!IFNDEF WINVER
+! IF "$(CPU)" == "ARM64"
WINVER = 0x0A00
-! else
+! ELSE
WINVER = 0x0601
-! endif
-!endif
+! ENDIF
+!ENDIF
# Use multiprocess build
USE_MP = yes
-!if "$(FEATURES)" == ""
+!IF "$(FEATURES)" == ""
FEATURES = HUGE
-!endif
+!ENDIF
-!ifndef CTAGS
+!IFNDEF CTAGS
# this assumes ctags is Exuberant ctags
CTAGS = ctags -I INIT+,INIT2+,INIT3+,INIT4+,INIT5+ --fields=+S
-!endif
+!ENDIF
-!ifndef CSCOPE
+!IFNDEF CSCOPE
CSCOPE = yes
-!endif
+!ENDIF
-!if "$(CSCOPE)" == "yes"
+!IF "$(CSCOPE)" == "yes"
# CSCOPE - Include support for Cscope
-CSCOPE_DEFS = -DFEAT_CSCOPE
-!endif
+CSCOPE_DEFS = -DFEAT_CSCOPE
+!ENDIF
-!ifndef TERMINAL
-! if "$(FEATURES)" == "HUGE"
+!IFNDEF TERMINAL
+! IF "$(FEATURES)" == "HUGE"
TERMINAL = yes
-! else
+! ELSE
TERMINAL = no
-! endif
-!endif
+! ENDIF
+!ENDIF
-!if "$(TERMINAL)" == "yes"
+!IF "$(TERMINAL)" == "yes"
TERM_OBJ = \
$(OBJDIR)/terminal.obj \
$(OBJDIR)/libvterm/encoding.obj \
libvterm/src/rect.h \
libvterm/src/utf8.h \
libvterm/src/vterm_internal.h
-!endif
+!ENDIF
-!ifndef SOUND
-! if "$(FEATURES)" == "HUGE"
+!IFNDEF SOUND
+! IF "$(FEATURES)" == "HUGE"
SOUND = yes
-! else
+! ELSE
SOUND = no
-! endif
-!endif
+! ENDIF
+!ENDIF
-!ifndef SODIUM
+!IFNDEF SODIUM
SODIUM = no
-!endif
-!ifndef DYNAMIC_SODIUM
+!ENDIF
+!IFNDEF DYNAMIC_SODIUM
DYNAMIC_SODIUM = yes
-!endif
-
-!if "$(SODIUM)" != "no"
-! if "$(CPU)" == "AMD64"
-SOD_LIB = $(SODIUM)\x64\Release\v143\dynamic
-! elseif "$(CPU)" == "i386"
-SOD_LIB = $(SODIUM)\Win32\Release\v143\dynamic
-! else
+!ENDIF
+
+!IF "$(SODIUM)" != "no"
+! IF "$(CPU)" == "AMD64"
+SOD_LIB = $(SODIUM)\x64\Release\v143\dynamic
+! ELSEIF "$(CPU)" == "i386"
+SOD_LIB = $(SODIUM)\Win32\Release\v143\dynamic
+! ELSE
SODIUM = no
-! endif
-!endif
-
-!if "$(SODIUM)" != "no"
-SOD_INC = /I "$(SODIUM)\include"
-! if "$(DYNAMIC_SODIUM)" == "yes"
-SODIUM_DLL = libsodium.dll
-SOD_DEFS = -DHAVE_SODIUM -DDYNAMIC_SODIUM -DDYNAMIC_SODIUM_DLL=\"$(SODIUM_DLL)\"
-SOD_LIB =
-! else
-SOD_DEFS = -DHAVE_SODIUM
-SOD_LIB = $(SOD_LIB)\libsodium.lib
-! endif
-!endif
-
-!ifndef NETBEANS
+! ENDIF
+!ENDIF
+
+!IF "$(SODIUM)" != "no"
+SOD_INC = /I "$(SODIUM)\include"
+! IF "$(DYNAMIC_SODIUM)" == "yes"
+SODIUM_DLL = libsodium.dll
+SOD_DEFS = -DHAVE_SODIUM -DDYNAMIC_SODIUM -DDYNAMIC_SODIUM_DLL=\"$(SODIUM_DLL)\"
+SOD_LIB =
+! ELSE
+SOD_DEFS = -DHAVE_SODIUM
+SOD_LIB = $(SOD_LIB)\libsodium.lib
+! ENDIF
+!ENDIF
+
+!IFNDEF NETBEANS
NETBEANS = $(GUI)
-!endif
+!ENDIF
-!ifndef CHANNEL
-! if "$(FEATURES)" == "HUGE" || "$(TERMINAL)" == "yes"
+!IFNDEF CHANNEL
+! IF "$(FEATURES)" == "HUGE" || "$(TERMINAL)" == "yes"
CHANNEL = yes
-! else
+! ELSE
CHANNEL = $(GUI)
-! endif
-!endif
+! ENDIF
+!ENDIF
# GUI specific features.
-!if "$(GUI)" == "yes"
+!IF "$(GUI)" == "yes"
# Only allow NETBEANS for a GUI build and CHANNEL.
-! if "$(NETBEANS)" == "yes" && "$(CHANNEL)" == "yes"
+! IF "$(NETBEANS)" == "yes" && "$(CHANNEL)" == "yes"
# NETBEANS - Include support for Netbeans integration
-NETBEANS_PRO = proto/netbeans.pro
-NETBEANS_OBJ = $(OBJDIR)/netbeans.obj
-NETBEANS_DEFS = -DFEAT_NETBEANS_INTG
-
-! if "$(NBDEBUG)" == "yes"
-NBDEBUG_DEFS = -DNBDEBUG
-NBDEBUG_INCL = nbdebug.h
-NBDEBUG_SRC = nbdebug.c
-! endif
-! endif
+NETBEANS_PRO = proto/netbeans.pro
+NETBEANS_OBJ = $(OBJDIR)/netbeans.obj
+NETBEANS_DEFS = -DFEAT_NETBEANS_INTG
+
+! IF "$(NBDEBUG)" == "yes"
+NBDEBUG_DEFS = -DNBDEBUG
+NBDEBUG_INCL = nbdebug.h
+NBDEBUG_SRC = nbdebug.c
+! ENDIF
+! ENDIF
# DirectWrite (DirectX)
-! if "$(DIRECTX)" == "yes"
-DIRECTX_DEFS = -DFEAT_DIRECTX -DDYNAMIC_DIRECTX
-! if "$(COLOR_EMOJI)" != "no"
-DIRECTX_DEFS = $(DIRECTX_DEFS) -DFEAT_DIRECTX_COLOR_EMOJI
-! endif
-DIRECTX_INCL = gui_dwrite.h
-DIRECTX_OBJ = $(OUTDIR)\gui_dwrite.obj
-! endif
+! IF "$(DIRECTX)" == "yes"
+DIRECTX_DEFS = -DFEAT_DIRECTX -DDYNAMIC_DIRECTX
+! IF "$(COLOR_EMOJI)" != "no"
+DIRECTX_DEFS = $(DIRECTX_DEFS) -DFEAT_DIRECTX_COLOR_EMOJI
+! ENDIF
+DIRECTX_INCL = gui_dwrite.h
+DIRECTX_OBJ = $(OUTDIR)\gui_dwrite.obj
+! ENDIF
# Only allow XPM for a GUI build.
-! ifndef XPM
-! ifndef USE_MSVCRT
+! IFNDEF XPM
+! IFNDEF USE_MSVCRT
# Both XPM and USE_MSVCRT are not set, use the included xpm files, depending
# on the architecture.
-! if "$(CPU)" == "AMD64"
+! IF "$(CPU)" == "AMD64"
XPM = xpm\x64
-! elseif "$(CPU)" == "ARM64"
+! ELSEIF "$(CPU)" == "ARM64"
XPM = xpm\arm64
-! elseif "$(CPU)" == "i386"
+! ELSEIF "$(CPU)" == "i386"
XPM = xpm\x86
-! else
+! ELSE
XPM = no
-! endif
-! else # USE_MSVCRT
+! ENDIF
+! ELSE # USE_MSVCRT
XPM = no
-! endif # USE_MSVCRT
-! endif # XPM
-! if "$(XPM)" != "no"
+! ENDIF # USE_MSVCRT
+! ENDIF # XPM
+! IF "$(XPM)" != "no"
# XPM - Include support for XPM signs
# See the xpm directory for more information.
-XPM_OBJ = $(OBJDIR)/xpm_w32.obj
-XPM_DEFS = -DFEAT_XPM_W32
-XPM_LIB = $(XPM)\lib-vc14\libXpm.lib
-XPM_INC = -I $(XPM)\include -I $(XPM)\..\include
-! endif
-!endif # GUI
-
-!if "$(SOUND)" == "yes"
-SOUND_PRO = proto/sound.pro
-SOUND_OBJ = $(OBJDIR)/sound.obj
-SOUND_DEFS = -DFEAT_SOUND
-SOUND_LIB = winmm.lib
-!endif
-
-!if "$(CHANNEL)" == "yes"
-CHANNEL_PRO = proto/job.pro proto/channel.pro
-CHANNEL_OBJ = $(OBJDIR)/job.obj $(OBJDIR)/channel.obj
-CHANNEL_DEFS = -DFEAT_JOB_CHANNEL -DFEAT_IPV6 -DHAVE_INET_NTOP
-
-NETBEANS_LIB = Ws2_32.lib
-!endif
+XPM_OBJ = $(OBJDIR)/xpm_w32.obj
+XPM_DEFS = -DFEAT_XPM_W32
+XPM_LIB = $(XPM)\lib-vc14\libXpm.lib
+XPM_INC = -I $(XPM)\include -I $(XPM)\..\include
+! ENDIF
+!ENDIF # GUI
+
+!IF "$(SOUND)" == "yes"
+SOUND_PRO = proto/sound.pro
+SOUND_OBJ = $(OBJDIR)/sound.obj
+SOUND_DEFS = -DFEAT_SOUND
+SOUND_LIB = winmm.lib
+!ENDIF
+
+!IF "$(CHANNEL)" == "yes"
+CHANNEL_PRO = proto/job.pro proto/channel.pro
+CHANNEL_OBJ = $(OBJDIR)/job.obj $(OBJDIR)/channel.obj
+CHANNEL_DEFS = -DFEAT_JOB_CHANNEL -DFEAT_IPV6 -DHAVE_INET_NTOP
+
+NETBEANS_LIB = Ws2_32.lib
+!ENDIF
# need advapi32.lib for GetUserName()
# need shell32.lib for ExtractIcon()
# gdi32.lib and comdlg32.lib for printing support
# ole32.lib and uuid.lib are needed for FEAT_SHORTCUT
CON_LIB = oldnames.lib kernel32.lib advapi32.lib shell32.lib gdi32.lib \
- comdlg32.lib ole32.lib netapi32.lib uuid.lib user32.lib \
- /machine:$(CPU)
-!if "$(DELAYLOAD)" == "yes"
+ comdlg32.lib ole32.lib netapi32.lib uuid.lib user32.lib \
+ /machine:$(CPU)
+!IF "$(DELAYLOAD)" == "yes"
CON_LIB = $(CON_LIB) /DELAYLOAD:comdlg32.dll /DELAYLOAD:ole32.dll DelayImp.lib
-!endif
+!ENDIF
# If you have a fixed directory for $VIM or $VIMRUNTIME, other than the normal
# default, use these lines.
#VIMRUNTIMEDIR = somewhere
CFLAGS = -c /W3 /GF /nologo -I. -Iproto -DHAVE_PATHDEF -DWIN32 -DHAVE_STDINT_H \
- $(CSCOPE_DEFS) $(TERM_DEFS) $(SOUND_DEFS) $(NETBEANS_DEFS) \
- $(NBDEBUG_DEFS) $(XPM_DEFS) $(SOD_DEFS) $(SOD_INC) \
- $(CHANNEL_DEFS) $(DEFINES) $(CI_CFLAGS) \
- -DWINVER=$(WINVER) -D_WIN32_WINNT=$(WINVER) \
- /source-charset:utf-8
+ $(CSCOPE_DEFS) $(TERM_DEFS) $(SOUND_DEFS) $(NETBEANS_DEFS) \
+ $(NBDEBUG_DEFS) $(XPM_DEFS) $(SOD_DEFS) $(SOD_INC) $(CHANNEL_DEFS) \
+ $(DEFINES) $(CI_CFLAGS) -DWINVER=$(WINVER) -D_WIN32_WINNT=$(WINVER) \
+ /source-charset:utf-8
+
+RCFLAGS = -DVIM_VERSION_PATCHLEVEL=$(PATCHLEVEL)
#>>>>> end of choices
###########################################################################
-DEL_TREE = rmdir /s /q
-
INTDIR = $(OBJDIR)
OUTDIR = $(OBJDIR)
### Validate CPUNR
-!if "$(CPU)" == "i386" || "$(CPU)" == "AMD64"
-! ifndef CPUNR
+!IF "$(CPU)" == "i386" || "$(CPU)" == "AMD64"
+! IFNDEF CPUNR
# default to SSE2
CPUNR = sse2
-! elseif "$(CPU)" == "i386" \
+! ELSEIF "$(CPU)" == "i386" \
&& ("$(CPUNR)" == "i386" || "$(CPUNR)" == "i486" || "$(CPUNR)" == "i586")
# alias i386, i486 and i586 to i686
-! message *** WARNING CPUNR=$(CPUNR) is not a valid target architecture.
-! message Windows 7 is the minimum target OS, with a minimum target
-! message architecture of i686.
-! message Retargeting to i686
+! MESSAGE *** WARNING CPUNR=$(CPUNR) is not a valid target architecture.
+! MESSAGE Windows 7 is the minimum target OS, with a minimum target
+! MESSAGE architecture of i686.
+! MESSAGE Retargeting to i686
CPUNR = i686
-! elseif "$(CPUNR)" == "pentium4"
+! ELSEIF "$(CPUNR)" == "pentium4"
# alias pentium4 to sse2
-! message *** WARNING CPUNR=pentium4 is deprecated in favour of sse2.
-! message Retargeting to sse2.
+! MESSAGE *** WARNING CPUNR=pentium4 is deprecated in favour of sse2.
+! MESSAGE Retargeting to sse2.
CPUNR = sse2
-! elseif ("$(CPU)" != "i386" \
+! ELSEIF ("$(CPU)" != "i386" \
|| ("$(CPUNR)" != "any" && "$(CPUNR)" != "i686" \
&& "$(CPUNR)" != "sse" )) \
&& "$(CPUNR)" != "sse2" && "$(CPUNR)" != "avx" \
&& "$(CPUNR)" != "avx2" && "$(CPUNR)" != "avx512"
-! error *** ERROR Unknown target architecture "$(CPUNR)". Make aborted.
-! endif
-!elseif "$(CPU)" == "ARM64"
+! ERROR *** ERROR Unknown target architecture "$(CPUNR)". Make aborted.
+! ENDIF
+!ELSEIF "$(CPU)" == "ARM64"
# TODO: Validate CPUNR depending on the VS version.
CPUNR = armv8.0
-!endif
+!ENDIF
# Convert processor ID to MVC-compatible number
-!if "$(CPU)" == "i386" || "$(CPU)" == "AMD64"
+!IF "$(CPU)" == "i386" || "$(CPU)" == "AMD64"
# IA32/SSE/SSE2 are only supported on x86
-! if "$(CPU)" == "i386" \
+! IF "$(CPU)" == "i386" \
&& ("$(CPUNR)" == "i686" || "$(CPUNR)" == "any")
CPUARG = /arch:IA32
-! elseif "$(CPU)" == "i386" && "$(CPUNR)" == "sse"
+! ELSEIF "$(CPU)" == "i386" && "$(CPUNR)" == "sse"
CPUARG = /arch:SSE
-! elseif "$(CPU)" == "i386" && "$(CPUNR)" == "sse2"
+! ELSEIF "$(CPU)" == "i386" && "$(CPUNR)" == "sse2"
CPUARG = /arch:SSE2
-! elseif "$(CPUNR)" == "avx"
+! ELSEIF "$(CPUNR)" == "avx"
CPUARG = /arch:AVX
-! elseif "$(CPUNR)" == "avx2"
+! ELSEIF "$(CPUNR)" == "avx2"
CPUARG = /arch:AVX2
-! elseif "$(CPUNR)" == "avx512"
+! ELSEIF "$(CPUNR)" == "avx512"
CPUARG = /arch:AVX512
-! endif
-!elseif "$(CPU)" == "ARM64" && defined(CPUNR)
+! ENDIF
+!ELSEIF "$(CPU)" == "ARM64" && defined(CPUNR)
CPUARG = /arch:$(CPUNR)
-!endif
+!ENDIF
# Pass CPUARG to GvimExt, to avoid using version-dependent defaults
MAKEFLAGS_GVIMEXT = $(MAKEFLAGS_GVIMEXT) CPUARG="$(CPUARG)"
-!if "$(VIMDLL)" == "yes"
+!IF "$(VIMDLL)" == "yes"
VIMDLLBASE = vim
-! if "$(CPU)" == "i386"
+! IF "$(CPU)" == "i386"
VIMDLLBASE = $(VIMDLLBASE)32
-! else
+! ELSE
VIMDLLBASE = $(VIMDLLBASE)64
-! endif
-! if "$(DEBUG)" == "yes"
+! ENDIF
+! IF "$(DEBUG)" == "yes"
VIMDLLBASE = $(VIMDLLBASE)d
-! endif
-!endif
+! ENDIF
+!ENDIF
LIBC =
DEBUGINFO = /Zi
# Use multiprocess build.
-!if "$(USE_MP)" == "yes"
+!IF "$(USE_MP)" == "yes"
CFLAGS = $(CFLAGS) /MP
-!endif
+!ENDIF
# Use static code analysis
-!if "$(ANALYZE)" == "yes"
+!IF "$(ANALYZE)" == "yes"
CFLAGS = $(CFLAGS) /analyze
-!endif
+!ENDIF
# Address Sanitizer (ASAN) generally available starting with VS2019 version
# 16.9
-!if ("$(ASAN)" == "yes") && ($(MSVC_FULL) >= 192829913)
+!IF ("$(ASAN)" == "yes") && ($(MSVC_FULL) >= 192829913)
CFLAGS = $(CFLAGS) /fsanitize=address
-!endif
+!ENDIF
-!ifdef NODEBUG
+!IFDEF NODEBUG
VIM = vim
-! if "$(OPTIMIZE)" == "SPACE"
+! IF "$(OPTIMIZE)" == "SPACE"
OPTFLAG = /O1
-! elseif "$(OPTIMIZE)" == "SPEED"
+! ELSEIF "$(OPTIMIZE)" == "SPEED"
OPTFLAG = /O2
-! else # MAXSPEED
+! ELSE # MAXSPEED
OPTFLAG = /Ox
-! endif
+! ENDIF
# Use link time code generation if not worried about size
-! if "$(OPTIMIZE)" != "SPACE"
+! IF "$(OPTIMIZE)" != "SPACE"
OPTFLAG = $(OPTFLAG) /GL
-! endif
+! ENDIF
CFLAGS = $(CFLAGS) $(OPTFLAG) -DNDEBUG $(CPUARG)
RCFLAGS = $(RCFLAGS) -DNDEBUG
-! ifdef USE_MSVCRT
+! IFDEF USE_MSVCRT
CFLAGS = $(CFLAGS) /MD
LIBC = msvcrt.lib
-! else
+! ELSE
CFLAGS = $(CFLAGS) /Zl /MT
LIBC = libcmt.lib
-! endif
+! ENDIF
-!else # DEBUG
+!ELSE # DEBUG
VIM = vimd
-! if ("$(CPU)" == "i386") || ("$(CPU)" == "ix86")
+! IF ("$(CPU)" == "i386") || ("$(CPU)" == "ix86")
DEBUGINFO = /ZI
-! endif
+! ENDIF
CFLAGS = $(CFLAGS) -D_DEBUG -DDEBUG /Od
RCFLAGS = $(RCFLAGS) -D_DEBUG -DDEBUG
# The /fixed:no is needed for Quantify.
LIBC = /fixed:no
-! ifdef USE_MSVCRT
+! IFDEF USE_MSVCRT
CFLAGS = $(CFLAGS) /MDd
LIBC = $(LIBC) msvcrtd.lib
-! else
+! ELSE
CFLAGS = $(CFLAGS) /Zl /MTd
LIBC = $(LIBC) libcmtd.lib
-! endif
+! ENDIF
-!endif # DEBUG
+!ENDIF # DEBUG
# Visual Studio 2005 has 'deprecated' many of the standard CRT functions
CFLAGS_DEPR = -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE
CFLAGS = $(CFLAGS) $(CFLAGS_DEPR)
-!include Make_all.mak
-!include testdir\Make_all.mak
+!INCLUDE .\Make_all.mak
+!INCLUDE .\testdir\Make_all.mak
-INCL = vim.h alloc.h ascii.h ex_cmds.h feature.h errors.h globals.h \
+INCL = vim.h alloc.h ascii.h ex_cmds.h feature.h errors.h globals.h \
keymap.h macros.h option.h os_dos.h os_win32.h proto.h regexp.h \
spell.h structs.h termdefs.h beval.h $(NBDEBUG_INCL)
$(OUTDIR)\winclip.obj \
$(OUTDIR)\window.obj \
-!if "$(VIMDLL)" == "yes"
+!IF "$(VIMDLL)" == "yes"
OBJ = $(OBJ) $(OUTDIR)\os_w32dll.obj $(OUTDIR)\vimd.res
EXEOBJC = $(OUTDIR)\os_w32exec.obj $(OUTDIR)\vimc.res
EXEOBJG = $(OUTDIR)\os_w32exeg.obj $(OUTDIR)\vimg.res
CFLAGS = $(CFLAGS) -DVIMDLL
-! ifdef MZSCHEME
+! IFDEF MZSCHEME
EXECFLAGS =
EXELIBC = $(LIBC)
-! else
+! ELSE
EXECFLAGS = -DUSE_OWNSTARTUP /GS-
EXELIBC =
-! endif
-!else
+! ENDIF
+!ELSE
OBJ = $(OBJ) $(OUTDIR)\os_w32exe.obj $(OUTDIR)\vim.res
-!endif
+!ENDIF
-!if "$(OLE)" == "yes"
+!IF "$(OLE)" == "yes"
CFLAGS = $(CFLAGS) -DFEAT_OLE
RCFLAGS = $(RCFLAGS) -DFEAT_OLE
OLE_OBJ = $(OUTDIR)\if_ole.obj
OLE_IDL = if_ole.idl
OLE_LIB = oleaut32.lib
-!endif
+!ENDIF
-!ifndef IME
+!IFNDEF IME
IME = yes
-!endif
-!if "$(IME)" == "yes"
+!ENDIF
+!IF "$(IME)" == "yes"
CFLAGS = $(CFLAGS) -DFEAT_MBYTE_IME
-! ifndef DYNAMIC_IME
+! IFNDEF DYNAMIC_IME
DYNAMIC_IME = yes
-! endif
-! if "$(DYNAMIC_IME)" == "yes"
+! ENDIF
+! IF "$(DYNAMIC_IME)" == "yes"
CFLAGS = $(CFLAGS) -DDYNAMIC_IME
-! else
+! ELSE
IME_LIB = imm32.lib
-! endif
-!endif
+! ENDIF
+!ENDIF
-!if "$(GUI)" == "yes"
+!IF "$(GUI)" == "yes"
SUBSYSTEM = windows
CFLAGS = $(CFLAGS) -DFEAT_GUI_MSWIN
RCFLAGS = $(RCFLAGS) -DFEAT_GUI_MSWIN
-! if "$(VIMDLL)" == "yes"
+! IF "$(VIMDLL)" == "yes"
SUBSYSTEM_CON = console
GVIM = g$(VIM)
CUI_INCL = iscygpty.h
CUI_OBJ = $(OUTDIR)\iscygpty.obj
RCFLAGS = $(RCFLAGS) -DVIMDLL
-! else
+! ELSE
VIM = g$(VIM)
-! endif
+! ENDIF
GUI_INCL = \
gui.h
GUI_OBJ = \
$(OUTDIR)\gui_w32.obj
GUI_LIB = \
version.lib $(IME_LIB) winspool.lib comctl32.lib
-!else
+!ELSE
SUBSYSTEM = console
CUI_INCL = iscygpty.h
CUI_OBJ = $(OUTDIR)\iscygpty.obj
-!endif
+!ENDIF
SUBSYSTEM_TOOLS = console
XDIFF_OBJ = $(OBJDIR)/xdiffi.obj \
xdiff/xutils.h
-!if "$(SUBSYSTEM_VER)" != ""
+!IF "$(SUBSYSTEM_VER)" != ""
SUBSYSTEM = $(SUBSYSTEM),$(SUBSYSTEM_VER)
SUBSYSTEM_TOOLS = $(SUBSYSTEM_TOOLS),$(SUBSYSTEM_VER)
-! if "$(VIMDLL)" == "yes"
+! IF "$(VIMDLL)" == "yes"
SUBSYSTEM_CON = $(SUBSYSTEM_CON),$(SUBSYSTEM_VER)
-! endif
+! ENDIF
# Pass SUBSYSTEM_VER to GvimExt and other tools
MAKEFLAGS_GVIMEXT = $(MAKEFLAGS_GVIMEXT) SUBSYSTEM_VER=$(SUBSYSTEM_VER)
MAKEFLAGS_TOOLS = $(MAKEFLAGS_TOOLS) SUBSYSTEM_VER=$(SUBSYSTEM_VER)
-!endif
+!ENDIF
-!if "$(GUI)" == "yes" && "$(DIRECTX)" == "yes"
+!IF "$(GUI)" == "yes" && "$(DIRECTX)" == "yes"
CFLAGS = $(CFLAGS) $(DIRECTX_DEFS)
GUI_INCL = $(GUI_INCL) $(DIRECTX_INCL)
GUI_OBJ = $(GUI_OBJ) $(DIRECTX_OBJ)
-!endif
+!ENDIF
# iconv.dll library (dynamically loaded)
-!ifndef ICONV
+!IFNDEF ICONV
ICONV = yes
-!endif
-!if "$(ICONV)" == "yes"
+!ENDIF
+!IF "$(ICONV)" == "yes"
CFLAGS = $(CFLAGS) -DDYNAMIC_ICONV
-!endif
+!ENDIF
# libintl.dll library
-!ifndef GETTEXT
+!IFNDEF GETTEXT
GETTEXT = yes
-!endif
-!if "$(GETTEXT)" == "yes"
+!ENDIF
+!IF "$(GETTEXT)" == "yes"
CFLAGS = $(CFLAGS) -DDYNAMIC_GETTEXT
-!endif
+!ENDIF
# TCL interface
-!ifdef TCL
-! ifndef TCL_VER
+!IFDEF TCL
+! IFNDEF TCL_VER
TCL_VER = 86
TCL_VER_LONG = 8.6
-! endif
-! message Tcl requested (version $(TCL_VER)) - root dir is "$(TCL)"
-! if "$(DYNAMIC_TCL)" == "yes"
-! message Tcl DLL will be loaded dynamically
-! ifndef TCL_DLL
+! ENDIF
+! MESSAGE Tcl requested (version $(TCL_VER)) - root dir is "$(TCL)"
+! IF "$(DYNAMIC_TCL)" == "yes"
+! MESSAGE Tcl DLL will be loaded dynamically
+! IFNDEF TCL_DLL
TCL_DLL = tcl$(TCL_VER).dll
-! endif
-CFLAGS = $(CFLAGS) -DFEAT_TCL -DDYNAMIC_TCL -DDYNAMIC_TCL_DLL=\"$(TCL_DLL)\" \
+! ENDIF
+CFLAGS = $(CFLAGS) -DFEAT_TCL -DDYNAMIC_TCL -DDYNAMIC_TCL_DLL=\"$(TCL_DLL)\" \
-DDYNAMIC_TCL_VER=\"$(TCL_VER_LONG)\"
-TCL_OBJ = $(OUTDIR)\if_tcl.obj
-TCL_INC = /I "$(TCL)\Include" /I "$(TCL)"
+TCL_OBJ = $(OUTDIR)\if_tcl.obj
+TCL_INC = /I "$(TCL)\Include" /I "$(TCL)"
TCL_LIB = "$(TCL)\lib\tclstub$(TCL_VER).lib"
-! else
-CFLAGS = $(CFLAGS) -DFEAT_TCL
-TCL_OBJ = $(OUTDIR)\if_tcl.obj
-TCL_INC = /I "$(TCL)\Include" /I "$(TCL)"
+! ELSE
+CFLAGS = $(CFLAGS) -DFEAT_TCL
+TCL_OBJ = $(OUTDIR)\if_tcl.obj
+TCL_INC = /I "$(TCL)\Include" /I "$(TCL)"
TCL_LIB = "$(TCL)\lib\tcl$(TCL_VER)vc.lib"
-! endif
-!endif
+! ENDIF
+!ENDIF
# Lua interface
-!ifdef LUA
-! ifndef LUA_VER
+!IFDEF LUA
+! IFNDEF LUA_VER
LUA_VER = 53
-! endif
-! message Lua requested (version $(LUA_VER)) - root dir is "$(LUA)"
-! if "$(DYNAMIC_LUA)" == "yes"
-! message Lua DLL will be loaded dynamically
-! endif
+! ENDIF
+! MESSAGE Lua requested (version $(LUA_VER)) - root dir is "$(LUA)"
+! IF "$(DYNAMIC_LUA)" == "yes"
+! MESSAGE Lua DLL will be loaded dynamically
+! ENDIF
CFLAGS = $(CFLAGS) -DFEAT_LUA
LUA_OBJ = $(OUTDIR)\if_lua.obj
LUA_INC = /I "$(LUA)\include" /I "$(LUA)"
-! if "$(DYNAMIC_LUA)" == "yes"
+! IF "$(DYNAMIC_LUA)" == "yes"
CFLAGS = $(CFLAGS) -DDYNAMIC_LUA \
-DDYNAMIC_LUA_DLL=\"lua$(LUA_VER).dll\"
LUA_LIB = /nodefaultlib:lua$(LUA_VER).lib
-! else
+! ELSE
LUA_LIB = "$(LUA)\lib\lua$(LUA_VER).lib"
-! endif
-!endif
+! ENDIF
+!ENDIF
-!if defined(PYTHON) && defined(PYTHON3)
+!IF defined(PYTHON) && defined(PYTHON3)
DYNAMIC_PYTHON = yes
DYNAMIC_PYTHON3 = yes
-!endif
+!ENDIF
# PYTHON interface
-!ifdef PYTHON
-! ifndef PYTHON_VER
+!IFDEF PYTHON
+! IFNDEF PYTHON_VER
PYTHON_VER = 27
-! endif
-! message Python requested (version $(PYTHON_VER)) - root dir is "$(PYTHON)"
-! if "$(DYNAMIC_PYTHON)" == "yes"
-! message Python DLL will be loaded dynamically
-! endif
+! ENDIF
+! MESSAGE Python requested (version $(PYTHON_VER)) - root dir is "$(PYTHON)"
+! IF "$(DYNAMIC_PYTHON)" == "yes"
+! MESSAGE Python DLL will be loaded dynamically
+! ENDIF
CFLAGS = $(CFLAGS) -DFEAT_PYTHON
PYTHON_OBJ = $(OUTDIR)\if_python.obj
PYTHON_INC = /I "$(PYTHON)\Include" /I "$(PYTHON)\PC"
-! if "$(DYNAMIC_PYTHON)" == "yes"
+! IF "$(DYNAMIC_PYTHON)" == "yes"
CFLAGS = $(CFLAGS) -DDYNAMIC_PYTHON \
-DDYNAMIC_PYTHON_DLL=\"python$(PYTHON_VER).dll\"
PYTHON_LIB = /nodefaultlib:python$(PYTHON_VER).lib
-! else
+! ELSE
PYTHON_LIB = "$(PYTHON)\libs\python$(PYTHON_VER).lib"
-! endif
-!endif
+! ENDIF
+!ENDIF
# PYTHON3 interface
-!ifdef PYTHON3
-! ifndef DYNAMIC_PYTHON3_STABLE_ABI
-! if "$(DYNAMIC_PYTHON3)" == "yes"
+!IFDEF PYTHON3
+! IFNDEF DYNAMIC_PYTHON3_STABLE_ABI
+! IF "$(DYNAMIC_PYTHON3)" == "yes"
DYNAMIC_PYTHON3_STABLE_ABI = yes
-! endif
-! endif
-! ifndef PYTHON3_VER
+! ENDIF
+! ENDIF
+! IFNDEF PYTHON3_VER
PYTHON3_VER = 38
-! endif
-! if "$(DYNAMIC_PYTHON3_STABLE_ABI)" == "yes"
+! ENDIF
+! IF "$(DYNAMIC_PYTHON3_STABLE_ABI)" == "yes"
PYTHON3_NAME = python3
-! else
+! ELSE
PYTHON3_NAME = python$(PYTHON3_VER)
-! endif
-! ifndef DYNAMIC_PYTHON3_DLL
+! ENDIF
+! IFNDEF DYNAMIC_PYTHON3_DLL
DYNAMIC_PYTHON3_DLL = $(PYTHON3_NAME).dll
-! endif
-! message Python3 requested (version $(PYTHON3_VER)) - root dir is "$(PYTHON3)"
-! if "$(DYNAMIC_PYTHON3)" == "yes"
-! message Python3 DLL will be loaded dynamically
-! endif
+! ENDIF
+! MESSAGE Python3 requested (version $(PYTHON3_VER)) - root dir is "$(PYTHON3)"
+! IF "$(DYNAMIC_PYTHON3)" == "yes"
+! MESSAGE Python3 DLL will be loaded dynamically
+! ENDIF
CFLAGS = $(CFLAGS) -DFEAT_PYTHON3
PYTHON3_OBJ = $(OUTDIR)\if_python3.obj
PYTHON3_INC = /I "$(PYTHON3)\Include" /I "$(PYTHON3)\PC"
-! if "$(DYNAMIC_PYTHON3)" == "yes"
+! IF "$(DYNAMIC_PYTHON3)" == "yes"
CFLAGS = $(CFLAGS) -DDYNAMIC_PYTHON3 \
-DDYNAMIC_PYTHON3_DLL=\"$(DYNAMIC_PYTHON3_DLL)\"
-! if "$(DYNAMIC_PYTHON3_STABLE_ABI)" == "yes"
+! IF "$(DYNAMIC_PYTHON3_STABLE_ABI)" == "yes"
CFLAGS = $(CFLAGS) -DDYNAMIC_PYTHON3_STABLE_ABI
PYTHON3_INC = $(PYTHON3_INC) -DPy_LIMITED_API=0x3080000
-! endif
+! ENDIF
PYTHON3_LIB = /nodefaultlib:$(PYTHON3_NAME).lib
-! else
+! ELSE
CFLAGS = $(CFLAGS) -DPYTHON3_DLL=\"$(DYNAMIC_PYTHON3_DLL)\"
PYTHON3_LIB = "$(PYTHON3)\libs\$(PYTHON3_NAME).lib"
-! endif
-!endif
+! ENDIF
+!ENDIF
# MzScheme interface
-!ifdef MZSCHEME
-! message MzScheme requested - root dir is "$(MZSCHEME)"
-! ifndef MZSCHEME_VER
+!IFDEF MZSCHEME
+! MESSAGE MzScheme requested - root dir is "$(MZSCHEME)"
+! IFNDEF MZSCHEME_VER
MZSCHEME_VER = 3m_a0solc
-! endif
-! ifndef MZSCHEME_COLLECTS
+! ENDIF
+! IFNDEF MZSCHEME_COLLECTS
MZSCHEME_COLLECTS = $(MZSCHEME)\collects
-! endif
+! ENDIF
CFLAGS = $(CFLAGS) -DFEAT_MZSCHEME -I "$(MZSCHEME)\include"
-! if EXIST("$(MZSCHEME)\lib\msvc\libmzsch$(MZSCHEME_VER).lib")
+! IF EXIST("$(MZSCHEME)\lib\msvc\libmzsch$(MZSCHEME_VER).lib")
MZSCHEME_MAIN_LIB = mzsch
-! else
+! ELSE
MZSCHEME_MAIN_LIB = racket
-! endif
-! if (EXIST("$(MZSCHEME)\lib\lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).dll") \
- && !EXIST("$(MZSCHEME)\lib\libmzgc$(MZSCHEME_VER).dll")) \
- || (EXIST("$(MZSCHEME)\lib\msvc\lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).lib") \
- && !EXIST("$(MZSCHEME)\lib\msvc\libmzgc$(MZSCHEME_VER).lib"))
-! message Building with Precise GC
+! ENDIF
+! IF (EXIST("$(MZSCHEME)\lib\lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).dll") \
+ && !EXIST("$(MZSCHEME)\lib\libmzgc$(MZSCHEME_VER).dll")) \
+ || (EXIST("$(MZSCHEME)\lib\msvc\lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).lib") \
+ && !EXIST("$(MZSCHEME)\lib\msvc\libmzgc$(MZSCHEME_VER).lib"))
+! MESSAGE Building with Precise GC
MZSCHEME_PRECISE_GC = yes
CFLAGS = $(CFLAGS) -DMZ_PRECISE_GC
-! endif
-! if "$(DYNAMIC_MZSCHEME)" == "yes"
-! message MzScheme DLLs will be loaded dynamically
+! ENDIF
+! IF "$(DYNAMIC_MZSCHEME)" == "yes"
+! MESSAGE MzScheme DLLs will be loaded dynamically
CFLAGS = $(CFLAGS) -DDYNAMIC_MZSCHEME
-! if "$(MZSCHEME_PRECISE_GC)" == "yes"
+! IF "$(MZSCHEME_PRECISE_GC)" == "yes"
# Precise GC does not use separate dll
CFLAGS = $(CFLAGS) \
- -DDYNAMIC_MZSCH_DLL=\"lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).dll\" \
- -DDYNAMIC_MZGC_DLL=\"lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).dll\"
-! else
+ -DDYNAMIC_MZSCH_DLL=\"lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).dll\" \
+ -DDYNAMIC_MZGC_DLL=\"lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).dll\"
+! ELSE
CFLAGS = $(CFLAGS) \
- -DDYNAMIC_MZSCH_DLL=\"lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).dll\" \
- -DDYNAMIC_MZGC_DLL=\"libmzgc$(MZSCHEME_VER).dll\"
-! endif
-! else
-! if "$(MZSCHEME_DEBUG)" == "yes"
+ -DDYNAMIC_MZSCH_DLL=\"lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).dll\" \
+ -DDYNAMIC_MZGC_DLL=\"libmzgc$(MZSCHEME_VER).dll\"
+! ENDIF
+! ELSE
+! IF "$(MZSCHEME_DEBUG)" == "yes"
CFLAGS = $(CFLAGS) -DMZSCHEME_FORCE_GC
-! endif
-! if "$(MZSCHEME_PRECISE_GC)" == "yes"
+! ENDIF
+! IF "$(MZSCHEME_PRECISE_GC)" == "yes"
# Precise GC does not use separate dll
-! if EXIST("$(MZSCHEME)\lib\lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).def")
+! IF EXIST("$(MZSCHEME)\lib\lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).def")
# create .lib from .def
MZSCHEME_LIB = lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).lib
MZSCHEME_EXTRA_DEP = lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).lib
-! else
+! ELSE
MZSCHEME_LIB = "$(MZSCHEME)\lib\msvc\lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).lib"
-! endif
-! else
+! ENDIF
+! ELSE
MZSCHEME_LIB = "$(MZSCHEME)\lib\msvc\libmzgc$(MZSCHEME_VER).lib" \
- "$(MZSCHEME)\lib\msvc\lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).lib"
-! endif
-! endif
+ "$(MZSCHEME)\lib\msvc\lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).lib"
+! ENDIF
+! ENDIF
MZSCHEME_OBJ = $(OUTDIR)\if_mzsch.obj
# increase stack size
MZSCHEME_LIB = $(MZSCHEME_LIB) /STACK:8388608
MZSCHEME_INCL = if_mzsch.h
-!endif
+!ENDIF
# Perl interface
-!ifdef PERL
-! ifndef PERL_VER
+!IFDEF PERL
+! IFNDEF PERL_VER
PERL_VER = 524
-! endif
-! message Perl requested (version $(PERL_VER)) - root dir is "$(PERL)"
-! if "$(DYNAMIC_PERL)" == "yes"
-! message Perl DLL will be loaded dynamically
-! endif
+! ENDIF
+! MESSAGE Perl requested (version $(PERL_VER)) - root dir is "$(PERL)"
+! IF "$(DYNAMIC_PERL)" == "yes"
+! MESSAGE Perl DLL will be loaded dynamically
+! ENDIF
# Is Perl installed in architecture-specific directories?
-! if exist($(PERL)\Bin\MSWin32-x86)
+! IF exist($(PERL)\Bin\MSWin32-x86)
PERL_ARCH = \MSWin32-x86
-! endif
+! ENDIF
PERL_INCDIR = $(PERL)\Lib$(PERL_ARCH)\Core
# Version-dependent stuff
PERL_DLL = perl$(PERL_VER).dll
-! if exist($(PERL_INCDIR)\perl$(PERL_VER).lib)
+! IF exist($(PERL_INCDIR)\perl$(PERL_VER).lib)
PERL_LIB = $(PERL_INCDIR)\perl$(PERL_VER).lib
-! else
+! ELSE
# For ActivePerl 5.18 and later
PERL_LIB = $(PERL_INCDIR)\libperl$(PERL_VER).a
-! endif
+! ENDIF
CFLAGS = $(CFLAGS) -DFEAT_PERL -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS
# Do we want to load Perl dynamically?
-! if "$(DYNAMIC_PERL)" == "yes"
+! IF "$(DYNAMIC_PERL)" == "yes"
CFLAGS = $(CFLAGS) -DDYNAMIC_PERL -DDYNAMIC_PERL_DLL=\"$(PERL_DLL)\"
-! undef PERL_LIB
-! endif
+! UNDEF PERL_LIB
+! ENDIF
PERL_EXE = $(PERL)\Bin$(PERL_ARCH)\perl
PERL_INC = /I $(PERL_INCDIR)
PERL_OBJ = $(OUTDIR)\if_perl.obj $(OUTDIR)\if_perlsfio.obj
XSUBPP = $(PERL)\lib\ExtUtils\xsubpp
-! if exist($(XSUBPP))
+! IF exist($(XSUBPP))
XSUBPP = $(PERL_EXE) $(XSUBPP)
-! else
+! ELSE
XSUBPP = xsubpp
-! endif
+! ENDIF
XSUBPP_TYPEMAP = $(PERL)\lib\ExtUtils\typemap
-!endif
+!ENDIF
#
# Support Ruby interface
#
-!ifdef RUBY
+!IFDEF RUBY
# Set default value
-! ifndef RUBY_VER
+! IFNDEF RUBY_VER
RUBY_VER = 22
-! endif
-! ifndef RUBY_VER_LONG
+! ENDIF
+! IFNDEF RUBY_VER_LONG
RUBY_VER_LONG = 2.2.0
-! endif
-! ifndef RUBY_API_VER_LONG
+! ENDIF
+! IFNDEF RUBY_API_VER_LONG
RUBY_API_VER_LONG = $(RUBY_VER_LONG)
-! endif
-! ifndef RUBY_API_VER
+! ENDIF
+! IFNDEF RUBY_API_VER
RUBY_API_VER = $(RUBY_API_VER_LONG:.=)
-! endif
+! ENDIF
-! ifndef RUBY_PLATFORM
-! if "$(CPU)" == "i386"
+! IFNDEF RUBY_PLATFORM
+! IF "$(CPU)" == "i386"
RUBY_PLATFORM = i386-mswin32
-! else # CPU
+! ELSE # CPU
RUBY_PLATFORM = x64-mswin64
-! endif # CPU
+! ENDIF # CPU
RUBY_PLATFORM = $(RUBY_PLATFORM)_$(MSVCRT_VER)
-! endif # RUBY_PLATFORM
+! ENDIF # RUBY_PLATFORM
-! ifndef RUBY_INSTALL_NAME
-! ifndef RUBY_MSVCRT_NAME
+! IFNDEF RUBY_INSTALL_NAME
+! IFNDEF RUBY_MSVCRT_NAME
# Base name of msvcrXX.dll which is used by ruby's dll.
RUBY_MSVCRT_NAME = $(MSVCRT_NAME)
-! endif # RUBY_MSVCRT_NAME
-! if "$(CPU)" == "i386"
+! ENDIF # RUBY_MSVCRT_NAME
+! IF "$(CPU)" == "i386"
RUBY_INSTALL_NAME = $(RUBY_MSVCRT_NAME)-ruby$(RUBY_API_VER)
-! else # CPU
-! if EXIST($(RUBY)/lib/ruby/$(RUBY_API_VER_LONG)/x64-mingw-ucrt)
+! ELSE # CPU
+! IF EXIST($(RUBY)/lib/ruby/$(RUBY_API_VER_LONG)/x64-mingw-ucrt)
RUBY_INSTALL_NAME = x64-ucrt-ruby$(RUBY_API_VER)
-! else
+! ELSE
RUBY_INSTALL_NAME = x64-$(RUBY_MSVCRT_NAME)-ruby$(RUBY_API_VER)
-! endif
-! endif # CPU
-! endif # RUBY_INSTALL_NAME
+! ENDIF
+! ENDIF # CPU
+! ENDIF # RUBY_INSTALL_NAME
-! message Ruby requested (version $(RUBY_VER)) - root dir is "$(RUBY)"
+! MESSAGE Ruby requested (version $(RUBY_VER)) - root dir is "$(RUBY)"
CFLAGS = $(CFLAGS) -DFEAT_RUBY
RUBY_OBJ = $(OUTDIR)\if_ruby.obj
RUBY_INC = /I "$(RUBY)\include\ruby-$(RUBY_API_VER_LONG)" \
- /I "$(RUBY)\include\ruby-$(RUBY_API_VER_LONG)\$(RUBY_PLATFORM)"
+ /I "$(RUBY)\include\ruby-$(RUBY_API_VER_LONG)\$(RUBY_PLATFORM)"
RUBY_LIB = "$(RUBY)\lib\$(RUBY_INSTALL_NAME).lib"
# Do we want to load Ruby dynamically?
-! if "$(DYNAMIC_RUBY)" == "yes"
-! message Ruby DLL will be loaded dynamically
+! IF "$(DYNAMIC_RUBY)" == "yes"
+! MESSAGE Ruby DLL will be loaded dynamically
CFLAGS = $(CFLAGS) -DDYNAMIC_RUBY \
- -DDYNAMIC_RUBY_DLL=\"$(RUBY_INSTALL_NAME).dll\"
-! undef RUBY_LIB
-! endif
+ -DDYNAMIC_RUBY_DLL=\"$(RUBY_INSTALL_NAME).dll\"
+! UNDEF RUBY_LIB
+! ENDIF
CFLAGS = $(CFLAGS) -DRUBY_VERSION=$(RUBY_VER)
-!endif # RUBY
+!ENDIF # RUBY
#
# Support PostScript printing
#
-!if "$(POSTSCRIPT)" == "yes"
+!IF "$(POSTSCRIPT)" == "yes"
CFLAGS = $(CFLAGS) -DMSWINPS
-!endif # POSTSCRIPT
+!ENDIF # POSTSCRIPT
#
# FEATURES: TINY, NORMAL, or HUGE
#
# MODIFIED_BY - Name of who modified a release version
#
-!if "$(MODIFIED_BY)" != ""
+!IF "$(MODIFIED_BY)" != ""
CFLAGS = $(CFLAGS) -DMODIFIED_BY=\"$(MODIFIED_BY)\"
-!endif
+!ENDIF
#
# Always generate the .pdb file, so that we get debug symbols that can be used
# debug more conveniently (able to look at variables which are in registers)
#
CFLAGS = $(CFLAGS) /Fd$(OUTDIR)/ $(DEBUGINFO)
-!if "$(VIMDLL)" == "yes"
+!IF "$(VIMDLL)" == "yes"
LINK_PDB = /PDB:$(VIMDLLBASE).pdb -debug
-!else
+!ELSE
LINK_PDB = /PDB:$(VIM).pdb -debug
-!endif
+!ENDIF
#
# End extra feature include
#
-!message
+!MESSAGE
# CFLAGS with /Fo$(OUTDIR)/
CFLAGS_OUTDIR = $(CFLAGS) /Fo$(OUTDIR)/
LINKARGS1 = /nologo
LINKARGS2 = $(CON_LIB) $(GUI_LIB) $(LIBC) $(OLE_LIB) \
- $(LUA_LIB) $(MZSCHEME_LIB) $(PERL_LIB) $(PYTHON_LIB) \
- $(PYTHON3_LIB) $(RUBY_LIB) $(TCL_LIB) $(SOUND_LIB) \
- $(NETBEANS_LIB) $(XPM_LIB) $(SOD_LIB) $(LINK_PDB)
+ $(LUA_LIB) $(MZSCHEME_LIB) $(PERL_LIB) $(PYTHON_LIB) \
+ $(PYTHON3_LIB) $(RUBY_LIB) $(TCL_LIB) $(SOUND_LIB) \
+ $(NETBEANS_LIB) $(XPM_LIB) $(SOD_LIB) $(LINK_PDB)
-!ifdef NODEBUG
+!IFDEF NODEBUG
# Add /opt:ref to remove unreferenced functions and data even when /DEBUG is
# added.
LINKARGS1 = $(LINKARGS1) /opt:ref
-!else
+!ELSE
LINKARGS1 = $(LINKARGS1) /opt:noref /opt:noicf
-!endif
+!ENDIF
-!if "$(MAP)" == "yes"
+!IF "$(MAP)" == "yes"
# "/map" is for debugging
LINKARGS1 = $(LINKARGS1) /map
-!elseif "$(MAP)" == "lines"
+!ELSEIF "$(MAP)" == "lines"
# "/mapinfo:lines" is for debugging, only works for VC6 and later
LINKARGS1 = $(LINKARGS1) /map /mapinfo:lines
-!endif
+!ENDIF
# Enable link time code generation if needed.
-!ifdef NODEBUG
-! if "$(OPTIMIZE)" != "SPACE"
-! if "$(CI)" == "true" || "$(CI)" == "True"
+!IFDEF NODEBUG
+! IF "$(OPTIMIZE)" != "SPACE"
+! IF "$(CI)" == "true" || "$(CI)" == "True"
# Enable link time code generation, but do not show the progress.
LINKARGS1 = $(LINKARGS1) /LTCG
-! else
+! ELSE
# Report link time code generation progress.
LINKARGS1 = $(LINKARGS1) /LTCG:STATUS
-! endif
-! endif
-!endif
+! ENDIF
+! ENDIF
+!ENDIF
-!if "$(CPU)" == "AMD64" && "$(GUI)" == "yes"
+!IF "$(CPU)" == "AMD64" && "$(GUI)" == "yes"
# This option is required for VC2012 or later so that 64-bit gvim can
# accept D&D from 32-bit applications. NOTE: This disables 64-bit ASLR,
# therefore the security level becomes as same as VC2010.
LINKARGS1 = $(LINKARGS1) /HIGHENTROPYVA:NO
-!endif
+!ENDIF
-!if "$(VIMDLL)" == "yes"
+!IF "$(VIMDLL)" == "yes"
MAIN_TARGET = $(GVIM).exe $(VIM).exe $(VIMDLLBASE).dll
-!else
+!ELSE
MAIN_TARGET = $(VIM).exe
-!endif
+!ENDIF
# Target to run individual tests.
VIMTESTTARGET = $(VIM).exe
-all: $(MAIN_TARGET) \
+all: $(MAIN_TARGET) \
vimrun.exe \
install.exe \
uninstall.exe \
# To get around the command line limit: Make use of nmake's response files to
# capture the arguments for $(LINK) in a file using the @<<ARGS<< syntax.
-!if "$(VIMDLL)" == "yes"
+!IF "$(VIMDLL)" == "yes"
$(VIMDLLBASE).dll: $(OUTDIR) $(OBJ) $(XDIFF_OBJ) $(GUI_OBJ) $(CUI_OBJ) \
$(OLE_OBJ) $(OLE_IDL) $(MZSCHEME_OBJ) $(LUA_OBJ) $(PERL_OBJ) \
$(LINK) $(LINKARGS1) /subsystem:$(SUBSYSTEM_CON) -out:$(VIM).exe \
$(EXEOBJC) $(VIMDLLBASE).lib $(EXELIBC)
-!else
+!ELSE
$(VIM).exe: $(OUTDIR) $(OBJ) $(XDIFF_OBJ) $(GUI_OBJ) $(CUI_OBJ) \
$(OLE_OBJ) $(OLE_IDL) $(MZSCHEME_OBJ) $(LUA_OBJ) $(PERL_OBJ) \
$(NETBEANS_OBJ) $(CHANNEL_OBJ) $(XPM_OBJ) $(OUTDIR)\version.obj $(LINKARGS2)
<<
-!endif
+!ENDIF
$(VIM): $(VIM).exe
$(OUTDIR):
- if not exist $(OUTDIR)/nul mkdir $(OUTDIR:/=\)
+ @ if not exist $(OUTDIR)/nul $(MKD) $(OUTDIR:/=\)
$(OUTDIR)/libvterm: $(OUTDIR)
- if not exist $(OUTDIR)/libvterm/nul mkdir $(OUTDIR:/=\)\libvterm
+ @ if not exist $(OUTDIR)/libvterm/nul $(MKD) $(OUTDIR:/=\)\libvterm
CFLAGS_INST = /nologo /O2 -DNDEBUG -DWIN32 -DWINVER=$(WINVER) \
- -D_WIN32_WINNT=$(WINVER) $(CFLAGS_DEPR)
+ -D_WIN32_WINNT=$(WINVER) $(CFLAGS_DEPR)
-!IFDEF PATCHLEVEL
CFLAGS_INST = $(CFLAGS_INST) -DVIM_VERSION_PATCHLEVEL=$(PATCHLEVEL)
-!ENDIF
install.exe: dosinst.c dosinst.h version.h
$(CC) $(CFLAGS_INST) /Fe$@ dosinst.c kernel32.lib shell32.lib \
xxd/xxd.exe: xxd/xxd.c
cd xxd
- $(MAKE) /NOLOGO -f Make_mvc.mak $(MAKEFLAGS_TOOLS)
+ $(MAKE) -lf Make_mvc.mak $(MAKEFLAGS_TOOLS)
cd ..
tee/tee.exe: tee/tee.c
cd tee
- $(MAKE) /NOLOGO -f Make_mvc.mak $(MAKEFLAGS_TOOLS)
+ $(MAKE) -lf Make_mvc.mak $(MAKEFLAGS_TOOLS)
cd ..
GvimExt/gvimext.dll: GvimExt/gvimext.cpp GvimExt/gvimext.rc GvimExt/gvimext.h
cd GvimExt
- $(MAKE) /NOLOGO -f Make_mvc.mak $(MAKEFLAGS_GVIMEXT)
+ $(MAKE) -lf Make_mvc.mak $(MAKEFLAGS_GVIMEXT)
cd ..
$(CTAGS) $(TAGS_FILES)
notags:
- - if exist tags del tags
+ - if exist tags $(RM) tags
clean: testclean
- - if exist $(OUTDIR)/nul $(DEL_TREE) $(OUTDIR)
- - if exist *.obj del *.obj
- - if exist $(VIM).exe del $(VIM).exe
- - if exist $(VIM).exp del $(VIM).exp
- - if exist $(VIM).lib del $(VIM).lib
- - if exist $(VIM).ilk del $(VIM).ilk
- - if exist $(VIM).pdb del $(VIM).pdb
- - if exist $(VIM).map del $(VIM).map
- - if exist $(VIM).ncb del $(VIM).ncb
-!if "$(VIMDLL)" == "yes"
- - if exist $(GVIM).exe del $(GVIM).exe
- - if exist $(GVIM).exp del $(GVIM).exp
- - if exist $(GVIM).lib del $(GVIM).lib
- - if exist $(GVIM).map del $(GVIM).map
- - if exist $(VIMDLLBASE).dll del $(VIMDLLBASE).dll
- - if exist $(VIMDLLBASE).ilk del $(VIMDLLBASE).ilk
- - if exist $(VIMDLLBASE).lib del $(VIMDLLBASE).lib
- - if exist $(VIMDLLBASE).exp del $(VIMDLLBASE).exp
- - if exist $(VIMDLLBASE).pdb del $(VIMDLLBASE).pdb
- - if exist $(VIMDLLBASE).map del $(VIMDLLBASE).map
-!endif
- - if exist vimrun.exe del vimrun.exe
- - if exist install.exe del install.exe
- - if exist uninstall.exe del uninstall.exe
- - if exist if_perl.c del if_perl.c
- - if exist auto\if_perl.c del auto\if_perl.c
- - if exist dosinst.exe del dosinst.exe
+ - if exist $(OUTDIR)/nul $(DELTREE) $(OUTDIR)
+ - if exist *.obj $(RM) *.obj
+ - if exist $(VIM).exe $(RM) $(VIM).exe
+ - if exist $(VIM).exp $(RM) $(VIM).exp
+ - if exist $(VIM).lib $(RM) $(VIM).lib
+ - if exist $(VIM).ilk $(RM) $(VIM).ilk
+ - if exist $(VIM).pdb $(RM) $(VIM).pdb
+ - if exist $(VIM).map $(RM) $(VIM).map
+ - if exist $(VIM).ncb $(RM) $(VIM).ncb
+!IF "$(VIMDLL)" == "yes"
+ - if exist $(GVIM).exe $(RM) $(GVIM).exe
+ - if exist $(GVIM).exp $(RM) $(GVIM).exp
+ - if exist $(GVIM).lib $(RM) $(GVIM).lib
+ - if exist $(GVIM).map $(RM) $(GVIM).map
+ - if exist $(VIMDLLBASE).dll $(RM) $(VIMDLLBASE).dll
+ - if exist $(VIMDLLBASE).ilk $(RM) $(VIMDLLBASE).ilk
+ - if exist $(VIMDLLBASE).lib $(RM) $(VIMDLLBASE).lib
+ - if exist $(VIMDLLBASE).exp $(RM) $(VIMDLLBASE).exp
+ - if exist $(VIMDLLBASE).pdb $(RM) $(VIMDLLBASE).pdb
+ - if exist $(VIMDLLBASE).map $(RM) $(VIMDLLBASE).map
+!ENDIF
+ - if exist vimrun.exe $(RM) vimrun.exe
+ - if exist install.exe $(RM) install.exe
+ - if exist uninstall.exe $(RM) uninstall.exe
+ - if exist if_perl.c $(RM) if_perl.c
+ - if exist auto\if_perl.c $(RM) auto\if_perl.c
+ - if exist dosinst.exe $(RM) dosinst.exe
cd xxd
- $(MAKE) /NOLOGO -f Make_mvc.mak clean
+ $(MAKE) -lf Make_mvc.mak clean
cd ..
cd tee
- $(MAKE) /NOLOGO -f Make_mvc.mak clean
+ $(MAKE) -lf Make_mvc.mak clean
cd ..
cd GvimExt
- $(MAKE) /NOLOGO -f Make_mvc.mak clean
+ $(MAKE) -lf Make_mvc.mak clean
cd ..
# Run Vim script to generate the Ex command lookup table.
# If this fails because you don't have Vim yet, first build and install Vim
# without changes.
cmdidxs: ex_cmds.h
- vim --clean -N -X --not-a-term -u create_cmdidxs.vim -c quit
+ vim.exe --clean -N -X --not-a-term -u create_cmdidxs.vim -c quit
# Run Vim script to generate the normal/visual mode command lookup table.
# This only needs to be run when a new normal/visual mode command has been
nvcmdidxs: nv_cmds.h
$(CC) /nologo -I. -Iproto -DNDEBUG create_nvcmdidxs.c \
-link -subsystem:$(SUBSYSTEM_TOOLS)
- vim --clean -N -X --not-a-term -u create_nvcmdidxs.vim -c quit
- -del create_nvcmdidxs.exe
+ vim.exe --clean -N -X --not-a-term -u create_nvcmdidxs.vim -c quit
+ - $(RM) create_nvcmdidxs.exe
test:
cd testdir
- $(MAKE) /NOLOGO -f Make_mvc.mak
+ $(MAKE) -lf Make_mvc.mak
cd ..
testgvim testgui:
cd testdir
- $(MAKE) /NOLOGO -f Make_mvc.mak "VIMPROG=..\gvim.exe"
+ $(MAKE) -lf Make_mvc.mak "VIMPROG=..\gvim.exe"
cd ..
testtiny:
cd testdir
- $(MAKE) /NOLOGO -f Make_mvc.mak tiny
+ $(MAKE) -lf Make_mvc.mak tiny
cd ..
testgvimtiny:
cd testdir
- $(MAKE) /NOLOGO -f Make_mvc.mak "VIMPROG=..\gvim.exe" tiny
+ $(MAKE) -lf Make_mvc.mak "VIMPROG=..\gvim.exe" tiny
cd ..
testclean:
cd testdir
- $(MAKE) /NOLOGO -f Make_mvc.mak clean
+ $(MAKE) -lf Make_mvc.mak clean
cd ..
# Run individual OLD style test.
# These do not depend on the executable, compile it when needed.
$(SCRIPTS_TINY):
cd testdir
- - if exist $@.out del $@.out
- $(MAKE) /NOLOGO -f Make_mvc.mak VIMPROG=..\$(VIMTESTTARGET) nolog
- $(MAKE) /NOLOGO -f Make_mvc.mak VIMPROG=..\$(VIMTESTTARGET) $@.out
+ - if exist $@.out $(RM) $@.out
+ $(MAKE) -lf Make_mvc.mak VIMPROG=..\$(VIMTESTTARGET) nolog
+ $(MAKE) -lf Make_mvc.mak VIMPROG=..\$(VIMTESTTARGET) $@.out
@ if exist test.log ( type test.log & exit /b 1 )
cd ..
# These do not depend on the executable, compile it when needed.
$(NEW_TESTS):
cd testdir
- - if exist $@.res del $@.res
- $(MAKE) /NOLOGO -f Make_mvc.mak VIMPROG=..\$(VIMTESTTARGET) nolog
- $(MAKE) /NOLOGO -f Make_mvc.mak VIMPROG=..\$(VIMTESTTARGET) $@.res
- $(MAKE) /NOLOGO -f Make_mvc.mak VIMPROG=..\$(VIMTESTTARGET) report
+ - if exist $@.res $(RM) $@.res
+ $(MAKE) -lf Make_mvc.mak VIMPROG=..\$(VIMTESTTARGET) nolog
+ $(MAKE) -lf Make_mvc.mak VIMPROG=..\$(VIMTESTTARGET) $@.res
+ $(MAKE) -lf Make_mvc.mak VIMPROG=..\$(VIMTESTTARGET) report
cd ..
# Run Vim9 tests.
# These do not depend on the executable, compile it when needed.
test_vim9:
cd testdir
- -del test_vim9_*.res
- $(MAKE) /NOLOGO -f Make_mvc.mak VIMPROG=..\$(VIMTESTTARGET) nolog
- $(MAKE) /NOLOGO -f Make_mvc.mak VIMPROG=..\$(VIMTESTTARGET) $(TEST_VIM9_RES)
- $(MAKE) /NOLOGO -f Make_mvc.mak VIMPROG=..\$(VIMTESTTARGET) report
+ - $(RM) test_vim9_*.res
+ $(MAKE) -lf Make_mvc.mak VIMPROG=..\$(VIMTESTTARGET) nolog
+ $(MAKE) -lf Make_mvc.mak VIMPROG=..\$(VIMTESTTARGET) $(TEST_VIM9_RES)
+ $(MAKE) -lf Make_mvc.mak VIMPROG=..\$(VIMTESTTARGET) report
cd ..
###########################################################################
.cpp{$(OUTDIR)}.obj::
$(CC) $(CFLAGS_OUTDIR) $<
-$(OUTDIR)/alloc.obj: $(OUTDIR) alloc.c $(INCL)
+$(OUTDIR)/alloc.obj: $(OUTDIR) alloc.c $(INCL)
-$(OUTDIR)/arabic.obj: $(OUTDIR) arabic.c $(INCL)
+$(OUTDIR)/arabic.obj: $(OUTDIR) arabic.c $(INCL)
-$(OUTDIR)/arglist.obj: $(OUTDIR) arglist.c $(INCL)
+$(OUTDIR)/arglist.obj: $(OUTDIR) arglist.c $(INCL)
-$(OUTDIR)/autocmd.obj: $(OUTDIR) autocmd.c $(INCL)
+$(OUTDIR)/autocmd.obj: $(OUTDIR) autocmd.c $(INCL)
-$(OUTDIR)/beval.obj: $(OUTDIR) beval.c $(INCL)
+$(OUTDIR)/beval.obj: $(OUTDIR) beval.c $(INCL)
-$(OUTDIR)/blob.obj: $(OUTDIR) blob.c $(INCL)
+$(OUTDIR)/blob.obj: $(OUTDIR) blob.c $(INCL)
-$(OUTDIR)/blowfish.obj: $(OUTDIR) blowfish.c $(INCL)
+$(OUTDIR)/blowfish.obj: $(OUTDIR) blowfish.c $(INCL)
-$(OUTDIR)/buffer.obj: $(OUTDIR) buffer.c $(INCL) version.h
+$(OUTDIR)/buffer.obj: $(OUTDIR) buffer.c $(INCL) version.h
-$(OUTDIR)/bufwrite.obj: $(OUTDIR) bufwrite.c $(INCL)
+$(OUTDIR)/bufwrite.obj: $(OUTDIR) bufwrite.c $(INCL)
-$(OUTDIR)/change.obj: $(OUTDIR) change.c $(INCL)
+$(OUTDIR)/change.obj: $(OUTDIR) change.c $(INCL)
-$(OUTDIR)/charset.obj: $(OUTDIR) charset.c $(INCL)
+$(OUTDIR)/charset.obj: $(OUTDIR) charset.c $(INCL)
-$(OUTDIR)/cindent.obj: $(OUTDIR) cindent.c $(INCL)
+$(OUTDIR)/cindent.obj: $(OUTDIR) cindent.c $(INCL)
-$(OUTDIR)/clientserver.obj: $(OUTDIR) clientserver.c $(INCL)
+$(OUTDIR)/clientserver.obj: $(OUTDIR) clientserver.c $(INCL)
-$(OUTDIR)/clipboard.obj: $(OUTDIR) clipboard.c $(INCL)
+$(OUTDIR)/clipboard.obj: $(OUTDIR) clipboard.c $(INCL)
-$(OUTDIR)/cmdexpand.obj: $(OUTDIR) cmdexpand.c $(INCL)
+$(OUTDIR)/cmdexpand.obj: $(OUTDIR) cmdexpand.c $(INCL)
-$(OUTDIR)/cmdhist.obj: $(OUTDIR) cmdhist.c $(INCL)
+$(OUTDIR)/cmdhist.obj: $(OUTDIR) cmdhist.c $(INCL)
-$(OUTDIR)/crypt.obj: $(OUTDIR) crypt.c $(INCL)
+$(OUTDIR)/crypt.obj: $(OUTDIR) crypt.c $(INCL)
-$(OUTDIR)/crypt_zip.obj: $(OUTDIR) crypt_zip.c $(INCL)
+$(OUTDIR)/crypt_zip.obj: $(OUTDIR) crypt_zip.c $(INCL)
-$(OUTDIR)/debugger.obj: $(OUTDIR) debugger.c $(INCL)
+$(OUTDIR)/debugger.obj: $(OUTDIR) debugger.c $(INCL)
-$(OUTDIR)/dict.obj: $(OUTDIR) dict.c $(INCL)
+$(OUTDIR)/dict.obj: $(OUTDIR) dict.c $(INCL)
-$(OUTDIR)/diff.obj: $(OUTDIR) diff.c $(INCL)
+$(OUTDIR)/diff.obj: $(OUTDIR) diff.c $(INCL)
-$(OUTDIR)/xdiffi.obj: $(OUTDIR) xdiff/xdiffi.c $(XDIFF_DEPS)
+$(OUTDIR)/xdiffi.obj: $(OUTDIR) xdiff/xdiffi.c $(XDIFF_DEPS)
-$(OUTDIR)/xemit.obj: $(OUTDIR) xdiff/xemit.c $(XDIFF_DEPS)
+$(OUTDIR)/xemit.obj: $(OUTDIR) xdiff/xemit.c $(XDIFF_DEPS)
-$(OUTDIR)/xprepare.obj: $(OUTDIR) xdiff/xprepare.c $(XDIFF_DEPS)
+$(OUTDIR)/xprepare.obj: $(OUTDIR) xdiff/xprepare.c $(XDIFF_DEPS)
-$(OUTDIR)/xutils.obj: $(OUTDIR) xdiff/xutils.c $(XDIFF_DEPS)
+$(OUTDIR)/xutils.obj: $(OUTDIR) xdiff/xutils.c $(XDIFF_DEPS)
-$(OUTDIR)/xhistogram.obj: $(OUTDIR) xdiff/xhistogram.c $(XDIFF_DEPS)
+$(OUTDIR)/xhistogram.obj: $(OUTDIR) xdiff/xhistogram.c $(XDIFF_DEPS)
-$(OUTDIR)/xpatience.obj: $(OUTDIR) xdiff/xpatience.c $(XDIFF_DEPS)
+$(OUTDIR)/xpatience.obj: $(OUTDIR) xdiff/xpatience.c $(XDIFF_DEPS)
-$(OUTDIR)/digraph.obj: $(OUTDIR) digraph.c $(INCL)
+$(OUTDIR)/digraph.obj: $(OUTDIR) digraph.c $(INCL)
-$(OUTDIR)/drawline.obj: $(OUTDIR) drawline.c $(INCL)
+$(OUTDIR)/drawline.obj: $(OUTDIR) drawline.c $(INCL)
-$(OUTDIR)/drawscreen.obj: $(OUTDIR) drawscreen.c $(INCL)
+$(OUTDIR)/drawscreen.obj: $(OUTDIR) drawscreen.c $(INCL)
-$(OUTDIR)/edit.obj: $(OUTDIR) edit.c $(INCL)
+$(OUTDIR)/edit.obj: $(OUTDIR) edit.c $(INCL)
-$(OUTDIR)/eval.obj: $(OUTDIR) eval.c $(INCL)
+$(OUTDIR)/eval.obj: $(OUTDIR) eval.c $(INCL)
-$(OUTDIR)/evalbuffer.obj: $(OUTDIR) evalbuffer.c $(INCL)
+$(OUTDIR)/evalbuffer.obj: $(OUTDIR) evalbuffer.c $(INCL)
-$(OUTDIR)/evalfunc.obj: $(OUTDIR) evalfunc.c $(INCL) version.h
+$(OUTDIR)/evalfunc.obj: $(OUTDIR) evalfunc.c $(INCL) version.h
-$(OUTDIR)/evalvars.obj: $(OUTDIR) evalvars.c $(INCL) version.h
+$(OUTDIR)/evalvars.obj: $(OUTDIR) evalvars.c $(INCL) version.h
-$(OUTDIR)/evalwindow.obj: $(OUTDIR) evalwindow.c $(INCL)
+$(OUTDIR)/evalwindow.obj: $(OUTDIR) evalwindow.c $(INCL)
-$(OUTDIR)/ex_cmds.obj: $(OUTDIR) ex_cmds.c $(INCL) version.h
+$(OUTDIR)/ex_cmds.obj: $(OUTDIR) ex_cmds.c $(INCL) version.h
-$(OUTDIR)/ex_cmds2.obj: $(OUTDIR) ex_cmds2.c $(INCL) version.h
+$(OUTDIR)/ex_cmds2.obj: $(OUTDIR) ex_cmds2.c $(INCL) version.h
-$(OUTDIR)/ex_docmd.obj: $(OUTDIR) ex_docmd.c $(INCL) ex_cmdidxs.h
+$(OUTDIR)/ex_docmd.obj: $(OUTDIR) ex_docmd.c $(INCL) ex_cmdidxs.h
-$(OUTDIR)/ex_eval.obj: $(OUTDIR) ex_eval.c $(INCL)
+$(OUTDIR)/ex_eval.obj: $(OUTDIR) ex_eval.c $(INCL)
-$(OUTDIR)/ex_getln.obj: $(OUTDIR) ex_getln.c $(INCL)
+$(OUTDIR)/ex_getln.obj: $(OUTDIR) ex_getln.c $(INCL)
-$(OUTDIR)/fileio.obj: $(OUTDIR) fileio.c $(INCL)
+$(OUTDIR)/fileio.obj: $(OUTDIR) fileio.c $(INCL)
-$(OUTDIR)/filepath.obj: $(OUTDIR) filepath.c $(INCL)
+$(OUTDIR)/filepath.obj: $(OUTDIR) filepath.c $(INCL)
-$(OUTDIR)/findfile.obj: $(OUTDIR) findfile.c $(INCL)
+$(OUTDIR)/findfile.obj: $(OUTDIR) findfile.c $(INCL)
-$(OUTDIR)/float.obj: $(OUTDIR) float.c $(INCL)
+$(OUTDIR)/float.obj: $(OUTDIR) float.c $(INCL)
-$(OUTDIR)/fold.obj: $(OUTDIR) fold.c $(INCL)
+$(OUTDIR)/fold.obj: $(OUTDIR) fold.c $(INCL)
-$(OUTDIR)/fuzzy.obj: $(OUTDIR) fuzzy.c $(INCL)
+$(OUTDIR)/fuzzy.obj: $(OUTDIR) fuzzy.c $(INCL)
-$(OUTDIR)/getchar.obj: $(OUTDIR) getchar.c $(INCL)
+$(OUTDIR)/getchar.obj: $(OUTDIR) getchar.c $(INCL)
-$(OUTDIR)/gc.obj: $(OUTDIR) gc.c $(INCL)
+$(OUTDIR)/gc.obj: $(OUTDIR) gc.c $(INCL)
-$(OUTDIR)/gui_xim.obj: $(OUTDIR) gui_xim.c $(INCL)
+$(OUTDIR)/gui_xim.obj: $(OUTDIR) gui_xim.c $(INCL)
-$(OUTDIR)/hardcopy.obj: $(OUTDIR) hardcopy.c $(INCL) version.h
+$(OUTDIR)/hardcopy.obj: $(OUTDIR) hardcopy.c $(INCL) version.h
-$(OUTDIR)/hashtab.obj: $(OUTDIR) hashtab.c $(INCL)
+$(OUTDIR)/hashtab.obj: $(OUTDIR) hashtab.c $(INCL)
-$(OUTDIR)/help.obj: $(OUTDIR) help.c $(INCL)
+$(OUTDIR)/help.obj: $(OUTDIR) help.c $(INCL)
-$(OUTDIR)/highlight.obj: $(OUTDIR) highlight.c $(INCL)
+$(OUTDIR)/highlight.obj: $(OUTDIR) highlight.c $(INCL)
-$(OUTDIR)/indent.obj: $(OUTDIR) indent.c $(INCL)
+$(OUTDIR)/indent.obj: $(OUTDIR) indent.c $(INCL)
-$(OUTDIR)/insexpand.obj: $(OUTDIR) insexpand.c $(INCL)
+$(OUTDIR)/insexpand.obj: $(OUTDIR) insexpand.c $(INCL)
-$(OUTDIR)/gui.obj: $(OUTDIR) gui.c $(INCL) $(GUI_INCL)
+$(OUTDIR)/gui.obj: $(OUTDIR) gui.c $(INCL) $(GUI_INCL)
-$(OUTDIR)/gui_beval.obj: $(OUTDIR) gui_beval.c $(INCL) $(GUI_INCL)
+$(OUTDIR)/gui_beval.obj: $(OUTDIR) gui_beval.c $(INCL) $(GUI_INCL)
-$(OUTDIR)/gui_w32.obj: $(OUTDIR) gui_w32.c $(INCL) $(GUI_INCL) version.h
+$(OUTDIR)/gui_w32.obj: $(OUTDIR) gui_w32.c $(INCL) $(GUI_INCL) version.h
-$(OUTDIR)/gui_dwrite.obj: $(OUTDIR) gui_dwrite.cpp gui_dwrite.h
+$(OUTDIR)/gui_dwrite.obj: $(OUTDIR) gui_dwrite.cpp gui_dwrite.h
-$(OUTDIR)/if_cscope.obj: $(OUTDIR) if_cscope.c $(INCL)
+$(OUTDIR)/if_cscope.obj: $(OUTDIR) if_cscope.c $(INCL)
-$(OUTDIR)/if_lua.obj: $(OUTDIR) if_lua.c $(INCL)
+$(OUTDIR)/if_lua.obj: $(OUTDIR) if_lua.c $(INCL)
$(CC) $(CFLAGS_OUTDIR) $(LUA_INC) if_lua.c
auto/if_perl.c: if_perl.xs typemap
$(XSUBPP) -prototypes -typemap $(XSUBPP_TYPEMAP) \
-typemap typemap if_perl.xs -output $@
-$(OUTDIR)/if_perl.obj: $(OUTDIR) auto/if_perl.c $(INCL)
+$(OUTDIR)/if_perl.obj: $(OUTDIR) auto/if_perl.c $(INCL)
$(CC) $(CFLAGS_OUTDIR) $(PERL_INC) auto/if_perl.c
-$(OUTDIR)/if_perlsfio.obj: $(OUTDIR) if_perlsfio.c $(INCL)
+$(OUTDIR)/if_perlsfio.obj: $(OUTDIR) if_perlsfio.c $(INCL)
$(CC) $(CFLAGS_OUTDIR) $(PERL_INC) if_perlsfio.c
-$(OUTDIR)/if_mzsch.obj: $(OUTDIR) if_mzsch.c $(MZSCHEME_INCL) $(INCL) $(MZSCHEME_EXTRA_DEP)
+$(OUTDIR)/if_mzsch.obj: $(OUTDIR) if_mzsch.c $(MZSCHEME_INCL) $(INCL) \
+ $(MZSCHEME_EXTRA_DEP)
$(CC) $(CFLAGS_OUTDIR) if_mzsch.c \
-DMZSCHEME_COLLECTS="\"$(MZSCHEME_COLLECTS:\=\\)\""
$(OUTDIR)/if_python3.obj: $(OUTDIR) if_python3.c if_py_both.h $(INCL)
$(CC) $(CFLAGS_OUTDIR) $(PYTHON3_INC) if_python3.c
-$(OUTDIR)/if_ole.obj: $(OUTDIR) if_ole.cpp $(INCL) if_ole.h
+$(OUTDIR)/if_ole.obj: $(OUTDIR) if_ole.cpp $(INCL) if_ole.h
-$(OUTDIR)/if_ruby.obj: $(OUTDIR) if_ruby.c $(INCL) version.h
+$(OUTDIR)/if_ruby.obj: $(OUTDIR) if_ruby.c $(INCL) version.h
$(CC) $(CFLAGS_OUTDIR) $(RUBY_INC) if_ruby.c
-$(OUTDIR)/if_tcl.obj: $(OUTDIR) if_tcl.c $(INCL)
+$(OUTDIR)/if_tcl.obj: $(OUTDIR) if_tcl.c $(INCL)
$(CC) $(CFLAGS_OUTDIR) $(TCL_INC) if_tcl.c
-$(OUTDIR)/iscygpty.obj: $(OUTDIR) iscygpty.c $(CUI_INCL)
+$(OUTDIR)/iscygpty.obj: $(OUTDIR) iscygpty.c $(CUI_INCL)
-$(OUTDIR)/job.obj: $(OUTDIR) job.c $(INCL)
+$(OUTDIR)/job.obj: $(OUTDIR) job.c $(INCL)
-$(OUTDIR)/json.obj: $(OUTDIR) json.c $(INCL)
+$(OUTDIR)/json.obj: $(OUTDIR) json.c $(INCL)
-$(OUTDIR)/linematch.obj: $(OUTDIR) linematch.c $(INCL)
+$(OUTDIR)/linematch.obj: $(OUTDIR) linematch.c $(INCL)
-$(OUTDIR)/list.obj: $(OUTDIR) list.c $(INCL)
+$(OUTDIR)/list.obj: $(OUTDIR) list.c $(INCL)
-$(OUTDIR)/locale.obj: $(OUTDIR) locale.c $(INCL)
+$(OUTDIR)/locale.obj: $(OUTDIR) locale.c $(INCL)
-$(OUTDIR)/logfile.obj: $(OUTDIR) logfile.c $(INCL)
+$(OUTDIR)/logfile.obj: $(OUTDIR) logfile.c $(INCL)
-$(OUTDIR)/main.obj: $(OUTDIR) main.c $(INCL) $(CUI_INCL)
+$(OUTDIR)/main.obj: $(OUTDIR) main.c $(INCL) $(CUI_INCL)
-$(OUTDIR)/map.obj: $(OUTDIR) map.c $(INCL)
+$(OUTDIR)/map.obj: $(OUTDIR) map.c $(INCL)
-$(OUTDIR)/mark.obj: $(OUTDIR) mark.c $(INCL)
+$(OUTDIR)/mark.obj: $(OUTDIR) mark.c $(INCL)
-$(OUTDIR)/match.obj: $(OUTDIR) match.c $(INCL)
+$(OUTDIR)/match.obj: $(OUTDIR) match.c $(INCL)
-$(OUTDIR)/memfile.obj: $(OUTDIR) memfile.c $(INCL)
+$(OUTDIR)/memfile.obj: $(OUTDIR) memfile.c $(INCL)
-$(OUTDIR)/memline.obj: $(OUTDIR) memline.c $(INCL)
+$(OUTDIR)/memline.obj: $(OUTDIR) memline.c $(INCL)
-$(OUTDIR)/menu.obj: $(OUTDIR) menu.c $(INCL)
+$(OUTDIR)/menu.obj: $(OUTDIR) menu.c $(INCL)
-$(OUTDIR)/message.obj: $(OUTDIR) message.c $(INCL)
+$(OUTDIR)/message.obj: $(OUTDIR) message.c $(INCL)
-$(OUTDIR)/misc1.obj: $(OUTDIR) misc1.c $(INCL) version.h
+$(OUTDIR)/misc1.obj: $(OUTDIR) misc1.c $(INCL) version.h
-$(OUTDIR)/misc2.obj: $(OUTDIR) misc2.c $(INCL)
+$(OUTDIR)/misc2.obj: $(OUTDIR) misc2.c $(INCL)
-$(OUTDIR)/mouse.obj: $(OUTDIR) mouse.c $(INCL)
+$(OUTDIR)/mouse.obj: $(OUTDIR) mouse.c $(INCL)
-$(OUTDIR)/move.obj: $(OUTDIR) move.c $(INCL)
+$(OUTDIR)/move.obj: $(OUTDIR) move.c $(INCL)
-$(OUTDIR)/mbyte.obj: $(OUTDIR) mbyte.c $(INCL)
+$(OUTDIR)/mbyte.obj: $(OUTDIR) mbyte.c $(INCL)
-$(OUTDIR)/netbeans.obj: $(OUTDIR) netbeans.c $(NBDEBUG_SRC) $(INCL) version.h
+$(OUTDIR)/netbeans.obj: $(OUTDIR) netbeans.c $(NBDEBUG_SRC) $(INCL) version.h
-$(OUTDIR)/channel.obj: $(OUTDIR) channel.c $(INCL)
+$(OUTDIR)/channel.obj: $(OUTDIR) channel.c $(INCL)
-$(OUTDIR)/normal.obj: $(OUTDIR) normal.c $(INCL) nv_cmdidxs.h nv_cmds.h
+$(OUTDIR)/normal.obj: $(OUTDIR) normal.c $(INCL) nv_cmdidxs.h nv_cmds.h
-$(OUTDIR)/option.obj: $(OUTDIR) option.c $(INCL) optiondefs.h
+$(OUTDIR)/option.obj: $(OUTDIR) option.c $(INCL) optiondefs.h
-$(OUTDIR)/optionstr.obj: $(OUTDIR) optionstr.c $(INCL)
+$(OUTDIR)/optionstr.obj: $(OUTDIR) optionstr.c $(INCL)
-$(OUTDIR)/ops.obj: $(OUTDIR) ops.c $(INCL)
+$(OUTDIR)/ops.obj: $(OUTDIR) ops.c $(INCL)
-$(OUTDIR)/os_mswin.obj: $(OUTDIR) os_mswin.c $(INCL)
+$(OUTDIR)/os_mswin.obj: $(OUTDIR) os_mswin.c $(INCL)
-$(OUTDIR)/terminal.obj: $(OUTDIR) terminal.c $(INCL) $(TERM_DEPS)
+$(OUTDIR)/terminal.obj: $(OUTDIR) terminal.c $(INCL) $(TERM_DEPS)
-$(OUTDIR)/winclip.obj: $(OUTDIR) winclip.c $(INCL)
+$(OUTDIR)/winclip.obj: $(OUTDIR) winclip.c $(INCL)
-$(OUTDIR)/os_win32.obj: $(OUTDIR) os_win32.c $(INCL) $(MZSCHEME_INCL)
+$(OUTDIR)/os_win32.obj: $(OUTDIR) os_win32.c $(INCL) $(MZSCHEME_INCL)
-$(OUTDIR)/os_w32dll.obj: $(OUTDIR) os_w32dll.c
+$(OUTDIR)/os_w32dll.obj: $(OUTDIR) os_w32dll.c
-$(OUTDIR)/os_w32exe.obj: $(OUTDIR) os_w32exe.c $(INCL)
+$(OUTDIR)/os_w32exe.obj: $(OUTDIR) os_w32exe.c $(INCL)
-$(OUTDIR)/os_w32exec.obj: $(OUTDIR) os_w32exe.c $(INCL)
+$(OUTDIR)/os_w32exec.obj: $(OUTDIR) os_w32exe.c $(INCL)
$(CC) $(CFLAGS:-DFEAT_GUI_MSWIN=) $(EXECFLAGS) /Fo$@ os_w32exe.c
-$(OUTDIR)/os_w32exeg.obj: $(OUTDIR) os_w32exe.c $(INCL)
+$(OUTDIR)/os_w32exeg.obj: $(OUTDIR) os_w32exe.c $(INCL)
$(CC) $(CFLAGS) $(EXECFLAGS) /Fo$@ os_w32exe.c
-$(OUTDIR)/pathdef.obj: $(OUTDIR) $(PATHDEF_SRC) $(INCL)
+$(OUTDIR)/pathdef.obj: $(OUTDIR) $(PATHDEF_SRC) $(INCL)
$(CC) $(CFLAGS_OUTDIR) $(PATHDEF_SRC)
-$(OUTDIR)/popupmenu.obj: $(OUTDIR) popupmenu.c $(INCL)
+$(OUTDIR)/popupmenu.obj: $(OUTDIR) popupmenu.c $(INCL)
-$(OUTDIR)/popupwin.obj: $(OUTDIR) popupwin.c $(INCL)
+$(OUTDIR)/popupwin.obj: $(OUTDIR) popupwin.c $(INCL)
-$(OUTDIR)/profiler.obj: $(OUTDIR) profiler.c $(INCL)
+$(OUTDIR)/profiler.obj: $(OUTDIR) profiler.c $(INCL)
-$(OUTDIR)/quickfix.obj: $(OUTDIR) quickfix.c $(INCL)
+$(OUTDIR)/quickfix.obj: $(OUTDIR) quickfix.c $(INCL)
-$(OUTDIR)/regexp.obj: $(OUTDIR) regexp.c regexp_bt.c regexp_nfa.c $(INCL)
+$(OUTDIR)/regexp.obj: $(OUTDIR) regexp.c regexp_bt.c regexp_nfa.c $(INCL)
-$(OUTDIR)/register.obj: $(OUTDIR) register.c $(INCL)
+$(OUTDIR)/register.obj: $(OUTDIR) register.c $(INCL)
-$(OUTDIR)/scriptfile.obj: $(OUTDIR) scriptfile.c $(INCL)
+$(OUTDIR)/scriptfile.obj: $(OUTDIR) scriptfile.c $(INCL)
-$(OUTDIR)/screen.obj: $(OUTDIR) screen.c $(INCL)
+$(OUTDIR)/screen.obj: $(OUTDIR) screen.c $(INCL)
-$(OUTDIR)/search.obj: $(OUTDIR) search.c $(INCL)
+$(OUTDIR)/search.obj: $(OUTDIR) search.c $(INCL)
-$(OUTDIR)/session.obj: $(OUTDIR) session.c $(INCL)
+$(OUTDIR)/session.obj: $(OUTDIR) session.c $(INCL)
-$(OUTDIR)/sha256.obj: $(OUTDIR) sha256.c $(INCL)
+$(OUTDIR)/sha256.obj: $(OUTDIR) sha256.c $(INCL)
-$(OUTDIR)/sign.obj: $(OUTDIR) sign.c $(INCL)
+$(OUTDIR)/sign.obj: $(OUTDIR) sign.c $(INCL)
-$(OUTDIR)/spell.obj: $(OUTDIR) spell.c $(INCL)
+$(OUTDIR)/spell.obj: $(OUTDIR) spell.c $(INCL)
-$(OUTDIR)/spellfile.obj: $(OUTDIR) spellfile.c $(INCL)
+$(OUTDIR)/spellfile.obj: $(OUTDIR) spellfile.c $(INCL)
-$(OUTDIR)/spellsuggest.obj: $(OUTDIR) spellsuggest.c $(INCL)
+$(OUTDIR)/spellsuggest.obj: $(OUTDIR) spellsuggest.c $(INCL)
-$(OUTDIR)/strings.obj: $(OUTDIR) strings.c $(INCL)
+$(OUTDIR)/strings.obj: $(OUTDIR) strings.c $(INCL)
-$(OUTDIR)/syntax.obj: $(OUTDIR) syntax.c $(INCL)
+$(OUTDIR)/syntax.obj: $(OUTDIR) syntax.c $(INCL)
-$(OUTDIR)/tabpanel.obj: $(OUTDIR) tabpanel.c $(INCL)
+$(OUTDIR)/tabpanel.obj: $(OUTDIR) tabpanel.c $(INCL)
-$(OUTDIR)/tag.obj: $(OUTDIR) tag.c $(INCL)
+$(OUTDIR)/tag.obj: $(OUTDIR) tag.c $(INCL)
-$(OUTDIR)/term.obj: $(OUTDIR) term.c $(INCL)
+$(OUTDIR)/term.obj: $(OUTDIR) term.c $(INCL)
-$(OUTDIR)/term.obj: $(OUTDIR) testing.c $(INCL)
+$(OUTDIR)/term.obj: $(OUTDIR) testing.c $(INCL)
-$(OUTDIR)/textformat.obj: $(OUTDIR) textformat.c $(INCL)
+$(OUTDIR)/textformat.obj: $(OUTDIR) textformat.c $(INCL)
-$(OUTDIR)/textobject.obj: $(OUTDIR) textobject.c $(INCL)
+$(OUTDIR)/textobject.obj: $(OUTDIR) textobject.c $(INCL)
-$(OUTDIR)/textprop.obj: $(OUTDIR) textprop.c $(INCL)
+$(OUTDIR)/textprop.obj: $(OUTDIR) textprop.c $(INCL)
-$(OUTDIR)/time.obj: $(OUTDIR) time.c $(INCL)
+$(OUTDIR)/time.obj: $(OUTDIR) time.c $(INCL)
-$(OUTDIR)/tuple.obj: $(OUTDIR) tuple.c $(INCL)
+$(OUTDIR)/tuple.obj: $(OUTDIR) tuple.c $(INCL)
-$(OUTDIR)/typval.obj: $(OUTDIR) typval.c $(INCL)
+$(OUTDIR)/typval.obj: $(OUTDIR) typval.c $(INCL)
-$(OUTDIR)/ui.obj: $(OUTDIR) ui.c $(INCL)
+$(OUTDIR)/ui.obj: $(OUTDIR) ui.c $(INCL)
-$(OUTDIR)/undo.obj: $(OUTDIR) undo.c $(INCL)
+$(OUTDIR)/undo.obj: $(OUTDIR) undo.c $(INCL)
-$(OUTDIR)/usercmd.obj: $(OUTDIR) usercmd.c $(INCL)
+$(OUTDIR)/usercmd.obj: $(OUTDIR) usercmd.c $(INCL)
-$(OUTDIR)/userfunc.obj: $(OUTDIR) userfunc.c $(INCL)
+$(OUTDIR)/userfunc.obj: $(OUTDIR) userfunc.c $(INCL)
-$(OUTDIR)/version.obj: $(OUTDIR) version.c $(INCL) version.h
+$(OUTDIR)/version.obj: $(OUTDIR) version.c $(INCL) version.h
-$(OUTDIR)/vim9class.obj: $(OUTDIR) vim9class.c $(INCL) vim9.h
+$(OUTDIR)/vim9class.obj: $(OUTDIR) vim9class.c $(INCL) vim9.h
-$(OUTDIR)/vim9cmds.obj: $(OUTDIR) vim9cmds.c $(INCL) vim9.h
+$(OUTDIR)/vim9cmds.obj: $(OUTDIR) vim9cmds.c $(INCL) vim9.h
-$(OUTDIR)/vim9compile.obj: $(OUTDIR) vim9compile.c $(INCL) vim9.h
+$(OUTDIR)/vim9compile.obj: $(OUTDIR) vim9compile.c $(INCL) vim9.h
-$(OUTDIR)/vim9execute.obj: $(OUTDIR) vim9execute.c $(INCL) vim9.h
+$(OUTDIR)/vim9execute.obj: $(OUTDIR) vim9execute.c $(INCL) vim9.h
-$(OUTDIR)/vim9expr.obj: $(OUTDIR) vim9expr.c $(INCL) vim9.h
+$(OUTDIR)/vim9expr.obj: $(OUTDIR) vim9expr.c $(INCL) vim9.h
-$(OUTDIR)/vim9generics.obj: $(OUTDIR) vim9generics.c $(INCL) vim9.h
+$(OUTDIR)/vim9generics.obj: $(OUTDIR) vim9generics.c $(INCL) vim9.h
-$(OUTDIR)/vim9instr.obj: $(OUTDIR) vim9instr.c $(INCL) vim9.h
+$(OUTDIR)/vim9instr.obj: $(OUTDIR) vim9instr.c $(INCL) vim9.h
-$(OUTDIR)/vim9script.obj: $(OUTDIR) vim9script.c $(INCL) vim9.h
+$(OUTDIR)/vim9script.obj: $(OUTDIR) vim9script.c $(INCL) vim9.h
-$(OUTDIR)/vim9type.obj: $(OUTDIR) vim9type.c $(INCL) vim9.h
+$(OUTDIR)/vim9type.obj: $(OUTDIR) vim9type.c $(INCL) vim9.h
-$(OUTDIR)/viminfo.obj: $(OUTDIR) viminfo.c $(INCL) version.h
+$(OUTDIR)/viminfo.obj: $(OUTDIR) viminfo.c $(INCL) version.h
-$(OUTDIR)/window.obj: $(OUTDIR) window.c $(INCL)
+$(OUTDIR)/window.obj: $(OUTDIR) window.c $(INCL)
$(OUTDIR)/xpm_w32.obj: $(OUTDIR) xpm_w32.c
$(CC) $(CFLAGS_OUTDIR) $(XPM_INC) xpm_w32.c
-!if "$(VIMDLL)" == "yes"
-$(OUTDIR)/vimc.res: $(OUTDIR) vim.rc vim.manifest version.h gui_w32_rc.h \
+!IF "$(VIMDLL)" == "yes"
+$(OUTDIR)/vimc.res: $(OUTDIR) vim.rc vim.manifest version.h gui_w32_rc.h \
vim.ico
$(RC) /nologo /l 0x409 /Fo$@ $(RCFLAGS:-DFEAT_GUI_MSWIN=) vim.rc
-$(OUTDIR)/vimg.res: $(OUTDIR) vim.rc vim.manifest version.h gui_w32_rc.h \
+$(OUTDIR)/vimg.res: $(OUTDIR) vim.rc vim.manifest version.h gui_w32_rc.h \
vim.ico
$(RC) /nologo /l 0x409 /Fo$@ $(RCFLAGS) vim.rc
-$(OUTDIR)/vimd.res: $(OUTDIR) vim.rc version.h gui_w32_rc.h \
- tools.bmp tearoff.bmp vim.ico vim_error.ico \
- vim_alert.ico vim_info.ico vim_quest.ico
+$(OUTDIR)/vimd.res: $(OUTDIR) vim.rc version.h gui_w32_rc.h \
+ tools.bmp tearoff.bmp vim.ico vim_error.ico \
+ vim_alert.ico vim_info.ico vim_quest.ico
$(RC) /nologo /l 0x409 /Fo$@ $(RCFLAGS) \
-DRCDLL -DVIMDLLBASE=\"$(VIMDLLBASE)\" vim.rc
-!else
-$(OUTDIR)/vim.res: $(OUTDIR) vim.rc vim.manifest version.h gui_w32_rc.h \
- tools.bmp tearoff.bmp vim.ico vim_error.ico \
- vim_alert.ico vim_info.ico vim_quest.ico
+!ELSE
+$(OUTDIR)/vim.res: $(OUTDIR) vim.rc vim.manifest version.h gui_w32_rc.h \
+ tools.bmp tearoff.bmp vim.ico vim_error.ico \
+ vim_alert.ico vim_info.ico vim_quest.ico
$(RC) /nologo /l 0x409 /Fo$@ $(RCFLAGS) vim.rc
-!endif
+!ENDIF
iid_ole.c if_ole.h vim.tlb: if_ole.idl
midl /nologo /error none /proxy nul /iid iid_ole.c /tlb vim.tlb \
{libvterm/src}.c{$(OUTDIR)/libvterm}.obj::
$(CCCTERM) /Fo$(OUTDIR)/libvterm/ $<
-$(OUTDIR)/libvterm/encoding.obj: $(OUTDIR)/libvterm libvterm/src/encoding.c $(TERM_DEPS)
+$(OUTDIR)/libvterm/encoding.obj: $(OUTDIR)/libvterm libvterm/src/encoding.c \
+ $(TERM_DEPS)
-$(OUTDIR)/libvterm/keyboard.obj: $(OUTDIR)/libvterm libvterm/src/keyboard.c $(TERM_DEPS)
+$(OUTDIR)/libvterm/keyboard.obj: $(OUTDIR)/libvterm libvterm/src/keyboard.c \
+ $(TERM_DEPS)
-$(OUTDIR)/libvterm/mouse.obj: $(OUTDIR)/libvterm libvterm/src/mouse.c $(TERM_DEPS)
+$(OUTDIR)/libvterm/mouse.obj: $(OUTDIR)/libvterm libvterm/src/mouse.c \
+ $(TERM_DEPS)
-$(OUTDIR)/libvterm/parser.obj: $(OUTDIR)/libvterm libvterm/src/parser.c $(TERM_DEPS)
+$(OUTDIR)/libvterm/parser.obj: $(OUTDIR)/libvterm libvterm/src/parser.c \
+ $(TERM_DEPS)
$(OUTDIR)/libvterm/pen.obj: $(OUTDIR)/libvterm libvterm/src/pen.c $(TERM_DEPS)
-$(OUTDIR)/libvterm/screen.obj: $(OUTDIR)/libvterm libvterm/src/screen.c $(TERM_DEPS)
+$(OUTDIR)/libvterm/screen.obj: $(OUTDIR)/libvterm libvterm/src/screen.c \
+ $(TERM_DEPS)
-$(OUTDIR)/libvterm/state.obj: $(OUTDIR)/libvterm libvterm/src/state.c $(TERM_DEPS)
+$(OUTDIR)/libvterm/state.obj: $(OUTDIR)/libvterm libvterm/src/state.c \
+ $(TERM_DEPS)
-$(OUTDIR)/libvterm/unicode.obj: $(OUTDIR)/libvterm libvterm/src/unicode.c $(TERM_DEPS)
+$(OUTDIR)/libvterm/unicode.obj: $(OUTDIR)/libvterm libvterm/src/unicode.c \
+ $(TERM_DEPS)
-$(OUTDIR)/libvterm/vterm.obj: $(OUTDIR)/libvterm libvterm/src/vterm.c $(TERM_DEPS)
+$(OUTDIR)/libvterm/vterm.obj: $(OUTDIR)/libvterm libvterm/src/vterm.c \
+ $(TERM_DEPS)
# $CFLAGS may contain backslashes, quotes and chevrons, escape them all.
E_LINKARGS2 = $(E000_LINKARGS2:>=^^>)
$(PATHDEF_SRC): Make_mvc.mak
- @echo creating $(PATHDEF_SRC)
- @echo /* pathdef.c */ > $(PATHDEF_SRC)
- @echo #include "vim.h" >> $(PATHDEF_SRC)
- @echo char_u *default_vim_dir = (char_u *)"$(VIMRCLOC:\=\\)"; >> $(PATHDEF_SRC)
- @echo char_u *default_vimruntime_dir = (char_u *)"$(VIMRUNTIMEDIR:\=\\)"; >> $(PATHDEF_SRC)
- @echo char_u *all_cflags = (char_u *)"$(CC:\=\\) $(E_CFLAGS)"; >> $(PATHDEF_SRC)
- @echo char_u *all_lflags = (char_u *)"$(LINK:\=\\) $(LINKARGS1:\=\\) $(E_LINKARGS2)"; >> $(PATHDEF_SRC)
- @echo char_u *compiled_user = (char_u *)"$(USERNAME)"; >> $(PATHDEF_SRC)
- @echo char_u *compiled_sys = (char_u *)"$(USERDOMAIN)"; >> $(PATHDEF_SRC)
+ @ echo creating $(PATHDEF_SRC)
+ @ echo /* pathdef.c */ > $(PATHDEF_SRC)
+ @ echo #include "vim.h" >> $(PATHDEF_SRC)
+ @ echo char_u *default_vim_dir = (char_u *)"$(VIMRCLOC:\=\\)"; \
+ >> $(PATHDEF_SRC)
+ @ echo char_u *default_vimruntime_dir = \
+ (char_u *)"$(VIMRUNTIMEDIR:\=\\)"; >> $(PATHDEF_SRC)
+ @ echo char_u *all_cflags = (char_u *)"$(CC:\=\\) $(E_CFLAGS)"; \
+ >> $(PATHDEF_SRC)
+ @ echo char_u *all_lflags = \
+ (char_u *)"$(LINK:\=\\) $(LINKARGS1:\=\\) $(E_LINKARGS2)"; \
+ >> $(PATHDEF_SRC)
+ @ echo char_u *compiled_user = (char_u *)"$(USERNAME)"; \
+ >> $(PATHDEF_SRC)
+ @ echo char_u *compiled_sys = (char_u *)"$(USERDOMAIN)"; \
+ >> $(PATHDEF_SRC)
# End Custom Build
proto.h: \
.c.i:
$(CC) $(CFLAGS) /P /C $<
-# vim: set noet sw=8 ts=8 sts=0 wm=0 tw=0:
+# vim: set noet sw=8 ts=8 sts=0 wm=0 tw=79 ft=make:
--- /dev/null
+#
+# Makefile for setting up common tools used in Make_mvc.mak
+#
+# 2023-11-28, Restorer, <restorer@mail2k.ru>
+#
+
+CP = copy /Y
+LS = dir
+MKD = mkdir
+MV = move /Y
+DELTREE = rmdir /Q /S
+RD = rmdir /Q /S
+RM = del /F /Q
+MKHLNK = mklink /H
+MKDLNK = mklink /D
+MKJLNK = mklink /J
+MKSLNK = mklink
+
+PS = PowerShell.exe
+PSFLAGS = -NoLogo -NoProfile -Command
+
+!IF [$(PS) $(PSFLAGS) "exit $$psversiontable.psversion.major"] == 2
+!ERROR The PowerShell program version 3.0 or higher is required for work.
+!ENDIF
+
+!IF ![echo $(COMSPEC) | 1> nul find "cmd.exe"]
+CMD = $(COMSPEC)
+!ELSE
+CMD = $(SYSTEMROOT)\System32\cmd.exe
+!ENDIF
+CMDFLAGS = /Q /C
+CMDFLAGSEX = /V:ON /E:ON $(CMDFLAGS)
+
+# 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 %1
+!ELSE
+TOUCH = if exist %1 (copy /b %1+,, %1) else (break> %1)
+#TOUCH = $(PS) $(PSFLAGS) if (Test-Path $$input -PathType Leaf) \
+# {(Get-ChildItem $$input).LastWriteTime = Get-Date} else \
+# {New-Item $$input -Type file}
+!ENDIF
+
+# vim: set noet sw=8 ts=8 sts=0 wm=0 tw=79 ft=make:
# (based on make_ming.mak)
#
# Mike Williams, <mrw@eandem.co.uk>
-# 06.01.24, Restorer, <restorer@mail2k.ru>
+# 2024-01-06, Restorer, <restorer@mail2k.ru>
#
# Please read README_mvc.txt before using this file.
#
-!IF [powershell.exe -nologo -noprofile "exit $$psversiontable.psversion.major"] == 2
-!ERROR The program "PowerShell" version 3.0 or higher is required to work
-!ENDIF
+# included common tools
+!INCLUDE ..\auto\nmake\tools.mak
!IFNDEF LANGUAGE
-! IF ![powershell.exe -NoLogo -NoProfile -Command \
- Set-Content -Path .\_lng.tmp \
+! IF ![$(PS) $(PSFLAGS) Set-Content -Path .\_lng.tmp \
-Value "LANGUAGE=$$((Get-UICulture).TwoLetterISOLanguageName)"]
-! INCLUDE _lng.tmp
-! IF [del /q .\_lng.tmp]
+! INCLUDE .\_lng.tmp
+! IF [$(RM) .\_lng.tmp]
! ENDIF
! MESSAGE
! MESSAGE The %LANGUAGE% environment variable is not set.
!ENDIF
# Get LANGUAGES, MOFILES, MOCONVERTED and others.
-!INCLUDE Make_all.mak
+!INCLUDE .\Make_all.mak
!IFNDEF VIMRUNTIME
VIMRUNTIME = ..\..\runtime
!ENDIF
-PACKAGE = vim
# Correct the following line for the where executable file vim is
# installed. Please do not put the path in quotes.
!IFNDEF VIMPROG
GETTEXT_PATH = D:\Programs\GetText\bin
!ENDIF
+INSTALLDIR = $(VIMRUNTIME)\lang\$(LANGUAGE)\LC_MESSAGES
+PACKAGE = vim
+
# Starting from version 0.22, msgfmt forcibly converts text to UTF-8 regardless
# of the value of the "charset" field.
-!IF [%comspec% /v:on /e:on /c "for /F "tokens=4 delims= " %G in \
- ('"$(GETTEXT_PATH)\msgfmt.exe" --version^|findstr /rc:[0-9^]\.[0-9^][0-9^]')\
- do @(set "v=%G" && if !v:~2^,2! GEQ 22 exit /b 1)"]
+!IF ![$(GETTEXT_PATH)\msgfmt.exe --help | 1> nul find "--no-convert"]
MSGFMT = "$(GETTEXT_PATH)\msgfmt.exe" -v --no-convert
!ELSE
MSGFMT = "$(GETTEXT_PATH)\msgfmt.exe" -v
ICONV = "$(GETTEXT_PATH)\iconv.exe"
!ENDIF
-# 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_TARGET = touch.exe $@
-!ELSE
-TOUCH_TARGET = @if exist $@ ( copy /b $@+,, ) else ( type nul >$@ )
-!ENDIF
-
-MV = move /y
-CP = copy /y
-RM = del /q
-MKD = mkdir
-LS = dir
-PS = PowerShell.exe
-
-LSFLAGS = /b /on /l /s
-PSFLAGS = -NoLogo -NoProfile -Command
-
-INSTALLDIR = $(VIMRUNTIME)\lang\$(LANGUAGE)\LC_MESSAGES
+LSFLAGS = /B /ON /L /S
!IF ![$(PS) $(PSFLAGS) Set-Content -Path .\_year.tmp \
-Value Year=$$((Get-Date).Year)]
converted: $(MOCONVERTED)
.po.ck:
- "$(VIMPROG)" -u NONE --noplugins -e -s -X --cmd "set enc=utf-8" \
- -S check.vim -c "if error == 0 | q | else | num 2 | cq | endif" $<
- $(TOUCH_TARGET)
+ "$(VIMPROG)" -u NONE --noplugins -e -s --cmd "set enc=utf-8" \
+ -S check.vim \
+ -c "if error == 0 | q | else | num 2 | cq | endif" $<
+ @ <<touch.bat $@
+$(TOUCH)
+<<
check: $(CHECKFILES)
checkclean:
$(RM) *.ck
-nl.po:
- @( echo ^# >> nl.po )
-
# Norwegian/Bokmal: "nb" is an alias for "no".
nb.po: no.po
$(CP) no.po nb.po
# Convert ja.po to create ja.sjis.po.
ja.sjis.po: ja.po
- @$(MAKE) -nologo -f Make_mvc.mak sjiscorr
- -$(RM) $@
+ @ $(MAKE) -nologo -f Make_mvc.mak sjiscorr
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t CP932 $? | .\sjiscorr.exe > $@
!ELSE
[System.IO.File]::ReadAllText(\"$?\", \
[System.Text.Encoding]::GetEncoding(65001)), \
[System.Text.Encoding]::GetEncoding(932))
- type $@ | .\sjiscorr.exe > tmp.$@
- @$(MV) tmp.$@ $@
+ type $@ | .\sjiscorr.exe > $@.tmp
+ @ $(MV) $@.tmp $@
!ENDIF
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(932)) \
# Convert ja.po to create ja.euc-jp.po.
ja.euc-jp.po: ja.po
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t EUC-JP $? > $@
!ELSE
!ENDIF
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(20932)) -replace \
- 'charset=utf-8', 'charset=EUC-JP'; \
- [System.IO.File]::WriteAllText(\"$@\", $$out, \
- [System.Text.Encoding]::GetEncoding(20932))
- $(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
- [System.Text.Encoding]::GetEncoding(20932)) -replace \
+ 'charset=utf-8', 'charset=EUC-JP' -replace \
'# Original translations', \
'# Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
# Convert cs.po to create cs.cp1250.po.
cs.cp1250.po: cs.po
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f ISO-8859-2 -t CP1250 $? > $@
!ELSE
!ENDIF
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(1250)) -replace \
- 'charset=iso-8859-2', 'charset=CP1250'; \
- [System.IO.File]::WriteAllText(\"$@\", $$out, \
- [System.Text.Encoding]::GetEncoding(1250))
- $(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
- [System.Text.Encoding]::GetEncoding(1250)) -replace \
+ 'charset=iso-8859-2', 'charset=CP1250' -replace \
'# Original translations', \
'# Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
# Convert pl.po to create pl.cp1250.po.
pl.cp1250.po: pl.po
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f ISO-8859-2 -t CP1250 $? > $@
!ELSE
!ENDIF
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(1250)) -replace \
- 'charset=iso-8859-2', 'charset=CP1250'; \
- [System.IO.File]::WriteAllText(\"$@\", $$out, \
- [System.Text.Encoding]::GetEncoding(1250))
- $(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
- [System.Text.Encoding]::GetEncoding(1250)) -replace \
+ 'charset=iso-8859-2', 'charset=CP1250' -replace \
'# Original translations', \
'# Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
# Convert pl.po to create pl.UTF-8.po.
pl.UTF-8.po: pl.po
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f ISO-8859-2 -t UTF-8 $? > $@
!ELSE
[System.Text.Encoding]::GetEncoding(28592)))
!ENDIF
$(PS) $(PSFLAGS) (Get-Content -Raw -Encoding UTF8 $@ \
- ^| % {$$_-replace 'charset=iso-8859-2', 'charset=UTF-8'}) \
- ^| 1>nul New-Item -Force -Path . -ItemType file -Name $@
- $(PS) $(PSFLAGS) (Get-Content -Raw -Encoding UTF8 $@ \
- ^| % {$$_-replace '# Original translations', \
+ ^| % {$$_-replace 'charset=iso-8859-2', 'charset=UTF-8' \
+ -replace '# Original translations', \
'# Generated from $?, DO NOT EDIT'}) \
- ^| 1>nul New-Item -Force -Path . -ItemType file -Name $@
+ ^| 1>nul New-Item -Path . -Name $@ -ItemType file -Force
# Convert sk.po to create sk.cp1250.po.
sk.cp1250.po: sk.po
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f ISO-8859-2 -t CP1250 $? > $@
!ELSE
!ENDIF
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(1250)) -replace \
- 'charset=iso-8859-2', 'charset=CP1250'; \
- [System.IO.File]::WriteAllText(\"$@\", $$out, \
- [System.Text.Encoding]::GetEncoding(1250))
- $(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
- [System.Text.Encoding]::GetEncoding(1250)) -replace \
+ 'charset=iso-8859-2', 'charset=CP1250' -replace \
'# Original translations', \
'# Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
# Convert zh_CN.UTF-8.po to create zh_CN.po.
zh_CN.po: zh_CN.UTF-8.po
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t GB2312 $? > $@
!ELSE
!ENDIF
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(936)) -replace \
- 'charset=UTF-8', 'charset=GB2312'; \
- [System.IO.File]::WriteAllText(\"$@\", $$out, \
- [System.Text.Encoding]::GetEncoding(936))
- $(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
- [System.Text.Encoding]::GetEncoding(936)) -replace \
+ 'charset=UTF-8', 'charset=GB2312' -replace \
'# Original translations', \
'# Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
# Set 'charset' to gbk to avoid that msfmt generates a warning.
# This used to convert from zh_CN.po, but that results in a conversion error.
zh_CN.cp936.po: zh_CN.UTF-8.po
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t CP936 $? > $@
!ELSE
!ENDIF
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
- [System.Text.Encoding]::GetEncoding(20936)) \
- -replace 'charset=UTF-8', 'charset=GBK'\
- -replace '# Original translations', \
+ [System.Text.Encoding]::GetEncoding(20936)) -replace \
+ 'charset=UTF-8', 'charset=GBK' -replace \
+ '# Original translations', \
'# Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
[System.Text.Encoding]::GetEncoding(20936))
# Convert zh_TW.UTF-8.po to create zh_TW.po.
zh_TW.po: zh_TW.UTF-8.po
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t BIG5 $? > $@
!ELSE
!ENDIF
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(950)) -replace \
- 'charset=UTF-8', 'charset=BIG5'; \
- [System.IO.File]::WriteAllText(\"$@\", $$out, \
- [System.Text.Encoding]::GetEncoding(950))
- $(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
- [System.Text.Encoding]::GetEncoding(950)) -replace \
+ 'charset=UTF-8', 'charset=BIG5' -replace \
'# Original translations', \
'# Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
#zh_TW.po: zh_TW.UTF-8.po
# @$(MAKE) -nologo -f Make_mvc.mak big5corr
-# -$(RM) $@
+# - $(RM) $@
#!IF DEFINED (ICONV)
# $(ICONV) -f UTF-8 -t BIG5 $? | .\big5corr.exe > $@
#!ELSE
# Convert ko.UTF-8.po to create ko.po.
ko.po: ko.UTF-8.po
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t EUC-KR $? > $@
!ELSE
!ENDIF
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(51949)) -replace \
- 'charset=UTF-8', 'charset=EUC-KR'; \
- [System.IO.File]::WriteAllText(\"$@\", $$out, \
- [System.Text.Encoding]::GetEncoding(51949))
- $(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
- [System.Text.Encoding]::GetEncoding(51949)) -replace \
+ 'charset=UTF-8', 'charset=EUC-KR' -replace \
'# Original translations', \
'# Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
# Convert ru.po to create ru.cp1251.po.
ru.cp1251.po: ru.po
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t CP1251 $? > $@
!ELSE
!ENDIF
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(1251)) -replace \
- 'charset=UTF-8', 'charset=CP1251'; \
- [System.IO.File]::WriteAllText(\"$@\", $$out, \
- [System.Text.Encoding]::GetEncoding(1251))
- $(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
- [System.Text.Encoding]::GetEncoding(1251)) -replace \
+ 'charset=UTF-8', 'charset=CP1251' -replace \
'# Original translations', \
'# Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
# Convert uk.po to create uk.cp1251.po.
uk.cp1251.po: uk.po
- -$(RM) $@
+ - $(RM) $@
!IF DEFINED (ICONV)
$(ICONV) -f UTF-8 -t CP1251 $? > $@
!ELSE
!ENDIF
$(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
[System.Text.Encoding]::GetEncoding(1251)) -replace \
- 'charset=UTF-8', 'charset=CP1251'; \
- [System.IO.File]::WriteAllText(\"$@\", $$out, \
- [System.Text.Encoding]::GetEncoding(1251))
- $(PS) $(PSFLAGS) $$out = [System.IO.File]::ReadAllText(\"$@\", \
- [System.Text.Encoding]::GetEncoding(1251)) -replace \
+ 'charset=UTF-8', 'charset=CP1251' -replace \
'# Original translations', \
'# Generated from $?, DO NOT EDIT'; \
[System.IO.File]::WriteAllText(\"$@\", $$out, \
first_time: files
"$(VIMPROG)" -u NONE --not-a-term -S tojavascript.vim $(LANGUAGE).po \
$(PO_VIM_INPUTLIST)
- @ copy /b .\files+.\vim_to_js .\allfiles
+ @ $(CP) /B .\files+.\vim_to_js .\allfiles
set OLD_PO_FILE_INPUT=yes
set OLD_PO_FILE_OUTPUT=yes
$(XGETTEXT) --default-domain=$(LANGUAGE) --add-comments \
$(XGETTEXT_KEYWORDS) --files-from=.\allfiles \
- --copyright-holder="$(Year), The Vim Project" --package-name=Vim \
- --msgid-bugs-address="vim-dev@vim.org"
+ --copyright-holder="$(Year), The Vim Project" \
+ --package-name=Vim --msgid-bugs-address="vim-dev@vim.org"
"$(VIMPROG)" -u NONE --not-a-term -S fixfilenames.vim $(LANGUAGE).po \
$(PO_VIM_INPUTLIST)
$(RM) *.js .\vim_to_js
- @$(MAKE) -lf Make_mvc.mak clean
+ @ $(MAKE) -lf Make_mvc.mak clean
$(PACKAGE).pot: files
"$(VIMPROG)" -u NONE --not-a-term -S tojavascript.vim $(PACKAGE).pot \
$(PO_VIM_INPUTLIST)
- @ copy /b .\files+.\vim_to_js .\allfiles
+ @ $(CP) /B .\files+.\vim_to_js .\allfiles
set OLD_PO_FILE_INPUT=yes
set OLD_PO_FILE_OUTPUT=yes
$(XGETTEXT) --default-domain=$(PACKAGE) --output=$(PACKAGE).pot \
"$(VIMPROG)" -u NONE --not-a-term -S fixfilenames.vim $(PACKAGE).pot \
$(PO_VIM_INPUTLIST)
$(RM) *.js .\vim_to_js
- @$(MAKE) -lf Make_mvc.mak clean
+ @ $(MAKE) -lf Make_mvc.mak clean
# Only original translations with default encoding should be updated.
# The files that are converted to a different encoding clearly state "DO NOT EDIT".
# Don't add a dependency here, we only want to update the .po files manually.
$(LANGUAGES):
- @$(MAKE) -lf Make_mvc.mak GETTEXT_PATH="$(GETTEXT_PATH)" $(PACKAGE).pot
+ @ $(MAKE) -lf Make_mvc.mak "GETTEXT_PATH=$(GETTEXT_PATH)" $(PACKAGE).pot
$(CP) $@.po $@.po.orig
$(MV) $@.po $@.po.old
$(MSGMERGE) $@.po.old $(PACKAGE).pot -o $@.po
$(CP) $(LANGUAGE).mo "$(INSTALLDIR)\$(PACKAGE).mo"
install-all: all
- for %%l in ($(LANGUAGES)) do @if not exist "$(VIMRUNTIME)\lang\%%l\LC_MESSAGES" \
+ for %%l in ($(LANGUAGES)) do \
+ @if not exist "$(VIMRUNTIME)\lang\%%l\LC_MESSAGES" \
$(MKD) "$(VIMRUNTIME)\lang\%%l\LC_MESSAGES"
for %%l in ($(LANGUAGES)) do @$(CP) %%l.mo \
"$(VIMRUNTIME)\lang\%%l\LC_MESSAGES\$(PACKAGE).mo"
cleanup-po: $(LANGUAGE).po
- "$(VIMPROG)" -u NONE -e -X -S cleanup.vim -c wq $(LANGUAGE).po
+ @ "$(VIMPROG)" -u NONE -e -s -S cleanup.vim -c wq $(LANGUAGE).po
cleanup-po-all: $(POFILES)
- !"$(VIMPROG)" -u NONE -e -X -S cleanup.vim -c wq $**
+ !@ "$(VIMPROG)" -u NONE -e -s -S cleanup.vim -c wq $**
#######
# For translations of plug-ins
# - $(RM) *.pot
# - $(RM) big5corr.obj big5corr.exe
-# vim: set noet sw=8 ts=8 sts=0 wm=0 tw=0 ft=make:
+# vim: set noet sw=8 ts=8 sts=0 wm=0 tw=79 ft=make:
# A very (if not the most) simplistic Makefile for MSVC
+# included common tools
+!INCLUDE ..\auto\nmake\tools.mak
+
SUBSYSTEM = console
-!if "$(SUBSYSTEM_VER)" != ""
+!IF "$(SUBSYSTEM_VER)" != ""
SUBSYSTEM = $(SUBSYSTEM),$(SUBSYSTEM_VER)
-!endif
+!ENDIF
CC=cl
CFLAGS=/O2 /nologo
$(CC) $(CFLAGS) /c $**
clean:
- - del tee.obj
- - del tee.exe
+ - $(RM) tee.obj
+ - $(RM) tee.exe
+
+# vim: set noet sw=8 ts=8 sts=0 wm=0 tw=79 ft=make:
# Makefile to run all tests for Vim, on Dos-like machines.
#
# Requires a set of Unix tools: echo, diff, etc.
+#
+
+# included common tools
+!INCLUDE ..\auto\nmake\tools.mak
# Testing may be done with a debug build
!IF EXIST(..\\vimd.exe) && !EXIST(..\\vim.exe)
VIMPROG = ..\\vim.exe
!ENDIF
+DIFF = diff.exe
default: nongui
-!include Make_all.mak
+!INCLUDE .\Make_all.mak
# Explicit dependencies.
test_options_all.res: opt_test.vim
benchmark: $(SCRIPTS_BENCH)
report:
- @rem without the +eval feature test_result.log is a copy of test.log
- @if exist test.log ( copy /y test.log test_result.log > nul ) \
+ @ rem without the +eval feature test_result.log is a copy of test.log
+ @ if exist test.log ( $(CP) test.log test_result.log > nul ) \
else ( echo No failures reported > test_result.log )
$(VIMPROG) -u NONE $(COMMON_ARGS) -S util\summarize.vim messages
- -if exist starttime del starttime
- @echo:
- @echo Test results:
- @cmd /c type test_result.log
- @if exist test.log ( echo TEST FAILURE & exit /b 1 ) \
+ - if exist starttime $(RM) starttime
+ @ echo:
+ @ echo Test results:
+ @ $(CMD) /C type test_result.log
+ @ if exist test.log ( echo TEST FAILURE & exit /b 1 ) \
else ( echo ALL DONE )
# Execute an individual new style test, e.g.:
# nmake -f Make_mvc.mak test_largefile
$(NEW_TESTS):
- -if exist $@.res del $@.res
- -if exist test.log del test.log
- -if exist messages del messages
- -if exist starttime del starttime
- @$(MAKE) -nologo -f Make_mvc.mak VIMPROG=$(VIMPROG) $@.res
- @type messages
- @if exist test.log exit 1
+ - if exist $@.res $(RM) $@.res
+ - if exist test.log $(RM) test.log
+ - if exist messages $(RM) messages
+ - if exist starttime $(RM) starttime
+ @ $(MAKE) -lf Make_mvc.mak VIMPROG=$(VIMPROG) $@.res
+ @ type messages
+ @ if exist test.log exit 1
# Delete files that may interfere with running tests. This includes some files
# that may result from working on the tests, not only from running them.
clean:
- -if exist *.out del *.out
- -if exist *.failed del *.failed
- -if exist *.res del *.res
- -if exist $(DOSTMP) rd /s /q $(DOSTMP)
- -if exist test.in del test.in
- -if exist test.ok del test.ok
- -if exist Xdir1 rd /s /q Xdir1
- -if exist Xfind rd /s /q Xfind
- -if exist XfakeHOME rd /s /q XfakeHOME
- -if exist X* del X*
- -for /d %i in (X*) do @rd /s/q %i
- -if exist viminfo del viminfo
- -if exist test.log del test.log
- -if exist test_result.log del test_result.log
- -if exist messages del messages
- -if exist starttime del starttime
- -if exist benchmark.out del benchmark.out
- -if exist opt_test.vim del opt_test.vim
- -if exist guidialog del guidialog
- -if exist guidialogfile del guidialogfile
+ - if exist *.out $(RM) *.out
+ - if exist *.failed $(RM) *.failed
+ - if exist *.res $(RM) *.res
+ - if exist $(DOSTMP) $(RD) $(DOSTMP)
+ - if exist test.in $(RM) test.in
+ - if exist test.ok $(RM) test.ok
+ - if exist Xdir1 $(RD) Xdir1
+ - if exist Xfind $(RD) Xfind
+ - if exist XfakeHOME $(RD) XfakeHOME
+ - if exist X* $(RM) X*
+ - for /d %i in (X*) do @$(RD) %i
+ - if exist viminfo $(RM) viminfo
+ - if exist test.log $(RM) test.log
+ - if exist test_result.log $(RM) test_result.log
+ - if exist messages $(RM) messages
+ - if exist starttime $(RM) starttime
+ - if exist benchmark.out $(RM) benchmark.out
+ - if exist opt_test.vim $(RM) opt_test.vim
+ - if exist guidialog $(RM) guidialog
+ - if exist guidialogfile $(RM) guidialogfile
nolog:
- -if exist test.log del test.log
- -if exist test_result.log del test_result.log
- -if exist messages del messages
- -if exist starttime del starttime
+ - if exist test.log $(RM) test.log
+ - if exist test_result.log $(RM) test_result.log
+ - if exist messages $(RM) messages
+ - if exist starttime $(RM) starttime
# Tiny tests. Works even without the +eval feature.
# Copy the input files to dostmp, changing the fileformat to dos.
$(DOSTMP_INFILES): $(*B).in
- if not exist $(DOSTMP)\NUL md $(DOSTMP)
- if exist $@ del $@
+ if not exist $(DOSTMP)\NUL $(MKD) $(DOSTMP)
+ if exist $@ $(RM) $@
$(VIMPROG) -u util\dos.vim $(COMMON_ARGS) "+set ff=dos|f $@|wq" $(*B).in
# For each input file dostmp/test99.in run the tests.
# This moves test99.in to test99.in.bak temporarily.
$(TEST_OUTFILES): $(DOSTMP)\$(*B).in
- -@if exist test.out DEL test.out
- -@if exist $(DOSTMP)\$(*B).out DEL $(DOSTMP)\$(*B).out
- move $(*B).in $(*B).in.bak > nul
- copy $(DOSTMP)\$(*B).in $(*B).in > nul
- copy $(*B).ok test.ok > nul
+ -@ if exist test.out $(RM) test.out
+ -@ if exist $(DOSTMP)\$(*B).out $(RM) $(DOSTMP)\$(*B).out
+ $(MV) $(*B).in $(*B).in.bak > nul
+ $(CP) $(DOSTMP)\$(*B).in $(*B).in > nul
+ $(CP) $(*B).ok test.ok > nul
$(VIMPROG) -u util\dos.vim $(COMMON_ARGS) -s dotest.in $(*B).in
- -@if exist test.out MOVE /y test.out $(DOSTMP)\$(*B).out > nul
- -@if exist $(*B).in.bak move /y $(*B).in.bak $(*B).in > nul
- -@if exist test.ok del test.ok
- -@if exist Xdir1 rd /s /q Xdir1
- -@if exist Xfind rd /s /q Xfind
- -@if exist XfakeHOME rd /s /q XfakeHOME
- -@del X*
- -@if exist viminfo del viminfo
+ -@ if exist test.out $(MV) test.out $(DOSTMP)\$(*B).out > nul
+ -@ if exist $(*B).in.bak $(MV) $(*B).in.bak $(*B).in > nul
+ -@ if exist test.ok $(RM) test.ok
+ -@ if exist Xdir1 $(RD) Xdir1
+ -@ if exist Xfind $(RD) Xfind
+ -@ if exist XfakeHOME $(RD) XfakeHOME
+ -@ $(RM) X*
+ -@ if exist viminfo $(RM) viminfo
$(VIMPROG) -u util\dos.vim $(COMMON_ARGS) "+set ff=unix|f test.out|wq" \
$(DOSTMP)\$(*B).out
- @diff test.out $*.ok & if errorlevel 1 \
- ( move /y test.out $*.failed > nul \
- & del $(DOSTMP)\$(*B).out \
+ @ $(DIFF) test.out $*.ok & if errorlevel 1 \
+ ( $(MV) test.out $*.failed > nul \
+ & $(RM) $(DOSTMP)\$(*B).out \
& echo $* FAILED >> test.log ) \
- else ( move /y test.out $*.out > nul )
+ else ( $(MV) test.out $*.out > nul )
# New style of tests uses Vim script with assert calls. These are easier
# Limitation: Only works with the +eval feature.
newtests: newtestssilent
- @if exist messages type messages
+ @ if exist messages type messages
newtestssilent: $(NEW_TESTS_RES)
.vim.res:
- @echo $(VIMPROG) > vimcmd
+ @ echo $(VIMPROG) > vimcmd
$(VIMPROG) -u NONE $(COMMON_ARGS) -S runtest.vim $*.vim
- @del vimcmd
+ @ $(RM) vimcmd
test_gui.res: test_gui.vim
- @echo $(VIMPROG) > vimcmd
+ @ echo $(VIMPROG) > vimcmd
$(VIMPROG) -u NONE $(COMMON_ARGS) -S runtest.vim $*.vim
- @del vimcmd
+ @ $(RM) vimcmd
test_gui_init.res: test_gui_init.vim
- @echo $(VIMPROG) > vimcmd
- $(VIMPROG) -u util\gui_preinit.vim -U util\gui_init.vim $(NO_PLUGINS) -S runtest.vim $*.vim
- @del vimcmd
+ @ echo $(VIMPROG) > vimcmd
+ $(VIMPROG) -u util\gui_preinit.vim -U util\gui_init.vim $(NO_PLUGINS) \
+ -S runtest.vim $*.vim
+ @ $(RM) vimcmd
-opt_test.vim: util/gen_opt_test.vim ../optiondefs.h ../../runtime/doc/options.txt
+opt_test.vim: util/gen_opt_test.vim ../optiondefs.h \
+ ../../runtime/doc/options.txt
$(VIMPROG) -e -s -u NONE $(COMMON_ARGS) --nofork -S $**
- @if exist test.log ( type test.log & exit /b 1 )
+ @ if exist test.log ( type test.log & exit /b 1 )
test_bench_regexp.res: test_bench_regexp.vim
- -if exist benchmark.out del benchmark.out
- @echo $(VIMPROG) > vimcmd
+ - if exist benchmark.out $(RM) benchmark.out
+ @ echo $(VIMPROG) > vimcmd
$(VIMPROG) -u NONE $(COMMON_ARGS) -S runtest.vim $*.vim
- @del vimcmd
- @IF EXIST benchmark.out ( type benchmark.out )
+ @ $(RM) vimcmd
+ @ if exist benchmark.out ( type benchmark.out )
+
+# vim: set noet sw=8 ts=8 sts=0 wm=0 tw=79 ft=make:
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 1675,
/**/
1674,
/**/
# The most simplistic Makefile for Win32 using Microsoft Visual C++
# (NT and Windows 95)
+# included common tools
+!INCLUDE ..\auto\nmake\tools.mak
+
SUBSYSTEM = console
-!if "$(SUBSYSTEM_VER)" != ""
+!IF "$(SUBSYSTEM_VER)" != ""
SUBSYSTEM = $(SUBSYSTEM),$(SUBSYSTEM_VER)
-!endif
+!ENDIF
xxd: xxd.exe
xxd.exe: xxd.c
- cl /nologo /source-charset:utf-8 -DWIN32 xxd.c -link -subsystem:$(SUBSYSTEM)
+ cl /nologo /source-charset:utf-8 -DWIN32 xxd.c -link \
+ -subsystem:$(SUBSYSTEM)
# This was for an older compiler
# cl /nologo -DWIN32 xxd.c /link setargv.obj
clean:
- - if exist xxd.obj del xxd.obj
- - if exist xxd.exe del xxd.exe
+ - if exist xxd.obj $(RM) xxd.obj
+ - if exist xxd.exe $(RM) xxd.exe
+
+# vim: set noet sw=8 ts=8 sts=0 wm=0 tw=79 ft=make: