From 0e0002e2559cba3f97bf6d862f6b33e5adcabee0 Mon Sep 17 00:00:00 2001 From: lateralusX Date: Thu, 2 Jun 2016 11:34:15 +0200 Subject: Fixed .bat file to handle xcopy command not in path. Also added support to not always replace config.h/version.h since that triggers unnecessary rebuilds during development. New script will check if there is an actual difference in the config.h/version.h file before doing the copy. --- msvc/package.bat | 51 ++++++++++++++++++++++++++++++--------------------- 1 file changed, 30 insertions(+), 21 deletions(-) (limited to 'msvc/package.bat') diff --git a/msvc/package.bat b/msvc/package.bat index e3bf41a008a..df29a8ba6f2 100644 --- a/msvc/package.bat +++ b/msvc/package.bat @@ -5,7 +5,10 @@ SET CONFIG=%2 SET BUILD_DIR=%3 SET ARGUMENTS=%4 +SET XCOPY_COMMAND=%windir%\system32\xcopy + SET BUILD_DIR=%BUILD_DIR:"=% +SET BUILD_DIR=%BUILD_DIR:/=\% IF "" == "%PLATFORM%" ( ECHO Error: No platform parameter set. @@ -31,10 +34,6 @@ IF "\" == "%BUILD_DIR:~-1%" ( SET BUILD_DIR=%BUILD_DIR:~0,-1% ) -IF "/" == "%BUILD_DIR:~-1%" ( - SET BUILD_DIR=%BUILD_DIR:~0,-1% -) - IF NOT EXIST %BUILD_DIR%\%PLATFORM%\lib\%CONFIG% ( ECHO Error: No lib directory available for %PLATFORM% %CONFIG% at '%BUILD_DIR%'. Any build availalbe for platform, configuration pair? GOTO ON_ERROR @@ -54,35 +53,35 @@ IF "-v" == "%ARGUMENTS%" ( ) IF "-q" == "%ARGUMENTS%" ( - SET "OPTIONS=/s /e /q /y ^>nul" + SET "OPTIONS=/s /e /q /y" ) ECHO Packaging mono build %PLATFORM% %CONFIG% into '%PACKAGE_DIR%' ... IF EXIST %PACKAGE_DIR% rmdir %PACKAGE_DIR% /s /q -mkdir "%PACKAGE_DIR%" -mkdir "%PACKAGE_DIR%\include\mono-2.0" +mkdir %PACKAGE_DIR% +mkdir %PACKAGE_DIR%\include\mono-2.0 -SET RUN=xcopy ".\include\*.*" "%PACKAGE_DIR%\include\mono-2.0\" %OPTIONS% -%RUN% +SET RUN=%XCOPY_COMMAND% ".\include\*.*" "%PACKAGE_DIR%\include\mono-2.0\" %OPTIONS% +call :runCommand "%RUN%" %ARGUMENTS% -SET RUN=xcopy "%BUILD_DIR%\%PLATFORM%\lib\%CONFIG%\*.lib" "%PACKAGE_DIR%\lib\" %OPTIONS% -%RUN% +SET RUN=%XCOPY_COMMAND% "%BUILD_DIR%\%PLATFORM%\lib\%CONFIG%\*.lib" "%PACKAGE_DIR%\lib\" %OPTIONS% +call :runCommand "%RUN%" %ARGUMENTS% -SET RUN=xcopy "%BUILD_DIR%\%PLATFORM%\lib\%CONFIG%\*.pdb" "%PACKAGE_DIR%\lib\" %OPTIONS% -%RUN% +SET RUN=%XCOPY_COMMAND% "%BUILD_DIR%\%PLATFORM%\lib\%CONFIG%\*.pdb" "%PACKAGE_DIR%\lib\" %OPTIONS% +call :runCommand "%RUN%" %ARGUMENTS% -SET RUN=xcopy "%BUILD_DIR%\%PLATFORM%\bin\%CONFIG%\*.exe" "%PACKAGE_DIR%\bin\" %OPTIONS% -%RUN% +SET RUN=%XCOPY_COMMAND% "%BUILD_DIR%\%PLATFORM%\bin\%CONFIG%\*.exe" "%PACKAGE_DIR%\bin\" %OPTIONS% +call :runCommand "%RUN%" %ARGUMENTS% -SET RUN=xcopy "%BUILD_DIR%\%PLATFORM%\bin\%CONFIG%\*.dll" "%PACKAGE_DIR%\bin\" %OPTIONS% -%RUN% +SET RUN=%XCOPY_COMMAND% "%BUILD_DIR%\%PLATFORM%\bin\%CONFIG%\*.dll" "%PACKAGE_DIR%\bin\" %OPTIONS% +call :runCommand "%RUN%" %ARGUMENTS% -SET RUN=xcopy "%BUILD_DIR%\%PLATFORM%\bin\%CONFIG%\*.pdb" "%PACKAGE_DIR%\bin\" %OPTIONS% -%RUN% +SET RUN=%XCOPY_COMMAND% "%BUILD_DIR%\%PLATFORM%\bin\%CONFIG%\*.pdb" "%PACKAGE_DIR%\bin\" %OPTIONS% +call :runCommand "%RUN%" %ARGUMENTS% -SET RUN=xcopy "%BUILD_DIR%\%PLATFORM%\bin\%CONFIG%\*.lib" "%PACKAGE_DIR%\bin\" %OPTIONS% -%RUN% +SET RUN=%XCOPY_COMMAND% "%BUILD_DIR%\%PLATFORM%\bin\%CONFIG%\*.lib" "%PACKAGE_DIR%\bin\" %OPTIONS% +call :runCommand "%RUN%" %ARGUMENTS% ECHO Packaging of mono build %PLATFORM% %CONFIG% into '%PACKAGE_DIR%' DONE. @@ -93,3 +92,13 @@ EXIT /b 0 EXIT /b 1 @ECHO on + +:runCommand + + IF "-q" == "%~2" ( + %~1 >nul 2>&1 + ) ELSE ( + %~1 + ) + +goto :EOF -- cgit v1.2.3