@@ -212,7 +212,7 @@ goto :skiptcl
212
212
rem call :downloadfile "%TCL_URL%" downloads\tcl-%BIT%.zip
213
213
rem 7z.exe x downloads\tcl-%BIT%.zip -o%DEPENDENCIES%\ > nul || exit 1
214
214
rem move /Y %DEPENDENCIES%\tcltk-%TCL_VER_LONG%.10-barebones-%ARCH% %TCL_DIR%
215
- rem mklink /H vim\src\%TCL_DLL% %TCL_DIR%\bin\%TCL_DLL%
215
+ rem call : mklink " vim\src\%TCL_DLL%" " %TCL_DIR%\bin\%TCL_DLL%"
216
216
:skiptcl
217
217
218
218
@ rem Python2
@@ -277,11 +277,11 @@ call :downloadfile "%GETTEXT_64_URL%" downloads\gettext64.zip
277
277
call :downloadfile " %WINPTY_URL% " downloads\winpty.zip
278
278
7z.exe x -y downloads\winpty.zip -o%WINPTY_DIR% > nul || exit 1
279
279
if /I " %ARCH% " == " x64" (
280
- mklink /H vim\src\winpty64.dll %WINPTY_DIR% \x64\bin\winpty.dll
281
- mklink /H vim\src\winpty-agent.exe %WINPTY_DIR% \x64\bin\winpty-agent.exe
280
+ call : mklink " vim\src\winpty64.dll" " %WINPTY_DIR% \x64\bin\winpty.dll"
281
+ call : mklink " vim\src\winpty-agent.exe" " %WINPTY_DIR% \x64\bin\winpty-agent.exe"
282
282
) else (
283
- mklink /H vim\src\winpty32.dll %WINPTY_DIR% \ia32\bin\winpty.dll
284
- mklink /H vim\src\winpty-agent.exe %WINPTY_DIR% \ia32\bin\winpty-agent.exe
283
+ call : mklink " vim\src\winpty32.dll" " %WINPTY_DIR% \ia32\bin\winpty.dll"
284
+ call : mklink " vim\src\winpty-agent.exe" " %WINPTY_DIR% \ia32\bin\winpty-agent.exe"
285
285
)
286
286
287
287
@ rem Install UPX
@@ -294,18 +294,15 @@ rem 7z.exe e -y downloads\upx.zip *\upx.exe -ovim\nsis > nul || exit 1
294
294
call :downloadfile " %SHELLEXECASUSER_URL% " downloads\shellexecasuser.zip
295
295
7z.exe x -y downloads\shellexecasuser.zip ^
296
296
-o%DEPENDENCIES% \shellexecasuser > nul || exit 1
297
- mklink /H " %ProgramFiles(x86)% \NSIS\Plugins\x86-unicode\ShellExecAsUser.dll" ^
298
- %DEPENDENCIES% \shellexecasuser\unicode\ShellExecAsUser.dll
297
+ call :mklink " %ProgramFiles(x86)% \NSIS\Plugins\x86-unicode\ShellExecAsUser.dll" " %DEPENDENCIES% \shellexecasuser\unicode\ShellExecAsUser.dll"
299
298
300
299
@ rem Install Libsodium
301
300
call :downloadfile " %LIBSODIUM_URL% " downloads\libsodium.zip
302
301
7z.exe x -y downloads\libsodium.zip -o%DEPENDENCIES% \ > nul || exit 1
303
302
if /I " %ARCH% " == " x64" (
304
- mklink /H vim\src\libsodium.dll ^
305
- %SODIUM_DIR% \x64\Release\v143\dynamic\libsodium.dll
303
+ call :mklink " vim\src\libsodium.dll" " %SODIUM_DIR% \x64\Release\v143\dynamic\libsodium.dll"
306
304
) else (
307
- mklink /H vim\src\libsodium.dll ^
308
- %SODIUM_DIR% \Win32\Release\v143\dynamic\libsodium.dll
305
+ call :mklink " vim\src\libsodium.dll" " %SODIUM_DIR% \Win32\Release\v143\dynamic\libsodium.dll"
309
306
)
310
307
311
308
@ echo off
@@ -373,58 +370,52 @@ mkdir vim\runtime\GvimExt32
373
370
@ rem Build both 64- and 32-bit versions of gvimext.dll for the installer
374
371
start " " /W cmd /C " %VCVARSALL% x64 && cd vim\src\GvimExt && nmake.exe -lf Make_mvc.mak CPU=AMD64 clean all > ..\gvimext.log"
375
372
type vim\src\gvimext.log
376
- mklink /H vim\runtime\GvimExt64\gvimext.dll vim\src\GvimExt\gvimext.dll
377
- mklink /H vim\runtime\GvimExt64\README.txt vim\src\GvimExt\README.txt
378
- mklink /H vim\runtime\GvimExt64\gvimext.inf vim\src\GvimExt\gvimext.inf
379
- mklink /H vim\runtime\GvimExt64\GvimExt.reg vim\src\GvimExt\GvimExt.reg
373
+ call : mklink " vim\runtime\GvimExt64\gvimext.dll" " vim\src\GvimExt\gvimext.dll"
374
+ call : mklink " vim\runtime\GvimExt64\README.txt" " vim\src\GvimExt\README.txt"
375
+ call : mklink " vim\runtime\GvimExt64\gvimext.inf" " vim\src\GvimExt\gvimext.inf"
376
+ call : mklink " vim\runtime\GvimExt64\GvimExt.reg" " vim\src\GvimExt\GvimExt.reg"
380
377
ren vim\src\GvimExt\gvimext.dll gvimext64.dll
381
378
382
379
start " " /W cmd /C " %VCVARSALL% x86 && cd vim\src\GvimExt && nmake.exe -lf Make_mvc.mak CPU=i386 clean all > ..\gvimext.log"
383
380
type vim\src\gvimext.log
384
- mklink /H vim\runtime\GvimExt32\gvimext.dll vim\src\GvimExt\gvimext.dll
385
- mklink /H vim\runtime\GvimExt32\README.txt vim\src\GvimExt\README.txt
386
- mklink /H vim\runtime\GvimExt32\gvimext.inf vim\src\GvimExt\gvimext.inf
387
- mklink /H vim\runtime\GvimExt32\GvimExt.reg vim\src\GvimExt\GvimExt.reg
388
-
389
- mklink /H vim\runtime\README.txt vim\README.txt
390
- mklink /H vim\runtime\LICENSE.txt vim\LICENSE
391
- mklink /H vim\runtime\uninstall.txt vim\uninstall.txt
392
- mklink /H vim\runtime\vimtutor.bat vim\vimtutor.bat
393
- mklink /H vim\runtime\vim.ico vim\src\vim.ico
394
- mklink /H vim\runtime\gvim.exe vim\src\gvim.exe
395
- mklink /H vim\runtime\install.exe vim\src\install.exe
396
- mklink /H vim\runtime\tee.exe vim\src\tee\tee.exe
397
- mklink /H vim\runtime\vim%BIT% .dll vim\src\vim%BIT% .dll
398
- mklink /H vim\runtime\vim.exe vim\src\vim.exe
399
- mklink /H vim\runtime\vimrun.exe vim\src\vimrun.exe
400
- mklink /H vim\runtime\uninstall.exe vim\src\uninstall.exe
401
- mklink /H vim\runtime\xxd.exe vim\src\xxd\xxd.exe
402
-
403
- mklink /H vim\runtime\libiconv-2.dll %DEPENDENCIES% \gettext%BIT% \libiconv-2.dll
404
- mklink /H vim\runtime\libintl-8.dll %DEPENDENCIES% \gettext%BIT% \libintl-8.dll
381
+ call : mklink " vim\runtime\GvimExt32\gvimext.dll" " vim\src\GvimExt\gvimext.dll"
382
+ call : mklink " vim\runtime\GvimExt32\README.txt" " vim\src\GvimExt\README.txt"
383
+ call : mklink " vim\runtime\GvimExt32\gvimext.inf" " vim\src\GvimExt\gvimext.inf"
384
+ call : mklink " vim\runtime\GvimExt32\GvimExt.reg" " vim\src\GvimExt\GvimExt.reg"
385
+
386
+ call : mklink " vim\runtime\README.txt" " vim\README.txt"
387
+ call : mklink " vim\runtime\LICENSE.txt" " vim\LICENSE"
388
+ call : mklink " vim\runtime\uninstall.txt" " vim\uninstall.txt"
389
+ call : mklink " vim\runtime\vimtutor.bat" " vim\vimtutor.bat"
390
+ call : mklink " vim\runtime\vim.ico" " vim\src\vim.ico"
391
+ call : mklink " vim\runtime\gvim.exe" " vim\src\gvim.exe"
392
+ call : mklink " vim\runtime\install.exe" " vim\src\install.exe"
393
+ call : mklink " vim\runtime\tee.exe" " vim\src\tee\tee.exe"
394
+ call : mklink " vim\runtime\vim%BIT% .dll" " vim\src\vim%BIT% .dll"
395
+ call : mklink " vim\runtime\vim.exe" " vim\src\vim.exe"
396
+ call : mklink " vim\runtime\vimrun.exe" " vim\src\vimrun.exe"
397
+ call : mklink " vim\runtime\uninstall.exe" " vim\src\uninstall.exe"
398
+ call : mklink " vim\runtime\xxd.exe" " vim\src\xxd\xxd.exe"
399
+
400
+ call : mklink " vim\runtime\libiconv-2.dll" " %DEPENDENCIES% \gettext%BIT% \libiconv-2.dll"
401
+ call : mklink " vim\runtime\libintl-8.dll" " %DEPENDENCIES% \gettext%BIT% \libintl-8.dll"
405
402
if " %INCLUDE_LIBGCC% -%BIT% " == " 1-32" (
406
- mklink /H vim\runtime\libgcc_s_sjlj-1.dll ^
407
- %DEPENDENCIES% \gettext32\libgcc_s_sjlj-1.dll
403
+ call :mklink " vim\runtime\libgcc_s_sjlj-1.dll" " %DEPENDENCIES% \gettext32\libgcc_s_sjlj-1.dll"
408
404
)
409
405
410
- mklink /H vim\runtime\GvimExt64\libiconv-2.dll ^
411
- %DEPENDENCIES% \gettext64\libiconv-2.dll
412
- mklink /H vim\runtime\GvimExt64\libintl-8.dll ^
413
- %DEPENDENCIES% \gettext64\libintl-8.dll
406
+ call :mklink " vim\runtime\GvimExt64\libiconv-2.dll" " %DEPENDENCIES% \gettext64\libiconv-2.dll"
407
+ call :mklink " vim\runtime\GvimExt64\libintl-8.dll" " %DEPENDENCIES% \gettext64\libintl-8.dll"
414
408
415
- mklink /H vim\runtime\GvimExt32\libiconv-2.dll ^
416
- %DEPENDENCIES% \gettext32\libiconv-2.dll
417
- mklink /H vim\runtime\GvimExt32\libintl-8.dll ^
418
- %DEPENDENCIES% \gettext32\libintl-8.dll
409
+ call :mklink " vim\runtime\GvimExt32\libiconv-2.dll" " %DEPENDENCIES% \gettext32\libiconv-2.dll"
410
+ call :mklink " vim\runtime\GvimExt32\libintl-8.dll" " %DEPENDENCIES% \gettext32\libintl-8.dll"
419
411
if " %INCLUDE_LIBGCC% " == " 1" (
420
- mklink /H vim\runtime\GvimExt32\libgcc_s_sjlj-1.dll ^
421
- %DEPENDENCIES% \gettext32\libgcc_s_sjlj-1.dll
412
+ call :mklink " vim\runtime\GvimExt32\libgcc_s_sjlj-1.dll" " %DEPENDENCIES% \gettext32\libgcc_s_sjlj-1.dll"
422
413
)
423
414
424
- mklink /H vim\runtime\libsodium.dll vim\src\libsodium.dll
425
- mklink /H vim\runtime\diff.exe .\diff.exe
426
- mklink /H vim\runtime\winpty%BIT% .dll vim\src\winpty%BIT% .dll
427
- mklink /H vim\runtime\winpty-agent.exe vim\src\winpty-agent.exe
415
+ call : mklink " vim\runtime\libsodium.dll" " vim\src\libsodium.dll"
416
+ call : mklink " vim\runtime\diff.exe" " .\diff.exe"
417
+ call : mklink " vim\runtime\winpty%BIT% .dll" " vim\src\winpty%BIT% .dll"
418
+ call : mklink " vim\runtime\winpty-agent.exe" " vim\src\winpty-agent.exe"
428
419
429
420
set " VIM_DIR = vim%MAJOR%%MINOR% "
430
421
ren vim\runtime %VIM_DIR%
@@ -561,6 +552,11 @@ if ERRORLEVEL 1 (
561
552
)
562
553
@ goto :eof
563
554
555
+ :mklink
556
+ @ rem call :mklink "linkname" "target"
557
+ if exist %1 exit /B
558
+ mklink /H %1 %2
559
+ @ goto :eof
564
560
EndLocal
565
561
566
562
@ rem vim:ft=dosbatch:ts=8:sts=2:sw=2:noet:
0 commit comments