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

Commit cd320457 authored by Treehugger Robot's avatar Treehugger Robot Committed by Automerger Merge Worker
Browse files

Merge changes I745168c4,I5d854b5d am: 2f7570ef

parents 28a3ea86 2f7570ef
Loading
Loading
Loading
Loading
+4 −0
Original line number Original line Diff line number Diff line
include platform/build/soong:/OWNERS
include platform/build/soong:/OWNERS


# Since this file affects all Android developers, lock it down. There is still
# round the world timzeone coverage.
per-file envsetup.sh = joeo@google.com, jingwen@google.com, lberki@google.com

# Finalization scripts
# Finalization scripts
per-file finalize* = smoreland@google.com, alexbuy@google.com
per-file finalize* = smoreland@google.com, alexbuy@google.com
+0 −12
Original line number Original line Diff line number Diff line
@@ -3,18 +3,6 @@
# what to add to the path given the config we have chosen.
# what to add to the path given the config we have chosen.
ifeq ($(CALLED_FROM_SETUP),true)
ifeq ($(CALLED_FROM_SETUP),true)


ifneq ($(filter /%,$(SOONG_HOST_OUT_EXECUTABLES)),)
ABP := $(SOONG_HOST_OUT_EXECUTABLES)
else
ABP := $(PWD)/$(SOONG_HOST_OUT_EXECUTABLES)
endif
ifneq ($(filter /%,$(HOST_OUT_EXECUTABLES)),)
ABP := $(ABP):$(HOST_OUT_EXECUTABLES)
else
ABP := $(ABP):$(PWD)/$(HOST_OUT_EXECUTABLES)
endif

ANDROID_BUILD_PATHS := $(ABP)
ANDROID_PREBUILTS := prebuilt/$(HOST_PREBUILT_TAG)
ANDROID_PREBUILTS := prebuilt/$(HOST_PREBUILT_TAG)
ANDROID_GCC_PREBUILTS := prebuilts/gcc/$(HOST_PREBUILT_TAG)
ANDROID_GCC_PREBUILTS := prebuilts/gcc/$(HOST_PREBUILT_TAG)
ANDROID_CLANG_PREBUILTS := prebuilts/clang/host/$(HOST_PREBUILT_TAG)
ANDROID_CLANG_PREBUILTS := prebuilts/clang/host/$(HOST_PREBUILT_TAG)
+97 −66
Original line number Original line Diff line number Diff line
@@ -174,7 +174,10 @@ function check_variant()
    return 1
    return 1
}
}


function setpaths()

