1
0
mirror of https://github.com/SpaceVim/SpaceVim.git synced 2025-01-24 05:30:07 +08:00
SpaceVim/bundle/vimproc.vim/tools/update-dll-msvc.bat
2020-06-14 23:42:40 +08:00

68 lines
2.2 KiB
Batchfile
Vendored

@echo off
rem Update the DLL using MSVC.
rem If the old DLL is in use, rename it to avoid compilation error.
rem current support version of Visual C compiler is 2012 or later.
rem
rem usage: update-dll-msvc
rem
rem
rem Sample .vimrc:
rem
rem NeoBundle 'Shougo/vimproc.vim', {
rem \ 'build' : {
rem \ 'windows' : 'tools\\update-dll-msvc',
rem \ 'cygwin' : 'make -f make_cygwin.mak',
rem \ 'mac' : 'make -f make_mac.mak',
rem \ 'linux' : 'make',
rem \ 'unix' : 'gmake',
rem \ },
rem \ }
setlocal enabledelayedexpansion
if "%PROCESSOR_ARCHITECTURE%"=="AMD64" (
set vimproc_arch=64
set msvc_arch=x86_amd64
set cpu_arch=AMD64
) else (
set vimproc_arch=32
set msvc_arch=x86
set cpu_arch=i386
)
set vimproc_dllname=vimproc_win%vimproc_arch%.dll
if exist "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" (
REM found the lasted version of Visual C compiler
for /f "usebackq tokens=*" %%i in (`"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -latest -products * -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath`) do (
set InstallDir=%%i
if exist "!InstallDir!\VC\Auxiliary\Build\vcvars%vimproc_arch%.bat" (
call "!InstallDir!\VC\Auxiliary\Build\vcvars%vimproc_arch%.bat"
)
)
) else if defined VS140COMNTOOLS (
REM Microsoft Visual Studio 2015 installed
call "%VS140COMNTOOLS%\..\..\VC\vcvarsall.bat" %msvc_arch%
) else if defined VS120COMNTOOLS (
REM Microsoft Visual Studio 2013 installed
call "%VS120COMNTOOLS%\..\..\VC\vcvarsall.bat" %msvc_arch%
) else if defined VS110COMNTOOLS (
REM Microsoft Visual Studio 2012 installed
call "%VS110COMNTOOLS%\..\..\VC\vcvarsall.bat" %msvc_arch%
)
where nmake >nul 2>&1
if errorlevel 1 (
echo nmake not found.
goto :eof
)
rem Try to delete old DLLs.
if exist lib\%vimproc_dllname%.old del lib\%vimproc_dllname%.old
if exist lib\%vimproc_dllname% del lib\%vimproc_dllname%
rem If the DLL couldn't delete (may be it is in use), rename it.
if exist lib\%vimproc_dllname% ren lib\%vimproc_dllname% %vimproc_dllname%.old
nmake -f make_msvc.mak CPU=%cpu_arch%