summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhalid Zubair <kzubair@cyngn.com>2015-10-06 11:00:55 -0700
committerMichael Bestas <mikeioannina@gmail.com>2015-10-27 00:45:16 +0200
commitabcd19499d0ba475715dd76a8d0f7c08c630c7ea (patch)
treeea77e6ccbe5327a19e19aefa436831884d1c7ab6
parent093f92c383fcf2a6c7566cb52378d53b6f466bc6 (diff)
downloadbuild-abcd19499d0ba475715dd76a8d0f7c08c630c7ea.zip
build-abcd19499d0ba475715dd76a8d0f7c08c630c7ea.tar.gz
build-abcd19499d0ba475715dd76a8d0f7c08c630c7ea.tar.bz2
mka: allow mka to be run from anywhere in the tree
The Android build system expects to be launched from the top of the tree. Invoking mka at any other level often has unintended consequence (e.g. targets the host ARCH because ARCH was not set). The various build shortcuts like m and mm invoke Make from the top of the tree. mka now does the same. Change-Id: Id956cf04cbaf1d12d12549ca54e32b9c2ce1fc29
-rw-r--r--envsetup.sh22
1 files changed, 14 insertions, 8 deletions
diff --git a/envsetup.sh b/envsetup.sh
index 8f9dfdb..140f80c 100644
--- a/envsetup.sh
+++ b/envsetup.sh
@@ -2096,14 +2096,20 @@ function cmrebase() {
}
function mka() {
- case `uname -s` in
- Darwin)
- make -j `sysctl hw.ncpu|cut -d" " -f2` "$@"
- ;;
- *)
- mk_timer schedtool -B -n 1 -e ionice -n 1 make -j$(cat /proc/cpuinfo | grep "^processor" | wc -l) "$@"
- ;;
- esac
+ local T=$(gettop)
+ if [ "$T" ]; then
+ case `uname -s` in
+ Darwin)
+ make -C $T -j `sysctl hw.ncpu|cut -d" " -f2` "$@"
+ ;;
+ *)
+ mk_timer schedtool -B -n 1 -e ionice -n 1 make -C $T -j$(cat /proc/cpuinfo | grep "^processor" | wc -l) "$@"
+ ;;
+ esac
+
+ else
+ echo "Couldn't locate the top of the tree. Try setting TOP."
+ fi
}
function cmka() {