Merge "fs_config_generate: README"
diff --git a/core/Makefile b/core/Makefile
index 74ffc96..5cd2fe4 100644
--- a/core/Makefile
+++ b/core/Makefile
@@ -1638,7 +1638,8 @@
@echo Installed file list: $@
@mkdir -p $(dir $@)
@rm -f $@
- $(hide) build/tools/fileslist.py $(TARGET_OUT_SYSTEM_OTHER) > $@
+ $(hide) build/tools/fileslist.py $(TARGET_OUT_SYSTEM_OTHER) > $(@:.txt=.json)
+ $(hide) build/tools/fileslist_util.py -c $(@:.txt=.json) > $@
systemotherimage_intermediates := \
$(call intermediates-dir-for,PACKAGING,system_other)
diff --git a/envsetup.sh b/envsetup.sh
index 22808f4..03fdf89 100644
--- a/envsetup.sh
+++ b/envsetup.sh
@@ -28,9 +28,9 @@
Look at the source to view more functions. The complete list is:
EOF
- T=$(gettop)
- local A
- A=""
+ local T=$(gettop)
+ local A=""
+ local i
for i in `cat $T/build/envsetup.sh | sed -n "/^[[:blank:]]*function /s/function \([a-z_]*\).*/\1/p" | sort | uniq`; do
A="$A $i"
done
@@ -40,7 +40,7 @@
# Get all the build variables needed by this script in a single call to the build system.
function build_build_var_cache()
{
- T=$(gettop)
+ local T=$(gettop)
# Grep out the variable names from the script.
cached_vars=`cat $T/build/envsetup.sh | tr '()' ' ' | awk '{for(i=1;i<=NF;i++) if($i~/get_build_var/) print $(i+1)}' | sort -u | tr '\n' ' '`
cached_abs_vars=`cat $T/build/envsetup.sh | tr '()' ' ' | awk '{for(i=1;i<=NF;i++) if($i~/get_abs_build_var/) print $(i+1)}' | sort -u | tr '\n' ' '`
@@ -74,6 +74,7 @@
function destroy_build_var_cache()
{
unset BUILD_VAR_CACHE_READY
+ local v
for v in $cached_vars; do
unset var_cache_$v
done
@@ -93,7 +94,7 @@
return
fi
- T=$(gettop)
+ local T=$(gettop)
if [ ! "$T" ]; then
echo "Couldn't locate the top of the tree. Try setting TOP." >&2
return
@@ -111,7 +112,7 @@
return
fi
- T=$(gettop)
+ local T=$(gettop)
if [ ! "$T" ]; then
echo "Couldn't locate the top of the tree. Try setting TOP." >&2
return
@@ -123,7 +124,7 @@
# check to see if the supplied product is one we can build
function check_product()
{
- T=$(gettop)
+ local T=$(gettop)
if [ ! "$T" ]; then
echo "Couldn't locate the top of the tree. Try setting TOP." >&2
return
@@ -141,6 +142,7 @@
# check to see if the supplied variant is valid
function check_variant()
{
+ local v
for v in ${VARIANT_CHOICES[@]}
do
if [ "$v" = "$1" ]
@@ -153,7 +155,7 @@
function setpaths()
{
- T=$(gettop)
+ local T=$(gettop)
if [ ! "$T" ]; then
echo "Couldn't locate the top of the tree. Try setting TOP."
return
@@ -184,18 +186,19 @@
fi
# and in with the new
- prebuiltdir=$(getprebuilt)
- gccprebuiltdir=$(get_abs_build_var ANDROID_GCC_PREBUILTS)
+ local prebuiltdir=$(getprebuilt)
+ local gccprebuiltdir=$(get_abs_build_var ANDROID_GCC_PREBUILTS)
# defined in core/config.mk
- targetgccversion=$(get_build_var TARGET_GCC_VERSION)
- targetgccversion2=$(get_build_var 2ND_TARGET_GCC_VERSION)
+ local targetgccversion=$(get_build_var TARGET_GCC_VERSION)
+ local targetgccversion2=$(get_build_var 2ND_TARGET_GCC_VERSION)
export TARGET_GCC_VERSION=$targetgccversion
# The gcc toolchain does not exists for windows/cygwin. In this case, do not reference it.
export ANDROID_TOOLCHAIN=
export ANDROID_TOOLCHAIN_2ND_ARCH=
local ARCH=$(get_build_var TARGET_ARCH)
+ local toolchaindir toolchaindir2=
case $ARCH in
x86) toolchaindir=x86/x86_64-linux-android-$targetgccversion/bin
;;
@@ -217,7 +220,7 @@
export ANDROID_TOOLCHAIN=$gccprebuiltdir/$toolchaindir
fi
- if [ -d "$gccprebuiltdir/$toolchaindir2" ]; then
+ if [ "$toolchaindir2" -a -d "$gccprebuiltdir/$toolchaindir2" ]; then
export ANDROID_TOOLCHAIN_2ND_ARCH=$gccprebuiltdir/$toolchaindir2
fi
@@ -273,7 +276,7 @@
function printconfig()
{
- T=$(gettop)
+ local T=$(gettop)
if [ ! "$T" ]; then
echo "Couldn't locate the top of the tree. Try setting TOP." >&2
return
@@ -399,6 +402,7 @@
#
function chooseproduct()
{
+ local default_value
if [ "x$TARGET_PRODUCT" != x ] ; then
default_value=$TARGET_PRODUCT
else
@@ -694,7 +698,7 @@
PWD= /bin/pwd
else
local HERE=$PWD
- T=
+ local T=
while [ \( ! \( -f $TOPFILE \) \) -a \( $PWD != "/" \) ]; do
\cd ..
T=`PWD= /bin/pwd -P`
@@ -742,9 +746,9 @@
function findmakefile()
{
- TOPFILE=build/core/envsetup.mk
+ local TOPFILE=build/core/envsetup.mk
local HERE=$PWD
- T=
+ local T=
while [ \( ! \( -f $TOPFILE \) \) -a \( $PWD != "/" \) ]; do
T=`PWD= /bin/pwd`
if [ -f "$T/Android.mk" -o -f "$T/Android.bp" ]; then
@@ -780,6 +784,7 @@
echo "Couldn't locate a makefile from the current directory."
return 1
else
+ local ARG
for ARG in $@; do
case $ARG in
GET-INSTALL-PATH) GET_INSTALL_PATH=$ARG;;
@@ -937,7 +942,7 @@
function croot()
{
- T=$(gettop)
+ local T=$(gettop)
if [ "$T" ]; then
if [ "$1" ]; then
\cd $(gettop)/$1
@@ -951,9 +956,9 @@
function cproj()
{
- TOPFILE=build/core/envsetup.mk
+ local TOPFILE=build/core/envsetup.mk
local HERE=$PWD
- T=
+ local T=
while [ \( ! \( -f $TOPFILE \) \) -a \( $PWD != "/" \) ]; do
T=$PWD
if [ -f "$T/Android.mk" ]; then
@@ -1204,6 +1209,7 @@
function resgrep()
{
+ local dir
for dir in `find . -name .repo -prune -o -name .git -prune -o -name out -prune -o -name res -type d`; do
find $dir -type f -name '*\.xml' -exec grep --color -n "$@" {} +
done
@@ -1265,7 +1271,7 @@
function tracedmdump()
{
- T=$(gettop)
+ local T=$(gettop)
if [ ! "$T" ]; then
echo "Couldn't locate the top of the tree. Try setting TOP."
return
@@ -1442,7 +1448,7 @@
echo "Couldn't locate output files. Try running 'lunch' first." >&2
return
fi
- T=$(gettop)
+ local T=$(gettop)
if [ ! "$T" ]; then
echo "Couldn't locate the top of the tree. Try setting TOP." >&2
return
@@ -1459,7 +1465,7 @@
# simple shortcut to the runtest command
function runtest()
{
- T=$(gettop)
+ local T=$(gettop)
if [ ! "$T" ]; then
echo "Couldn't locate the top of the tree. Try setting TOP." >&2
return
@@ -1472,7 +1478,8 @@
echo "Usage: godir <regex>"
return
fi
- T=$(gettop)
+ local T=$(gettop)
+ local FILELIST
if [ ! "$OUT_DIR" = "" ]; then
mkdir -p $OUT_DIR
FILELIST=$OUT_DIR/filelist
diff --git a/target/product/core_minimal.mk b/target/product/core_minimal.mk
index fe1a382..701a69c 100644
--- a/target/product/core_minimal.mk
+++ b/target/product/core_minimal.mk
@@ -125,6 +125,9 @@
PRODUCT_COPY_FILES += \
system/core/rootdir/etc/public.libraries.android.txt:system/etc/public.libraries.txt
+PRODUCT_COPY_FILES += \
+ system/core/rootdir/etc/ld.config.txt:system/etc/ld.config.txt
+
# Different dexopt types for different package update/install times.
# On eng builds, make "boot" reasons do pure JIT for faster turnaround.
ifeq (eng,$(TARGET_BUILD_VARIANT))
diff --git a/target/product/embedded.mk b/target/product/embedded.mk
index 681b2c4..a9075c9 100644
--- a/target/product/embedded.mk
+++ b/target/product/embedded.mk
@@ -92,7 +92,8 @@
plat_mac_permissions.xml \
plat_property_contexts \
plat_seapp_contexts \
- plat_service_contexts
+ plat_service_contexts \
+ selinux_policy
# AID Generation for
# <pwd.h> and <grp.h>
diff --git a/tools/releasetools/test_blockimgdiff.py b/tools/releasetools/test_blockimgdiff.py
index cc1fa23..e5a3694 100644
--- a/tools/releasetools/test_blockimgdiff.py
+++ b/tools/releasetools/test_blockimgdiff.py
@@ -41,14 +41,14 @@
block_image_diff = BlockImageDiff(tgt, src)
transfers = block_image_diff.transfers
- t0 = Transfer(
- "t1", "t1", RangeSet("10-15"), RangeSet("0-5"), "move", transfers)
- t1 = Transfer(
- "t2", "t2", RangeSet("20-25"), RangeSet("0-7"), "move", transfers)
- t2 = Transfer(
- "t3", "t3", RangeSet("30-35"), RangeSet("0-4"), "move", transfers)
- t3 = Transfer(
- "t4", "t4", RangeSet("0-10"), RangeSet("40-50"), "move", transfers)
+ t0 = Transfer("t1", "t1", RangeSet("10-15"), RangeSet("0-5"), "t1hash",
+ "t1hash", "move", transfers)
+ t1 = Transfer("t2", "t2", RangeSet("20-25"), RangeSet("0-7"), "t2hash",
+ "t2hash", "move", transfers)
+ t2 = Transfer("t3", "t3", RangeSet("30-35"), RangeSet("0-4"), "t3hash",
+ "t3hash", "move", transfers)
+ t3 = Transfer("t4", "t4", RangeSet("0-10"), RangeSet("40-50"), "t4hash",
+ "t4hash", "move", transfers)
block_image_diff.GenerateDigraph()
t3_goes_after_copy = t3.goes_after.copy()
@@ -87,10 +87,10 @@
block_image_diff = BlockImageDiff(tgt, src, version=3)
transfers = block_image_diff.transfers
- Transfer("t1", "t1", RangeSet("11-15"), RangeSet("20-29"), "diff",
- transfers)
- Transfer("t2", "t2", RangeSet("20-29"), RangeSet("11-15"), "diff",
- transfers)
+ Transfer("t1", "t1", RangeSet("11-15"), RangeSet("20-29"), "t1hash",
+ "t1hash", "diff", transfers)
+ Transfer("t2", "t2", RangeSet("20-29"), RangeSet("11-15"), "t2hash",
+ "t2hash", "diff", transfers)
block_image_diff.GenerateDigraph()
block_image_diff.FindVertexSequence()
@@ -121,12 +121,12 @@
block_image_diff = BlockImageDiff(tgt, src, version=3)
transfers = block_image_diff.transfers
- t1 = Transfer("t1", "t1", RangeSet("11-15"), RangeSet("1-5"), "diff",
- transfers)
- t2 = Transfer("t2", "t2", RangeSet("21-25"), RangeSet("11-15"), "diff",
- transfers)
+ t1 = Transfer("t1", "t1", RangeSet("11-15"), RangeSet("1-5"), "t1hash",
+ "t1hash", "diff", transfers)
+ t2 = Transfer("t2", "t2", RangeSet("21-25"), RangeSet("11-15"), "t2hash",
+ "t2hash", "diff", transfers)
t3 = Transfer("t3", "t3", RangeSet("1-5 30-39"), RangeSet("11-15 30-39"),
- "diff", transfers)
+ "t3hash", "t3hash", "diff", transfers)
block_image_diff.GenerateDigraph()