X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=msvc%2Finstall.bat;h=1a433991a7d53c754281b49475de26e4b88d6cde;hb=27ce7560302b86abce3a38fff2199d986a70bdc3;hp=260105ce3a02d675f54cd8ed92b14e9b72c75070;hpb=c371f4f33c612770fc1265f5b69e35df2ba29a1f;p=mono.git diff --git a/msvc/install.bat b/msvc/install.bat index 260105ce3a0..1a433991a7d 100644 --- a/msvc/install.bat +++ b/msvc/install.bat @@ -1,43 +1,96 @@ @ECHO off -IF "" == "%1" ( +SET PLATFORM=%1 +SET CONFIG=%2 +SET BUILD_DIR=%3 +SET INSTALL_DIR=%4 +SET ARGUMENTS=%5 + +SET XCOPY_COMMAND=%windir%\system32\xcopy + +SET BUILD_DIR=%BUILD_DIR:"=% +SET BUILD_DIR=%BUILD_DIR:/=\% +SET INSTALL_DIR=%INSTALL_DIR:"=% +SET INSTALL_DIR=%INSTALL_DIR:/=\% + +IF "" == "%PLATFORM%" ( ECHO Error: No platform parameter set. GOTO ON_ERROR ) -IF "" == "%2" ( +IF "" == "%CONFIG%" ( ECHO Error: No configuration parameter set. GOTO ON_ERROR ) -IF "" == "%3" ( - ECHO Error: No MONO_INSTALLATION_PREFIX parameter set. +IF "" == "%BUILD_DIR%" ( + ECHO Error: No MONO_BUILD_DIR_PREFIX parameter set. GOTO ON_ERROR ) -IF NOT EXIST %3 ( - ECHO Error: '%3', directory doesn't eixst. +IF "" == "%INSTALL_DIR%" ( + ECHO Error: No MONO_INSTALLATION_DIR_PREFIX parameter set. GOTO ON_ERROR ) -SET PACKAGE_DIR=.\package\%1\%2 +IF "\" == "%BUILD_DIR:~-1%" ( + SET BUILD_DIR=%BUILD_DIR:~0,-1% +) + +IF "\" == "%INSTALL_DIR:~-1%" ( + SET INSTALL_DIR=%INSTALL_DIR:~0,-1% +) + +IF NOT EXIST %BUILD_DIR% ( + ECHO Error: '%BUILD_DIR%', directory doesn't eixst. + GOTO ON_ERROR +) + +IF NOT EXIST %INSTALL_DIR% ( + ECHO Install directory '%INSTALL_DIR%', directory doesn't eixst, creating.... + mkdir "%INSTALL_DIR%" + ECHO Install directory '%INSTALL_DIR%' created. +) + +SET PACKAGE_DIR=%BUILD_DIR%\package\%PLATFORM%\%CONFIG% IF NOT EXIST %PACKAGE_DIR% ( ECHO Error: '%PACKAGE_DIR%' directory unavailable. GOTO ON_ERROR ) -ECHO Installing mono build %1 %2 into %3 ... +SET OPTIONS=/s /e /y + +IF "-v" == "%ARGUMENTS%" ( + SET OPTIONS=/f /s /e /y +) + +IF "-q" == "%ARGUMENTS%" ( + SET "OPTIONS=/s /e /q /y" +) + +ECHO Installing mono build %PLATFORM% %CONFIG% from %PACKAGE_DIR% into %INSTALL_DIR% ... -xcopy %PACKAGE_DIR%\*.* %3 /s /e /q /y > nul +SET RUN=%XCOPY_COMMAND% "%PACKAGE_DIR%\*.*" "%INSTALL_DIR%" %OPTIONS% +call :runCommand "%RUN%" %ARGUMENTS% -ECHO Installing of mono build %1 %2 into %3 DONE. +ECHO Installing of mono build %PLATFORM% %CONFIG% from %PACKAGE_DIR% into %INSTALL_DIR% DONE. EXIT /b 0 :ON_ERROR - ECHO "install.bat [win32|x64] [Debug|Release] [MONO_INSTALLATION_PREFIX]" + ECHO "install.bat [win32|x64] [Debug|Release] [MONO_BUILD_DIR_PREFIX] [MONO_INSTALLATION_DIR_PREFIX] [ARGUMENTS]" EXIT /b 1 @ECHO on + +:runCommand + + IF "-q" == "%~2" ( + %~1 >nul 2>&1 + ) ELSE ( + %~1 + ) + +goto :EOF \ No newline at end of file