OSDN Git Service

De-dupe PRODUCT_COPY_FILES
[android-x86/build.git] / envsetup.sh
index 6dc2aa9..a76deb9 100644 (file)
@@ -537,7 +537,10 @@ function gettop
         echo $TOP
     else
         if [ -f $TOPFILE ] ; then
-            echo $PWD
+            # The following circumlocution (repeated below as well) ensures
+            # that we record the true directory name and not one that is
+            # faked up with symlink names.
+            PWD= /bin/pwd
         else
             # We redirect cd to /dev/null in case it's aliased to
             # a command that prints something as a side-effect
@@ -546,7 +549,7 @@ function gettop
             T=
             while [ \( ! \( -f $TOPFILE \) \) -a \( $PWD != "/" \) ]; do
                 cd .. > /dev/null
-                T=$PWD
+                T=`PWD= /bin/pwd`
             done
             cd $HERE > /dev/null
             if [ -f "$T/$TOPFILE" ]; then
@@ -622,7 +625,8 @@ function mmm()
             if [ -f $DIR/Android.mk ]; then
                 TO_CHOP=`echo $T | wc -c | tr -d ' '`
                 TO_CHOP=`expr $TO_CHOP + 1`
-                MFILE=`echo $PWD | cut -c${TO_CHOP}-`
+                START=`PWD= /bin/pwd`
+                MFILE=`echo $START | cut -c${TO_CHOP}-`
                 if [ "$MFILE" = "" ] ; then
                     MFILE=$DIR/Android.mk
                 else
@@ -982,9 +986,10 @@ function godir () {
         echo "Usage: godir <regex>"
         return
     fi
+    T=$(gettop)
     if [[ ! -f $T/filelist ]]; then
         echo -n "Creating index..."
-        (cd $T; find . -wholename ./out -prune -o -type f > filelist)
+        (cd $T; find . -wholename ./out -prune -o -wholename ./.repo -prune -o -type f > filelist)
         echo " Done"
         echo ""
     fi