X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=clean.cmd;h=bfdda8f2a3d6d8300e957186bd597d115a819b94;hb=3ac069e677a403f8345e092a43d51a7b103b1eb2;hp=84d897eb11998c7c52801401490bf484b154f185;hpb=37a0e349970b1a1710b9067398124dd42691a3e8;p=platform%2Fupstream%2Fcoreclr.git diff --git a/clean.cmd b/clean.cmd index 84d897e..bfdda8f 100644 --- a/clean.cmd +++ b/clean.cmd @@ -1,120 +1,47 @@ @if not defined _echo @echo off setlocal EnableDelayedExpansion -echo Running clean.cmd +set NO_DASHES_ARG=%1 +if not defined NO_DASHES_ARG goto no_help +if /I [%NO_DASHES_ARG:-=%] == [?] goto Usage +if /I [%NO_DASHES_ARG:-=%] == [h] goto Usage -set bin=false -set packages=false -set tools = false - -if [%1]==[] ( - set bin=true - set packages=true - set tools=true - set all=false - goto Begin -) - -:Loop -if [%1]==[] goto Begin - -if /I [%1] == [-?] goto Usage -if /I [%1] == [-help] goto Usage - -if /I [%1] == [-p] ( - set packages=true - set thisArgs=!thisArgs!%1 - goto Next -) - -if /I [%1] == [-b] ( - set bin=true - set thisArgs=!thisArgs!%1 - goto Next -) - -if /I [%1] == [-t] ( - set tools=true - set thisArgs=!thisArgs!%1 - goto Next -) - -if /I [%1] == [-all] ( - set tools=true - set bin=true - set packages=true - set all=true - goto Begin -) - -:Next -shift /1 -goto Loop - -:Begin -:: Set __ProjectDir to be the directory of this script -set "__ProjectDir=%~dp0" -:: remove trailing slash -if %__ProjectDir:~-1%==\ set "__ProjectDir=%__ProjectDir:~0,-1%" -set "__RootBinDir=%__ProjectDir%\bin" - -:: Check if VBCSCompiler.exe is running and stop it +:no_help +:: Check if VBCSCompiler.exe is running tasklist /fi "imagename eq VBCSCompiler.exe" |find ":" > nul +:: Compiler is running if errorlevel == 1 if errorlevel 1 ( echo Stop VBCSCompiler.exe execution. for /f "tokens=2 delims=," %%F in ('tasklist /nh /fi "imagename eq VBCSCompiler.exe" /fo csv') do taskkill /f /PID %%~F ) -if [%bin%] == [true] ( - if exist "%__RootBinDir%" ( - echo Deleting bin directory - rd /s /q "%__RootBinDir%" - if NOT [!ERRORLEVEL!]==[0] ( - echo ERROR: An error occurred while deleting the bin directory - error code is !ERRORLEVEL! - exit /b 1 - ) - ) -) - -if [%tools%] == [true] ( - if exist "%__ProjectDir%\Tools" ( - echo Deleting tools directory - rd /s /q "%__ProjectDir%\Tools" - if NOT [!ERRORLEVEL!]==[0] ( - echo ERROR: An error occurred while deleting the Tools directory - error code is !ERRORLEVEL! - exit /b 1 - ) - ) -) - -if [%packages%] == [true] ( - if exist "%__ProjectDir%\packages" ( - echo Deleting packages directory - rd /s /q "%__ProjectDir%\packages" - if NOT [!ERRORLEVEL!]==[0] ( - echo ERROR: An error occurred while deleting the packages directory - error code is !ERRORLEVEL! - exit /b 1 - ) - ) -) - -if [%all%] == [true] ( +:: Strip all dashes off the argument and use invariant +:: compare to match as many versions of "all" that we can +:: All other argument validation happens inside Run.exe +if not defined NO_DASHES_ARG goto no_args +if /I [%NO_DASHES_ARG:-=%] == [all] ( echo Cleaning entire working directory ... call git clean -xdf exit /b !ERRORLEVEL! ) -echo Clean was successful -exit /b 0 +:no_args +if [%1]==[] set __args=/t:CleanAllProjects +if [%1]==[-b] set __args=/t:CleanAllProjects +if [%1]==[-p] set __args=/t:CleanPackages +if [%1]==[-c] set __args=/t:CleanPackagesCache +call %~dp0dotnet.cmd msbuild /nologo /verbosity:minimal /clp:Summary /nodeReuse:false /flp:v=normal;LogFile=clean.log %__args% +exit /b %ERRORLEVEL% :Usage echo. +echo Usage: clean [-b] [-p] [-c] [-all] echo Repository cleaning script. echo Options: -echo -b - Cleans the bin directory -echo -p - Cleans the packages directory -echo -t - Cleans the tools directory -echo -all - Cleans everything and restores repository to pristine state +echo -b - Delete the binary output directory. +echo -p - Delete the repo-local NuGet package directory. +echo -c - Deletes the user-local NuGet package cache. +echo -all - Cleans repository and restores it to pristine state. echo. -echo If no option is specified then clean.cmd -b -p -t is implied. -exit /b \ No newline at end of file +echo ^If no option is specified then "clean -b" is implied. +exit /b