summaryrefslogtreecommitdiff
path: root/clean.sh
diff options
context:
space:
mode:
Diffstat (limited to 'clean.sh')
-rwxr-xr-xclean.sh83
1 files changed, 83 insertions, 0 deletions
diff --git a/clean.sh b/clean.sh
new file mode 100755
index 0000000000..dacb5e2986
--- /dev/null
+++ b/clean.sh
@@ -0,0 +1,83 @@
+#!/usr/bin/env bash
+
+usage()
+{
+ echo "Usage: clean [-b] [-t] [-p]"
+ echo "Repository cleaning script."
+ echo " -b Clean bin directory"
+ echo " -t Clean tools directory"
+ echo " -p Clean packages directory"
+ echo " -all Clean everything"
+ echo
+ echo "If no option is specified, then \"clean.sh -b -t -p\" is implied."
+ exit 1
+}
+
+# Obtain the location of the bash script to figure out where the root of the repo is.
+__ProjectRoot="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
+
+echo Cleaning previous output for the selected configuration
+
+# Parse arguments
+if [ $# == 0 ]; then
+ clean_bin=true
+ clean_tools=true
+ clean_packages=true
+fi
+
+while [[ $# -gt 0 ]]
+do
+ opt="$1"
+ case $opt in
+ -h|--help)
+ usage
+ ;;
+ -b)
+ clean_bin=true
+ ;;
+ -t)
+ clean_tools=true
+ ;;
+ -p)
+ clean_packages=true
+ ;;
+ -all)
+ clean_bin=true
+ clean_tools=true
+ clean_packages=true
+ ;;
+ *)
+ esac
+ shift
+done
+
+if [ "$clean_bin" == true ]; then
+ echo "Deleting bin directory"
+ rm -rf "$__ProjectRoot/bin"
+ if [ $? -ne 0 ]; then
+ echo "Error while deleting bin directory - error code was $?"
+ exit 1
+ fi
+fi
+
+if [ "$clean_tools" == true ]; then
+ echo "Deleting tools directory"
+ rm -rf "$__ProjectRoot/Tools"
+ if [ $? -ne 0 ]; then
+ echo "Error while deleting tools directory - error code was $?"
+ exit 1
+ fi
+fi
+
+if [ "$clean_packages" == true ]; then
+ echo "Deleting packages directory"
+ rm -rf "$__ProjectRoot/packages"
+ if [ $? -ne 0 ]; then
+ echo "Error while deleting packages directory - error code was $?"
+ exit 1
+ fi
+fi
+
+echo "Clean was successful"
+
+exit 0 \ No newline at end of file