最終更新:2013-10-21 (月) 16:24:52 (3833d)
setpaths
Top / setpaths
ANDROID_PRE_BUILD_PATHS? | |
ANDROID_GCC_PREBUILTS? | |
ANDROID_EABI_TOOLCHAIN? | |
ANDROID_TOOLCHAIN? | |
ANDROID_QTOOLS? | AOSP/development/emulator/qtools? |
ANDROID_DEV_SCRIPTS | AOSP/development/scripts;AOSP/prebuilts/devtools/tools |
ANDROID_JAVA_TOOLCHAIN? | |
ANDROID_BUILD_PATHS? | |
ANDROID_HOST_OUT? |
処理
function setpaths() { T=$(gettop) if [ ! "$T" ]; then echo "Couldn't locate the top of the tree. Try setting TOP." return fi ################################################################## # # # Read me before you modify this code # # # # This function sets ANDROID_BUILD_PATHS to what it is adding # # to PATH, and the next time it is run, it removes that from # # PATH. This is required so lunch can be run more than once # # and still have working paths. # # # ################################################################## # Note: on windows/cygwin, ANDROID_BUILD_PATHS will contain spaces # due to "C:\Program Files" being in the path. # out with the old if [ -n "$ANDROID_BUILD_PATHS" ] ; then export PATH=${PATH/$ANDROID_BUILD_PATHS/} fi if [ -n "$ANDROID_PRE_BUILD_PATHS" ] ; then export PATH=${PATH/$ANDROID_PRE_BUILD_PATHS/} # strip trailing ':', if any export PATH=${PATH/%:/} fi # and in with the new CODE_REVIEWS= prebuiltdir=$(getprebuilt) gccprebuiltdir=$(get_abs_build_var ANDROID_GCC_PREBUILTS) # The gcc toolchain does not exists for windows/cygwin. In this case, do not reference it. export ANDROID_EABI_TOOLCHAIN= local ARCH=$(get_build_var TARGET_ARCH) case $ARCH in x86) toolchaindir=x86/i686-linux-android-4.6/bin ;; arm) toolchaindir=arm/arm-linux-androideabi-4.6/bin ;; mips) toolchaindir=mips/mipsel-linux-android-4.6/bin ;; *) echo "Can't find toolchain for unknown architecture: $ARCH" toolchaindir=xxxxxxxxx ;; esac if [ -d "$gccprebuiltdir/$toolchaindir" ]; then export ANDROID_EABI_TOOLCHAIN=$gccprebuiltdir/$toolchaindir fi unset ARM_EABI_TOOLCHAIN ARM_EABI_TOOLCHAIN_PATH case $ARCH in arm) toolchaindir=arm/arm-eabi-4.6/bin if [ -d "$gccprebuiltdir/$toolchaindir" ]; then export ARM_EABI_TOOLCHAIN="$gccprebuiltdir/$toolchaindir" ARM_EABI_TOOLCHAIN_PATH=":$gccprebuiltdir/$toolchaindir" fi ;; mips) toolchaindir=mips/mips-eabi-4.4.3/bin ;; *) # No need to set ARM_EABI_TOOLCHAIN for other ARCHs ;; esac export ANDROID_TOOLCHAIN=$ANDROID_EABI_TOOLCHAIN export ANDROID_QTOOLS=$T/development/emulator/qtools export ANDROID_DEV_SCRIPTS=$T/development/scripts export ANDROID_BUILD_PATHS=:$(get_build_var ANDROID_BUILD_PATHS):$ANDROID_QTOOLS:$ANDROID_TOOLCHAIN$ARM_EABI_TOOLCHAIN_PATH$CODE_REVIEWS:$ANDROID_DEV_SCRIPTS export PATH=$PATH$ANDROID_BUILD_PATHS unset ANDROID_JAVA_TOOLCHAIN unset ANDROID_PRE_BUILD_PATHS if [ -n "$JAVA_HOME" ]; then export ANDROID_JAVA_TOOLCHAIN=$JAVA_HOME/bin export ANDROID_PRE_BUILD_PATHS=$ANDROID_JAVA_TOOLCHAIN: export PATH=$ANDROID_PRE_BUILD_PATHS$PATH fi unset ANDROID_PRODUCT_OUT export ANDROID_PRODUCT_OUT=$(get_abs_build_var PRODUCT_OUT) export OUT=$ANDROID_PRODUCT_OUT unset ANDROID_HOST_OUT export ANDROID_HOST_OUT=$(get_abs_build_var HOST_OUT) # needed for processing samples collected by perf counters unset OPROFILE_EVENTS_DIR export OPROFILE_EVENTS_DIR=$T/external/oprofile/events # needed for building linux on MacOS # TODO: fix the path #export HOST_EXTRACFLAGS="-I "$T/system/kernel_headers/host_include }