From 2a5d4d81b2137a2262da8efe76ff70db99c9c2ce Mon Sep 17 00:00:00 2001
From: Joe Onorato <joeo@android.com>
Date: Thu, 30 Jul 2009 10:23:21 -0700
Subject: [PATCH] Add cproj function to envsetup.sh that finds an Android.mk
 and goes to its directory.

---
 envsetup.sh | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/envsetup.sh b/envsetup.sh
index 4ef6d774f..9eeab02e2 100644
--- a/envsetup.sh
+++ b/envsetup.sh
@@ -656,6 +656,26 @@ function croot()
     fi
 }
 
+function cproj()
+{
+    TOPFILE=build/core/envsetup.mk
+    # We redirect cd to /dev/null in case it's aliased to
+    # a command that prints something as a side-effect
+    # (like pushd)
+    local HERE=$PWD
+    T=
+    while [ \( ! \( -f $TOPFILE \) \) -a \( $PWD != "/" \) ]; do
+        T=$PWD
+        if [ -f "$T/Android.mk" ]; then
+            cd $T
+            return
+        fi
+        cd .. > /dev/null
+    done
+    cd $HERE > /dev/null
+    echo "can't find Android.mk"
+}
+
 function pid()
 {
    local EXE="$1"
-- 
GitLab