summaryrefslogtreecommitdiff
path: root/misc/uClibc++/uninstall.sh
diff options
context:
space:
mode:
Diffstat (limited to 'misc/uClibc++/uninstall.sh')
-rwxr-xr-xmisc/uClibc++/uninstall.sh94
1 files changed, 94 insertions, 0 deletions
diff --git a/misc/uClibc++/uninstall.sh b/misc/uClibc++/uninstall.sh
new file mode 100755
index 000000000..ae7344449
--- /dev/null
+++ b/misc/uClibc++/uninstall.sh
@@ -0,0 +1,94 @@
+#!/bin/bash
+
+usage="USAGE: $0 <full path to the NuttX directory>"
+special="include/features.h"
+
+# Get the single, required command line argument
+
+nuttx_path=$1
+if [ -z "${nuttx_path}" ]; then
+ echo "ERROR: Missing path to the NuttX directory"
+ echo $usage
+ exit 1
+fi
+
+# Lots of sanity checking so that we do not do anything too stupid
+
+if [ ! -d libxx ]; then
+ echo "ERROR: Directory libxx does not exist in this directory"
+ echo " Please CD into the misc/uClibc++ directory and try again"
+ echo $usage
+ exit 1
+fi
+
+if [ ! -d include ]; then
+ echo "ERROR: Directory include does not exist in this directory"
+ echo " Please CD into the misc/uClibc++ directory and try again"
+ echo $usage
+ exit 1
+fi
+
+if [ ! -d "${nuttx_path}" ]; then
+ echo "ERROR: Directory ${nuttx_path} does not exist"
+ echo $usage
+ exit 1
+fi
+
+if [ ! -f "${nuttx_path}/Makefile" ]; then
+ echo "ERROR: No Makefile in directory ${nuttx_path}"
+ echo $usage
+ exit 1
+fi
+
+libxx_srcdir=${nuttx_path}/libxx
+
+if [ ! -d "${libxx_srcdir}" ]; then
+ echo "ERROR: Directory ${libxx_srcdir} does not exist"
+ echo $usage
+ exit 1
+fi
+
+if [ ! -f "${libxx_srcdir}/Makefile" ]; then
+ echo "ERROR: No Makefile in directory ${libxx_srcdir}"
+ echo $usage
+ exit 1
+fi
+
+uclibc_srcdir=${libxx_srcdir}/uClibc++
+
+if [ ! -d "${uclibc_srcdir}" ]; then
+ echo "ERROR: Directory ${uclibc_srcdir} already exists"
+ echo " uClibc++ is not installed"
+ exit 0
+fi
+
+nuttx_incdir=${nuttx_path}/include
+
+if [ ! -d "${nuttx_incdir}" ]; then
+ echo "ERROR: Directory ${nuttx_incdir} does not exist"
+ echo $usage
+ exit 1
+fi
+
+uclibc_incdir=${nuttx_incdir}/uClibc++
+
+if [ ! -d "${uclibc_incdir}" ]; then
+ echo "ERROR: Directory ${uclibc_incdir} does not exist"
+ echo " uClibc++ is only partially installed"
+fi
+
+echo "Removing uClibc++ in the NuttX source tree"
+
+rm -rf ${uclibc_incdir} || \
+ { echo "ERROR: 'rm -rf ${uclibc_incdir}' failed"; exit 1; }
+
+rm -rf ${uclibc_srcdir} || \
+ { echo "ERROR: 'rm -rf ${libxx_srcdir}' failed"; exit 1; }
+
+for file in $special; do
+ rm -f ${nuttx_path}/${special} || \
+ { echo "ERROR: ' rm -f ${nuttx_path}/${special}' failed"; exit 1; }
+done
+
+echo "Successfully uninstalled"
+echo ""