Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 286da1e7 authored by Jaewoong Jung's avatar Jaewoong Jung Committed by android-build-merger
Browse files

Merge "Improve mmm behavior when targets are specified." am: 66b97745

am: c2607397

Change-Id: I74e61d3fb33d211f41eef12fedb4ed5a2e10c9b1
parents f5e638d0 c2607397
Loading
Loading
Loading
Loading
+21 −13
Original line number Diff line number Diff line
@@ -772,6 +772,9 @@ function findmakefile()
{
    local TOPFILE=build/make/core/envsetup.mk
    local HERE=$PWD
    if [ "$1" ]; then
        \cd $1
    fi;
    local T=
    while [ \( ! \( -f $TOPFILE \) \) -a \( $PWD != "/" \) ]; do
        T=`PWD= /bin/pwd`
@@ -852,24 +855,29 @@ function mmm()
            # Remove the leading ./ and trailing / if any exists.
            DIR=${DIR#./}
            DIR=${DIR%/}
            if [ -f $DIR/Android.mk -o -f $DIR/Android.bp ]; then
                local TO_CHOP=`(\cd -P -- $T && pwd -P) | wc -c | tr -d ' '`
                local TO_CHOP=`expr $TO_CHOP + 1`
                local START=`PWD= /bin/pwd`
                local MDIR=`echo $START | cut -c${TO_CHOP}-`
                if [ "$MDIR" = "" ] ; then
                    MDIR=$DIR
            local M
            if [ "$DIR_MODULES" = "" ]; then
                M=$(findmakefile $DIR)
            else
                    MDIR=$MDIR/$DIR
                # Only check the target directory if a module is specified.
                if [ -f $DIR/Android.mk -o -f $DIR/Android.bp ]; then
                    local HERE=$PWD
                    cd $DIR
                    M=`PWD= /bin/pwd`
                    M=$M/Android.mk
                    cd $HERE
                fi
            fi
                MDIR=${MDIR%/.}
            if [ "$M" ]; then
                # Remove the path to top as the makefilepath needs to be relative
                local M=`echo $M|sed 's:'$T'/::'`
                if [ "$DIR_MODULES" = "" ]; then
                    MODULES_IN_PATHS="$MODULES_IN_PATHS MODULES-IN-$MDIR"
                    GET_INSTALL_PATHS="$GET_INSTALL_PATHS GET-INSTALL-PATH-IN-$MDIR"
                    MODULES_IN_PATHS="$MODULES_IN_PATHS MODULES-IN-$(dirname ${M})"
                    GET_INSTALL_PATHS="$GET_INSTALL_PATHS GET-INSTALL-PATH-IN-$(dirname ${M})"
                else
                    MODULES="$MODULES $DIR_MODULES"
                fi
                MAKEFILE="$MAKEFILE $MDIR/Android.mk"
                MAKEFILE="$MAKEFILE $M"
            else
                case $DIR in
                  showcommands | snod | dist | *=*) ARGS="$ARGS $DIR";;