3cfb89d451
* Fix the path to bionic-benchmarks-glibc * Add symlinks for the toybox symlink commands. Each symlink bypasses the intermediate symlink in ${OUT}/system/bin and points to the final toybox binary. Suppress a bunch of warnings by skipping symlinks for non-existent files. The new spawn benchmarks try to run /system/bin/true. (They also try to run /vendor/bin/true and print an error.) * Quote "$@" * Use soong_ui.bash --dumpvars-mode to set a bunch of variables, rather than get_build_var, which invokes Soong once per variable. This reduces the "build/run-on-host.sh" runtime from 4s to 1.3s. * build/run-on-host.sh isn't executable and is only useful when it's sourced into another shell, so remove its shebang to reduce confusion. Bug: none Test: \ . build/envsetup.sh lunch aosp_x86_64-userdebug . bionic/build/run-on-host.sh prepare MODULES-IN-bionic MODULES-IN-external-toybox /system/bin/true Change-Id: I59e9a6aca77d35b16bdf51759c5fc7e725bfc67c
62 lines
1.9 KiB
Bash
62 lines
1.9 KiB
Bash
# source this script in bash
|
|
|
|
source ${ANDROID_BUILD_TOP}/build/envsetup.sh
|
|
|
|
# See envsetup.sh for an example of using --dumpvars-mode to set shell variables.
|
|
eval "$(cd ${ANDROID_BUILD_TOP}; build/soong/soong_ui.bash --dumpvars-mode --vars="\
|
|
TARGET_ARCH \
|
|
TARGET_OUT \
|
|
TARGET_OUT_EXECUTABLES \
|
|
TARGET_OUT_DATA \
|
|
HOST_OS \
|
|
HOST_ARCH \
|
|
HOST_OUT \
|
|
")"
|
|
|
|
function prepare()
|
|
{
|
|
local BITS=$1
|
|
shift
|
|
|
|
BENCHMARKS=${TARGET_OUT_DATA}/benchmarktest
|
|
NATIVETEST=${TARGET_OUT_DATA}/nativetest
|
|
if [ "${BITS}" = 64 ]; then
|
|
BENCHMARKS=${BENCHMARKS}64
|
|
NATIVETEST=${NATIVETEST}64
|
|
fi
|
|
|
|
if [ ${TARGET_ARCH} = x86 -o ${TARGET_ARCH} = x86_64 ]; then
|
|
m -j MODULES-IN-bionic MODULES-IN-external-icu MODULES-IN-external-mksh ${TARGET_OUT}/etc/hosts "$@"
|
|
|
|
if [ ! -d /system ]; then
|
|
echo "Attempting to create /system"
|
|
sudo mkdir -p -m 0777 /system
|
|
mkdir -p -m 0777 /system/bin
|
|
mkdir -p -m 0777 /system/lib
|
|
mkdir -p -m 0777 /system/lib64
|
|
fi
|
|
(
|
|
function make_link() {
|
|
dir=$1
|
|
tgt=$2
|
|
name=`basename ${tgt}`
|
|
src=$dir/$name
|
|
if [ -e $tgt ]; then
|
|
ln -sfT `realpath ${tgt}` $src
|
|
fi
|
|
}
|
|
cd ${ANDROID_BUILD_TOP}
|
|
mkdir -p ${TARGET_OUT_DATA}/local/tmp
|
|
for i in ${TARGET_OUT}/bin/bootstrap/* ${TARGET_OUT}/bin/*; do
|
|
make_link /system/bin ${i}
|
|
done
|
|
ln -fs `realpath ${TARGET_OUT}/etc` /system/
|
|
for i in ${TARGET_OUT}/lib/bootstrap/* ${TARGET_OUT}/lib/*; do
|
|
make_link /system/lib ${i}
|
|
done
|
|
for i in ${TARGET_OUT}/lib64/bootstrap/* ${TARGET_OUT}/lib64/*; do
|
|
make_link /system/lib64 ${i}
|
|
done
|
|
)
|
|
fi
|
|
}
|