Add phony goal GET-INSTALL-PATH
It can be used as a goal of mm/mmm. It prints out modules' install paths, which can be used by the runtest utility. Change-Id: If113e4c990b672acbacf723104583c0157d43c3b
This commit is contained in:
@@ -471,6 +471,12 @@ FULL_BUILD :=
|
|||||||
NOTICE-HOST-%: ;
|
NOTICE-HOST-%: ;
|
||||||
NOTICE-TARGET-%: ;
|
NOTICE-TARGET-%: ;
|
||||||
|
|
||||||
|
# A helper goal printing out install paths
|
||||||
|
.PHONY: GET-INSTALL-PATH
|
||||||
|
GET-INSTALL-PATH:
|
||||||
|
@$(foreach m, $(ALL_MODULES), $(if $(ALL_MODULES.$(m).INSTALLED), \
|
||||||
|
echo 'INSTALL-PATH: $(m) $(ALL_MODULES.$(m).INSTALLED)';))
|
||||||
|
|
||||||
else # ONE_SHOT_MAKEFILE
|
else # ONE_SHOT_MAKEFILE
|
||||||
|
|
||||||
#
|
#
|
||||||
|
47
envsetup.sh
47
envsetup.sh
@@ -638,6 +638,9 @@ function mm()
|
|||||||
# Find the closest Android.mk file.
|
# Find the closest Android.mk file.
|
||||||
T=$(gettop)
|
T=$(gettop)
|
||||||
local M=$(findmakefile)
|
local M=$(findmakefile)
|
||||||
|
local MODULES=
|
||||||
|
local GET_INSTALL_PATH=
|
||||||
|
local ARGS=
|
||||||
# Remove the path to top as the makefilepath needs to be relative
|
# Remove the path to top as the makefilepath needs to be relative
|
||||||
local M=`echo $M|sed 's:'$T'/::'`
|
local M=`echo $M|sed 's:'$T'/::'`
|
||||||
if [ ! "$T" ]; then
|
if [ ! "$T" ]; then
|
||||||
@@ -645,7 +648,19 @@ function mm()
|
|||||||
elif [ ! "$M" ]; then
|
elif [ ! "$M" ]; then
|
||||||
echo "Couldn't locate a makefile from the current directory."
|
echo "Couldn't locate a makefile from the current directory."
|
||||||
else
|
else
|
||||||
ONE_SHOT_MAKEFILE=$M make -C $T -f build/core/main.mk all_modules $@
|
for ARG in $@; do
|
||||||
|
case $ARG in
|
||||||
|
GET-INSTALL-PATH) GET_INSTALL_PATH=$ARG;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
if [ -n "$GET_INSTALL_PATH" ]; then
|
||||||
|
MODULES=
|
||||||
|
ARGS=GET-INSTALL-PATH
|
||||||
|
else
|
||||||
|
MODULES=all_modules
|
||||||
|
ARGS=$@
|
||||||
|
fi
|
||||||
|
ONE_SHOT_MAKEFILE=$M make -C $T -f build/core/main.mk $MODULES $ARGS
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
@@ -658,6 +673,7 @@ function mmm()
|
|||||||
local MODULES=
|
local MODULES=
|
||||||
local ARGS=
|
local ARGS=
|
||||||
local DIR TO_CHOP
|
local DIR TO_CHOP
|
||||||
|
local GET_INSTALL_PATH=
|
||||||
local DASH_ARGS=$(echo "$@" | awk -v RS=" " -v ORS=" " '/^-.*$/')
|
local DASH_ARGS=$(echo "$@" | awk -v RS=" " -v ORS=" " '/^-.*$/')
|
||||||
local DIRS=$(echo "$@" | awk -v RS=" " -v ORS=" " '/^[^-].*$/')
|
local DIRS=$(echo "$@" | awk -v RS=" " -v ORS=" " '/^[^-].*$/')
|
||||||
for DIR in $DIRS ; do
|
for DIR in $DIRS ; do
|
||||||
@@ -667,10 +683,10 @@ function mmm()
|
|||||||
fi
|
fi
|
||||||
DIR=`echo $DIR | sed -e 's/:.*//' -e 's:/$::'`
|
DIR=`echo $DIR | sed -e 's/:.*//' -e 's:/$::'`
|
||||||
if [ -f $DIR/Android.mk ]; then
|
if [ -f $DIR/Android.mk ]; then
|
||||||
TO_CHOP=`(\cd -P -- $T && pwd -P) | wc -c | tr -d ' '`
|
local TO_CHOP=`(\cd -P -- $T && pwd -P) | wc -c | tr -d ' '`
|
||||||
TO_CHOP=`expr $TO_CHOP + 1`
|
local TO_CHOP=`expr $TO_CHOP + 1`
|
||||||
START=`PWD= /bin/pwd`
|
local START=`PWD= /bin/pwd`
|
||||||
MFILE=`echo $START | cut -c${TO_CHOP}-`
|
local MFILE=`echo $START | cut -c${TO_CHOP}-`
|
||||||
if [ "$MFILE" = "" ] ; then
|
if [ "$MFILE" = "" ] ; then
|
||||||
MFILE=$DIR/Android.mk
|
MFILE=$DIR/Android.mk
|
||||||
else
|
else
|
||||||
@@ -678,20 +694,17 @@ function mmm()
|
|||||||
fi
|
fi
|
||||||
MAKEFILE="$MAKEFILE $MFILE"
|
MAKEFILE="$MAKEFILE $MFILE"
|
||||||
else
|
else
|
||||||
if [ "$DIR" = snod ]; then
|
case $DIR in
|
||||||
ARGS="$ARGS snod"
|
showcommands | snod | dist | incrementaljavac) ARGS="$ARGS $DIR";;
|
||||||
elif [ "$DIR" = showcommands ]; then
|
GET-INSTALL-PATH) GET_INSTALL_PATH=$DIR;;
|
||||||
ARGS="$ARGS showcommands"
|
*) echo "No Android.mk in $DIR."; return 1;;
|
||||||
elif [ "$DIR" = dist ]; then
|
esac
|
||||||
ARGS="$ARGS dist"
|
|
||||||
elif [ "$DIR" = incrementaljavac ]; then
|
|
||||||
ARGS="$ARGS incrementaljavac"
|
|
||||||
else
|
|
||||||
echo "No Android.mk in $DIR."
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
if [ -n "$GET_INSTALL_PATH" ]; then
|
||||||
|
ARGS=$GET_INSTALL_PATH
|
||||||
|
MODULES=
|
||||||
|
fi
|
||||||
ONE_SHOT_MAKEFILE="$MAKEFILE" make -C $T -f build/core/main.mk $DASH_ARGS $MODULES $ARGS
|
ONE_SHOT_MAKEFILE="$MAKEFILE" make -C $T -f build/core/main.mk $DASH_ARGS $MODULES $ARGS
|
||||||
else
|
else
|
||||||
echo "Couldn't locate the top of the tree. Try setting TOP."
|
echo "Couldn't locate the top of the tree. Try setting TOP."
|
||||||
|
Reference in New Issue
Block a user