# Add directories to PATH that are dependent on the lunch target.
# For directories that are not lunch-specific, add them in set_global_paths
function set_lunch_paths()
{
{
    local T=$(gettop)
    local T=$(gettop)
    if [ ! "$T" ]; then
    if [ ! "$T" ]; then
@@ -186,97 +189,66 @@ function setpaths()
    #                                                                #
    #                                                                #
    #              Read me before you modify this code               #
    #              Read me before you modify this code               #
    #                                                                #
    #                                                                #
    #   This function sets ANDROID_BUILD_PATHS to what it is adding  #
    #   This function sets ANDROID_LUNCH_BUILD_PATHS to what it is   #
    #   to PATH, and the next time it is run, it removes that from   #
    #   adding to PATH, and the next time it is run, it removes that #
    #   PATH.  This is required so lunch can be run more than once   #
    #   from PATH.  This is required so lunch can be run more than   #
    #   and still have working paths.                                #
    #   once and still have working paths.                           #
    #                                                                #
    #                                                                #
    ##################################################################
    ##################################################################


    # Note: on windows/cygwin, ANDROID_BUILD_PATHS will contain spaces
    # Note: on windows/cygwin, ANDROID_LUNCH_BUILD_PATHS will contain spaces
    # due to "C:\Program Files" being in the path.
    # due to "C:\Program Files" being in the path.


    # out with the old
    # Handle compat with the old ANDROID_BUILD_PATHS variable. 
    if [ -n "$ANDROID_BUILD_PATHS" ] ; then
    # TODO: Remove this after we think everyone has lunched again.
        export PATH=${PATH/$ANDROID_BUILD_PATHS/}
    if [ -z "$ANDROID_LUNCH_BUILD_PATHS" -a -n "$ANDROID_BUILD_PATHS" ] ; then
      ANDROID_LUNCH_BUILD_PATHS="$ANDROID_BUILD_PATHS"
      ANDROID_BUILD_PATHS=
    fi
    fi
    if [ -n "$ANDROID_PRE_BUILD_PATHS" ] ; then
    if [ -n "$ANDROID_PRE_BUILD_PATHS" ] ; then
        export PATH=${PATH/$ANDROID_PRE_BUILD_PATHS/}
        export PATH=${PATH/$ANDROID_PRE_BUILD_PATHS/}
        # strip leading ':', if any
        # strip leading ':', if any
        export PATH=${PATH/:%/}
        export PATH=${PATH/:%/}
        ANDROID_PRE_BUILD_PATHS=
    fi
    fi


    # and in with the new
    # Out with the old...

    if [ -n "$ANDROID_LUNCH_BUILD_PATHS" ] ; then
    export ANDROID_DEV_SCRIPTS=$T/development/scripts:$T/prebuilts/devtools/tools
        export PATH=${PATH/$ANDROID_LUNCH_BUILD_PATHS/}

    fi
    # add kernel specific binaries
    case $(uname -s) in
        Linux)
            export ANDROID_DEV_SCRIPTS=$ANDROID_DEV_SCRIPTS:$T/prebuilts/misc/linux-x86/dtc:$T/prebuilts/misc/linux-x86/libufdt
            ;;
        *)
            ;;
    esac


    ANDROID_BUILD_PATHS=$(get_build_var ANDROID_BUILD_PATHS)
    # And in with the new...
    ANDROID_BUILD_PATHS=$ANDROID_BUILD_PATHS:$ANDROID_DEV_SCRIPTS
    ANDROID_LUNCH_BUILD_PATHS=$(get_abs_build_var SOONG_HOST_OUT_EXECUTABLES)
    ANDROID_LUNCH_BUILD_PATHS+=:$(get_abs_build_var HOST_OUT_EXECUTABLES)


    # Append llvm binutils prebuilts path to ANDROID_BUILD_PATHS.
    # Append llvm binutils prebuilts path to ANDROID_LUNCH_BUILD_PATHS.
    local ANDROID_LLVM_BINUTILS=$(get_abs_build_var ANDROID_CLANG_PREBUILTS)/llvm-binutils-stable
    local ANDROID_LLVM_BINUTILS=$(get_abs_build_var ANDROID_CLANG_PREBUILTS)/llvm-binutils-stable
    ANDROID_BUILD_PATHS=$ANDROID_BUILD_PATHS:$ANDROID_LLVM_BINUTILS
    ANDROID_LUNCH_BUILD_PATHS+=:$ANDROID_LLVM_BINUTILS


    # Set up ASAN_SYMBOLIZER_PATH for SANITIZE_HOST=address builds.
    # Set up ASAN_SYMBOLIZER_PATH for SANITIZE_HOST=address builds.
    export ASAN_SYMBOLIZER_PATH=$ANDROID_LLVM_BINUTILS/llvm-symbolizer
    export ASAN_SYMBOLIZER_PATH=$ANDROID_LLVM_BINUTILS/llvm-symbolizer


    # If prebuilts/android-emulator/<system>/ exists, prepend it to our PATH
    # Append asuite prebuilts path to ANDROID_LUNCH_BUILD_PATHS.
    # to ensure that the corresponding 'emulator' binaries are used.
    case $(uname -s) in
        Darwin)
            ANDROID_EMULATOR_PREBUILTS=$T/prebuilts/android-emulator/darwin-x86_64
            ;;
        Linux)
            ANDROID_EMULATOR_PREBUILTS=$T/prebuilts/android-emulator/linux-x86_64
            ;;
        *)
            ANDROID_EMULATOR_PREBUILTS=
            ;;
    esac
    if [ -n "$ANDROID_EMULATOR_PREBUILTS" -a -d "$ANDROID_EMULATOR_PREBUILTS" ]; then
        ANDROID_BUILD_PATHS=$ANDROID_BUILD_PATHS:$ANDROID_EMULATOR_PREBUILTS
        export ANDROID_EMULATOR_PREBUILTS
    fi

    # Append asuite prebuilts path to ANDROID_BUILD_PATHS.
    local os_arch=$(get_build_var HOST_PREBUILT_TAG)
    local os_arch=$(get_build_var HOST_PREBUILT_TAG)
    local ACLOUD_PATH="$T/prebuilts/asuite/acloud/$os_arch"
    ANDROID_LUNCH_BUILD_PATHS+=:$T/prebuilts/asuite/acloud/$os_arch
    local AIDEGEN_PATH="$T/prebuilts/asuite/aidegen/$os_arch"
    ANDROID_LUNCH_BUILD_PATHS+=:$T/prebuilts/asuite/aidegen/$os_arch
    local ATEST_PATH="$T/prebuilts/asuite/atest/$os_arch"
    ANDROID_LUNCH_BUILD_PATHS+=:$T/prebuilts/asuite/atest/$os_arch
    ANDROID_BUILD_PATHS=$ANDROID_BUILD_PATHS:$ACLOUD_PATH:$AIDEGEN_PATH:$ATEST_PATH

    # Build system
    ANDROID_BUILD_PATHS=$ANDROID_BUILD_PATHS:$T/build/bazel/bin


    export ANDROID_BUILD_PATHS=$(tr -s : <<<"${ANDROID_BUILD_PATHS}:")
    export ANDROID_JAVA_HOME=$(get_abs_build_var ANDROID_JAVA_HOME)
    export PATH=$ANDROID_BUILD_PATHS$PATH
    export JAVA_HOME=$ANDROID_JAVA_HOME
    export ANDROID_JAVA_TOOLCHAIN=$(get_abs_build_var ANDROID_JAVA_TOOLCHAIN)
    ANDROID_LUNCH_BUILD_PATHS+=:$ANDROID_JAVA_TOOLCHAIN


    # out with the duplicate old
    # Fix up PYTHONPATH
    if [ -n $ANDROID_PYTHONPATH ]; then
    if [ -n $ANDROID_PYTHONPATH ]; then
        export PYTHONPATH=${PYTHONPATH//$ANDROID_PYTHONPATH/}
        export PYTHONPATH=${PYTHONPATH//$ANDROID_PYTHONPATH/}
    fi
    fi
    # and in with the new
    export ANDROID_PYTHONPATH=$T/development/python-packages:
    export ANDROID_PYTHONPATH=$T/development/python-packages:
    if [ -n $VENDOR_PYTHONPATH ]; then
    if [ -n $VENDOR_PYTHONPATH ]; then
        ANDROID_PYTHONPATH=$ANDROID_PYTHONPATH$VENDOR_PYTHONPATH
        ANDROID_PYTHONPATH=$ANDROID_PYTHONPATH$VENDOR_PYTHONPATH
    fi
    fi
    export PYTHONPATH=$ANDROID_PYTHONPATH$PYTHONPATH
    export PYTHONPATH=$ANDROID_PYTHONPATH$PYTHONPATH


    export ANDROID_JAVA_HOME=$(get_abs_build_var ANDROID_JAVA_HOME)
    export JAVA_HOME=$ANDROID_JAVA_HOME
    export ANDROID_JAVA_TOOLCHAIN=$(get_abs_build_var ANDROID_JAVA_TOOLCHAIN)
    export ANDROID_PRE_BUILD_PATHS=$ANDROID_JAVA_TOOLCHAIN:
    export PATH=$ANDROID_PRE_BUILD_PATHS$PATH

    unset ANDROID_PRODUCT_OUT
    unset ANDROID_PRODUCT_OUT
    export ANDROID_PRODUCT_OUT=$(get_abs_build_var PRODUCT_OUT)
    export ANDROID_PRODUCT_OUT=$(get_abs_build_var PRODUCT_OUT)
    export OUT=$ANDROID_PRODUCT_OUT
    export OUT=$ANDROID_PRODUCT_OUT
@@ -293,9 +265,66 @@ function setpaths()
    unset ANDROID_TARGET_OUT_TESTCASES
    unset ANDROID_TARGET_OUT_TESTCASES
    export ANDROID_TARGET_OUT_TESTCASES=$(get_abs_build_var TARGET_OUT_TESTCASES)
    export ANDROID_TARGET_OUT_TESTCASES=$(get_abs_build_var TARGET_OUT_TESTCASES)


    # needed for building linux on MacOS
    # Finally, set PATH
    # TODO: fix the path
    export PATH=$ANDROID_LUNCH_BUILD_PATHS$PATH
    #export HOST_EXTRACFLAGS="-I "$T/system/kernel_headers/host_include
}

# Add directories to PATH that are NOT dependent on the lunch target.
# For directories that are lunch-specific, add them in set_lunch_paths
function set_global_paths()
{
    local 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_GLOBAL_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 envsetup.sh can be sourced   #
    #   more than once and still have working paths.                 #
    #                                                                #
    ##################################################################

    # Out with the old...
    if [ -n "$ANDROID_GLOBAL_BUILD_PATHS" ] ; then
        export PATH=${PATH/$ANDROID_GLOBAL_BUILD_PATHS/}
    fi

    # And in with the new...
    ANDROID_GLOBAL_BUILD_PATHS=$T/build/bazel/bin
    ANDRID_GLOBAL_BUILD_PATHS+=$T/development/scripts:$T/prebuilts/devtools/tools

    # add kernel specific binaries
    if [ $(uname -s) = Linux ] ; then
        ANDROID_GLOBAL_BUILD_PATHS+=:$T/prebuilts/misc/linux-x86/dtc
        ANDROID_GLOBAL_BUILD_PATHS+=:$T/prebuilts/misc/linux-x86/libufdt
    fi

    # If prebuilts/android-emulator/<system>/ exists, prepend it to our PATH
    # to ensure that the corresponding 'emulator' binaries are used.
    case $(uname -s) in
        Darwin)
            ANDROID_EMULATOR_PREBUILTS=$T/prebuilts/android-emulator/darwin-x86_64
            ;;
        Linux)
            ANDROID_EMULATOR_PREBUILTS=$T/prebuilts/android-emulator/linux-x86_64
            ;;
        *)
            ANDROID_EMULATOR_PREBUILTS=
            ;;
    esac
    if [ -n "$ANDROID_EMULATOR_PREBUILTS" -a -d "$ANDROID_EMULATOR_PREBUILTS" ]; then
        ANDROID_GLOBAL_BUILD_PATHS+=:$ANDROID_EMULATOR_PREBUILTS
        export ANDROID_EMULATOR_PREBUILTS
    fi

    # Finally, set PATH
    export PATH=$ANDROID_GLOBAL_BUILD_PATHS$PATH
}
}


function printconfig()
function printconfig()
@@ -310,7 +339,7 @@ function printconfig()


function set_stuff_for_environment()
function set_stuff_for_environment()
{
{
    setpaths
    set_lunch_paths
    set_sequence_number
    set_sequence_number


    export ANDROID_BUILD_TOP=$(gettop)
    export ANDROID_BUILD_TOP=$(gettop)
@@ -2004,5 +2033,7 @@ function avbtool() {
}
}


validate_current_shell
validate_current_shell
set_global_paths
source_vendorsetup
source_vendorsetup
addcompletions
addcompletions