summaryrefslogtreecommitdiff
path: root/clean.cmd
diff options
context:
space:
mode:
Diffstat (limited to 'clean.cmd')
-rw-r--r--clean.cmd105
1 files changed, 105 insertions, 0 deletions
diff --git a/clean.cmd b/clean.cmd
new file mode 100644
index 0000000000..50e709e3cb
--- /dev/null
+++ b/clean.cmd
@@ -0,0 +1,105 @@
+@if not defined __echo @echo off
+setlocal EnableDelayedExpansion
+
+echo Running clean.cmd
+
+set bin=false
+set packages=false
+set tools = false
+
+if [%1]==[] (
+ set bin=true
+ set packages=true
+ set tools=true
+ 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
+ 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"
+
+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
+ )
+ )
+)
+
+echo Clean was successful
+exit /b 0
+
+:Usage
+echo.
+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
+echo.
+echo If no option is specified then clean.cmd -b -p -t is implied.
+exit /b \ No newline at end of file