-
-
Save MVoz/4ed70309ecabeaba4e24076ce1421cf2 to your computer and use it in GitHub Desktop.
WindowsのMSVCで32bitと64bitのrubyをコンパイル&インストールするバッチ。
使い方はRubyのソース内のトップディレクトリにコピーしてダブルクリックするだけ。
インストール場所はルートディレクトリを指定してバージョンとアーキテクチャ種別を加味したサブディレクトリになる。
VC用の環境設定ファイル(VS_ROOT)とインストールルート(INSTALL_ROOT)の位置は決め打ちになってるので要注意。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@ECHO OFF | |
GOTO :MAIN | |
:SETTINGS | |
SET VS_ROOT=C:\Program Files (x86)\Microsoft Visual Studio 10.0 | |
SET INSTALL_ROOT=D:\Ruby | |
EXIT /B | |
:BASENAME | |
SET BASENAME=%~nx1 | |
EXIT /B | |
:ARCH | |
IF "%1" == "amd64" ( | |
SET ARCH=x64-mswin64 | |
) ELSE ( | |
SET ARCH=i386-mswin32 | |
) | |
EXIT /B | |
:EXIT_IF_ERROR | |
IF %ERRORLEVEL% NEQ 0 ( | |
ECHO %* | |
PAUSE | |
EXIT 1 | |
) | |
EXIT /B | |
:MAIN | |
IF "%1" == "x86" GOTO :BUILD_ONE | |
IF "%1" == "amd64" GOTO :BUILD_ONE | |
CMD /C "%0" x86 | |
IF %ERRORLEVEL% NEQ 0 GOTO :END | |
CMD /C "%0" amd64 | |
IF %ERRORLEVEL% NEQ 0 GOTO :END | |
ECHO All compiled and installed. | |
PAUSE | |
GOTO :END | |
:BUILD_ONE | |
CALL :SETTINGS | |
SET BATCH=%~dp0 | |
CALL :BASENAME %BATCH:~0,-1% | |
CALL :ARCH %1 | |
SET RUBY_NAME=%BASENAME%-%ARCH% | |
ECHO Building %RUBY_NAME% ... | |
CALL "%VS_ROOT%\VC\vcvarsall.bat" %1 | |
CALL :EXIT_IF_ERROR Failed to load vcvarsall.bat, check your VS_ROOT. | |
CALL .\win32\configure.bat "--prefix=%INSTALL_ROOT%\%RUBY_NAME%" | |
CALL :EXIT_IF_ERROR Failed to configure, check your ruby source. | |
nmake | |
CALL :EXIT_IF_ERROR Failed to compile. | |
nmake install | |
CALL :EXIT_IF_ERROR Failed to install, check your INSTALL_ROOT. | |
nmake clean | |
GOTO :END | |
:END | |
REM vim:set sts=2 sw=2 tw=0 et: |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment