install.bat 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. @ECHO off
  2. SET PLATFORM=%1
  3. SET CONFIG=%2
  4. SET BUILD_DIR=%3
  5. SET INSTALL_DIR=%4
  6. SET ARGUMENTS=%5
  7. SET XCOPY_COMMAND=%windir%\system32\xcopy
  8. SET BUILD_DIR=%BUILD_DIR:"=%
  9. SET BUILD_DIR=%BUILD_DIR:/=\%
  10. SET INSTALL_DIR=%INSTALL_DIR:"=%
  11. SET INSTALL_DIR=%INSTALL_DIR:/=\%
  12. IF "" == "%PLATFORM%" (
  13. ECHO Error: No platform parameter set.
  14. GOTO ON_ERROR
  15. )
  16. IF "" == "%CONFIG%" (
  17. ECHO Error: No configuration parameter set.
  18. GOTO ON_ERROR
  19. )
  20. IF "" == "%BUILD_DIR%" (
  21. ECHO Error: No MONO_BUILD_DIR_PREFIX parameter set.
  22. GOTO ON_ERROR
  23. )
  24. IF "" == "%INSTALL_DIR%" (
  25. ECHO Error: No MONO_INSTALLATION_DIR_PREFIX parameter set.
  26. GOTO ON_ERROR
  27. )
  28. IF "\" == "%BUILD_DIR:~-1%" (
  29. SET BUILD_DIR=%BUILD_DIR:~0,-1%
  30. )
  31. IF "\" == "%INSTALL_DIR:~-1%" (
  32. SET INSTALL_DIR=%INSTALL_DIR:~0,-1%
  33. )
  34. IF NOT EXIST %BUILD_DIR% (
  35. ECHO Error: '%BUILD_DIR%', directory doesn't eixst.
  36. GOTO ON_ERROR
  37. )
  38. IF NOT EXIST %INSTALL_DIR% (
  39. ECHO Install directory '%INSTALL_DIR%', directory doesn't eixst, creating....
  40. mkdir "%INSTALL_DIR%"
  41. ECHO Install directory '%INSTALL_DIR%' created.
  42. )
  43. SET PACKAGE_DIR=%BUILD_DIR%\package\%PLATFORM%\%CONFIG%
  44. IF NOT EXIST %PACKAGE_DIR% (
  45. ECHO Error: '%PACKAGE_DIR%' directory unavailable.
  46. GOTO ON_ERROR
  47. )
  48. SET OPTIONS=/s /e /y
  49. IF "-v" == "%ARGUMENTS%" (
  50. SET OPTIONS=/f /s /e /y
  51. )
  52. IF "-q" == "%ARGUMENTS%" (
  53. SET "OPTIONS=/s /e /q /y"
  54. )
  55. ECHO Installing mono build %PLATFORM% %CONFIG% from %PACKAGE_DIR% into %INSTALL_DIR% ...
  56. SET RUN=%XCOPY_COMMAND% "%PACKAGE_DIR%\*.*" "%INSTALL_DIR%" %OPTIONS%
  57. call :runCommand "%RUN%" %ARGUMENTS%
  58. ECHO Installing of mono build %PLATFORM% %CONFIG% from %PACKAGE_DIR% into %INSTALL_DIR% DONE.
  59. EXIT /b 0
  60. :ON_ERROR
  61. ECHO "install.bat [win32|x64] [Debug|Release] [MONO_BUILD_DIR_PREFIX] [MONO_INSTALLATION_DIR_PREFIX] [ARGUMENTS]"
  62. EXIT /b 1
  63. @ECHO on
  64. :runCommand
  65. IF "-q" == "%~2" (
  66. %~1 >nul 2>&1
  67. ) ELSE (
  68. %~1
  69. )
  70. goto :EOF