History log of /build/core/Makefile
Revision Date Author Comments
ea99c1da30d297855ef3b4f46d728de5d5a81dc5 01-Sep-2016 Dan Willemsen <dwillemsen@google.com> Package up proguard jack_dictionary

Bug: 31182185
Bug: 31240674
Test: m dist in an unbundled branch
(cherry picked from commit b6c061e9ffa5208b0b2dae0a5a88694925c6b527)
Change-Id: I7ee1ba076cfa03f294f8231f6bdd8fa8df5557af
bee409ba50ed738f5ea94c2626a74d8bbb05a151 17-Aug-2016 Dan Willemsen <dwillemsen@google.com> Support dist-ing the userdatatarball

So that we can get to the contents of userdata from the build server
without extracting the image.

Bug: 27719200
Test: m userdatatarball dist
(cherry-picked from 69af2e4102d3af3f5f06e4d7a615d42dbb3446bb)

Change-Id: I1438597bd29df80665571f7dc3b4957b9adde870
baacc3a7e898178227b2313d009701bf44cce700 17-Jun-2016 Dan Willemsen <dwillemsen@google.com> Clean up vendor image handling - DO NOT MERGE

Standardize symlinking /system/vendor -> /vendor for aosp_* devices,
since some /vendor binaries still use /system/vendor/... paths.

Support using a prebuilt vendor image and including it into all the
normal packaging steps.

Bug: 31545062
Bug: 28987532
Change-Id: I27040e8a8d1df0777e16cd1e3c3a9f1b28695e96
5134712d6f86fa16243da5dafdb463451c370cb5 04-Aug-2016 Alex Deymo <deymo@google.com> Install the update-payload-key in the recovery image as well.

The update-payload-key is required to verify the contents of the OTA in
recovery while sideloading an update.

Bug: 27178350
TEST=`make` builds a boot.img with the payload key in recovery.

(cherry picked from commit c6ebe9fcd7ca0c991f5ae0e711a251959d0d41f4)

Change-Id: I0128d7f684d32201e227acce798b25f12982eaaa
d491fcf438a2a7155f6d9ad7b295a29d4c760d02 08-Aug-2016 Nick Desaulniers <ndesaulniers@google.com> build: sign boot.img based on BOARD_USES_RECOVERY_AS_BOOT

Bug: 30681215
Change-Id: Ic3a18a65f9b1251c2592fc54569b2c6af99e6ece
5310557e3a9c38c743b335ec028e6f968d783d48 22-Jul-2016 Andriy Naborskyy <andriyn@google.com> board-specific prep recovery imagefix recovery size issue

Allow device config provide extra steps when preparing recovery
For example: have limited space in recovery partition and
need remove /sbin binaries that are not used in recovery mode

Bug: 30304868
Change-Id: I3890b635f4625e6e39d52ca326f92206641bbea7
687c2660531c322dcd9bf15f1ccbd45822beb02d 02-Jun-2015 Claes Elgemark <claes.elgemark@sonymobile.com> DO NOT MERGE Strip path from verity_signer_cmd in the target-files meta data.

Strip path to be able to use outside a build e.g.
when resigning using the dist tools zip.

Bug: 30222185
Bug: 30249120
Change-Id: I492dcfd5791b66c17ae2e751cc8f67127e97b800
(cherry picked from commit ec99604b07132358b92bb053777b4db6a0ae0223)
3ecacd49315b9d6a5c8e5b1339465d8e789b71ac 16-Jun-2016 Alex Light <allight@google.com> Add system_other partition, install odex files

For AB devices, support flashing two system partitions for factory use.
The normal system image on one partition, but without dex preopt. And a
system_other image that just contains the odex files. The dex files will
not be stripped out of the system image, in case the second system
partition is wiped.

Setting BOARD_USES_SYSTEM_OTHER_ODEX := true in the BoardConfig.mk
enables this behavior.

One can control which directories are placed in system_other by the
SYSTEM_OTHER_ODEX_FILTER configuration variable. Currently we default
to only copying only app and priv-app odexs.

Bug: 29278988
Change-Id: I7f4e87da919e7dc6a89fd8c668193cd4e98631bc
4e358ab2c3635439db5bd1a1ef424d5c1250ce00 16-Jun-2016 Alex Light <allight@google.com> Add system_other partition, install odex files

For AB devices, support flashing two system partitions for factory use.
The normal system image on one partition, but without dex preopt. And a
system_other image that just contains the odex files. The dex files will
not be stripped out of the system image, in case the second system
partition is wiped.

Setting BOARD_USES_SYSTEM_OTHER_ODEX := true in the BoardConfig.mk
enables this behavior.

One can control which directories are placed in system_other by the
SYSTEM_OTHER_ODEX_FILTER configuration variable. Currently we default
to only copying only app and priv-app odexs.

Bug: 29278988
Change-Id: I7f4e87da919e7dc6a89fd8c668193cd4e98631bc
3bcc137b490acde0219ff28f41b9433a19eef382 18-Jun-2016 Badhri Jagan Sridharan <Badhri@google.com> Add build variant to kernel command line

Verity is not enabled in eng builds. Pass the build variant so
that kernel does not try to enable verity in eng builds

BUG:29276559
Change-Id: I7f412196ac59aa63e91c21d825ad15bae9f51691
1b6d3485fc2a4653e37824b32d40ff91bdf84855 16-Jun-2016 Mohamad Ayyash <mkayyash@google.com> squashfs: make disable-4k-align a parameter

BUG: 29388879
Change-Id: I121d2b76db5fb269e2f7152abb2e78098437a0d5
Signed-off-by: Mohamad Ayyash <mkayyash@google.com>
c3c17534daea58e4290a925d3b87ea3a45ef1402 10-Jun-2016 Tao Bao <tbao@google.com> Track the name change for wipe_ab.

Bug: 27253717
Change-Id: I0d4c91e99267afdc4846ea50e602a2383898b9b4
3051f4f11aef75af1d7cf623506ad6b4b648f3bd 01-Jun-2016 Tao Bao <tbao@google.com> Add support for TARGET_RECOVERY_BRICK.

TARGET_RECOVERY_BRICK specifies the file that lists all the partitions
to be bricked under recovery. The file, if present, will be copied to
'$(TARGET_RECOVERY_ROOT_OUT)/etc/recovery.brick'.

Bug: 27253717
Change-Id: Id84195b5ee1031a83bf7a077be070a3728416580
e718501021dd039875745d3ff829341c2bb05248 28-May-2016 Baligh Uddin <baligh@google.com> Add system/extras/verity/build_verity_metadata.py to otatools

Bug: 29008004
442ae0fe5c76ddabe52e595689a86838820ecbf1 28-May-2016 Baligh Uddin <baligh@google.com> DO NOT MERGE ANYWHERE -

Broke the build in mnc-dr-dev

Revert "Add system/extras/verity/build_verity_metadata.py to otatools"

Bug: 29008004

This reverts commit d26a99c3c6903c02c5435ec5f0123f057527b0a9.

Change-Id: Ic56a3d382a48a68f6c6f97684c045ec943be1423
d26a99c3c6903c02c5435ec5f0123f057527b0a9 27-May-2016 Baligh Uddin <baligh@google.com> Add system/extras/verity/build_verity_metadata.py to otatools

Bug: 29008004
3af315aed5d657942b28ccae342324b9ee90116d 30-Apr-2016 Badhri Jagan Sridharan <Badhri@google.com> Extract public key ID from cert

Extracts keyid inline using openssl commands.
The keyid is passed as one of the kernel command line parameters
for the dm-android-verity module to mount root fs(system)
with verity enabled.

BUG: 28384658
Change-Id: I8efbe1b0e415ef1d396f9b51cfa4b3fa01b22484
dfec815882d2253c6c9130e3241a1906161f3824 24-May-2016 Mohamad Ayyash <mkayyash@google.com> Pass squashfs block size as a parameter

BUG: 28920352
Change-Id: Ifed02bd1565131814047991ec87fa61691bfe240
Signed-off-by: Mohamad Ayyash <mkayyash@google.com>
4f8df41ceff7434ece651737b15bf1035f5549e8 20-May-2016 Baligh Uddin <baligh@google.com> Add Oem Props to otatools package

Bug: 23967152
74da4d6eef1da6490729dfbd069adf913d9aa6fa 19-May-2016 Baligh Uddin <baligh@google.com> DO NOT MERGE - Add verifiedboot keys to otatools.zip (this is needed for Shamu)

otatools.zip is used to release key sign device images.

Bug: 23967152
dfb1792ad8a2f7bb9c1500a287f4d31e38a7573c 14-May-2016 Patrick Tjin <pattjin@google.com> Makefile: exclude cache symlink on devices with no cache partition

rsync will complain due to broken cache symlink on devices
without cache partition when creating the recovery disk.
Recovery does not depend on /cache.

Bug: 28747374
Change-Id: Ie2dc6e84194fbc3bbb39fe59ef92a6e8936b71e2
f3b0dc290e10cf69204fb8e1a320805a4aff60b2 14-May-2016 Patrick Tjin <pattjin@google.com> Makefile: exclude cache symlink on devices with no cache partition

rsync will complain due to broken cache symlink on devices
without cache partition when creating the recovery disk.
Recovery does not depend on /cache.

Bug: 28747374
Change-Id: Ie2dc6e84194fbc3bbb39fe59ef92a6e8936b71e2
f193546d65d41d40bd0e24e9bfe443001a320d1a 13-May-2016 Baligh Uddin <baligh@google.com> DO NOT MERGE ANYWHERE - Fix otatools on lmp-mr1-dev

Bug: 23967152
Change-Id: I2e2f1ead28f51f549dafacfc7d1d1e65b0b84bc7
16690162c3eac9a40824c400822cb7023414a75b 12-May-2016 Baligh Uddin <baligh@google.com> DO NOT MERGE ANYWHERE - Add verifiedboot keys to otatoools.zip.

This is needed for nemo* signing off emerald-dev.

Bug: 28726512
f54216f29238a67aad1199a0e85d09e443740bf0 30-Mar-2016 Tao Bao <tbao@google.com> Pack base_fs files into target_files.zip.

Pack the base_fs files ({system,vendor}.map) into target_files.zip,
which would be needed when rebuilding the images at signing.

Reset the base_fs paths to point to the files in META/.

Also add blk_alloc_to_base_fs into otatools.zip.

Bug: 27698960
Change-Id: If4eb274b3f3d839c4365624f46f0dc89bd2fa440
1868a601b766a2c6a7a35e232ab7e0d6f025744e 23-Apr-2016 Mohamad Ayyash <mkayyash@google.com> Rename incr ext4 base_fs path vars. Add to product_var_list.

BUG: 27698960
Change-Id: I4624f782846ee54525d0ac29b866a04c0d67aa40
Signed-off-by: Mohamad Ayyash <mkayyash@google.com>
f3b80aed0a13baa078e2dd4c27849ce89307372b 25-Apr-2016 Baligh Uddin <baligh@google.com> ADO NOT MERGE ANYWHERE - Add SquashFS tools to diamond-mr1

Bug: 23967152
69cf5dfc4deee1a0d48e205c3420f5a60020bb41 24-Apr-2016 Baligh Uddin <baligh@google.com> DO NOT MERGE ANYWHERE - Add squashFS tools to otatools

Bug: 23967152
cffaf73f8471bfa2c2f19e6e51c35e30c1924aa7 14-Apr-2016 Tao Bao <tbao@google.com> Makefile: Pack squashfs and f2fs tools into otatools.zip.

The following tools are essential to create squashfs and f2fs images
during signing (if applicable).

squashfs: mksquashfs and mksquashfsimage.sh
f2fs: make_f2fs and mkf2fsuserimg.sh

Bug: 28179154
Change-Id: Ia48bc6d9a40d2667bc6f2c973bd0c55eed7a06fc
969b6f8ada8f2b0de8748d54ea4013269d70ef2e 06-Apr-2016 Joe Onorato <joeo@google.com> Remove unused module-info.txt generation.

Change-Id: Ic2e384ad3e2bae8e76a98818c18a99bf5d427b0e
8d3311f50dd36312918bd94872a856b99db671fa 24-Mar-2016 Johan Redestig <johan.redestig@sonymobile.com> DO NOT MERGE ANYWHERE - Add libbase to otatools

build_verity_tree uses libbase since b104044.

Change-Id: I6d3406a107ceb6cd58d1a51aa79935209d4c435f
f9d685008d573bc34b247e586ff45588a2fdb808 28-Mar-2016 Baligh Uddin <baligh@google.com> Add ability to package verifiedboot keys
29b1afee9e0e2634df2f2a7790d3100d24a3bfb4 17-Mar-2016 Yohann Roussel <yroussel@google.com> Remove JILL, JACK_JAR and JILL_JAR

Also ensure that sdk.atree can find jack.jar and jill.jar from prebuilt.

Bug: 27372042

(cherry picked from commit 233584bb806202364544f964b63561a7350fdc97)

Change-Id: Ie266104e51c09fa21ccb09c1f27ad7068472965c
a8c37be28598c6bdd920af4c306a29db013b68e7 15-Mar-2016 Sami Tolvanen <samitolvanen@google.com> Revert "Revert "build: pass version and patch level to mkbootimg""

This reverts commit 494a9090f96a7fc4e77f8f4fbb26d876a5fc8438.

Bug: 27498078
Bug: 22914603
Change-Id: Iee6a784271ec32c6bfcc0a6ad3f0395d82016df3
(cherry picked from commit 3303d909a1c43dec0d99d2c852311cf2171c7c18)
3a61eeb6cb588b9a206bd80814183bcc0263cd13 11-Mar-2016 Ying Wang <wangying@google.com> Rebuild odex files in PDK fusion build.

To rebuild odex files of Java libraries and apps,
we store the jars/apks without stripping the classes.dex inside the
platform.zip. We also save the build variables that may affect how we
rebuild an odex in pdk_dexpreopt_config.mk in the platform.zip.
We store the files and configuration only for libraries/apps that get
installed to the system.img (or vendor.img).

In PDK fusion build, we auto-generate prebuilt module definitions for
the javalib.jar and package.dex.apk carried in the platform.zip, using
configuration stored in pdk_dexpreopt_config.mk.
With the prebult modules, we override the implicit rule that directly
copies the odex from the platform.zip.
To rebuild odex of javalib.jar, we added support for prebuilt shared Java
library to prebiult_internal.mk. An installable prebuilt Java library is
treated as shared Java library, i.e. with classes.dex in the jar instead
of a set of .class files.
For apks in the platform.zip, we install the stripped version from
platform files inside platform.zip, instead of the package.dex.apk,
using a new variable LOCAL_REPLACE_PREBUILT_APK_INSTALLED. We can't
strip package.dex.apk because we can't re-sign the stripped apk at this
point.

We generate prebuilt module only if it's not already defined in the
source tree.

Bug: 27543283
Change-Id: I9e146f8b713d6f57c397fd28d88c9ab700757ca1
1bca9fb6d4a71f4ce059f6a435f67b930d827646 14-Mar-2016 Sami Tolvanen <samitolvanen@google.com> Revert "build: pass version and patch level to mkbootimg"

This reverts commit e555f779626faeeddd8d23339241fa6a9240fa28.

Bug: 27580174
Change-Id: I0fd1ddb64d2fd4f91b0ecbc1ab8953a1324a10eb
bd07ad01b554694f1d3b290fb066033866ededc4 10-Mar-2016 Ying Wang <wangying@google.com> Add dependency on boot_singer and vboot_singer if necessary.

Change-Id: Ic10c2ae6a0debf51100a30eb11217e77060a6066
e555f779626faeeddd8d23339241fa6a9240fa28 05-Mar-2016 Sami Tolvanen <samitolvanen@google.com> build: pass version and patch level to mkbootimg

Add --os_version and --os_patch_level arguments to mkbootimg.

Needs matching changes from
I57682611e0c27fec5ed284da7d9a788383ff98b1

Bug: 27498078
Bug: 22914603
Change-Id: I04e20b0de40d864aac92ac7bcf466a6cbde3d0e4
(cherry pick from commit 8fb47f191f804d21e252ef7bb66886ea087c2d56)
f8765558934a2aab5cda00ceabb426e6de749816 03-Mar-2016 Mohamad Ayyash <mkayyash@google.com> Hook incremental ext4 image generation into build

Allows passing the *.base_fs or *.map files for system and vendor in
INTERNAL_SYSTEM_BASE_FS_PATH and INTERNAL_VENDOR_BASE_FS_PATH variables
respectively.

Internal Design Doc: go/incremental-ext4
BUG: 26839493
Signed-off-by: Mohamad Ayyash <mkayyash@google.com>

Change-Id: Ie57ef6dbfa6084268b6535fe0a673a3b4aaa6e2f
Signed-off-by: Mohamad Ayyash <mkayyash@google.com>
4fbc164da860f6b58ba36d6622189adc6c3f78a5 23-Feb-2016 Dan Willemsen <dwillemsen@google.com> Warn more clearly when there are duplicate copied headers

When more than one makefile tries to copy a header to the same
destination, the warning is not clear, and hard to track down and assign
blame:

build/core/copy_headers.mk:15: warning: ignoring old commands for target `out/target/product/bullhead/obj/include/qcom/display/copybit.h'

With this change, the same behavior is kept, but the warning message is
more descriptive, and contains the offending Android.mk files:

build/core/Makefile:54: Duplicate header copy: out/target/product/bullhead/obj/include/qcom/display/copybit.h
build/core/Makefile:54: Defined in: hardware/qcom/display/msm8994/libcopybit/Android.mk hardware/qcom/display/msm8994/libcopybit/Android.mk

In this case, a $(CLEAR_VARS) is missing, so the same Android.mk file is
copying the same headers twice.

Bug: 27302058
Change-Id: Icf8f580ae71a78741db21c1d8f3213424459e637
(cherry picked from commit 6f60f020d781d9a93786616039323e9f25e02c0b)
fdd2693b650d24d98dd694508724b901f50f278f 11-Feb-2016 Tao Bao <tbao@google.com> Makefile: Add the missing library in otatools.zip.

With the change in [1], delta_generator now needs
libprotobuf-cpp-lite.so instead of libprotobuf-cpp-lite-rtti.so to
generate A/B payloads.

[1] commit ab5bd668f6be600a8cceb8772e426c0aa902a5e1

Bug: 27145830
Change-Id: Ib9a93bf0fbe7fa44fc5fb94668d17fa1a2e07b05
e11aa50bb21e7b7afa17f19085cc20b23683cc18 10-Feb-2016 Patrick Tjin <pattjin@google.com> Add compressor options for squashfs vendor images

Change-Id: I4f9f5d62e24654cb37d436cb73dd5893aed30fa8
426ec55b413b77b70cf25ba04941f1b9157ed32f 09-Feb-2016 Patrick Tjin <pattjin@google.com> Allow squashfs for vendor image only

Previously, the squashfs dependencies were included only if
the system image was squashfs. Allow the vendor image trigger
the dependency.

Change-Id: I5b1c513e9c13d83efc3ca6a904f08a91d9cca85f
481cc5a005a59b2f2d61efa0e3d7ce719f126612 05-Feb-2016 Colin Cross <ccross@android.com> Don't build otatools for PDK

Change-Id: I5e73d103300ac938f80b3ff0af978c123d649fed
92cfd6fc2b620e40666caaba3398de45766a608d 27-Jan-2016 Alex Deymo <deymo@google.com> Place the META/ dir first in the target_files.zip.

To help early verification of a target_files.zip being uploaded to our
servers, we place the META/ directory first in the .zip file, so checks
against the product_id.txt and product_version.txt don't need to wait
for the whole file to upload.

Note that META/*filesystem_config.txt files are generated and added to
the .zip file at a later point, so they are not included at the
beginning.

Bug: 26806325
TEST=`make dist` and `unzip -l out/dist/edison-target_files-eng.$USER.zip` shows most META/ files first.

Change-Id: I1955645412688f5c7823063ed56606b251daccfd
23c3db937295a57d112eda75a776a143bd53043e 21-Jan-2016 Tao Bao <tbao@google.com> Makefile: Fix the location for payload signing key.

CL in [1] put it in a wrong path.

[1] commit 38812d684b73b4e2bbd2a4277fd9b0d8b3c7a810

Bug: 25715402
Change-Id: I01a105888844011eee083d5f4d694223599fa067
38812d684b73b4e2bbd2a4277fd9b0d8b3c7a810 21-Jan-2016 Tao Bao <tbao@google.com> Makefile: Add the payload public key into system image.

For non-Brillo devices using AB update, add the payload signing public
key to the system image
(system/etc/update_engine/update-payload-key.pub.pem).

We first need to sign the payload with some private key, and pack it
into an Android OTA package. Then the whole zip package will be signed
again with the device key. This is to comply with the two existing OTA
flows (Android and CrOS).

We use the same device key to do the two signings, but update_engine
expects the key in RSA public key format. This CL extracts the public
key from x509 certificate and adds it to the system image.

Bug: 25715402
Change-Id: I6f6c1148534250ddb6d9e554175c7a35bceda99e
6d8a8cc63438f2ededb0b7e80d8b0895633c7d6b 19-Jan-2016 Tao Bao <tbao@google.com> Makefile: Pack brillo_update_payload and shflags into otatools.

brillo_update_payload and shflags are the scripts to generate A/B OTA
package (payload). Include them into otatools.zip.

brillo_update_payload was already included in previous CL. Move it to
the folder for executables.

Bug: 25715402
Change-Id: Idf9c05767c24c55d058cc30e696f06d4eb5fd53b
3f56a330412b56212acc5a9ed19b747c8943b7f2 12-Jan-2016 Tao Bao <tbao@google.com> Fix mounting /sdcard under recovery.

The CL in [1] changed to create a symlink to /storage/self/primary for
/sdcard. It breaks the mount of /sdcard under recovery.

[1] commit 595003a3d06a13862052ef2f4f578371dae5ad65

Bug: 26509280
Change-Id: I98d02d54d707c2c8826c5ee119cf1a3ffa0c4bc9
f8e6fbe2f5059644989ef4a7847b2ad77e52fc38 04-Jan-2016 Tao Bao <tbao@google.com> Build delta_generator for A/B update.

delta_generator computes the OTA package (aka payload) for A/B update.
Also add its dependent libraries into otatools.zip.

Bug: 25715402
Change-Id: Iddf4b9ac188cc4c8bf3f89ce3641d68451632ba1
4594d0e0fdfabe9c8a3081caf1c7c7c213c25d23 22-Dec-2015 Tao Bao <tbao@google.com> Makefile: Clean up the condition for RECOVERY_RESOURCE_ZIP.

Change-Id: I6909d4572bd54da48f7fd6b76d4a5ee03c84206c
40ef35b9e916163bc408d6d9945f92f012885d33 11-Nov-2015 Daniel Rosenberg <drosen@google.com> Allow building recovery as boot.

With BOARD_USES_RECOVERY_AS_BOOT = true, we skip building the
non-ramdisk boot.img but building the recovery image as boot.img. It
contains recovery's ramdisk (e.g. with /sbin/recovery). It depends on
the bootloader parameter (skip_initramfs) to determine the actual mode
to boot into.

Change-Id: Id6e2d0a2b94383944ca8f35bba688c6401745622
(cherry picked from commit d80bef2b9e7aa5f92ab017247442798f47736566)
d80bef2b9e7aa5f92ab017247442798f47736566 11-Nov-2015 Daniel Rosenberg <drosen@google.com> Allow building recovery as boot.

With BOARD_USES_RECOVERY_AS_BOOT = true, we skip building the
non-ramdisk boot.img but building the recovery image as boot.img. It
contains recovery's ramdisk (e.g. with /sbin/recovery). It depends on
the bootloader parameter (skip_initramfs) to determine the actual mode
to boot into.

Change-Id: Id6e2d0a2b94383944ca8f35bba688c6401745622
b2a555e6fca08aae3b51140c1189b9e9bfc74d2e 16-Dec-2015 Todd Poynor <toddpoynor@google.com> Make squashfs sparse image generation optional

Allow non-sparse squashfs image generation, a la ext filesystems.

Bug: 26218766
Change-Id: Ifd596af16411e0cf69a2e7e05d725fd9442dc79c
9667b18f2300e4bf0f33d3aef51d2f48bcb6778b 10-Dec-2015 Alex Klyubin <klyubin@google.com> Make signapk use Conscrypt.

This makes the signapk tool use Conscrypt (where possible) instead of
the platform-default JCA providers and the Bouncy Castle JCA provider.
This speeds up (by 10-30%) APK and OTA update signing because
Conscrypt's crypto primitives are backed by BoringSSL.

Previously, the signapk tool consisted only of the signapk.jar.
Because Conscrypt is backed by native code, signapk now consists of
signapk.jar and crypto_openjdk_jni shared library. This requires that
users of the tool be updated to provide a suitable -Djava.library.path
argument to the Java runtime. This change updates all known users of
the tool inside the Android source tree to do so.

Bug: 26097626
Change-Id: I8411b37d7f771ed99269751a3007dff103083552
0d79956676dd0b7f152fddcb5a630ec724fe3c75 10-Dec-2015 Alex Deymo <deymo@google.com> Rename libext2 host libraries to standard suffix.

libext2_uuid_host was renamed to libext2_uuid-host to match the
"-host" suffix used in most libraries.

Bug: 24619596
TEST=make dist

(cherry picked from commit 41ac44ed2b3de5cf883834490e3ed98496dd5622)

Change-Id: I07e3a5e896230ed3ce1c102c607cbd1aa02c67e0
41ac44ed2b3de5cf883834490e3ed98496dd5622 10-Dec-2015 Alex Deymo <deymo@google.com> Rename libext2 host libraries to standard suffix.

libext2_uuid_host was renamed to libext2_uuid-host to match the
"-host" suffix used in most libraries.

Bug: 24619596
TEST=make dist

Change-Id: Ic5faccb4d5fdbbf3d3bba6f4a35cf99d4961bb54
03b6e8b6c4ad1d423256269b738a87e307ce5d55 07-Dec-2015 Ying Wang <wangying@google.com> Fix TARGET_ASAN build.

Bug: 26044735
Change-Id: I9c6b3b16637ca2d0da4765e896a9f03c1d5dc51c
6fa82b50f49d092ae0c3db360ce89d6810469578 01-Dec-2015 wei qiao <qiaowei224@gmail.com> make USER limited to 6 characters when generating BF_BUILD_NUMBER

the value of USER is dependent from the compilation environment,so
when compiling one same device project, the BUILD_FINGERPRINT may
exceed 91 characters because ${USER} is long, but with short ${USER}
the compilation can pass.

Signed-off-by: wei qiao <qiaowei224@gmail.com>
Change-Id: Ia0f7dfa9cf7d605f1f2603f70dd0e6877482eb8a
a04fca31bf1fadcdf982090c942ccbe4d9b95c71 30-Nov-2015 Tao Bao <tbao@google.com> Stop packaging obsolete OTA tools.

applypatch, applypatch_static and sqlite3 are no longer needed.

Bug: 24621915
Change-Id: I6de5bc45bc8434b9c387e1d3d1b6c347c23a5290
a6a3aa9398f6a27693521abd2601462a78a81c56 09-Jul-2015 Tao Bao <tbao@google.com> Pack file_contexts into target_files zip.

file_contexts (specified by SELINUX_FC) is needed both when building
and (re)packaging. We used to use the copy in out/ when building, and
looked for the copy in BOOT/RAMDISK/ when packaging from target_files
zip. With system_root_image enabled, the file_contexts needed for
building and packaging might be different from the one on device. So
we explicitly pack the file as META/file_contexts in target_files zip.

Also refactor out the overriding of selinux_fc property into
common.LoadInfoDict().

Change-Id: I0781a147319148c76d989d8f29d5ef766a502dbd
(cherry picked from commit aa7318c3849095aeb3bea00efbf303c0c40a089d)
d06e1c16d856f061065a09f83c3fab445263dc68 23-Oct-2015 Alex Deymo <deymo@google.com> Rename UPDATE_AB_PARTITIONS to AB_OTA_PARTITIONS.

In order to have all the A/B updater variables in the same AB_OTA_
namespace we rename UPDATE_AB_PARTITIONS to AB_OTA_PARTITIONS.

Bug: None
Test: `make dist` includes the partitions.txt file if properly configured.

Change-Id: Ied4faabd7e2f0ab8a5007afb44ad2f38df8d630d
(cherry picked from commit 49be2b115c558505e0f5972e5758dcea9b3f0bde)
d22f7eb3eca093b58d3c0f496ab84d881eaff3f4 02-Oct-2015 Alex Deymo <deymo@google.com> Pack META/ab_partitions.txt when using the A/B OTA updater.

The list of A/B partitions updated is product-specific. Normally you
would update boot and system, but the product could require to update
other partitions during a system update. This patch packages the list
of A/B partitions configured to be updated when using the A/B updater.
The list can be set in the product makefile by setting the make
variable UPDATE_AB_PARTITIONS.

Bug: 24387863
Test: `make dist` creates the META/ab_partitions.txt in the target_files.zip

Change-Id: I4226ab05c7c7cd74721b06f1da64c6cf4d0e52ac
(cherry picked from commit 8925d334c3d9932526242ad78ec7a0c23627c3a8)
b6ef41dc30eb069f1bda1d2b77152700114f024c 30-Sep-2015 Alex Deymo <deymo@google.com> DO NOT MERGE Pack the update_engine_config.txt when using the A/B OTA updater.

This config file pulled directly from the source specifies the update
payload version supported by the code. When generating an incremental
update payload for the A/B updater, the generated payload format will
match the version supported by the old version.

Bug: 24406755
Test: `make dist` on Brillo.

Change-Id: Ib7ac6828d0d34eb31e786dbaae5d59ecf26c3576
(cherry picked from commit 70067acd663df3fb0a747085f3d928c4b1777154)
532fdf4479acb50cdb480e6fdfe24f0698fcd67b 11-Nov-2015 Tao Bao <tbao@google.com> Add ro.build.ab_update property.

Set ro.build.ab_update if AB_OTA_UPDATER is true. Device will depend on
this property to call the proper update API.

Change-Id: I5916ef5b30ea3351d323382f7ce83a17df2b0a70
f4d759930c8b612cba9827d35232a205884295dc 30-Jul-2015 Tao Bao <tbao@google.com> build: Fix "adb shell" in recovery for system_root_image.

For system images that contain the root directory, "adb shell" in
recovery stops working if the image is mounted at "/system", because
sh now locates at /system/system/bin/sh. We fix the issue by mounting
the image on /system_root and create a symlink to /system_root/system
for /system.

Bug: 22855115
Change-Id: Ia6b257b75aeb67687c3909063d1725a23a5ccd60
97b906b004f29551b222b4b68dccc84a20ee6508 22-Jul-2015 Tao Bao <tbao@google.com> build: Support packaging for system_root_image.

If system image contains the root directory
(BOARD_BUILD_SYSTEM_ROOT_IMAGE == "true"), we package the root directory
into ROOT/ instead of BOOT/RAMDISK/ in the target_files zip.

Change-Id: I817776ca97194991308b2131d0e34ab136283464
6ed1491402e5db6450388147991e66e5938744ac 22-Jul-2015 Tao Bao <tbao@google.com> Support systems that use a full copy of recovery image.

If BOARD_USES_FULL_RECOVERY_IMAGE == true, a full copy of recovery
image will be carried as /system/etc/recovery.img instead of a patch
at /system/recovery_from_boot.p.

Bug: 22641135
Change-Id: Ie271d3e2d55d7b003f667ac5b44203d69b23c63b
(cherry picked from commit 8beab69bd5d728810aca55536017912e65777bb8)
752ecc219a6075cf565691417c717a0ab7da359d 03-Jun-2015 Daniel Rosenberg <drosen@google.com> build: core: Fix issue in recovery

Now that symlinks are created at build time, the rsync while
making recovery runs into issues around the etc symlink

Change-Id: Ie781507b22e4661629840075b274eaab2f712de6
fa7f9f7e0c63010a8f987134418ca3c598bb6d5a 30-Jun-2015 Daniel Rosenberg <drosen@google.com> Add ro.build.system_root_image

ro.build.system_root_image is true if the root directory is built
into the system image.

Change-Id: I17208ebd004c63aebb09db6c3e5f795619e73bd2
37b96ef26bafb6f9d9f3e5bea57c70f84d68399c 28-Oct-2015 Tao Bao <tbao@google.com> Honor TARGET_NO_RECOVERY flag.

Don't generate recovery.img when calling 'make dist' if
TARGET_NO_RECOVERY is set. The build system passes the flag to the
packaging script which then generates recovery.img conditionally.

Bug: 25329471
Change-Id: Ia7f08943834ee39e781d7e9b5beb1b31d95a73d9
(cherry picked from commit db45efa64764c1de5c007384ab172ad817e1d295)
60ad0cdc226c9e28b8298b464dfa602ddcebce81 19-Aug-2015 Tao Bao <tbao@google.com> build: Don't call make_recovery_patch if there's no recovery.

Change-Id: I7ae57f6d69293645f88cbe9cc61b7cbbe8d12430
(cherry picked from commit cbc6dc29d6ac0f42db2176177fd2d2ad74923133)
8f22e2a0bbf9b53603bcfba838a1559c6fc6548e 12-Nov-2015 Sen Jiang <senj@google.com> Write AB_OTA_POSTINSTALL_CONFIG to META/postinstall_config.txt.

The config file will be passed to delta_generator to add the postinstall
field in the update payload.

Bug: 24537566
Change-Id: I06b8d9d0b2c37f9a3e7a844ac4d9e2eead8cd4d2
TEST: make dist
cb4abef523b6fa4881307cd54a11e4cd7349ebf8 12-Nov-2015 Tao Bao <tbao@google.com> build: Remove check_prereq.

check_prereq is a tool for recovery API v2, which has been obselete
since we moved to v3 in [1].

[1] commit e08991e02a7d678f2574e85289a34b2a9a537c82

Bug: 24621915
Change-Id: Ie96348fb56c5a3e029cac2417b59d8eb62dc085b
b463fcde80f5615b3fe6891b8b78c010ec8cd37b 09-Nov-2015 Lee Campbell <leecam@google.com> build: Add LINUX_KERNEL_COPYING license file

The build requires LINUX_KERNEL_COPYING when building
the notices. Change from depending on a file in
prebuilds/qemu-kernel to one in /build/core.

This is required as Brillo does not have the qemu-kernel
in its checkout.

BUG=25578534

Change-Id: Ieff6970035d27884c0769106e507284c1096c33f
4044b38f0af9c5578cc4e888a48ac5687ccc1ee3 05-Nov-2015 Steve Fung <stevefung@google.com> Add the build type to META folder in target files.zip

For AB builds, add the build type to META/build_type.txt so the
server can easily determine user, userdebug, and eng builds
from each other.

Bug: 25420005
Change-Id: I6e4de2ba36a6fd1208c65a434d4725bb93d2cee6
5d88770f262a1b6c03b37d73a4b897f361a09200 04-Nov-2015 Ying Wang <wangying@google.com> Don't run ziptime on host zip files.

ziptime fails on zip file larger than 2GB.
These zip files won't installed on device and we don't care that much
about their reprodudcibility across builds.

Change-Id: I47062928d075a59eda92dd5333e59502f490d1cb
48a621c2779c74cba3555c96e3fbc7b1989ac90b 30-Oct-2015 Dan Willemsen <dwillemsen@google.com> Remove changing uids/timestamps from zip/jar files

Pass -X to zip so that Unix UID/GID and extra timestamps aren't
saved into the zip files.

Add a new tool, ziptime, that uses a very stripped down copy of
zipalign. It no longer depends on libandroidfw, and now rewrites the
timestamps in place instead of making a copy of the zipfile. This should
improve speed and reduce disk requirements, especially with the large
packaging zip files.

Bug: 24201956
Change-Id: I50f68669f659da1b4393e964ad40b6aafb00c1e7
67c2ed390fbb41b81002e93e3c6de62c585c6d4c 23-Aug-2015 Gaurav Shah <gauravsh@google.com> Support build targets with no installable apps/packages

Specifically, do not error out if no installable apps are found.

- When creating an archive of all the apps, and if no apps exist
for the target, generate an empty archive file.
- If building for a target with no installable jar(s) or apk(s),
generate an empty package stats file.

The former is just an output artifact. The latter is used
by the upload_pkg_stats.py script which correctly handles
an empty input file.

BUG: 23421592

Change-Id: I48db9f9e1f61914d8fd938130e09b41849685450
04ba31236e694c6d4c3347dae3631e45a48209ae 21-Aug-2015 Lee Campbell <leecam@google.com> build: Add extra build customization for /product

This makes /product more consistent with /device & /vendor

BUG: 22030305

Change-Id: Ic65bfde7fb3e9fab8c8fb8d99af15404574abde0
b589ae4e2661d42cbdc0a44193e2df384424e483 29-Oct-2015 Dan Willemsen <dwillemsen@google.com> Revert "Remove changing uids/timestamps from zip/jar files"

This reverts commit 3c2c064c8791ed2d4b9d6780d7b87f406ab78f10.

zipalign depends on libandroidfw, and some setups don't include frameworks/base.

Bug: 24201956
Change-Id: I48ee95808924f6b2221f0a49ab205c2565096b1f
3c2c064c8791ed2d4b9d6780d7b87f406ab78f10 28-Oct-2015 Dan Willemsen <dwillemsen@google.com> Remove changing uids/timestamps from zip/jar files

Pass -X to zip so that Unix UID/GID and extra timestamps aren't
saved into the zip files.

Add a new option to zipalign, -t, to replace all timestamps with static
timestamps (2008 Jan 1 00:00:00). Use this for all non-APK zip files.
APK zip timestamps are set based on the certificate date in SignApk.

Bug: 24201956
Change-Id: Ifb619fc499ba9d99fc624f2acd5f8de36d78ef8e
21ec03d1867091e7e5d7d14c11400e6d34402a58 29-Oct-2015 Ying Wang <wangying@google.com> Add _asan suffix to ro.build.flavor for ASAN builds.

Bug: 25344475
Change-Id: I27f2472906631239ca725ee09da2ab791cad2195
67132baa4d11917030c5156f507a50110c4cd935 29-Oct-2015 Ying Wang <wangying@google.com> Fix "make product-graph" and "make dump-products".

- For unmodified "make product-graph" and "make dump-products",
load only the current product configuration makefiles. This is much
faster than loading all product makefiles.
- For "make product-graph ANDROID_PRODUCT_GRAPH=--all",
"make dump-products ANDROID_DUMP_PRODUCTS=all", load all product
makefiles.
- Move product-graph.mk out of build tasks, so we can skip loading all
the Android.mks, which takes long and we don't really need them.
More importantly, with all product makefiles loaded, modules in
Android.mks are prone to clash (if they are conditionally included
by variables set up in product makefiles) and lead to parse-time
error.

Change-Id: Idc1d6b0c23eb2c8bb34fdd7a1fa4d56171768d21
db45efa64764c1de5c007384ab172ad817e1d295 28-Oct-2015 Tao Bao <tbao@google.com> Honor TARGET_NO_RECOVERY flag.

Don't generate recovery.img when calling 'make dist' if
TARGET_NO_RECOVERY is set. The build system passes the flag to the
packaging script which then generates recovery.img conditionally.

Bug: 25329471
Change-Id: Ifbc999300d5c31e897878f81e231ae7dd2aca660
eba409c4da654fc9c0e26119c697be4e85bf1611 21-Oct-2015 Tao Bao <tbao@google.com> Bump up the BBOTA version to 4.

To accommodate new changes (such as error correction in [1]) to BBOTA
in N release. We bump up the version to keep the OTA script backward
compatible.

Needs the matching CL in commit
1fdec8685af858c5ff4f45d2e3059186ab5ed2ab.

[1]: commit 0a7b47397db3648afe6f3aeb2abb175934c2cbca

Change-Id: Ib9158b455cd5905fe2d4742ce81feb1b7583054f
49be2b115c558505e0f5972e5758dcea9b3f0bde 23-Oct-2015 Alex Deymo <deymo@google.com> Rename UPDATE_AB_PARTITIONS to AB_OTA_PARTITIONS.

In order to have all the A/B updater variables in the same AB_OTA_
namespace we rename UPDATE_AB_PARTITIONS to AB_OTA_PARTITIONS.

Bug: None
Test: `make dist` includes the partitions.txt file if properly configured.

Change-Id: Ied4faabd7e2f0ab8a5007afb44ad2f38df8d630d
22d624a90418dd38bc09888505c22429f3b6af31 15-Oct-2015 Steve Fung <stevefung@google.com> Add the Product ID to target_files.zip

When using the A/B updater, include the product id string to
target_files.zip.
This is needed by the Omaha backend.

Bug: 24946811
Change-Id: I2ce5f6cffe440c29a1820348ee215c71cec07861
f99b53143d3a25bf157ac32a8fe80378ab57d7a8 20-May-2015 Sami Tolvanen <samitolvanen@google.com> Error correction: Append codes to verified partitions

Append error-correcting codes to verified partitions provided that
PRODUCT_SUPPORTS_VERITY_FEC is true.

This moves verity metadata to be after the hash tree, and requires
matching changes from
Ide48f581bbba77aed6132f77b309db71630d81ed

Bug: 21893453
Change-Id: I6945cbab99e214566a1f9d3702333f2dbbc35816
4af7259c2d432debc5c18717ce5660b5f1adbb8b 09-Oct-2015 Bertrand SIMONNET <bsimonnet@google.com> Add the product version to target_files.zip.

When using the A/B updater, include the product version string to
target_files.zip.
This is needed by the Omaha backend.

BUG: 24743570
Change-Id: Idaba06624c1de452b1e1f9d3ebec851229af987a
48e49f592f11de3aeda8d19067ecbba1e308c568 02-Oct-2015 Steve Fung <stevefung@google.com> Exclude OTA/bin tools when using A/B OTA updater

The OTA/bin tools are not needed in the target files zip when using
the A/B OTA updater.

Bug: 24577767
Change-Id: I7938a906e4d73709aaa944e8065f922536072e27
8925d334c3d9932526242ad78ec7a0c23627c3a8 02-Oct-2015 Alex Deymo <deymo@google.com> Pack META/ab_partitions.txt when using the A/B OTA updater.

The list of A/B partitions updated is product-specific. Normally you
would update boot and system, but the product could require to update
other partitions during a system update. This patch packages the list
of A/B partitions configured to be updated when using the A/B updater.
The list can be set in the product makefile by setting the make
variable UPDATE_AB_PARTITIONS.

Bug: 24387863
Test: `make dist` creates the META/ab_partitions.txt in the target_files.zip

Change-Id: I4226ab05c7c7cd74721b06f1da64c6cf4d0e52ac
70067acd663df3fb0a747085f3d928c4b1777154 30-Sep-2015 Alex Deymo <deymo@google.com> Pack the update_engine_config.txt when using the A/B OTA updater.

This config file pulled directly from the source specifies the update
payload version supported by the code. When generating an incremental
update payload for the A/B updater, the generated payload format will
match the version supported by the old version.

Bug: 24406755
Test: `make dist` on Brillo.

Change-Id: Ib7ac6828d0d34eb31e786dbaae5d59ecf26c3576
5b08efb73f1b114f6dfdb52284738f7210d0cf7e 01-Apr-2015 Claes Elgemark <claes.elgemark@sonymobile.com> Don't fail build of otatools if there are no device certificates

Bug: 23552169
Change-Id: I32723701d952ef2243ce0234132fa9876f0f21b6
(cherry picked from commit 8d771971212069f77851163f437c782f581bf6db)
173219d81f7fc8b92c9b76b6657e50b34d3f8150 22-Aug-2014 Doug Zongker <dougz@google.com> add otatools-package target

Add a target to zip up all the otatools and releasetools, for easy
copying to the OTA builder machine.

Change-Id: I55a6d93c1de75ac936d941c0e3ae72897407f563
(cherry picked from commit f22b0f43efbc16c548692dc239a387edda15d78f)
(cherry picked from commit 32bf3f32651ddff9ffa2168017d71ec4b151a0a9)
f6d83021d45099f04d4ca032dff896359ae80881 29-Sep-2015 Tao Bao <tbao@google.com> Pack libdivsufsort.so into otatools.zip.

This is to support the change to bsdiff which depends on
libdivsufsort.so and libdivsufsort64.so now.

Bug: 24332905
Change-Id: I232fc1b2abda67456f012a83fa4f69a99bc6ea14
dfbab49bed1d65f1aedfada99718c46e2614fb35 25-Sep-2015 Steve Fung <stevefung@google.com> Package breakpad symbols in target files zip

When BREAKPAD_GENERATE_SYMBOLS is set to true, package the breakpad
symbols into the target files zip thats generated with `make dist`.

Bug: 24165970
Change-Id: I11c0d9a9d9e159475bfdb7bc338f9e9ac60aeada
bd2d0247785bff6ca2858959c947cfb9437821c6 22-Sep-2015 Ying Wang <wangying@google.com> Don't build otatools.zip if we don't build the ota package.

Also added flag TARGET_SKIP_OTA_PACKAGE to allow product to skip ota
package.

Bug: 24295339
Change-Id: Ib613ed747528661a6572b577cd54ccb6c2d1fdc8
74b32b8dfcd5fdab7348d473635b056aea484add 18-Sep-2015 Ivan Krasin <krasin@google.com> Add support of SANITIZE_TARGET='address coverage' for fuzzing.

Also, add trace-cmp instrumentation to fuzz_test and host_fuzz_test.

Bug: 22850550
Change-Id: Ifff7b8be693ae991feb0a64e19439370a19b2748
47ef4c3467e4f895b776fb0e8dbcba8f90a9398c 12-Sep-2015 Zach Jang <zachjang@google.com> DO NOT MERGE - Backport of ag/748221 - Security Patch Level in Settings
CL#2/3

b/23946860

Change-Id: I42a2aaf26cf458d1775b11029789330cdd85b3a3
4c710cbe7f5786c3df396ea4283da920fd5c351b 12-Sep-2015 Zach Jang <zachjang@google.com> DO NOT MERGE - Backport of ag/748221 - Security Patch Level in Settings
CL#2/3

b/23946860

Change-Id: I42a2aaf26cf458d1775b11029789330cdd85b3a3
8da19e36886a404d535c52d6d54ab2adb35f099c 15-Sep-2015 Ying Wang <wangying@google.com> Generate installed-files-vendor.txt

Similar to installed-files.txt, installed-files-vendor.txt lists the
content of vendor.img.

Bug: 24009297
Change-Id: Ib8112b19cc9f54d0c0d6a829063e4fe72d8ce664
7540c0880723488b3ce5c7149c5760cb382794e6 27-Aug-2015 Tao Bao <tbao@google.com> Revert "Temporarily use blockimgdiff v2 for OTA."

This reverts commit d07bfc519673fdba66448f0a81ef869b922c3804.

Real fixes [1][2][3] are ready to merge. Time to revert the workaround.

[1] commit d47d8e14880132c42a75f41c8041851797c75e35
[2] commit 1fc67631eedbfba07e005d85aadae6e1b91d8d93
[3] commit 937847ae493d36b9741f6387a2357d5cdceda3d9

Bug: 22430577
Change-Id: Icd6623e8717c93ad1f12cd1ba43db5e006e928ad
8d771971212069f77851163f437c782f581bf6db 01-Apr-2015 Claes Elgemark <claes.elgemark@sonymobile.com> Don't fail build of otatools if there are no device certificates

Bug: 23552169
Change-Id: I32723701d952ef2243ce0234132fa9876f0f21b6
32bf3f32651ddff9ffa2168017d71ec4b151a0a9 22-Aug-2014 Doug Zongker <dougz@google.com> add otatools-package target

Add a target to zip up all the otatools and releasetools, for easy
copying to the OTA builder machine.

Change-Id: I55a6d93c1de75ac936d941c0e3ae72897407f563
(cherry picked from commit f22b0f43efbc16c548692dc239a387edda15d78f)
cbc6dc29d6ac0f42db2176177fd2d2ad74923133 19-Aug-2015 Tao Bao <tbao@google.com> build: Don't call make_recovery_patch if there's no recovery.

Change-Id: Iea1bd529eca9cd607da3b420bc4287f95c18219d
e593e5c42a30aabb92fd2762e647a1024ca5d823 13-Aug-2015 Dianne Hackborn <hackbod@google.com> Fix issie #23116383: Include security patch level in Settings

Change-Id: I46303c064d1365781a2c8a05bd6087518afb2aec
ccc933e97b5bb2c4f98923d77845cf102c4ee3ab 12-Aug-2015 Dan Willemsen <dwillemsen@google.com> Use repeatable timestamps

This moves all of the date references under build/ to using a single
datetime that can be set manually using BUILD_DATETIME.

It also adds an option, OVERRIDE_C_DATE_TIME, that if set to true, will
redefine __DATE__ and __TIME__ for all C/C++ files so that it matches
BUILD_DATETIME.

Bug: 23117013
Change-Id: I7c17a32b794a5adf40b9cd69136fb0ff9f6084ec
92026f2d366bc33ee974b0e74af071a894642d0c 12-Aug-2015 Dan Willemsen <dwillemsen@google.com> Revert "Use repeatable timestamps"

OSX `date` doesn't understand -d

This reverts commit 13ba6e00f4c7e04f1038e94ab98e3ed424daa4fa.

Change-Id: I5970032ff02cc07bd3b087e1eeb5f19b1e4194b4
13ba6e00f4c7e04f1038e94ab98e3ed424daa4fa 12-Aug-2015 Dan Willemsen <dwillemsen@google.com> Use repeatable timestamps

This moves all of the date references under build/ to using a single
datetime that can be set manually using BUILD_DATETIME.

It also adds an option, OVERRIDE_C_DATE_TIME, that if set to true, will
redefine __DATE__ and __TIME__ for all C/C++ files so that it matches
BUILD_DATETIME.

Bug: 23117013
Change-Id: I880ef103a26bca86bd7bf42d58e62e740a6228c8
09c4b68dfd1cd47cd39cf6fefbce7bc5c6943e0f 11-Aug-2015 Ying Wang <wangying@google.com> Don't build otapackage on Mac.

Also removed the unneeded variable DISTTOOLS
and the unnecessary dependency of otapackage/updatepackage on DISTTOOLS.

Bug: 23085297
Change-Id: I6b269003a72bb48eda1260c8d9b4bd88974bcde9
9a1756862445f4014f6983cf09992a99d2a7377c 06-Aug-2015 Ying Wang <wangying@google.com> Allow custom recovery resource dirs.

Set TARGET_PRIVATE_RES_DIRS in your BoardConfig.mk to specify custom
private recovery resource directories.
With this change you can share the same recovery resource dir for more
than one device; Also you can specify more than one directories.

Change-Id: Ieeb18f5ac11c98b6f08d0ab6fb4e0d9aa72b27e7
e8c212235fc4a83a20cb9bd25f17897a75b15440 07-Aug-2015 Furquan Shaikh <furquan@google.com> vboot_signer: Add kernel subkey required for signing kernel keyblock

Currently, the keyblock was being generated using
data_key.vbprivk. However, we need to use kernel_subkey.vbprivk for
kernel keyblock generation. This did not create any issues until now
because dev-mode just throws a message saying that keyblock is
invalid. But, normal-mode does not boot if keyblock is
invalid. Add extra parameter for passing in kernel subkey to
vboot_signer script.

TEST="make bootimage-nodeps" generates correctly signed
boot.img. Verified that the image boots fine in normal mode.

Change-Id: I0fc2183b466e34ddf1d98c9532072548504fcec4
Signed-off-by: Furquan Shaikh <furquan@google.com>
62bd479fdf6c3069f77bf34ea3466ff0d21dd964 22-Jul-2015 Tao Bao <tbao@google.com> build: Support packaging for system_root_image.

If system image contains the root directory
(BOARD_BUILD_SYSTEM_ROOT_IMAGE == "true"), we package the root directory
into ROOT/ instead of BOOT/RAMDISK/ in the target_files zip.

Change-Id: I817776ca97194991308b2131d0e34ab136283464
d3a803e6680e86f7b4960d51ab0b620728b793ca 04-Aug-2015 Stephen Smalley <sds@tycho.nsa.gov> build: switch over to file_contexts.bin only

Change all uses of the file_contexts file to use the
file_contexts.bin file instead.

Depends on
I75a781100082c23536f70ce3603f7de42408b5ba
I43806d564b83d57f05f5c36c8eba7b1ff4831b04
Id560d093440a2aba99cef28c20133b35feebf950
I15660f4b3e4c5cb8ae0ec1498c74d6fcbb9a0400

Change-Id: Iaf8c4b2e420f610425a07f48db7af32bda3f5b3a
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
7b82656984513467af48872f6e808e61acfda918 03-Jun-2015 Daniel Rosenberg <drosen@google.com> build: core: Fix issue in recovery

Now that symlinks are created at build time, the rsync while
making recovery runs into issues around the etc symlink

Change-Id: Ie781507b22e4661629840075b274eaab2f712de6
59156a6b7ddb061e44fd31ec7c709976d3b8d9bb 30-Jun-2015 Daniel Rosenberg <drosen@google.com> Add ro.build.system_root_image

ro.build.system_root_image is true if the root directory is built
into the system image.

Change-Id: I17208ebd004c63aebb09db6c3e5f795619e73bd2
be46a54589bc4b266e9fd59129af7c8fadcc72d0 30-Jul-2015 Tao Bao <tbao@google.com> build: Fix "adb shell" in recovery for system_root_image.

For system images that contain the root directory, "adb shell" in
recovery stops working if the image is mounted at "/system", because
sh now locates at /system/system/bin/sh. We fix the issue by mounting
the image on /system_root and create a symlink to /system_root/system
for /system.

Bug: 22855115
Change-Id: Ia6b257b75aeb67687c3909063d1725a23a5ccd60
f2cffbddb9dccc6dd46ea2be0bbde387315f09c3 22-Jul-2015 Tao Bao <tbao@google.com> Support systems that use a full copy of recovery image.

If BOARD_USES_FULL_RECOVERY_IMAGE == true, a full copy of recovery
image will be carried as /system/etc/recovery.img instead of a patch
at /system/recovery_from_boot.p.

Bug: 22641135
Change-Id: Ie271d3e2d55d7b003f667ac5b44203d69b23c63b
(cherry picked from commit 8beab69bd5d728810aca55536017912e65777bb8)
8beab69bd5d728810aca55536017912e65777bb8 22-Jul-2015 Tao Bao <tbao@google.com> Support systems that use a full copy of recovery image.

If BOARD_USES_FULL_RECOVERY_IMAGE == true, a full copy of recovery
image will be carried as /system/etc/recovery.img instead of a patch
at /system/recovery_from_boot.p.

Bug: 22641135
Change-Id: I4acaca86c22bca55c2b936a820edf1f333615609
06332732a48d1b229cc5886cc45f27bb2ccbe8d7 22-Jul-2015 Ying Wang <wangying@google.com> Create OUT_DIR before writing build_number.txt.

Change-Id: I6a84ec59194c48f4291480cb0c94db0da488518c
f37b455858af45b36f14213696d2b55802a774c1 17-Jul-2015 Colin Cross <ccross@android.com> Read BUILD_NUMBER from file in rules

Using $(BUILD_NUMBER) inside a rule causes odd behavior, as the rule
is different every time make is run, but since make doesn't depend
on the command line it only ends up being built with the new value
if some other dependency has changed.

To allow ninja, which does depend on the command line, to provide the
same behavior, store the build number in out/build_number.txt, and
use a shell expansion to cat the file in rules that use it. This will
cause the rule command to stay identical between builds, while still
getting the new build number if the rule is rerun for a dependency.

Also use the same trick for BUILD_FINGERPRINT, and the date in
droiddoc rules.

Change-Id: I6c5e6b6b3ef4c613563d7f5604df0e401575ba5f
7055791db596b658b9a91282bd5100bbaf86470d 15-Jul-2015 Tao Bao <tbao@google.com> Enable verbose output for add_img_to_target_files.

Change-Id: I7246c59c79ccf6a7589c884391d0f690746fc129
358da0c01577987b9a29401ce9bec2bbb4d674b5 14-Jul-2015 Tao Bao <tbao@google.com> Revert "Temporarily use blockimgdiff v2 for OTA."

The workround should stay in mnc-dr-dev branch only.

This reverts commit d07bfc519673fdba66448f0a81ef869b922c3804.

Change-Id: If8d2d88d50e87f031ed6df44b01a1e9e38a7f97f
d07bfc519673fdba66448f0a81ef869b922c3804 13-Jul-2015 Tao Bao <tbao@google.com> Temporarily use blockimgdiff v2 for OTA.

angler and bullhead have smaller cache partiton (~100MB) and hit issue
with incremental OTA (such as MDA09B to MDA12) that requires more stash
space with BBOTA v3. Temporarily use v2 as a workaround, until we come
up with a real fix. Note that BBOTA v2 still uses some stash space, but
should be much smaller than v3.

Bug: 22430577
Change-Id: Ic4c05f3609732e7d5140703062da9fe11df5c6d3
2c15d9eefe977db63d7561bde326f24fab31653d 09-Jul-2015 Tao Bao <tbao@google.com> Pack file_contexts into target_files zip.

file_contexts (specified by SELINUX_FC) is needed both when building
and (re)packaging. We used to use the copy in out/ when building, and
looked for the copy in BOOT/RAMDISK/ when packaging from target_files
zip. With system_root_image enabled, the file_contexts needed for
building and packaging might be different from the one on device. So
we explicitly pack the file as META/file_contexts in target_files zip.

Also refactor out the overriding of selinux_fc property into
common.LoadInfoDict().

Change-Id: I94f9ea6671b3792c12c1c21573840743d63da39a
(cherry picked from commit aa7318c3849095aeb3bea00efbf303c0c40a089d)
74a81e6633276d92337749a5ee9d921207814dd4 09-Jul-2015 Thierry Strudel <tstrudel@google.com> fix device specific fs_config on build server

fs_config function from libcutils, in order to properly set the xattr FS
used to define device specific uid, gid, permissions and capabilities,
now needs TARGET_OUT make variable to be passed explicitly to all tools
using it:
fs_config
fs_get_stats used by mktarball.sh
make_ext4fs used by mkuserimg.sh
mksquashfs used by mksquashfsimage.sh

Bug: 21989305
Bug: 22048934
Change-Id: I6caf9cf870882fce2ead93027767092c29b75ded
Signed-off-by: Thierry Strudel <tstrudel@google.com>
aa7318c3849095aeb3bea00efbf303c0c40a089d 09-Jul-2015 Tao Bao <tbao@google.com> Pack file_contexts into target_files zip.

file_contexts (specified by SELINUX_FC) is needed both when building
and (re)packaging. We used to use the copy in out/ when building, and
looked for the copy in BOOT/RAMDISK/ when packaging from target_files
zip. With system_root_image enabled, the file_contexts needed for
building and packaging might be different from the one on device. So
we explicitly pack the file as META/file_contexts in target_files zip.

Also refactor out the overriding of selinux_fc property into
common.LoadInfoDict().

Change-Id: I0781a147319148c76d989d8f29d5ef766a502dbd
011ea06db724ac89a8f3daddddb1b67174ff8afb 17-Jun-2015 Simon Wilson <simonwilson@google.com> Add compressor options for squashfs system images

Change-Id: I2a75f8754273f6e00b96ba6aca6741c4388f5da8
(cherry picked from commit f86e7eeabc9721034d2c4af3b2827d93c2d23f6b)
4e66343b2b28ac249214c9f5cb5de936f0f209ad 23-Jun-2015 Tao Bao <tbao@google.com> Retry adjusting the size computation for reserved blocks.

Due to the change in https://lwn.net/Articles/546473/, kernel reserves a
few extra blocks (lesser of 2% and 4096 blocks) on ext4 FS which leads to
OTA update failures. Adjust the size computation if the device has
BOARD_HAS_EXT4_RESERVED_BLOCKS := true.

It amends the last attemp in [1]. Now it computes the used blocks from the
make_ext4fs output, instead of altering its argument.

[1]: commit efbb5d2e692283be32069e808b88522727c7fe98.

Bug: 21522719
Bug: 22023465
Bug: 22174684
Change-Id: Iaae6507f6de68a5892f2e3035d330039287b4492
(cherry picked from commit c7a6f1e4f8ff504bf617a0415b2c43ab3d339294)
c7a6f1e4f8ff504bf617a0415b2c43ab3d339294 23-Jun-2015 Tao Bao <tbao@google.com> Retry adjusting the size computation for reserved blocks.

Due to the change in https://lwn.net/Articles/546473/, kernel reserves a
few extra blocks (lesser of 2% and 4096 blocks) on ext4 FS which leads to
OTA update failures. Adjust the size computation if the device has
BOARD_HAS_EXT4_RESERVED_BLOCKS := true.

It amends the last attemp in [1]. Now it computes the used blocks from the
make_ext4fs output, instead of altering its argument.

[1]: commit efbb5d2e692283be32069e808b88522727c7fe98.

Bug: 21522719
Bug: 22023465
Bug: 22174684
Change-Id: I9783a51abe6581ff5c75db81e78ac606d0f32c4c
2384d01c1c4c5b259840ec526ec8f5ec18cd8087 29-Jun-2015 Tao Bao <tbao@google.com> Revert "Adjust the size computation for reserved blocks"

We should not change the parameter to mkfs_ext4. Bug filed at
b/22174684. Will come up with a new CL.

This reverts commit efbb5d2e692283be32069e808b88522727c7fe98.

Change-Id: I15f7a9a07a65a936ba186d2ce672ec4832ed3e17
78d1cba0f42d023483e64d5c7b6f9e1c8b236ed4 26-Jun-2015 Ying Wang <wangying@google.com> Fix conflict resolving error in ef5dc90bba179f774bee0c7e479965cef12091de

Change-Id: Ib561c8dec3bbd605007b46b8520f12d6e3e2db90
2a04839aecb1cbdcf5ca9e76ebfce9448eec0e13 25-Jun-2015 Ying Wang <wangying@google.com> Create userdata.img with real data when SANITIZE_TARGET=address.

Bug: 21785137
Change-Id: Ie0c36988759fe07419ad29bab5a71cdd0d992d2a
ef5dc90bba179f774bee0c7e479965cef12091de 25-Jun-2015 Mohamad Ayyash <mkayyash@google.com> Add img2simg in host and ota packages

Change-Id: Ide660cf3cf69c74bbd15d0ac6642b60d58f076fa
Signed-off-by: Mohamad Ayyash <mkayyash@google.com>
9764892031cd48013cecda4d6eb77631463a3d86 25-Jun-2015 Mohamad Ayyash <mkayyash@google.com> Add img2simg in host and ota packages

Change-Id: Ide660cf3cf69c74bbd15d0ac6642b60d58f076fa
Signed-off-by: Mohamad Ayyash <mkayyash@google.com>
353265b081b8f5787f3f544d4b3c024f3ea821d4 25-Jun-2015 Mohamad Ayyash <mkayyash@google.com> Add img2simg in host and ota packages

Change-Id: Ide660cf3cf69c74bbd15d0ac6642b60d58f076fa
Signed-off-by: Mohamad Ayyash <mkayyash@google.com>
efbb5d2e692283be32069e808b88522727c7fe98 23-Jun-2015 Tao Bao <tbao@google.com> Adjust the size computation for reserved blocks

Due to the change in https://lwn.net/Articles/546473/, kernel reserves a
few extra blocks (lesser of 2% and 4096 blocks) on ext4 FS which leads to
OTA update failures. Adjust the size computation if the device has
BOARD_HAS_EXT4_RESERVED_BLOCKS := true.

Bug: 21522719
Bug: 22023465
Change-Id: I49f16adbf2dedc5279fbb8622bf99ef71dcc494f
e6e544e596befeae6fc2f4360f1923a1f9b1fe84 23-Jun-2015 Ying Wang <wangying@google.com> Don't include static executables when SANITIZE_TARGET=address

Also we can't build the ota package without these static executables.

Bug: 21785137
Change-Id: I11b35abebced4b0608378a072ece2ab2dbadeffb
f86e7eeabc9721034d2c4af3b2827d93c2d23f6b 17-Jun-2015 Simon Wilson <simonwilson@google.com> Add compressor options for squashfs system images

Change-Id: I2a75f8754273f6e00b96ba6aca6741c4388f5da8
cade49ddee44287d1bd5e9688558daf8912f0f9b 03-Mar-2015 Mohamad Ayyash <mkayyash@google.com> Allow flashing a squashfs system image

Change-Id: Ic51d11274784a8d2e9d57d5f0b821ebc89680e5a
Signed-off-by: Mohamad Ayyash <mkayyash@google.com>
b5cd1f03c2e722112526b4abdd9b3299364c7788 03-Jun-2015 Claes Elgemark <claes.elgemark@sonymobile.com> Add missing shared libraries to dist tools

(cherry pick from d0ec6657273f97c8defa94a44bac31f3f77f57bd)

Add missing libraries used by e2fsck and build_verity_tree.

Change-Id: I8bf0341300863ef0090b395b2aba0b7a952f6b58
82a19d3662c2f14ef348b33a32008d83a73e3e9a 04-Jun-2015 Claes Elgemark <claes.elgemark@sonymobile.com> Add build_verity_metadata.py to dist-tools

Preserve path as it is referenced by build_image.py.

Change-Id: Id6833d243b5a15b4ee5e0013340aeb2cd35f3578
d0ec6657273f97c8defa94a44bac31f3f77f57bd 03-Jun-2015 Claes Elgemark <claes.elgemark@sonymobile.com> Add missing shared libraries to dist tools

Add missing libraries used by e2fsck and build_verity_tree.

Change-Id: I8bf0341300863ef0090b395b2aba0b7a952f6b58
d53cd9b0b138f30da2553d79310d5de424357dd2 02-Jun-2015 Claes Elgemark <claes.elgemark@sonymobile.com> Add VeritySigner.jar to ota tools

Used by verity_signer

Change-Id: I6e2b654144b40573c3f3c0dc0d1c943889ffcd7d
ec99604b07132358b92bb053777b4db6a0ae0223 02-Jun-2015 Claes Elgemark <claes.elgemark@sonymobile.com> Strip path from verity_signer_cmd in the target-files meta data.

Strip path to be able to use outside a build e.g.
when resigning using the dist tools zip.

Change-Id: I492dcfd5791b66c17ae2e751cc8f67127e97b800
bdd5e8e7fe6afb14c9b3028fdaa094008ada309c 21-May-2015 Adam Powell <adamp@google.com> Initialize ro.build.version.preview_sdk

Set the initial (version 1!) value for the preview SDK version
readable by apps. If we're on a release version, force it to be 0.

Change-Id: Ib3e6cad1f59cea8e4a781827d4a35dd3620b90f1
b8876e111e86fefd30072e8fe7dd91a1d214e9d2 07-May-2015 Andres Morales <anmorales@google.com> [versionitis] pull image id from recovery into props

- remove root/build.prop, merge with root/default.prop

Change-Id: I913c67d948678745c0bb1b614ac10a0b7488e5c4
c506e74dc8dd82198042078cfcb6c57e34b514b1 13-Apr-2015 Mark Salyzyn <salyzyn@google.com> disttools: add liblog, libcutils and libselinux shared libraries

Bug: 19908228
Change-Id: I48450a9fb917408cb3bc0e41d70c0593acd2b884
62925a993a60a4d5754f012612eaa7b35d76672a 09-Apr-2015 Ying Wang <wangying@google.com> Remove unnecessary confusing use of $(intermediate).

Change-Id: I0e73c3c1bf94540419e1fd227a3096da148e2459
abbc9116322aea3e3ff674e0170b5d339425fb4f 08-Apr-2015 Tao Bao <tbao@google.com> Fix the font size selection for recovery mode

shamu has a 560dpi density, which is between xxhdpi and xxxhdpi. It
deserves the large font (18x32), otherwise it falls back to use the
small one and makes it mostly unreadable under recovery mode. Amend
the list to include 560dpi and 400dpi that are higher than xhdpi.
Ideally we should map string formats back to numbers for easy
comparison (and to handle any high but odd density values).

Change-Id: Ie08d9ce5e1c8850ff30a79bcbfd1b89e971b7e07
f9c9266c7565ebcea633f735ba8cdeb12fac2146 09-Apr-2015 Rom Lemarchand <romlem@android.com> Omit ramdisk from boot.img if building without ramdisk

Change-Id: I1940e3fd5f05dec555db04a556ed1fac58b2c15b
c45a47b5f365e1bada5c981240bfaa95ce3ff422 08-Apr-2015 Ying Wang <wangying@google.com> Better way to package up the otatools-package.

With this, you can easily add more executables, jars or shared libraries
to the package. Also now it automatically takes care of
32-bit-v.s.-64-bit library issue.

Change-Id: I5afe00fadc978d0da229b192eca1a4b1c149764e
8b3f08bc7b9870c8c43c7c5bb39f343eaa25d6aa 07-Apr-2015 Sami Tolvanen <samitolvanen@google.com> Separate boot and recovery image signing from dm-verity

Allow dm-verity to be enabled without boot and recovery images being
signed. This makes it possible to enable only dm-verity to detect
corruption without confusing bootloaders that do not understand signed
images.

Bug: 19985143
Change-Id: Ie52c6ff595faa7a5c1f1bc1b37f6899c4d0c7001
36b039a2d64ebd9fa36be89b0926de30cfad0348 02-Apr-2015 Ying Wang <wangying@google.com> Fix typo.

Change-Id: Ic934ed8610a4f03fbfb3d06dff4d911734a9d818
ed1158e01f69ca15f0493e465c3bc36f49d5eed7 01-Apr-2015 Claes Elgemark <claes.elgemark@sonymobile.com> Don't fail build of otatools if there are no device certificates

Change-Id: I32723701d952ef2243ce0234132fa9876f0f21b6
d95e9fd267335cf0e6859f3bd7101933d7d25e2c 30-Mar-2015 Tao Bao <tbao@google.com> Add support to sign bootable images with vboot_signer

Add vboot properties to the dictionary file, which will be packed into
the target_files zip. Add support in packaging and OTA scripts to
sign the generated bootable images (boot.img and recovery.img) when
vboot is enabled.

Change-Id: I08758ced03d173219415bca762bbdb66c464a9f5
(cherry picked from commit 5d5a3bd9e8d8b14b71d1b2105417a2958d13d3d2)
17be3d3921d273bed31cfc4098d76b7462b085b4 03-Mar-2015 David Riley <davidriley@google.com> Add support to sign boot images with vboot.

Change-Id: I924468fe06f7d38d4fc49c2ae9dfee734fd58867
Signed-off-by: David Riley <davidriley@google.com>
(cherry picked from commit 14fb7236c1942a9f5050b3e608a0f5f4cd1cae1d)
a2292c94d1d1c1759fee6ffce28b52fae91035b6 25-Mar-2015 Ying Wang <wangying@google.com> Support to build image of root file system with /system and ramdisk combined.

Added support to build system.img that combines contents of /system and
the ramdisk, and can be mounted at the root of the file system.
To enable this feature, define BoardConfig.mk variable:
BOARD_BUILD_SYSTEM_ROOT_IMAGE := true

Ideally we would just change TARGET_OUT (the path of the staging system
directory) to under TARGET_ROOT_OUT. But at this point many places in
the build system assume TARGET_OUT is independent of TARGET_ROOT_OUT and
we can't make it easily configurable.
Instead this implementation takes the least intrusive approach:
We don't change TARGET_OUT or TARGET_ROOT_OUT. We just assemble a
temporary staging directory that contains contents of both TARGET_OUT
and TARGET_ROOT_OUT, in build_image.BuildImage() of
tools/releasetools/build_image.py.
When build_image.py is directly called from the makefile, we pass in the
parameters from the global dictionary; when build_image.BuildImage() is
called from add_img_to_target_files.py, we need to override values to
point to files extracted from the target_files zip file.
We need to combine the fs_config files of both /system and ramdisk,
when fs_config is enabled.

Also this change refactored build_image.BuildImage() by moving the extra
parameters to the image property dictionary.

(cherry-picked from commit 0eabd4f2c5fe704d3c3212b45b80775a35b55b1b)

Bug:19868522
Change-Id: Iafc467a0e3427b0d6ad3b575abcc98ddcc9ea0f1
cab6699160d475bfab4b49e9fb7099e8dfe3dbf3 25-Mar-2015 Per Astrand <per.astrand@sonymobile.com> MKBOOTIMG override were missing in two places

The change follows the patten found in "Package OTA" and other places
to allow for overriding the mkbootimg command.

Now pass MKBOOTIMG variable to get make_recovery_patch and add_image_to_target
to use the tool set in BOARD_CUSTOM_MKBOOTIMG for boot/recovery image
generation.

Change-Id: I78533c25e87c2750eb24ac1bf39e4b7ca321a441
0eabd4f2c5fe704d3c3212b45b80775a35b55b1b 25-Mar-2015 Ying Wang <wangying@google.com> Support to build image of root file system with /system and ramdisk combined.

Added support to build system.img that combines contents of /system and
the ramdisk, and can be mounted at the root of the file system.
To enable this feature, define BoardConfig.mk variable:
BOARD_BUILD_SYSTEM_ROOT_IMAGE := true

Ideally we would just change TARGET_OUT (the path of the staging system
directory) to under TARGET_ROOT_OUT. But at this point many places in
the build system assume TARGET_OUT is independent of TARGET_ROOT_OUT and
we can't make it easily configurable.
Instead this implementation takes the least intrusive approach:
We don't change TARGET_OUT or TARGET_ROOT_OUT. We just assemble a
temporary staging directory that contains contents of both TARGET_OUT
and TARGET_ROOT_OUT, in build_image.BuildImage() of
tools/releasetools/build_image.py.
When build_image.py is directly called from the makefile, we pass in the
parameters from the global dictionary; when build_image.BuildImage() is
called from add_img_to_target_files.py, we need to override values to
point to files extracted from the target_files zip file.
We need to combine the fs_config files of both /system and ramdisk,
when fs_config is enabled.

Also this change refactored build_image.BuildImage() by moving the extra
parameters to the image property dictionary.

Bug:19868522
Change-Id: Iafc467a0e3427b0d6ad3b575abcc98ddcc9ea0f1
95a543c987c4c8fb2416579f083030dd98a13295 10-Feb-2015 Ying Wang <wangying@google.com> Set up environmental variable PATH before calling releasetools scripts.

Some releasetools python sripts rely on $PATH to search for the
executables. With this change, you don't need to run lunch even after you
change the build system variable OUT_DIR.

Bug: 19320328
Change-Id: Ia44b11084fb1bdcceb60b1d33cb7e460c9b705a8
(cherry picked from commit 9d252e10096d4f730f39662e81489e4a13752d29)
b2cdb1cca54de5e70dfca89e760cc33960d0bf24 25-Aug-2014 Doug Zongker <dougz@google.com> include oem.prop files in otatools_package

Change-Id: I2f28936edda5d8d9bff6213828c16d607263cd95
(cherry picked from commit ce43bc8df2fae960eb02e56a55d365e7c18a1fc1)
f749b4b66494dae442ab1174c3b1db35ed1df1a8 10-Dec-2014 Jesse Zhao <jessezhao@google.com> DO NOT MERGE: Bundle libc++.so into otatools-package.

Change-Id: I6b7d16eca18dce3e2990464f3d1a34740ad8a8ee
(cherry picked from commit f7daa92cff1de4a03616b0851f303830bee0de0b)
0c6c03269e612db620dbb0f0e905f63dcdc9188e 22-Aug-2014 Doug Zongker <dougz@google.com> add otatools-package target

Add a target to zip up all the otatools and releasetools, for easy
copying to the OTA builder machine.

Change-Id: If14b4afefcc1a20ea19dfca3f3b9f9fae73189a6
(cherry picked from commit f22b0f43efbc16c548692dc239a387edda15d78f)
437e43b55503dcda1c3dfdc23952943901a5d0cb 12-Mar-2015 Ying Wang <wangying@google.com> Use "rsync -a" to copy over $(TARGET_ROOT_OUT) to $(TARGET_RECOVERY_OUT)

"cp -Rf" fails on Mac OS when some broken symlinks exist in the dest
dir.
Also switch to better shell error handling when copying
init.recovery.*.rc.

Change-Id: Idd05f7604736b234619f62be12dd108fac91fed1
83a193408508f6cf9991e5ac6342aea30ba1f477 12-Mar-2015 Ying Wang <wangying@google.com> Use "rsync -a" to copy over $(TARGET_ROOT_OUT) to $(TARGET_RECOVERY_OUT)

"cp -Rf" fails on Mac OS when some broken symlinks exist in the dest
dir.
Also switch to better shell error handling when copying
init.recovery.*.rc.

Change-Id: Idd05f7604736b234619f62be12dd108fac91fed1
f25838a7ea81f64d14cc1e7a612a35b9a8c8c6a6 10-Mar-2015 Ying Wang <wangying@google.com> Support modules to be installed directly to recovery.img

Previously the recovery binary was configured to be installed to the
system.img and then got copied to recovery.img in the recovery.img's
build rule.
With this change, a module, such as the recovery binary, can configure
itself to be installed directly to the recovery.img, just like how other
modules get installed to system.img.

Bug: 19667686
Change-Id: I46b0b4a95cf078a68999db9c0f6635d6a3f5cd86
dd67a295cc91ad636b81b705b5bedda945035568 09-Dec-2014 Sami Tolvanen <samitolvanen@google.com> Change transfer list format to include block hashes

Add source and target block hashes as parameters to transfer list
commands that copy or patch data to a partition. This allows the
updater to verify the status of each command in the transfer list
and makes resuming block based OTAs possible. Due to the changes,
update the transfer list version to 3.

Needs matching changes from
I1e752464134aeb2d396946348e6041acabe13942

Bug: 18262110
Change-Id: Ia5c56379f570047f10f0aa7373a1025439495c98
(cherry picked from commit cac671a9d175039ecbfe3cd84fe10b183aab1f8a)
3752614de147b485db18ca61247ce9e7f1849ac4 10-Mar-2015 Ying Wang <wangying@google.com> Support modules to be installed directly to recovery.img

Previously the recovery binary was configured to be installed to the
system.img and then got copied to recovery.img in the recovery.img's
build rule.
With this change, a module, such as the recovery binary, can configure
itself to be installed directly to the recovery.img, just like how other
modules get installed to system.img.

Bug: 19667686
Change-Id: I46b0b4a95cf078a68999db9c0f6635d6a3f5cd86
b97746ef09420b639273553206f96585b0d0adaa 03-Mar-2015 Mohamad Ayyash <mkayyash@google.com> Allow flashing a squashfs system image

Change-Id: Ic51d11274784a8d2e9d57d5f0b821ebc89680e5a
Signed-off-by: Mohamad Ayyash <mkayyash@google.com>
68946958193d6dbe540544a0669373d2acd95a35 03-Mar-2015 Mohamad Ayyash <mkayyash@google.com> Allow flashing a squashfs system image

Change-Id: Ic51d11274784a8d2e9d57d5f0b821ebc89680e5a
Signed-off-by: Mohamad Ayyash <mkayyash@google.com>
dcd90831e57aa619aa53c59053ed769c45a5ddfd 26-Feb-2015 Ying Wang <wangying@google.com> Use a less freqent dummy file name: zipdummy

Previously if user has a directory with name dummy in the root of the
source tree, "zip -qd package.apk dummy" fails with:
"zip error: Nothing to do!".
This change mitigates the error.

Change-Id: I642e3bf0378e5b9911a068ecb72f795b3e92f1fe
7bb75e4f6c3198b4d89c4da85c13b5b83414f7e0 12-Feb-2015 JP Abgrall <jpa@google.com> core: remove dependencies on genext2fs

We don't use EXT2 for bootimage anymore.
This will allow getting rid of external/genext2fs

Bug: 19282953
Change-Id: Ie56528c7877036d2501a09888a4420637f9cd647
9d252e10096d4f730f39662e81489e4a13752d29 10-Feb-2015 Ying Wang <wangying@google.com> Set up environmental variable PATH before calling releasetools scripts.

Some releasetools python sripts rely on $PATH to search for the
executables. With this change, you don't need to run lunch even after you
change the build system variable OUT_DIR.

Bug: 19320328
Change-Id: Ia44b11084fb1bdcceb60b1d33cb7e460c9b705a8
085a0ce75666d6e4281c7a74b690a4bd7d142c8d 06-Feb-2015 Andres Morales <anmorales@google.com> Add version strings from android-info.txt into build.prop

Allows runtime checking of expected baseband/bootloader.

Change-Id: Iccb053fee5f72f4e082a5c3482c0710b13ee7eb8
a09f2f44cca4e9a850119c0a6fc34643951555ba 05-Feb-2015 Andres Morales <anmorales@google.com> Add system/build.prop dependency on vendor/bootimg

When incremental builds only affect the system partition,
the build.prop file for other partitions might go out of
date.

Add a dependency on system/build.prop s.t. when
it's rebuilt,
the fingerprints are updated on the other
partition's build.prop's.

Bug:19058575
Change-Id: Iea7b761e0800c402eb4ce1154e8f6af5a17f7b06
65d4186f85ddd8c3f6d0c521f31911cceee573c1 05-Feb-2015 Elliott Hughes <enh@google.com> Remove mkyaffs2image references.

Change-Id: I1d112515bc92353a5b48ec668e1cadfb51ecdaad
747b9f18f0d0c542fbd02d229265dbe172e54ae9 30-Jan-2015 Ying Wang <wangying@google.com> Add target recoveryimage-nodeps.

Change-Id: Ie7d11ae8f40260bf23481931c18523895c87ebd7
cac671a9d175039ecbfe3cd84fe10b183aab1f8a 09-Dec-2014 Sami Tolvanen <samitolvanen@google.com> Change transfer list format to include block hashes

Add source and target block hashes as parameters to transfer list
commands that copy or patch data to a partition. This allows the
updater to verify the status of each command in the transfer list
and makes resuming block based OTAs possible. Due to the changes,
update the transfer list version to 3.

Needs matching changes from
I1e752464134aeb2d396946348e6041acabe13942

Bug: 18262110
Change-Id: Ia5c56379f570047f10f0aa7373a1025439495c98
ff1fe6851416cb543effbad9f87a53a48f005867 27-Jan-2015 Ying Wang <wangying@google.com> Allow to build "winsdk-tools" alone.

Allow to run "make winsdk-tools" without building the full win_sdk.

Bug: 19149444
Change-Id: If98495035f4f84dbcab7af2a74434e589bbfd4d1
baf3eb93ee4b81fcd2736e7642443799725989fe 15-Jan-2015 Narayan Kamath <narayan@google.com> Add ro.product.locale

This is a BCP-47 language tag representing the default locale for a
given device. Support for the earlier mechanism of supplying a language
and region via ro.product.locale.region/language has been removed. This
change also removes support for supplying these properties via
PRODUCT_ADDITIONAL_PROPERTY_OVERRIDES. Devices that need to override
this should either rearrange their PRODUCT_LANGUAGES or supply a custom
.prop file.

bug: 17691569

Change-Id: I00c74098542b49b9c514a6ca39ea8d08179546c1
9c820f82c43600923bf93abae3d9af1d65e98d37 14-Jan-2015 Andres Morales <anmorales@google.com> Add build.prop to root ramdisk

will be used for verifying installed bootimage

Change-Id: Iaf80823545980fb2e464a558e918715cc1b82e11
f7daa92cff1de4a03616b0851f303830bee0de0b 10-Dec-2014 Jesse Zhao <jessezhao@google.com> DO NOT MERGE: Bundle libc++.so into otatools-package.

Change-Id: I6b7d16eca18dce3e2990464f3d1a34740ad8a8ee
27eba54b20e1f1d597a979be1469b62dd262aecb 05-Dec-2014 Ying Wang <wangying@google.com> Add system propery ro.build.flavor.

ro.build.flavor is set to "$(TARGET_PRODUCT)-$(TARGET_BUILD_VARIANT)" in
system.img build.prop at build time,
and it won't be overridden by oem partition's build.prop.

Bug: 18605832
Change-Id: Ic917623dd43b74d9c601119db0b457483e8c4472
83ee6d790f007beaefcc5f997b15952ed6d7d840 03-Dec-2014 Adam Lesinski <adamlesinski@google.com> Remove uses of density in PRODUCT_AAP_CONFIG

Change-Id: I98594165515c07fa2e6b847266f7d8fa3283b52e
e91b83d5e607031ab3da4f85cbb11a823aacf9ed 19-Nov-2014 Ying Wang <wangying@google.com> Support journal size board config variables.

A device can set up BOARD_SYSTEMIMAGE_JOURNAL_SIZE (number of journal blocks)
in its BoardConfig.mk.
To disable journaling, set "BOARD_SYSTEMIMAGE_JOURNAL_SIZE := 0".

BOARD_VENDORIMAGE_JOURNAL_SIZE and BOARD_OEMIMAGE_JOURNAL_SIZE work in
similar way.

Bug: 18430740

(cherry picked from commit f3b86357e20a31ef0febe254f1f08706006f57fa)

Change-Id: Icc6c7e1b3be25b8e21b6a737492d944428e4a35a
f3b86357e20a31ef0febe254f1f08706006f57fa 19-Nov-2014 Ying Wang <wangying@google.com> Support journal size board config variables.

A device can set up BOARD_SYSTEMIMAGE_JOURNAL_SIZE (number of journal blocks)
in its BoardConfig.mk.
To disable journaling, set "BOARD_SYSTEMIMAGE_JOURNAL_SIZE := 0".

BOARD_VENDORIMAGE_JOURNAL_SIZE and BOARD_OEMIMAGE_JOURNAL_SIZE work in
similar way.

Bug: 18430740
Change-Id: I0594814fe19ffc54dff41ec2464e2e3a802b9419
a37b2bb236486d5fc9158dbc66d1ff73a63c6e81 14-Nov-2014 Paul Lawrence <paullawrence@google.com> Fix the build

Bug: 15984840
Bug: 18120110
Change-Id: I0224d5a31e03b711953d9496ecb00b6d88b8ef4c
8d212ea8735233211b38f55819841fa97a744eaa 07-Nov-2014 Sami Tolvanen <samitolvanen@google.com> DO NOT MERGE: Change verity key formats

Change boot, recovery, and verity metadata signing keys to use the
same PKCS8 / X.509 PEM format as the other signing keys, and update
build scripts to use correct arguments for the updated signing
tools.

Bug: 15984840
Bug: 18120110
Change-Id: I23ed5a004ecdad6cf7696487935ad5031eb8adf8
(cherry picked from commit 72d90eb1895932343586717daa1865019473b2f5)
2ebfef448465b99260b6900bc207d42ead09e96c 05-Nov-2014 Greg Hartman <ghartman@google.com> Restore the diskinstaller dependency, since it's needed for GCE.

Change-Id: Ieb2695afbe551e829357bad56d5fe1501165b495
4c46710e7a5cbcb1807d183aaeb88d68f98b6753 31-Oct-2014 Greg Hartman <ghartman@google.com> Add a hook for the syslinux bootloader.

Change-Id: Ia8638e9dcb025743a66c52ad43b161ee70602c89
72d90eb1895932343586717daa1865019473b2f5 07-Nov-2014 Sami Tolvanen <samitolvanen@google.com> Change verity key formats

Change boot, recovery, and verity metadata signing keys to use the
same PKCS8 / X.509 PEM format as the other signing keys, and update
build scripts to use correct arguments for the updated signing
tools.

Change-Id: I23ed5a004ecdad6cf7696487935ad5031eb8adf8
a60fb49704946b9d5cf0551ddd56bd1072131b85 24-Oct-2014 Ying Wang <wangying@google.com> Store symbols.zip in apps_only build.

Bug: 18103055
Change-Id: I0eb335e944138b0edc3050d19c076891f499a07c
da3b972603ad5a9f6d5d26ae53909dfbd0add494 24-Oct-2014 Ying Wang <wangying@google.com> Store symbols.zip in apps_only build.

Bug: 18103055
Change-Id: I0eb335e944138b0edc3050d19c076891f499a07c
775b1abb12a5d891ac66b51d28381692bde6ab03 24-Oct-2014 JP Abgrall <jpa@google.com> core: Fixup bad ext4 mount options for recovery (pick common denominator)

Some ext4 options were not suitable for all kernel versions.
The current option were checked against kernels 3.0 3.4 3.10.

Bug: 18092222
Change-Id: I30883706e5c8ac7a318f4b448d4becde50de808f
6ea5bd626c0b79515658685ee63bf8154475635b 23-Oct-2014 JP Abgrall <jpa@google.com> core: Let the build specify mount options for recovery

Currently recovery install/patch will mount /system++ with only default
options.
The default options are not very suitable for dealing with crashes.
We now use
TARGET_RECOVERY_FSTYPE_MOUNT_OPTIONS
that can specify which mount options to use for a given fs-type.
# <fstype>=<fstype_opts>[|<fstype_opts>]...
# fstype_opts := <opt>[,<opt>]...
# opt := <name>[=<value>]
If only defaults are to be used, then the BoardConfig.mk can just have
an empty (must have ""):
TARGET_RECOVERY_FSTYPE_MOUNT_OPTIONS := ""

The default is
"ext4=match_batch_time=0,commit=1,data=journal,barrier=1,errors=panic,nodelalloc"

The release tools will pick them up with
https://googleplex-android-review.git.corp.google.com/#/c/573628

Bug: 18092222
Change-Id: Iaa59099b0edf5af8835d1862fada089cff58882c
e24e17a976025de11c010280575281d0705c7d2e 08-Oct-2014 Ying Wang <wangying@google.com> Export build thumbprint only if the product has specified at least one oem fingerprint property

Bug: 17888863
Change-Id: I4d12bc977dcb5e8e1858efb2a395466d8779de34
194418c3e19614cb9bcc5d550c20f597b44a4a1b 20-Aug-2014 Andrew Boie <andrew.p.boie@intel.com> the recovery image also needs to be signed with $(BOOT_SIGNER)

Change-Id: Ie90976afdaada6410b1566fe497ce86ee935ad41
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
Reviewed-on: https://android.intel.com/232319
0529b668f3c03b9f64618dac8c9d1e58c0498537 09-Sep-2014 Doug Zongker <dougz@google.com> store supported versions of blockimgdiff in misc_info

Change-Id: Ibe14307aa49ffa75c9d69fb7bbdcb306780d74b4
2726211a7c843ccea3b345c0821290a5ee656d9b 18-Sep-2014 Vineeta Srivastava <vsrivastava@google.com> Set oem_fingerprint_properties only when it is not empty.

Add oem_fingerprint_properties to misc_info.txt only when it is not empty.
Shamu does not have OEM specific OTA config and oem_fingerprint_properties
does not need to be set in misc_info.txt.

For sprout, it stays the same.

Bug: 16635599
Change-Id: I7e6c6f5ce1f94f8f1b6da0c2f56bc67ff9fc0f1c
7c02ec91e83e53377943803a276424e6a51c257a 12-Sep-2014 Bruce Beare <bruce.j.beare@intel.com> Fix recovery image build for 32p

When building for 32p, we need to be explicit that we wish to build the 32bit
version of the binaries that will be placed in the recovery image. The recovery
image doesn't actually care... but if we are not explicit in this, the makefiles
will ask for the 64bit binaries but the Android.mk for the binaries will supply
the 32bit images (causing the build to fail)..

Change-Id: I728912bc8e07726888fe8bed4352cbb373911cb7
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
6692715135b38ec24f8f22e0219737f7d3fadbc2 11-Sep-2014 Dan Albert <danalbert@google.com> Missed one part of removing the vbox target.

Change-Id: I8edb5252b5e71de042b79cb9eb2a497d89efb773
(cherry picked from commit bfbd41edcb2b092cd27bc57647f4d53de0b0df54)
bfbd41edcb2b092cd27bc57647f4d53de0b0df54 11-Sep-2014 Dan Albert <danalbert@google.com> Missed one part of removing the vbox target.

Change-Id: I8edb5252b5e71de042b79cb9eb2a497d89efb773
854487739933f7ff33980df0c65d2bcd03b049f9 09-Sep-2014 Doug Zongker <dougz@google.com> select default search_path by platform

Bug: 17443175
Change-Id: I2b8b0a3b56e667b749ac167a6d09dc973ecf8419
82ba98de48da9c4bcd600146482753166468abff 09-Sep-2014 Doug Zongker <dougz@google.com> store supported versions of blockimgdiff in misc_info

Change-Id: Idfbcf4b4435e1300a6dde52dd6cb675f0d85ca79
66c78e46d278b6ff5ae658e86bc5816e234e8f3d 06-Sep-2014 Ying Wang <wangying@google.com> Run device-specific tasks at the end of Makefile.

This allows us to add device-specific tasks.

Bug: 17406520
Change-Id: If23a6d530104a8dc3eeaf8215d8d41a6847f4645
4d0bfb4f40496c607229b6c2bba723e7e315642e 22-Aug-2014 Doug Zongker <dougz@google.com> remove unused xdelta3/xz utilities

This was part of the original block-based OTA mechanism.

Bug: 16987495
Change-Id: I5bd6599829ee6084a8da1f0b14af87aabf07c130
bfcc4cf4a0ddbf2634a20073fac45ed9a66c42ed 22-Aug-2014 Doug Zongker <dougz@google.com> remove unused xdelta3/xz utilities

This was part of the original block-based OTA mechanism.

Bug: 16987495
Change-Id: I953cc206ea1f1fa7360ae0bf4ce721c3e4aacaf3
ce43bc8df2fae960eb02e56a55d365e7c18a1fc1 25-Aug-2014 Doug Zongker <dougz@google.com> include oem.prop files in otatools_package

Change-Id: I2f28936edda5d8d9bff6213828c16d607263cd95
f22b0f43efbc16c548692dc239a387edda15d78f 22-Aug-2014 Doug Zongker <dougz@google.com> add otatools-package target

Add a target to zip up all the otatools and releasetools, for easy
copying to the OTA builder machine.

Change-Id: If14b4afefcc1a20ea19dfca3f3b9f9fae73189a6
ebe63fb0a0c5ab0fbe5f12668a95a1dd3116572b 19-Aug-2014 Ying Wang <wangying@google.com> Store a copy of installed-files.txt in DIST_DIR if system.img failed to build

Because we already have rule to store installed-files.txt in DIST_DIR,
to avoid the slim chance of race condition, this copy is named as
installed-files-rescued.txt

Change-Id: I9fa6d8aded0ad5de1f1422d70a4224b3fc308e75
a65eb8c7899751f91fd34824f755fa4708cde30b 26-Oct-2012 Ying Wang <wangying@google.com> Split to multiple bash commands.

This can fix the error "/bin/bash: Argument list too long", if we get a
really long apk list.
Bug tracker Link: http://code.google.com/p/android/issues/detail?id=38937

(cherry picked from commit d9a88d585f162c5b99c5c6f995c0400fc616bd26)

Change-Id: I80cd07cf50cc2b04e4b6aa9d5ecb1faf80d4cb5c
2ff73494bcc20d5812fd65a996c4a67016dbd8e8 26-Oct-2012 Ying Wang <wangying@google.com> Split to multiple bash commands.

This can fix the error "/bin/bash: Argument list too long", if we get a
really long apk list.
Bug tracker Link: http://code.google.com/p/android/issues/detail?id=38937

(cherry picked from commit d9a88d585f162c5b99c5c6f995c0400fc616bd26)

Change-Id: I80cd07cf50cc2b04e4b6aa9d5ecb1faf80d4cb5c
45ff36ee4c85c215df5cd2ec8425e3062d758976 13-Aug-2014 Ying Wang <wangying@google.com> Print out the tree size of system directory if it failes to build system.img

The tree size gives a good estimate of how big the system.img would be.

Change-Id: Iaadd58e3521b5f76cd9dfdcf384f4d820b9fc71b
88a307eb32b75348e0db02668c078fde9ee43b4d 12-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Add list of all fonts shipped

Create a new file that lists all the fonts bundled with the SDK.

Change-Id: I269216ee753b78e0b0ee71c0ece4f6b759c36664
7a864ea196bbf8583caf7e8a09cf4f686ff724fd 12-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Update font list for the SDK

Java has a problem loading OpenType fonts. This change updates the list
of fonts to include by omitting the otf fonts and adding their
replacement.

This change also moves the code for configuring the fonts for the SDK in
a separate file so that the core Makefile remains cleaner.

Change-Id: Iaf30a3ec59adf251b79cb20f27ad88fc92205ac1
4e5e5825222dc5f3608a4b8a61c0ff46f0cdcece 01-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Use fonts from generic device for the SDK.

This removes the explicit list of fonts for the SDK and replaces it with
the fonts built for the generic device.

Also, the symlinked fonts are copied becuase Windows doesn't support
symlinks.

Change-Id: I8b18b2ab0149ab24448f27dbd5f9716e5d360029
ef77e517f7733543a6bdde50cab7f4b5d9858e51 05-Aug-2014 Colin Cross <ccross@android.com> Revert "HACK: report CPU abi as 2nd arch if present"

This reverts commits 8179d4dcf658f195aa21040b88cc0e70e66cdcd5,
00c67a056837b5ebda1bda950265a1fa086b4e53, and
d00c0a2e20c5df26066d44175a8da29ccf4e76a6.

Bug: 15933961
3c84f569487c4e59baa332be33b5430fdefb76b3 31-Jul-2014 Doug Zongker <dougz@google.com> store images in target-files

Store sparse images in the target-files, and use those (when they're
available) for building block OTAs.

- New script add_img_to_target_files is added to make the images and
add them to the IMAGES/ subdir in the target-files. It gets run
from the Makefile when building a target-files.

- img_from_target_files becomes mostly vestigial: it creates the
img.zip by just copying the images out of the target-files. (It
still knows how to build images for use on older target-files.)

- ota_from_target_files uses images from the target-files in
preference to rebuilding images from the source files.

- sign_apk_target_files builds images and includes them in its output
target files (even if the input target-files didn't have them).

Bug: 16488065
Change-Id: I444e0d722d636978209467ffc01750a585c6db75
40b61ca768ff695e4ec5fd7b70aa9f42e10a35c0 22-Jul-2014 Daniel Rosenberg <drosen@google.com> Create a vendor build.prop for verifying versions

The vendor build.prop contains the fingerprint for the build, and
timestamps. It allows you to tell if the vendor partition matches
the system partition.

Change-Id: Icf261571e82823928b2562e66e48fbcb0da55801
Signed-off-by: Daniel Rosenberg <drosen@google.com>
ab4a98a85d0af425904af81c72627457292c147f 22-Jul-2014 Ying Wang <wangying@google.com> Remove unnecessary dependency of the sdk target.

ALL_GENERATED_SOURCES forces to build heavy things already covered by
build cache.

Change-Id: I362bc450b9e303120d12ee8d53d75e86ef71e58f
50367cc77db4f576f6e7421e6b302395d202482e 13-Jun-2014 Ying Wang <wangying@google.com> Trim down BUILD_FINGERPRINT.

Bug: 15593959
Change-Id: I90161045b5d5f2df726a4f69740f0875c8bfc69f

Conflicts:
core/build_id.mk
2ce3d5c4ae4e5eb20d4e76931947a02bd54c3101 19-Jul-2014 Ying Wang <wangying@google.com> Update rule of APPS_ZIP to use the new paths of apks.

Bug: 16319961
Change-Id: I9fc93f329a34e404beaf3fa212772b731a7020ff
3e72ed17a557d0db6733ca6cba1f36e85f57460d 17-Jul-2014 Ying Wang <wangying@google.com> Fail build if non-symlink /system/vendor detected while we are building

Fail build if non-symlink /system/vendor detected while we are building
a separate vendor.img.

Bug: 16360411
Change-Id: I96cb6d0b654d6632cd820ba193423e9a16214638
cff386250f822f32b488d0632ef1936065df7650 17-Jul-2014 Ying Wang <wangying@google.com> Include vendor.img in PDK build.

- Add the stuff in /vendor to platform.zip.
- Pull things of vendor.img from platform.zip when doing PDK fusion
build.

Bug: 16354024
Change-Id: I4f3fd392af8c357a5614b3e26ceac15fd3e6a0d0
792ab6cd24ff803485fd0a2ed82371f9a5439a86 16-Jul-2014 Joe LaPenna <jlapenna@google.com> Add tvdpi to list of possible recovery asset densities

Bug: 16306251

Change-Id: Iaf2d36d734bb6b639b01e1097723d8387259265b
f4eabc3961c3b7f7730329fd527824df35e5b242 11-Jul-2014 Daniel Rosenberg <drosen@google.com> Added support for building verified vendor partition

Change-Id: I762724800ccab3a365e6d2efdf86cd9c394818eb
Signed-off-by: Daniel Rosenberg <drosen@google.com>
740b6636cca66f2e7e7a40a205f2476f2ee19192 09-Jul-2014 Geremy Condra <gcondra@google.com> Add support for signed boot images.
ac880493e2c854cc0eedc3887631832950919408 10-Jul-2014 Geremy Condra <gcondra@google.com> Revert "Add support for signed boot images."

This reverts commit 7e2c5ed84f59c4f19e2baa02733e85006292156e.

Change-Id: Id90e3b2d986fac3ac9b2748194747af712ac4ab1
7e2c5ed84f59c4f19e2baa02733e85006292156e 09-Jul-2014 Geremy Condra <gcondra@google.com> Add support for signed boot images.

Change-Id: Ib08fc700f626d838efa9a543316afbcd4b782525
d00c0a2e20c5df26066d44175a8da29ccf4e76a6 26-Jun-2014 Colin Cross <ccross@android.com> HACK: report CPU abi as 2nd arch if present

Workaround to report armv7 abis for arm64 devices until the play store
looks at the new android.os.Build.SUPPORTED_ABIS list.

Bug: 15018047
Change-Id: If5f4081073ee80433aae51ef15ccbfa1c6ae624c
eb76adb55f1938bc72f41587d106e4844ce0a26e 03-Jun-2014 Ying Wang <wangying@google.com> Move sdk staging dir to a product-specific dir. DO NOT MERGE.

So we can do incremental build across different SDK products.

(cherry picked from commit d7af17619983c4cf679abb034469098235e63ad5)

Change-Id: I7fc1489c00511b6689d738ee12f0347618c03aa3
23898df867a674b6ee6561d8d77c2ccbd14a99d4 19-Jun-2014 Ying Wang <wangying@google.com> Create symlink /system/vendor if necessary.

Bug: 15728378
Change-Id: I0fe621096bb264882dc1b6face7440298fb56af0
42c980433113950e0bfc53de3b8656dd525411df 18-Jun-2014 Ying Wang <wangying@google.com> Use the correct MKBOOTIMG.

Change-Id: I7450a85770cc8de2ea313570999a7d7076e950d2
5bfed5a320860de5d44c915c88cf7f72c2cdb574 16-Jun-2014 JP Abgrall <jpa@google.com> core+tools: support specifying F2FS as the fstype for userdata

- Support TARGET_USERIMAGES_USE_F2FS.
- Support BOARD_USERDATAIMAGE_FILE_SYSTEM_TYPE.
- Support "userdata_fs_type" in the prop dict.
- Update build_image to recognize f2fs and call the correct command.

Change-Id: If31cc8bd235f93a4c7814fab36e6e2d13d3037ad
Signed-off-by: JP Abgrall <jpa@google.com>
c8b4e849f10f3a382694b00453b3f49608c83b48 17-Jun-2014 Doug Zongker <dougz@google.com> full support for OTA of vendor partitions

Make vendor partition a first-class member of the OTA system (for
target_files that contain a VENDOR/ subdirectory).

Build vendor images in a way that is compatible with block-based OTA.
Support updating the vendor partition in both full and incremental,
block and file OTAs. In most cases this is handled by refactoring the
existing code to handle the system partition to handle either, and
then calling it twice.

Currently we don't support incremental OTAs from a target-files
without a VENDOR subdirectory to one with one, or vice versa. To add
or remove a vendor partition a full OTA will need to be done.

Bug: 15544685
Change-Id: I9cb9a1267060bd9683a9bea19b43a26b5a43800d
0ed7cec97a894ae8daf9586f2bac6e09826a6c2a 16-Jun-2014 JP Abgrall <jpa@google.com> core: Fixup assert-max-image-size/assert-max-file-size usage

- Remove the incorrectly used (and unused) 3rd arg to assert-max-image-size
- Remove test for fstype in assert-max-file-size() as it was always
set to a value leading to 0.

Change-Id: I0a1182fcc85c6c3801d45731e691b9bb38657606
Signed-off-by: JP Abgrall <jpa@google.com>
5181a36bce3cf2c09338f1e5bec7680ee7b1b414 13-Jun-2014 Ying Wang <wangying@google.com> Trim down BUILD_FINGERPRINT.

Bug: 15593959
Change-Id: I90161045b5d5f2df726a4f69740f0875c8bfc69f
075f7751faaa37394c8f24d0ed840edd0640a9e3 28-May-2014 Deepanshu Gupta <deepanshu@google.com> Integrate build_font.py [DO NOT MERGE]

Execute the build_font.py script to rename the PS name of the fonts to
be shipped with the SDK.

Change-Id: I023fb0dfcf50698f80e26b7d476969c453fc4cc7
(cherry picked from commit daee78227c9156704cce134f62f3e88416728652)
daee78227c9156704cce134f62f3e88416728652 28-May-2014 Deepanshu Gupta <deepanshu@google.com> Integrate build_font.py [DO NOT MERGE]

Execute the build_font.py script to rename the PS name of the fonts to
be shipped with the SDK.

Also edited the list of font directories to include in the build.

Change-Id: I023fb0dfcf50698f80e26b7d476969c453fc4cc7
(cherry picked from commit 354ed641ebd66279d136f055d3878ceb01a5bb73)
354ed641ebd66279d136f055d3878ceb01a5bb73 28-May-2014 Deepanshu Gupta <deepanshu@google.com> Integrate build_font.py [DO NOT MERGE]

Execute the build_font.py script to rename the PS name of the fonts to
be shipped with the SDK.

Also edited the list of font directories to include in the build.

Change-Id: I023fb0dfcf50698f80e26b7d476969c453fc4cc7
(cherry picked from commit 887cd0c71e756d295f6879e6b3f34753b9d67ce8)
887cd0c71e756d295f6879e6b3f34753b9d67ce8 28-May-2014 Deepanshu Gupta <deepanshu@google.com> Integrate build_font.py again

Executle the build_font.py script to rename the PS name of the fonts to
be shipped with the SDK.

Change-Id: I023fb0dfcf50698f80e26b7d476969c453fc4cc7
2713fcebbae97c6132c9fa61b8db795d29813dc6 09-Jun-2014 Ying Wang <wangying@google.com> Switch to 32-bit-by-default host multilib build.

Also we don't need to force LLVM built from source, for we already force
LLVM to be built as 32-bit.

Bug: 13751317
Change-Id: Ifadf1988d28b60cb06316de50f5bdc1834f1acc0
21cf43958141e2ddf7c2adfd17aae978d1156bb7 08-Jun-2014 Erik Pasternak <roboerik@android.com> Revert "Integrate build_font.py"

This CL broke the SDK builds.

This reverts commit 9eebd78f6ef844aec2401db5e3b69d08aec227a7.

Change-Id: I973b40688602461bd3b0f8c1e1beb53b9fbec83c
2a386e0cfbdfa009038acede85876a7643f297f5 03-Jun-2014 Ying Wang <wangying@google.com> Allow to build the update.zip for emulator build.

img_from_target_files.py just skips the boot.img and recovery.img since
there is no kernel or recovery.fstab for emulator.

Bug: 15383279
Change-Id: I4035193e6ab933194ff1417dfae4eab963fe5301
f8824aff68f63cf5484063bda4d5342034eb82c0 03-Jun-2014 Ying Wang <wangying@google.com> Allow to build the update.zip for emulator build.

img_from_target_files.py just skipps the boot.img and recovery.img since
there is no kernel or recovery.fstab for emulator.

Bug: 15383279
Change-Id: I4035193e6ab933194ff1417dfae4eab963fe5301
e3e421f85125c2c173bcafa07e901b6248e9530c 03-Jun-2014 Ying Wang <wangying@google.com> Move sdk staging dir to a product-specific dir

So we can do incremental build across different SDK products.

(cherry picked from commit d7af17619983c4cf679abb034469098235e63ad5)

Change-Id: I30ebed5328123629519a64c793f94fc8d5aa09a8
d7af17619983c4cf679abb034469098235e63ad5 03-Jun-2014 Ying Wang <wangying@google.com> Move sdk staging dir to a product-specific dir

So we can do incremental build across different SDK products.

Change-Id: If3f082e4b92d00e7ccda980610e1d967d44da622
9eebd78f6ef844aec2401db5e3b69d08aec227a7 28-May-2014 Deepanshu Gupta <deepanshu@google.com> Integrate build_font.py

Executle the build_font.py script to rename the PS name of the fonts to
be shipped with the SDK.

Change-Id: I14f8a27b9da8d4aa7b9d2773cf4aa84c6f3c22fe
5520f2865354fdf84602e5d111ea1ff1c7e21c68 29-May-2014 Stephen Smalley <sds@tycho.nsa.gov> Use a separate policy for the recovery image.

Only the recovery image needs to include the recovery domain
in its policy, so create a separate policy for the recovery image
and replace the root policy with this one when building the
recovery image.

Depends on the change with the same Change-Id in external/sepolicy.

Change-Id: I444107f9821eabf4164ba07a44d03bd71e719989
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
623d70625382e9089ee52cef3c1af7da583ff658 20-May-2014 Yuncheol Heo <ycheo@google.com> Fix the path for findbugs.

Change-Id: I45485f1aeaf7fc3db2839f42829278d8c0ec97e3
9843fd848986ee1119a99e00d8059b123b4d49b3 13-May-2014 Doug Zongker <dougz@android.com> add missing verity tools to otatools target

Change-Id: I856e43ac9757cf082548646e50db8bbc8da71d0a
8eaeea95d569964eb40a386fbf74ab390d2cc282 13-May-2014 Doug Zongker <dougz@android.com> improve density selection of recovery assets

Some recovery UI assets are available in different sizes; we need to
pick the right ones for the device's density. Use
PRODUCT_AAPT_PREF_CONFIG if it is available (it is empty for older
devices), and fall back to the highest density in PRODUCT_AAPT_CONFIG
if the PREF_ version is not available.

Change-Id: Ia1eb7d5409cda17b0fc5c0bcfc33dfa6a50893e8
5b5f4958d89dae6a79a9715f4d91c30cb38a4680 06-May-2014 Geremy Condra <gcondra@google.com> Add verity support to `make dist`.

Without this, system images will be built that do not contain the
necessary bits for verification.

Change-Id: I87c15282b26377d7a2a1540e3d0e30b0299622e3
3e92fd0fbaf0a7366bd9b60e700948d6be2b08e4 09-May-2014 Ed Heyl <edheyl@google.com> Fix build: Revert "Add verity support to `make dist`."

This reverts commit 5dee206d8ef106a70a5ada4b8aba9c4489f7e308.

Change-Id: I6f4f536c127d3e5dcb6594efb193231cd8dece7e
07b2055d3e4b2db2e0cdddc13f8f992d81c06ffb 08-May-2014 Ying Wang <wangying@google.com> Target "tests" now only builds the modules tagged as "tests"

But not install them.
This prevents "make tests" polluting system.img or userdata.img.
We have new mechanism to build and package up modules into zip file in
build/core/tasks/tools.
Change package-modules.mk to install DATA/ instead of data/ in the
zip file; Better handle of module name conflicting.

Bug: 13585955
Change-Id: I7586a8c7995b984c9ead0ba2fa84dd5d2dd20bd1
571fee8985746659c4d39ef613d659e6124c66af 08-May-2014 Ying Wang <wangying@google.com> Target "tests" now only builds the modules tagged as "tests"

But not install them.
This prevents "make tests" polluting system.img or userdata.img.
We have new mechanism to build and package up modules into zip file in
build/core/tasks/tools.
Change package-modules.mk to install DATA/ instead of data/ in the
zip file; Better handle of module name conflicting.

Bug: 13585955
Change-Id: I7586a8c7995b984c9ead0ba2fa84dd5d2dd20bd1
51e303a2812aca4db4c708f845e30dfbdfbe0423 01-Apr-2014 Xavier Ducrohet <xav@google.com> Remove SDK Tools from platform builds.

(cherry picked from commit edf30221b4890673dc714a1efef3b5faf4ae1522)

Change-Id: Ia74c2ece1528adca10a4eec24e73b4ce361af1a9
5dee206d8ef106a70a5ada4b8aba9c4489f7e308 06-May-2014 Geremy Condra <gcondra@google.com> Add verity support to `make dist`.

Without this, system images will be built that do not contain the
necessary bits for verification.

Change-Id: Icaa636085dbfd386424c90dfbe404c5960df0fe4
6e836116f764cf5cebf1654df2f17d8222554f6e 16-Apr-2014 Michael Runge <mrunge@google.com> Add support for verifying OEM properties.

A separate OEM file must be specified to provide the expected
values for these properties. The list of properties comes from
the "oem_fingerprint_properties" list in misc_info.txt

Bug: b/13367676

Change-Id: I1a3eaf108492132cf6f595a5d1c9f7e0c3cb3142
477cf2b029f18570771e7ca8508f04e58b0bfe56 17-Apr-2014 Colin Cross <ccross@android.com> verity: switch to C++ version of build_verity_tree

The C++ version avoids the need to unsparse the image to generate
the verity image, and is much faster for images with large regions
of don't care (treated as zeroes).

Change-Id: I8396b08a5fdb93f27d8c71c9c1ac23cb75cf1f7f
8a30f72c0c70d5b5eb47fd32a9a62c771aaa5796 29-Apr-2014 Colin Cross <ccross@android.com> verity: clean up verity build dependencies

Move image dependencies out of PRODUCT_PACKAGES and into direct
dependencies for the image building rules.

Fix the test for PRODUCT_SUPPORTS_VERITY, it needs to check for
the current project as the global is no longer set.

Change-Id: I811501834ae5ec658229bd505fcc48275ff578c9
b8888432f0bc0706d5e00e971dde3ac2e986f2af 12-Mar-2014 Ying Wang <wangying@google.com> Set up rules to build oem.img

To build oem.img:
- You must define BOARD_OEMIMAGE_PARTITION_SIZE in your BoardConfig.mk
- The file system type will be the same as system.img and userdata.img.
- To install a module to oem.img, use "LOCAL_OEM_MODULE := true"
- run "make -j48 showcommands oem_image dist". By default it's not
built.

Bug: 13367676
Change-Id: I1a26d4d0c61b72ecffe60279667b1b3de050780d
6ee3c4327d706c6bb0c0875f3094ab43bf96a7fd 25-Apr-2014 Dianne Hackborn <hackbod@google.com> Add new facility to have multiple active codenames.

Use this to have both L and KKWT.

Change-Id: I78cd5ed2dcffab9e93030184ba6f9eb9a6a3cba5
4709d7c3a5239d9d073a7d536385596ea18981a9 15-Apr-2014 Ying Wang <wangying@google.com> Allow to build target-files.zip in sdk build.

and put the target-files.zip on the build server.

Bug: 13763122
Change-Id: I71ab6aa40666fdb24ec0da0fbfc7b73753d4f0c7
26e1a28e7f9aa22b37ec7d98dab0de5c93202ab0 22-Mar-2014 Jeff Sharkey <jsharkey@android.com> Pass OEM property list to OTA tools, thumbprint.

The OTA generation scripts need to know what system properties to
read from the OEM partition, so pass along from product definition.

Also define "thumbprint" which is only the build-specific parts of
the fingerprint. (Thumbs are smaller than fingers.)

Bug: 13367676
Change-Id: Iae051dcd2b1c67a7c8554d8ae318a4c54a86d614
7303ebda84f64a2823f76282e8e1d6886da08cf0 07-Apr-2014 Narayan Kamath <narayan@google.com> Add 32 / 64 bit abi lists to system properties.

Introduce ro.product.cpu.abilist32 / abilist64, which are
comma separated lists of the 32 and 64 bit ABIs that the
device supports. These properties are used by the zygote and
system server to determine what ABI an app should be
started with.

This changes move abilist related make steps out of envsetup.mk
and into config.mk because they depend on variables set by
core/combo/***. Additionally, config.mk performs a few additional
cleanups of these variables (like stripping them) after the
inclusion of envsetup.mk so this seems like a better place to
put them.

bug: 13647418

Change-Id: I3db39bdd761220c5b4966f651892fb592396f9a1
25d55f8733ad170b974a871b2b7727e01dd2afa2 04-Apr-2014 Doug Zongker <dougz@android.com> select recovery assets based on target density

Recovery now has different res-*dpi directories for different display
densities. Select one based on the highest density specified in
PRODUCT_AAPT_CONFIG.

Change-Id: Ieb0657a08e5df87f914fdda78a038cbbf82619e9
1a43b375b463c5b2bdac7d4038ea57d83fc2ae0c 26-Mar-2014 Narayan Kamath <narayan@google.com> Extend the CPU ABI specification mechanism.

Add a (read only) system property that is a comma
separated list of ABIs supported by the device in order
of preference. For example, typical arm-v8 device might
define:

ro.cpu.abilist = arm64-v8a,armeabi-v7a,armeabi

For most purposes, a single flattened list like the above is
probably more useful than the parallel system of variables
TARGET_CPU_ABI{2} / TARGET_2ND_ARCH_CPU_ABI{2} that we use
in the build system.

Change-Id: If9102669ad9f5f8fd89a8bcc5bf88cca1acadc3c
26d22f713948dfc5292268b7307de7a3b9e22e4d 19-Mar-2014 Jeff Sharkey <jsharkey@android.com> Import OEM build properties, if defined.

Certain products can define a list of system properties that should be
delegated to the OEM. Since these properties may be ro.*, we give
them first shot at defining.

Also support blacklist of properties that should never be defined by
build.prop, used to delegate to runtime fingerprint generation.

Bug: 13367676
Change-Id: I3f00db732f485818205a7b76b31edbdc3a89aac0
ae5a1e1447fb2c16d87c62ad3ccf0631beb35919 01-Mar-2014 Ying Wang <wangying@google.com> Try to catch more misuse of $(my-dir).

(cherry picked from commit 79e8319b2ea622d487a56498d657440f5935e9e9)

Change-Id: I779af79c83de2ad1944269dd5bd31d65ff844064
9bdcdff615f4e21eca818768cc7549a3e2bb8830 24-Jan-2014 Colin Cross <ccross@android.com> HACK: add 64-bit directory blacklist

Change-Id: I431e8b220db81d51930dc0b3d95995df120c179a
32b527d6cb951335f06c37c4d9a7a8216974a86a 04-Mar-2014 Doug Zongker <dougz@android.com> test block system image patch at build time

After building a patch for the system image (for incremental block
OTAs), apply it to a local copy of the file and test that it succeeds.
This is an imperfect test as it's using the local client's
syspatch_host, which may differ from the syspatch library actually
used in the target build, but it's somewhat better than nothing.

Change-Id: Ic0001b0145881e2ebd4b5b36ce9b5bcebd76deb4
5fad2039bbd4e55d671106c8b39a6e451b85ac23 24-Feb-2014 Doug Zongker <dougz@android.com> handle don't care regions in the system image

The system partitions has regions that we shouldn't write and can't
depend on the contents of. Adds a new script to generate a map of
these regions (using the sparse image as input), and include the map
in the package zip so it can be used when writing or patching the
system partition.

Also fixes a bug where the wrong SELinux file contexts are used when
generating incrementals.

Change-Id: Iaca5b967a3b7d1df843c7c21becc19b3f1633dad
3bbfddd2eae96b69be14baeca05726a70062ba6c 02-Mar-2014 Ying Wang <wangying@google.com> Revert "Fix build: Revert "Try to catch more misuse of $(my-dir).""

This reverts commit 4f6e8342ace107faa09f47bef5924882904d0634.
4f6e8342ace107faa09f47bef5924882904d0634 01-Mar-2014 Ed Heyl <edheyl@google.com> Fix build: Revert "Try to catch more misuse of $(my-dir)."

This reverts commit 79e8319b2ea622d487a56498d657440f5935e9e9.

Change-Id: I7d4d352da802deea870fbe4f61f7a7023460a405
79e8319b2ea622d487a56498d657440f5935e9e9 01-Mar-2014 Ying Wang <wangying@google.com> Try to catch more misuse of $(my-dir).

Change-Id: I0c07d7115c66b30ba1383dfaa133f0cc40a33ad7
433febb3c4593e777ef393371b6e99dcce9a7217 28-Feb-2014 Griff Hazen <griff@google.com> Re-order atree files so PRODUCT_SDK_ATREE_FILES can provide overrides.

Change-Id: Iecea3f3af628d89df65a44293a977b2bce35bf28
59ec195a4d44e1632ee808c7b1479f4048cc9e33 26-Feb-2014 Robert Craig <rpcraig@tycho.ncsc.mil> Include privileged apps with app zip file.

Include apps that appear under /system/priv-app
to also be included with the zip of all the apps.

Change-Id: If4687cf4c471877f11d78b68bad96f1842e49d87
Signed-off-by: rpcraig <rpcraig@tycho.ncsc.mil>
26e6619c37e294fe2ee63aaa759e0ac861775ce8 20-Feb-2014 Doug Zongker <dougz@android.com> add --block flag to ota_from_target_files

Add the --block flag to this script to control whether block-based OTA
packages are generated (defaults to off). Make the full OTA package
produced by "make otapackage" continue to produce a block-based OTA.

Also fix a problem where block incremental OTAs didn't ever succeed,
and the --no_signing option never worked.

Change-Id: I610d0b4abed4b8b65fbe8ce0abaeec6cf52e14a1
e3220585421bf5af99e1e3f8cf3bf567ef2a5dd9 20-Feb-2014 Doug Zongker <dougz@android.com> img_from_target_files doesn't need releasetools extensions

This argument is superfluous; we don't need to compute its value or
pass it to the script.

Change-Id: I567a5c0b67060f8fcc0bf83e5bfa0272312b9124
0c0a4ce8f4c40b47d34774c7f36c80ae7f8082fc 18-Feb-2014 Ying Wang <wangying@google.com> Remove the default sdk.atree if custom one is set.

Change-Id: I5d20b030db5ef29d7ff6eb64a0a1e11a4283e85d
02e31d240a9044b54ee793902ad958894f84e7a1 24-Jan-2014 Colin Cross <ccross@android.com> HACK: add 64-bit directory blacklist

Change-Id: I431e8b220db81d51930dc0b3d95995df120c179a
c9253822ea31c1d35d3fc2b495b45b476c240a1d 04-Feb-2014 Doug Zongker <dougz@android.com> add recovery update code to system images

Currently, the "img" zip files generated by the build system lack the
script and data needed to rewrite the recovery partition, while the
"ota" zip files do (when installed).

In order to move towards block-based OTAs, we want the result of
flashing an image and the result of installing the corresponding OTA
package to be identical.

Generate the recovery-from-boot patch and install script as part of
the process of building the target-files. This requires breaking the
code to generate that out of ota_from_target_files into its own tool
that we can run from the Makefile. (ota_from_target_files can still
do this, so it continues to work with older target-files.)

Bug: 12893978
Change-Id: I80e62268840780b81216e548be89b47baf81b4ac
780128a6f05ad6bcd594ce10953a8ca533e63597 29-Jan-2014 Ying Wang <wangying@google.com> Support custom sdk.atree files.

Bug: 12683047
Change-Id: I79ca1eff81e947d03c50759d47426487e48435d0
c6c21d06228ec2980fbaa4d0d58e22d172ee62da 22-Jan-2014 Ying Wang <wangying@google.com> Revert "Revert "Fix filter rule when checking for apks in PRODUCT_COPY_FILES.""

This reverts commit 06b3255118ed4b92361c195dc77e6b600fe24c21.
06b3255118ed4b92361c195dc77e6b600fe24c21 22-Jan-2014 Ying Wang <wangying@android.com> Revert "Fix filter rule when checking for apks in PRODUCT_COPY_FILES."

This reverts commit ca37190711ca48a6bfd6b5700a54cd580abd1e5b.

Change-Id: I3a76f4cdf92ecbe3059bf5856cf341874e1393cf
ca37190711ca48a6bfd6b5700a54cd580abd1e5b 17-Jan-2014 Robert Craig <rpcraig@tycho.ncsc.mil> Fix filter rule when checking for apks in PRODUCT_COPY_FILES.

PRODUCT_COPY_FILES entries can include the src:dest:owner
syntax versus src:dest. This causes the filter to miss
certain cases. Instead use the word-colon function to
grab the dest regardless of syntax.

Change-Id: I1f4e57a236c1db148bada0cfe5bd1e87bb1194d6
Signed-off-by: rpcraig <rpcraig@tycho.ncsc.mil>
c634974d375050692e0923faa6efadace6a15c52 14-Jan-2014 Ying Wang <wangying@google.com> Install 64-bit libraries to /system/lib64.

/system/lib always contains 32-bit libraries, and /system/lib64 (if
present) always contains 64-bit libraries.
Move things around a little bit, so TARGET_ARCH can be used to define
the build paths.

Bug: 11654773
Change-Id: I2edd91e162c7a20d7719d7bae15e5fa6c2a5b498
1ff0836ce0c3be96e629d2f33941b14bf855d674 28-Dec-2013 Ying Wang <wangying@google.com> Emma support for host Java libraries.

To run emma on a host Java library, in the module definition use:
LOCAL_EMMA_INSTRUMENT := true
then run make with "EMMA_INSTRUMENT=true".

Bug: 12178695
Change-Id: Ie31582b94f5c45381f534912e810f88d21dde9b2
facd992ec73de763cfbca32dd6aa38ff76a07613 20-Dec-2013 Michael Runge <mrunge@google.com> Makefile used spaces instead of a tab

Change-Id: Ia34f80d99062ef2899527f11d7bf72e78c63e31c
c451a373a4f07ea37aba6a50c6169d251668ba32 19-Dec-2013 Colin Cross <ccross@android.com> build: always include host java files in platform.zip

Building recovery requires building a host .jar file. Change
platform.zip to always include the necessary host java prebuilts,
instead of only when building the 'platform-java' target.

Bug: 12186985
Change-Id: Ic823d764cb6b39bbf8c5d90c94b5dc99b55d34dc
57b490334abc751eceadec9f9cbcaacf5aaaaa1b 17-Dec-2013 Colin Cross <ccross@android.com> Revert "Disable recovery in PDK builds"

This reverts commit 2e9d15d0b647058fed7673fe071953496c6089ca.

Bug: 12186985
4038aa8fff8c68733bff8b55d8c8d1b59713ca37 14-Dec-2013 Michael Runge <mrunge@google.com> Enabled incrementals to patch + rename moved files

Change-Id: I551fc5291847e3ace15361c203d86f566c26da97
2e9d15d0b647058fed7673fe071953496c6089ca 23-Oct-2013 Mike Lockwood <lockwood@google.com> Disable recovery in PDK builds

Change-Id: Ic6ee44cef37104c8d7facc28dfe45d0ef832ebd0
9b23f2cd786b46991b7c0198e69264b17875288d 25-Nov-2013 Doug Zongker <dougz@google.com> add option to generate two-step recovery files

When run with the -2 option, ota_from_target_files will generate a
package (full or incremental) that does some extra reboots in order to
install the new recovery first, so that the rest of the installation
is done with the new recovery. This can be useful if (say) the
package installation needs some features from the newer kernel.

For incremental packages, the verification phase is still done with
the old recovery.

This is only supported on devices where the misc partition is EMMC
(not MTD).

Two-step packages are slower to install and possibly confusing to
users (they will see their device reboot four times instead of twice),
so only use this option if necessary.

Change-Id: I3267d905e5e8eb1a1eb61bf48255b8b24ffc4ad1
33d6459181f3da2d5c64644c2efc7bd488391ab6 26-Nov-2013 Ying Wang <wangying@google.com> Also package the unobfuscated classes.jar into proguard-dic.zip

proguard-dic.zip is generated and stored on the build server for
apps-only build.

Bug: 11811736
Change-Id: I2629dd1e28515d3b02f455f19b030ae291136559
816d73f9ebfef7829ca60d9199a8b609cb1cb0cf 22-Nov-2013 Doug Zongker <dougz@google.com> store releasetools.py in the target_files zip

Save the device-specific releasetools.py module in the target_files
zip so that the OTA tools can use it without needing to get it from a
client.

Change-Id: I2dd5f4628290a8f2f56bd519b07d4ca8d92fddcd
90c60d3b922924cf65d26b478d8baef142a25023 22-Nov-2013 Michael Runge <mrunge@google.com> Revert "Enable incremental builder to find files that moved, and try to process them via patch + rename, instead of delete + add."

This reverts commit 37335b42385970d957d48056145a3d4c4dbc6087.

Change-Id: I61cc125d3b08eaa300a7774b6607dbb43f0e7148
fd6f7513f82a4b2ec9810d6cb6c33a94060d14e9 17-Jun-2013 Geremy Condra <gcondra@google.com> Add support for verity builds to the build system.

Change-Id: I3ef908d8d52ec88de453b161bbc3f198517a72f1
37335b42385970d957d48056145a3d4c4dbc6087 07-Nov-2013 Michael Runge <mrunge@google.com> Enable incremental builder to find files that moved, and
try to process them via patch + rename, instead of
delete + add.

b/11437930

Change-Id: Ie70632a2fa0a13d4bb259f61c620bb01812494e5
31c3e00bb4d072996fedb448118d28e2a8164d4f 23-Oct-2013 Mike Lockwood <lockwood@google.com> Disable recovery in PDK builds

Change-Id: Ic6ee44cef37104c8d7facc28dfe45d0ef832ebd0
0eb17d944704b3eb140bb9dded299d3be3aed77e 08-Sep-2013 Nick Kralevich <nnk@google.com> Update OTA to understand SELinux labels and capabilities

Update the OTA generation script to understand SELinux file
labels and file capabilities.

Make fs_config aware of SELinux labels and file capabilities, and
optionally output those elements whenever we output the
UID / GID / file perms. The information is emitted as a key=value pair
to allow for future extensibility.

Pass the SELinux file label and capabilities to the newly created
set_metadata() and set_metadata_recursive() calls. When the OTA
script fixes up filesystem permissions, it will also fix up the SELinux
labels and file capabilities.

If no SELinux label and capabilities are available for the file, use
the old set_perm and set_perm_recursive calls.

Bug: 8985290
Bug: 10183961
Bug: 10186213
Change-Id: I4fcfb2c234dbfb965cee9e62f060092a4274d22d
fc9cd4f5c17eb51f09bb3fe14526894c7fa33ba6 29-Aug-2013 Ying Wang <wangying@google.com> Create an empty zip file if no dict file found.

Instead of touch an empty file.

Change-Id: Ifa8bb04cea6fc0fc3165337f6815d5976bac677d
(cherry picked from commit c62c92c3d737304cbd38e99e92f29e193b15b7c8)
c62c92c3d737304cbd38e99e92f29e193b15b7c8 29-Aug-2013 Ying Wang <wangying@google.com> Create an empty zip file if no dict file found.

Instead of touch an empty file.

Change-Id: Ifa8bb04cea6fc0fc3165337f6815d5976bac677d
098494981d03f47e4358496488c2664cfc655965 18-Apr-2013 Jianxun Zhang <jianxun.zhang@intel.com> Fix parsing string parameters in BOARD_MKBOOTIMG_ARGS

The existing logic in common.py breaks string arguments incorrectly:
e.g. --para1 val1 --para2 "val2 is a string" will be output as:

'--para', 'val1, '--para2', 'val2' 'is' 'a' 'string'

This will cause mkbootimg command fails due to the invalid arguments
generated from the wrong parsing.

The patch fixes this issue to get:

'--para', 'val1, '--para2', 'val2 is a string'

Change-Id: Ia34ec357550f11ae9d6adc719d86a0c6a9099fbc
Signed-off-by: Jianxun Zhang <jianxun.zhang@intel.com>
62c81f821f3675ea57485bfa6cb3320b7178759e 23-Aug-2013 Ying Wang <wangying@google.com> Collect NOTICE files for apps_only build.

In apps_only build (after running tapas or exporting TARGET_BUILD_APPS),
run "make notice_files" to collect and combine the NOTICE files of
modules that are needed by the apps.

Bug: 10445634
Change-Id: I6555bba1104e43b48c723c82143c46d444a75e80
ae9115a525260a0ca317eadd13f075def733a66d 23-Aug-2013 Ying Wang <wangying@google.com> Collect and store proguard obfuscation dictionary files.

Collect and store proguard obfuscation dictionary files.
Only do this for apps_only build for now.

Bug: 9407666
Change-Id: I51c78bf0f42f959dc920de230e60e0f71ed0d0ea
df8b48449a0a607249d05aa420e41d0b3470ed63 23-Aug-2013 Ying Wang <wangying@google.com> Revert "Collect and store proguard obfuscation dictionary files."

This reverts commit 41dbe1e535c1aea9a4c4cec6be637fe1b882220b.

Change-Id: I023594779128083b75a069fd860cd29dd7951ef5
41dbe1e535c1aea9a4c4cec6be637fe1b882220b 23-Aug-2013 Ying Wang <wangying@google.com> Collect and store proguard obfuscation dictionary files.

Collect and store proguard obfuscation dictionary files.
Only do this for apps_only build for now.

Bug: 9407666
Change-Id: I0324eed6bb236abb0d3725f8d2a0b6c5c31935fe
612e2cd0e8c79bc6ab46d13cd96c01d1be382139 26-Nov-2012 Bjorn Andersson <bjorn.andersson@sonymobile.com> mkbootimg: Support custom mkbootimg implementation

Support using custom mkbootimg to allow boards to specify custom
boot image formats. Also export this as the environment variable
MKBOOTIMG to the *_from_target_files releasetools scripts.

Change-Id: I2084273b1175de097fb7da5c4f2264ea8014d74f
Signed-off-by: Bjorn Andersson <bjorn.andersson@sonymobile.com>
ad7fd29b312bf588b2be3f799715f34ff8a6d46b 09-Aug-2013 Ying Wang <wangying@google.com> Don't bother going through the source tree

Don't bother going through the source tree in more circumstances:
all cleaning goals, helping goals, no-deps goals.

Bug: 10244578
Change-Id: Id53a249085c62838e4193962a85e0ac34f46954f
a8608a7f7cee388192780f8988b5dc5966423eef 23-Jul-2013 Doug Zongker <dougz@android.com> distinguish signed and unsigned user builds in UI

Add "dev-keys" or "test-keys" to the value of ro.build.display.id for
user builds. (This is the property that is displayed under "Build
number" in the Settings UI.) Modify the signing script to remove the
keys tag from this value when signing.

Change-Id: I3d9d92056f8567d7f84b1be047619be7c6e4c419
850de1995cf026a4c9a8809303ddba5fe4cd3e13 22-Jul-2013 Michael Runge <mrunge@google.com> Revert "Update OTA to understand SELinux filesystem labels"

This reverts commit fbbd79530adc6ddd6bbfb3c5fc60ba5ec0ce5f2d.

All incremental auto OTAs broken b/9964074

Change-Id: I500d2ac194804abd20a0e01d9862fd42e8f5d2de
c01780611a2a5a2df6c53b47e8868d592d8ea40b 22-Jul-2013 keunyoung <keunyoung@google.com> add PDK_PLATFORM_ZIP_PRODUCT_BINARIES to allow adding product specific binaries to platform.zip

- This can be used to deliver stuffs like kernel symbol file.
- Files are added in relative path from the top of android source tree.
- PDK_PLATFORM_ZIP_PRODUCT_BINARIES will be defined in BoardConfig.mk.
- files under out dir will be rejected to prevent possible conflicts.

bug: 9963432
Change-Id: Id1da643534cd86939df4941f39e4414d343bba99
fb9bb205fcda6544cf5ec5d84cc1e5935ae96935 22-Jul-2013 Michael Runge <mrunge@google.com> Revert "Update OTA to understand SELinux filesystem labels"

This reverts commit fbbd79530adc6ddd6bbfb3c5fc60ba5ec0ce5f2d.

All incremental auto OTAs broken b/9964074

Change-Id: I500d2ac194804abd20a0e01d9862fd42e8f5d2de
fbbd79530adc6ddd6bbfb3c5fc60ba5ec0ce5f2d 18-Jul-2013 Nick Kralevich <nnk@google.com> Update OTA to understand SELinux filesystem labels

Make fs_config aware of SELinux contexts, and output the context
whenever we output the UID / GID / file perms.

Pass the selinux context to the set_perm2() and set_perm2_recursive()
calls. When the OTA script fixes up filesystem permissions, it will
also fix up the SELinux context on the files.

Bug: 8985290
Change-Id: I6419b64c06309a93ac6b2f2cf9fc7f8815adeaf3
674a27ddaf0f0b30f4598f0a265cb39d580b1714 12-Apr-2012 Johan Redestig <johan.redestig@sonymobile.com> Allow several system property files

TARGET_SYSTEM_PROP now is a list of files and all of them
are included in the build.prop.

Change-Id: I494f86412b0a299ee4c066e49ab4f4686bc2178a
a0febe5e6de24ffee5cd32944d5a1814cf312efb 20-Mar-2013 Ying Wang <wangying@google.com> Support to build vendor.img

Bug: 8341435
Change-Id: I2db7970936984d38aed35054e3f695d298f4e512
d7321d31accd344f4f2ad0a8e0b4f47be4d5128e 15-Mar-2013 Ying Wang <wangying@google.com> Skip userdata.img only if partition size is not give for extfs.

We still build yaffs2 images which don't need partition size.

Change-Id: I9c7f45069f25868666a257cee044faecf1a8781a
4ac826b6d39145ac287821e6771bb2ce1102832c 15-Mar-2013 Ying Wang <wangying@google.com> Don't build userdata.img if no partition size

And retire BOARD_DONT_BUILD_USERDATA_IMG.
This unifies the logic in build/core/Makefile and
build/tools/releasetools/img_from_target_files.

Change-Id: Ib6b4e8e0d8279ed7deaf047e9dc30eb65aba013f
e12973258af50248118f6f0bd86b29810c9e2dd3 07-Mar-2013 Doug Zongker <dougz@android.com> recovery: choose between available fonts based on device density

Change-Id: I39aded4e1fb310d7e4b9c9ed3356686fcf62c002
2e65cd5510b4284591905862e5dc1953100d8601 05-Sep-2012 Ying Wang <wangying@google.com> Don't install all host modules by default.

Instead we should explicitly set up the dependency, if the module will
be used in the build process; Use LOCAL_MODULE_TAGS with eng, debug or
tests if the module is for testing; or add to PRODUCT_PACKAGES if it's
required by a product.

Change-Id: Ic26319c26c1166bc1062dfbcfb4e006af185249a
534fcd766ecec602d9437d155066fc5253f1185a 02-Mar-2013 Ying Wang <wangying@google.com> Allow to call dist-for-goals multiple times for the same file

You can dist the same file for multiple goals in multiple calls to
dist-for-goals. The first call will establish the real copy rule, while
the rest call just establishes the goals' dependency on the dest file.
This enable uss to remove the bizarre $(if ..) enclosing the droid and
sdk dist while avoiding make's multiple rules warning.

Change-Id: I76475db76a9e6167e0e606dd582b54e80dfcdd22
6a42a25429a3313f87c8ca5154c99c7acd0eccdf 27-Feb-2013 Ying Wang <wangying@google.com> Run e2fsck only when building images with the target files.

With this change, e2fsck is run only when you build the update.zip file,
which is built when "dist" is among the make command.

Bug: 7591683
Change-Id: I446b71d5aa9295aff3af622f115175f769746615
31ce31f607c7ca31d227a2956124808248e9771d 22-Feb-2013 Ken Sumrall <ksumrall@android.com> Start producing target files using the unified fstab.

Change-Id: I6d9783fba3fcb4617323071bf924f50b66ad6935
7dc45a8bdc744db4d9c742dc21bfe328ad9ba10f 04-Jan-2013 Ying Wang <wangying@google.com> Add simg2img and e2fsck to the otatools.

Change-Id: I31225399c6ef9cae38c825755e301fdc70ce194b
fa61ff093e5a160fe15010700c09cb05e77e6cd0 28-Sep-2012 Andrew Boie <andrew.p.boie@intel.com> core/Makefile: Allow specification of file locations

If multiple build targets use a common recovery.fstab or system.prop,
this allows them to live in a centralized location and not be copied
or symlinked to the device directories.

Change-Id: I7aeb31ed9dc9b43a5e2c9e46fe582b10cba71b24
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
6a6c11215bdf3f114ed3589ede4bda006adacf7e 27-Nov-2012 Ying Wang <wangying@google.com> Run e2fsck on built sparse images.

Bug: 7591683
Change-Id: Id1cba79f7840aab1f0327cb741eda655b45d1b46
69e9b4d6d1e9647c3f9c011bad0f22138911a413 27-Nov-2012 Ying Wang <wangying@google.com> Run e2fsck on built sparse images.

Bug: 7591683
Change-Id: Id1cba79f7840aab1f0327cb741eda655b45d1b46
9362c7ffdd8189830065f80b21f80d2f642d6804 21-Nov-2012 Ying Wang <wangying@google.com> Establish explicit dependency on selinux file_contexts.

Before this change, because the file_contexts is not in the system,
data or cache directory, the dependency is not reliable.
This fixed the gms build error:
out/target/product/gms/root/file_contexts: No such file or directory

Change-Id: Id8d5b3f4557d43a509ccc00b21dd426a414b7c42
fdbd9cbe2e79634650220e656ceb9f90ccfaff8a 21-Nov-2012 Ying Wang <wangying@google.com> Establish explicit dependency on selinux file_contexts.

Before this change, because the file_contexts is not in the system,
data or cache directory, the dependency is not reliable.
This fixed the gms build error:
out/target/product/gms/root/file_contexts: No such file or directory

Change-Id: Id8d5b3f4557d43a509ccc00b21dd426a414b7c42
d9a88d585f162c5b99c5c6f995c0400fc616bd26 26-Oct-2012 Ying Wang <wangying@google.com> Split to multiple bash commands.

This can fix the error "/bin/bash: Argument list too long", if we get a
really long apk list.
Bug tracker Link: http://code.google.com/p/android/issues/detail?id=38937

Change-Id: I72258125c4297dfd9f8f502a96dbfa5a08f3cc50
daf5e22dbac03e174e22c8209ed97c44c3a2a2c9 18-Oct-2012 Mike Lockwood <lockwood@google.com> Add new embedded target for a super minimal android build

Remove obsolete BUILD_TINY_ANDROID

Change-Id: Ic0f3a5b3250ea80529f5099653068f118a13b12e
92ca0197ed22897633ed9241c9f4ae2128ef5c13 16-Oct-2012 Kenny Root <kroot@google.com> Remove HAVE_SELINUX guards, part 2

Change-Id: I58d43128447ef3be0f70ff2479af2e61fe4c5849
e215ed52c67cea6228f19fcc8bd11bdfb4f7cc67 15-Oct-2012 Ying Wang <wangying@google.com> Add BOARD_DONT_BUILD_USERDATA_IMG

So board config can choose to not build userdata.img.

Change-Id: I1e6024abb7806492468801e49075fa24c05d2dd1
d0244b395a583804137cd1fe2bff4f86d66b396b 17-Nov-2011 Ying Wang <wangying@google.com> Remove build variant "tests"

Bug: 5368571
Now we have a phony target "tests" instead.
The target can be built in any other build variant (eg userdebug).
For example, "make PRODUCT-full-userdebug tests dist" will build and
put the *-test-* zip file in the dist dir.
The "tests" target will include all modules tagged as "tests" in
addition to other modules in specific target out directories.

Change-Id: I8383097380d8e6846c3e2107d6dd5f68788cfc39
b301817223d7163de6827976f8259363ab18c7b8 05-Sep-2012 Ying Wang <wangying@google.com> Don't install all host modules by default.

Instead we should explicitly set up the dependency, if the module will
be used in the build process; Use LOCAL_MODULE_TAGS with eng, debug or
tests if the module is for testing; or add to PRODUCT_PACKAGES if it's
required by a product.

Change-Id: I326e97df6630dee4acc6582ce6cef2dec8289155
4b0486b4a6108ea863da6232cc376cd1edc55640 21-Sep-2012 Ying Wang <wangying@google.com> Allow to tag owner to PRODUCT_COPY_FILES

PRODUCT_COPY_FILES now is a list of words like <source
path>:<destination path>[:<owner>].
The optional :<owner> is used to indicate the owner of a vendor file.

Bug: 7048854
Change-Id: I435d1e18b7a091fb62513062cfc2e420e51557ec
619fccf9f34bee6bebc2710dff798fde6ebca7e4 06-Sep-2012 Ying Wang <wangying@google.com> Remove duplicate src:dest pairs in PRODUCT_COPY_FILES

Before setting up the rules.

Change-Id: Ifedbc0e988895a899cae315dc730a152bae91ae2
1a09726f6860966a8c9a3f7aa66cff252d422e0e 04-Sep-2012 Doug Zongker <dougz@google.com> fix possible build break

If you try to build a recovery image without having built the main
system, creating the recovery resourc file can fail due to the
directory not existing.

Change-Id: I2daff847c0b58dfa519d0f742636f01dba28c689
565888726b50cbe128e0b03c31dfaa2bd66a7849 21-Aug-2012 Doug Zongker <dougz@google.com> include recovery-resource.dat in /system/etc

Put the recovery UI images into a file in /system/etc where we can use
them for constructing the recovery image, so they don't need to be
included in OTA packages.

Change-Id: Iab2144865298c8967eb31660abd3bb11e6ec26fa
ce7731af9f1349e574eabb00c6bc2606dddd1fa7 16-Aug-2012 Andreas Makris <andreas.makris@gmail.com> Add BOARD_CUSTOM_BOOTIMG_MK for custom bootimg building

This patch adds BOARD_CUSTOM_BOOTIMG_MK. It is needed for some devices like
Sony Xperia S (LT26) because it needs a own bootimg format.
If BOARD_CUSTOM_BOOTIMG_MK is not set the build will be done in the normal
way, so other devices are not affected.

Change-Id: I66c8be6b107988d3238001e1dc612c044ed01aaa
Signed-off-by: Andreas Makris <andreas.makris@gmail.com>
63d56dad65941172131c7818808fd0bd50450537 17-Aug-2012 Joe Onorato <joeo@google.com> Add all the host tools to the list of prerequisites for the SDK.

Change-Id: I3a3e4be8796f761119e29f3be64ad534e48c95ee
bc415dd5eb2a135cbc24c21760338e6294c7a0d3 15-Aug-2012 Ying Wang <wangying@google.com> Support to build emmap_mata.zip in unbundled builds.

Bug: 6987838
Change-Id: Id6c81b08c4859442b7d52054ed5f278575719d1a
da19eafc42e93bcd4aa97bd01c2ea93e967f78bf 15-Aug-2012 Ying Wang <wangying@google.com> Support to build emmap_mata.zip in unbundled builds.

Bug: 6987838
Change-Id: Id6c81b08c4859442b7d52054ed5f278575719d1a
82ccebaa598d3e3a80f72f63a72aa34caaac477b 14-Aug-2012 Ying Wang <wangying@google.com> Move the selinux modules to core PRODUCT_PACKAGES

The module names are phony targets and we should avoid having file targets
depend on phony targets.
Instead the build system makes sure to use the file dependency with
PRODUCT_PACKAGES.

Change-Id: I8dc59d8f9ed92c146b8827d71278e27214e60f3a
72f0b67673adecd824bf177b680b20b93e3bc6ed 09-Aug-2012 Doug Zongker <dougz@google.com> tidy up building of recovery ramdisk image

Copy init.recovery.*.rc files (if any) from the main system ramdisk,
and hide all the commands.

Change-Id: I4d4fcf25b66ddea70e43282d466983e9643c9bea
9c649a7542ee3fda57a1836ad0ddcd8d19921f5b 09-Aug-2012 Ying Wang <wangying@google.com> Don't install overridden packages in pdk fusion files.

Bug: 6942063
Change-Id: I14fc25b22b13bceeea8fa48491465233b19ab106
629c87b832ce0fa536a3fb6bd4a5095655fddd29 08-Aug-2012 Colin Cross <ccross@android.com> recovery: don't delete hardware specific init*.rc files

init used to automatically execute hardware specific init.rc files from
init.<hardware>.rc. If the hardware specific init.rc file was installed
in recovery.img, various unwanted services would try to start, so init*.rc
was deleted when creating the recovery root directory.

init was recently modified to explicitly import init.${ro.hardware}.rc
from the default init.rc, rather than always trying to load it. Since
recovery replaces the default init.rc with a custom one, it will never
try to load hardware specific init files.

In addition, there are cases where we need to start hardware specific
services, for example watchdogd, so we need
init.recovery.${ro.hardware}.rc to be installed.

Modify the build rule to delete the default init.rc from the recovery
root directory so it can be replaced with the custom recovery init.rc,
but leave all the hardware specific init files in place.

Bug: 6953625
Change-Id: I5d9555e3d54d2f1d9f49fb981bd412c53741337e
4c97191bde16a22a50ef51eed6cf65bad1cd1602 02-Aug-2012 Doug Zongker <dougz@google.com> add extra args to mkbootimg

Arrange to take $(BOARD_MKBOOTIMG_ARGS) and pass it to all invocations
of mkbootimg from within make, and to store it in the target_files so
it can be used by future invocations of img_from_target_files and
ota_from_target_files.

Bug: 6918260
Change-Id: I7130ac52e96bd51d4d8b80ca036635e1626f01f1
d513160b76a189899ba01f87a3987b4c6f428cae 02-Aug-2012 Doug Zongker <dougz@google.com> add extra args to mkbootimg

Arrange to take $(BOARD_MKBOOTIMG_ARGS) and pass it to all invocations
of mkbootimg from within make, and to store it in the target_files so
it can be used by future invocations of img_from_target_files and
ota_from_target_files.

Bug: 6918260
Change-Id: I7130ac52e96bd51d4d8b80ca036635e1626f01f1
722266918f5b1152bab0a9c05790420d09229b29 01-Aug-2012 Keun young Park <keunyoung@google.com> add symbol files to PDK release for debugging

- app_process is not in PDK, and this makes native debugging difficult
So provide symbol file instead of source

Bug: 6774048

Change-Id: I1a3a86cf64d8f1d22cdb3a22714f508de963099b
7023f6179d09663b794cd113c5c57426a977a248 26-Jul-2012 Ying Wang <wangying@google.com> Fix build.

Set BUILD_EMULATOR to true when HOST_OS is linux.
Disable the emulator package target if BUILD_EMULATOR is not true.

Change-Id: I8987c0a091622baa0e861b451e635c4ddb148b29
7d8c535c1f63a97a9b77fa0b5d530778640a241c 26-Jul-2012 Ying Wang <wangying@google.com> Fix build.

Set BUILD_EMULATOR to true when HOST_OS is linux.
Disable the emulator package target if BUILD_EMULATOR is not true.

Change-Id: I8987c0a091622baa0e861b451e635c4ddb148b29
0173bc5ec804f33700a5158655611af817bd5770 26-Jul-2012 Ying Wang <wangying@google.com> Fix build.

Set BUILD_EMULATOR to true when HOST_OS is linux.
Disable the emulator package target if BUILD_EMULATOR is not true.

Change-Id: I8987c0a091622baa0e861b451e635c4ddb148b29
20b1d095936b4b4195e21fd0f7362d19f4050313 10-Jul-2012 rpcraig <rpcraig@tycho.ncsc.mil> Add mac_permissions.xml dependency.

Include the MMAC install perms policy configuration
file to the list of SELINUX dependencies.
This changes depends on the project:

git.selinuxproject.org/~seandroid/selinux/mac-policy

Signed-off-by: rpcraig <rpcraig@tycho.ncsc.mil>

Change-Id: Ief91d6a717741c91c5ba8745452bb247dc8048ec
f34a9bac0e6a3bcb8eb8820fc0f50c84728d1054 16-Apr-2012 Andrew Boie <andrew.p.boie@intel.com> core/Makefile: also look for device/*/build/tasks

This eases cross-repo dependencies between device/ and
vendor/.

Change-Id: I72e283d22f16e50555ec7ba7bcf9c61ea07f083c
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
9e43f348402adc8b079ad707540c7cecc02e23a8 05-Jul-2012 rpcraig <rpcraig@tycho.ncsc.mil> Add property_contexts to SELINUX_DEPENDS.

This ensures there is a dependency between the root image
and changes to property_contexts file.
Signed-off-by: rpcraig <rpcraig@tycho.ncsc.mil>

Change-Id: I9bd2c3fc44015d6013e6a1f200f8abded271654f
64661472209199f16d0da4503f9919bf66e71463 12-Jun-2012 Ying Wang <wangying@google.com> Don't build userdata.img in tests build.

Bug: 6035501

Change-Id: Ie1a0804f7fcc54383f2d8b97ac4583000e67cec5
ec5fe91ead27bf4bfb4e728222ac6d475f04a18b 07-Jun-2012 Raphael Moll <ralf@android.com> SDK: Use "strip -x" for atree.

Also fixes atree to accept an alternate command via the env var ATREE_STRIP
and correctly splits it for execvp if it contains arguments.

Change-Id: I8691bdc569bea3dddfde6249217dc305b6ef19f7
28a181759079c34f8776f98f553e56554b527069 02-Jun-2012 Ying Wang <wangying@google.com> Don't use .. to reference the target file.

Change-Id: I1d08db81c37853f5bf0bdf5dbe848634e6ae9f61
3e93aeae10aa70ab64e78fbab0bb8741d0b04d99 30-May-2012 Keun young Park <keunyoung@google.com> add platform.zip from platform-java to dist

Change-Id: I08e110edf70ef5ec313ee02e03803fa152f0aa6a
82eb7082aa9b7239770f1631211a3c18b6daacfe 29-May-2012 Ying Wang <wangying@google.com> Fix typo.

Change-Id: Id4b619e3fff8d801c4662d9cb2719576c370a503
816b9fd4e22843c836543522464782bece1305b8 16-May-2012 Keun young Park <keunyoung@google.com> enable PDK to use platform JAVA API

- make platform-java will add necessary Java stuffs from out/target/common/
to platform.zip
- make platform works as before: no Java libraries
- normal fusion build will pick up the file, and define TARGET_BUILD_PDK_JAVA
besides TARGET_BUILD_PDK if Java stuffs are included
- For TARGET_BUILD_PDK_JAVA, java.mk does not touch LOCAL_SDK_VERSION, which will lead into
pulling non-SDK Java APIs

Bug: 6482799

Change-Id: I90b1a0b06dc774150711680a6612f2b97b9eab3f
3ceecfa3daeb187c0631a84e6ee6b4dd89f111f8 14-May-2012 Ying Wang <wangying@google.com> Check the well-formedness of an xml file before copying.

Bug: 6491991
Change-Id: I3dbf9a7e1fefd9fea2636c78a85bae63ea8391b8
c312f3187175d870a3d20b26b0404a59cdb2da42 19-Apr-2012 Colin Cross <ccross@android.com> build: separate dist tools and ota tools

aapt is not needed for a dist build and not available in a pdk dist
build. Create a new list DISTTOOLS that dist builds depends on,
and change OTATOOLS to be DISTTOOLS plus aapt, which is build by
make otatools.

Change-Id: I9a39020640b0e2cade8073aa14ee2ada9a20d78b
4049130cbafad03124fca8bcc05d156e4351ed02 19-Apr-2012 Colin Cross <ccross@android.com> build: remove unused ota tools

genext2fs, tune2fs, and e2fsck are no longer used by mkuserimg.sh.

Change-Id: If3e9e846e021de0973bde2702e60acdc9f4c57c7
782610165fc0a23dee93d6a297746e284edbb7ea 19-Apr-2012 Keun young Park <keunyoung@google.com> enable recovery img build for PDK

Bug: 6363041
Change-Id: I25dff887dd0946c9506926e66e0514390c20692e
dc8f8e4a75031f2b9649363f2b5238bf03e8c51e 12-Apr-2012 Colin Cross <ccross@android.com> Merge event-log-tags from platform.zip with local *.logtags

PDK fusion builds will include system/etc/event-log-tags from a full
build from platform.zip, which needs to be merged into the event-log-tags
built locally based on *.logtags from projects that have source.

Bug: 6297675
Change-Id: I91409f37c6dc88d6942eade2946155c2a6640b6f
b3700ab773f4ba396a92cde194bbd7a7a13ac7aa 02-Mar-2012 Raphael Moll <raphael@google.com> Merge "SDK: Also read sdk/build/tools.OS.atree"

This allows us to have per-host OS (or OS + arch) atree files in case we
need to get tools which source varies per host OS, example:
- sdk/build/tools.linux.atree
- sdk/build/tools.linux-x86_64.atree
- sdk/build/tools.windows.atree
etc.

(cherry picked from commit 3ab307a68cbc30ab37d15f62e88dd19b51ac9632)

Change-Id: I05140bb02ecd41152e47ecdf404b1b8fb34fdf24
4534d8135a7596b74c9f47b040088f15a0b57553 10-Apr-2012 Ying Wang <wangying@google.com> Merge the NOTICE files when doing pdk fusion build.

Bug: 6297249
Change-Id: I693ab15e5a2eacda3c8b9d2ce36469ea177ae178
c4625abc5da15cf44306b0a2f6cb13e5fb4eae66 09-Apr-2012 Ying Wang <wangying@google.com> Fix deps for notice generation.

With "foo bar : req", the build command will be run separately for foo
and bar.
Instead with "foo : bar" and "bar : req", the build command will be run
only once to produce both targets.
Also running the same build command concurrently may lead to build race
condition.

Change-Id: I8af2817546a7e2697a553c9320bd10f6bd4f20a2
56882bf9b41dc7f8b98f1dea82633144546450b2 09-Feb-2012 Stephen Smalley <sds@tycho.nsa.gov> Support the setting of file security contexts in OTA and update packages.

Pass the file_contexts configuration to the releasetools scripts
so that the security contexts of files can be properly set for OTA
and update packages.

Requires Ica5fb73d6f2ffb981b74d1896538988dbc4d9b24

Change-Id: I5a63fd61a7e74d386d0803946d06bcf2fa8a857e
5042392262e891221164ce4afbb1127f26b7d629 13-Jan-2012 Stephen Smalley <sds@tycho.nsa.gov> Pass the file_contexts configuration to mkyaffs2image and make_ext4fs.

This configuration is used to determine the file security contexts
to set on the files in the yaffs2 or ext4 image that is generated.
This is similar to the android_filesystem_config.h tables for determining
the UID/GID/mode, but as a configuration rather than code.

Change-Id: I7c6f59fe7cb8bc4c86c8790f991b12dd93a61f68
3f45b3c35c41d71288dc4939cb48456dda26f8c0 03-Apr-2012 Ying Wang <wangying@google.com> Support to run DroidDoc in unbundled builds.

Change-Id: Ia5ace10ed75c451e346e289f0c534ad619abdb65
82b836fda6894ebfccccfbddc2ce3ee2718d862e 31-Mar-2012 Ying Wang <wangying@google.com> Support to build pdk and pdk fusion.

Bug: 6241618
Change-Id: I08f74019631e9e132c15cdb2916bbafb052f9aa6
4c289e5041270f4d697fa5f5b4c027ad07cfba0e 30-Mar-2012 Ying Wang <wangying@google.com> Generate platfrom.zip for build goal "platform".

Bug: 6241618
If platform appears on the build command line, build platform.zip,
which essentially is the zip package of the system directory.
Put the platform.zip to the dist dir if "dist" is specified too,
so the platform.zip can be downloaded from the build page.

Change-Id: I988dd5c753a4ee744b4e3dccf261d8df904d9847
f5a97d7fbbda5ec8ad4ea73a8035d7fa88bbe1da 29-Mar-2012 Daniel Berlin <dannyb@google.com> Moving notice file generation to a python script
(it was getting fairly complicated in bash),
update HTML output to have a table of contents,
and fix typos/bugs in notice file CSS

Change-Id: I51131f594e3bbe63f03165fa42f5ceeaec518543
7a5960555b229cca5a7d074ea9e139ebd5a6600f 24-Mar-2012 Brian Swetland <swetland@google.com> Introduce TARGET_BUILD_PDK for selecting build tweaks for the PDK

BUILD_PDK and some of the other infrastructure will go away once
we're done with the new new PDK work, but for now don't disturb
that stuff.

Change-Id: Ia39bf759ec03f203858ddcc4880af72bd132cb5a
74160ed4c4a2de9702738dbc5aaa17be91151ee1 22-Mar-2012 Raphael Moll <ralf@android.com> SDK atree: support HOST_OUT location.

Change-Id: Ib369280971b37a3eb35ac94991cdbc49dead903e
d14d3b4e64e627172670631f637d70cf0e9a297d 01-Mar-2012 Steve Block <steveblock@google.com> Add a comment about publishing licenses for third-party code

Change-Id: I21bee0bb78ab42b4f7b6a938f94653c7e21e8503
bf69aa32c9bbbd36ab6b5d8f7d407d324db9d309 14-Mar-2012 Ying Wang <wangying@google.com> Fix tests build.

Use the conditional only after the tests build variant is phased out.

Change-Id: Ide691700dda4bbf56c6f81f923d1b8c5eb196b85
160b670f4acfbcf85eb6baf1df156ada835a6a3e 14-Mar-2012 Ying Wang <wangying@google.com> Add build goal "tests".

Bug: 5368571
The phony build goal "tests" will eventually replace the build variant
tests.

Change-Id: Ia656f2cf2260feeaa8fa32e9221b7f9ce0990262
c5f049799c8f41136fcbed723482fb3bdc8579e5 13-Mar-2012 Ying Wang <wangying@google.com> Remove system partition files from the test zip file.

Bug: 6157562
Change-Id: I581c6db7d47b42617f8ef6097ccd0aae52c7e1b4
7fc7aad152ae595de371a5b969744ff3b971d81c 28-Feb-2012 Keun young Park <keunyoung@google.com> changes to add pdk1 / pdk2 build for PDK build
- additional files will be added to pdk/build
Bug: 6079146

Change-Id: Ieb5fcab8002193250d770b923f60ec7333ce84e5
3ab307a68cbc30ab37d15f62e88dd19b51ac9632 02-Mar-2012 Raphael Moll <raphael@google.com> SDK: Also read sdk/build/tools.OS.atree

This allows us to have per-host OS (or OS + arch) atree files in case we
need to get tools which source varies per host OS, example:
- sdk/build/tools.linux.atree
- sdk/build/tools.linux-x86_64.atree
- sdk/build/tools.windows.atree
etc.

Change-Id: I9a1256548345fb866b0750fce6810913413dd946
495e58502a60dde2c3b1407e2139ff798f2da26f 29-Feb-2012 Steve Block <steveblock@google.com> Revert "Remove unused notice_files target"

This broke the PRODUCT-sdk-(win_)sdk target of SDK builds

This reverts commit 620a5270fc77431b773f3cfe948c467e03a2c72e.

Change-Id: I81afe68ae98b5daac5fe136ec8d04f6fba5af9b4
620a5270fc77431b773f3cfe948c467e03a2c72e 29-Feb-2012 Steve Block <steveblock@google.com> Remove unused notice_files target

The notice_files target generates $(TARGET_OUT_INTERMEDIATES)/NOTICE.txt and
$(TARGET_OUT_INTERMEDIATES)/NOTICE.html. The former is not needed and the
latter is an explicit dependency of $(TARGET_OUT_INTERMEDIATES)/NOTICE.html.gz.
We can therefore remove the target and the logic to generate NOTICE.txt.

Change-Id: I6179c049bebe590c7298e8be0a30e30265423468
acf01ec8371dd1ef14d1f397aa13e86adaaa82cd 24-Feb-2012 Ying Wang <wangying@google.com> Issue warning when "make snod" with dexpreopt enabled.

Change-Id: I481f963634dd384ed6d3de73dfeeda92b37d227e
5ea72effbd944891708d2d6fb61055830e617701 07-Jan-2012 Jean-Baptiste Queru <jbq@google.com> Use the new location of the emulator kernel
a230c4d049258915f6614e7a3fadc2dcfec3e160 07-Jan-2012 Jean-Baptiste Queru <jbq@google.com> Reference kernel notice in the new location
193010cc8f0453ce266bbb57c950fa74d78eded7 16-Dec-2011 Ying Wang <wangying@google.com> Print out ignored PRODUCT_COPY_FILES

So that people know their files are not really copied in accident.

Change-Id: I8fab920483230a9f349304dcbdb2fb9d60ee0215
c48696770fb4eb0318ae2e270a2e68ccb8219654 16-Nov-2011 Ying Wang <wangying@google.com> Remove BUILT_TESTS_ZIP_PACKAGE's dependency on the image files

Change-Id: I99baaeffe099e8fbb9789fb01b26a9a563e1e90d
c6e952fec16c06e66a6825328304fa1dec93278b 16-Nov-2011 Ying Wang <wangying@google.com> Don't build userdata.img for tests build.

Change-Id: I2982223919267f7b98f47b002c435e443674729a
2a533178c1f1f10f6c7060b1cb63523582c1765b 16-Nov-2011 Raphael <raphael@google.com> SDK: pass $HOST_OUT variable to atree.

Required by Change Id623bbef45 in development.git

Change-Id: I43229f1e6aaeea176df92a499b9cda3237fb36b9
9f8e8db188371cb3787a91a03d193f87ad244ea3 04-Nov-2011 Ying Wang <wangying@google.com> Build cache.img on demand

Bug: 5153694
To build cache.img, set BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE (required,
ext4 only for now), BOARD_CACHEIMAGE_PARTITION_SIZE (optional) in
BoardConfig.mk.

Change-Id: I1d8b91646aa1dba88285e008ad3335768bcbddd2
c0debb9b5e2f2f5deb00fb7db5b5c03177b06460 02-Nov-2011 Ying Wang <wangying@google.com> Revert "Build cache.img."

This reverts commit 531bdb546af5127ed9c1012871d780930eb990f5.
531bdb546af5127ed9c1012871d780930eb990f5 01-Nov-2011 Ying Wang <wangying@google.com> Build cache.img.

Change-Id: I3dbe7afa4934fa718ba20605eebd2e3ce2ae82ab
178ef923ac1a9f9ad2039990832bd1eebe8df5af 01-Nov-2011 Ying Wang <wangying@google.com> Fix build.

Change-Id: I166d4e0c5cc4d2b58c7af3f0207b2d161a9d1715
bd93d425aedef907d8fef643b748897e9c7dceeb 29-Oct-2011 Ying Wang <wangying@google.com> Unify the user image building code

Bug: 5398808

Before this change we have duplicate code in the Makefile and the
python-based releasetool. That's a real headache to maintain.

Change-Id: I8ddf04a79c6886540e89d990f723d8f77c9dd883
e17f3f2b9e2069ee54bc24043881bf3ca14a2a05 05-Oct-2011 Doug Zongker <dougz@android.com> fix build fingerprint: dev-keys vs test-keys

The fingerprint should only say dev-keys if it's actually using custom
keys; builds with the old default (from build/target/product/security)
should still say test-keys.

Change-Id: Ib8c662c348cf63f5db47e2f8f81bc3246cb15fdc
49c6a2b5e4314bd8acfbca88cd43ea49a2c8c30e 05-Oct-2011 Doug Zongker <dougz@android.com> fix build fingerprint: dev-keys vs test-keys

The fingerprint should only say dev-keys if it's actually using custom
keys; builds with the old default (from build/target/product/security)
should still say test-keys.

Change-Id: Ib8c662c348cf63f5db47e2f8f81bc3246cb15fdc
cf0db94c87b2b3beca5cbf6b769fff73ed91c4d4 04-Oct-2011 Ying Wang <wangying@google.com> Support for product-specific dev keys.

Change-Id: Id577a72ee9f7cd70e8ca77efcbf10a37885c7d6f
fa2bf54a0450427bd26d1dcfb982fcbd550ac3a2 04-Oct-2011 Ying Wang <wangying@google.com> Support for product-specific dev keys.

Change-Id: Id577a72ee9f7cd70e8ca77efcbf10a37885c7d6f
3c21fe5b12d95fe374b9b8c874dc4c48b7f9fce1 04-Oct-2011 Ying Wang <wangying@google.com> Support for product-specific dev keys.

Change-Id: Id577a72ee9f7cd70e8ca77efcbf10a37885c7d6f
6886410210277294165dd9de95c7a56ce62547ac 29-Sep-2011 Ying Wang <wangying@google.com> Enforce no prebuilt apks in PRODUCT_COPY_FILES.

Bug: 5391935
Change-Id: I106ffc3277914e57cc1a6fb4cd782286d61b8013
f272cd6c2290160a13917a98388af1132443098c 26-Sep-2011 Ying Wang <wangying@google.com> Generate an empty target if there is no packages

Generate an empty target even if there is no packages defined in the
source tree. Such case can happen when building in an unbundled branch.

Change-Id: Id8b94bc00557cd5ea2066859e440427474ced5f5
4d2b9bf341e7978225d6a305c2524ff79f2d18c5 21-Sep-2011 Xavier Ducrohet <xav@android.com> Cherrypick 6de7bc61 from master. do not merge.

Copy notice file in the new system image folder

Change-Id: I66496f382b2d13b030de569b573630f3abe5b9de
6de7bc611babbcc29c529379779723b4bb6b55f5 21-Sep-2011 Xavier Ducrohet <xav@android.com> Copy notice file in the new system image folder

Change-Id: I4fafe5dc9dc1749de56267206a9b847a97e6a14b
541ba9e2f4546a96c55160144871b9233bc7bef2 20-Sep-2011 Doug Zongker <dougz@android.com> build the sqlite3 binary for use by the OTA tools

Change-Id: I2c6cc02dec74fdcedd3e2a6f3ddb1dfba657a883
25863d738ca171015a57a2154ff6ebe4ae8f5483 20-Sep-2011 Doug Zongker <dougz@android.com> build the sqlite3 binary for use by the OTA tools

Change-Id: I2c6cc02dec74fdcedd3e2a6f3ddb1dfba657a883
77fed26921ed7c083fc3f176e19b1f1d78ef80f1 15-Sep-2011 Raphael <raphael@google.com> Don't strip llvm-rs-rc in core/Makefile. DO NOT MERGE.

This is done in development/build/sdk.atree now.

Cherry-pick from master 469bbdf8c37a74e236d129faeaa5483838af9028
469bbdf8c37a74e236d129faeaa5483838af9028 15-Sep-2011 Raphael <raphael@google.com> Don't strip llvm-rs-rc in core/Makefile

This is done in development/build/sdk.atree now.

Change-Id: I2cd8e42192439851e1e42070cf74e6ee7c02ba59
e5e8c5f218c633b42b3814e36cd062eff099daed 10-Sep-2011 Ying Wang <wangying@google.com> Move forward installed-files.txt in the dependency graph

Bug: 5265104
- Move installed-files.txt forward to ahead of system.img in the
dependency graph, so that even if the system.img fails to build due to
too large size we can still get the size stats.
- Change the script tools/fileslist.py to sort items in decreasing size.

Change-Id: I5913bc51971e341ffbfcf3fa449c987f126e409b
23f8bde52dca769ad9d44f74450b32a017b0776d 07-Sep-2011 Doug Zongker <dougz@android.com> save uid/gid/mode information of boot and recovery files

Save these in the target_files so we don't have to depend on using the
contents of android_filesystem_config.h at the tip of tree.

Bug: 5266067
Change-Id: Ica5dd43a2013c9db72d7c9434f9d7de1abaf18f9
bdab41a16f63630672bde02af28d2e567578fb21 01-Sep-2011 Justin Ho <justinho@google.com> Add image size calcuations into the script

Change-Id: Ide13a873982bae21e2b8735a235389a660abd592
b139b6a1a550daa0df4e670ab3fa550be8204d2f 31-Aug-2011 Justin Ho <justinho@google.com> Calculate system image size at build, for harvesting later

Change-Id: I6bfcde0e5df3f6da453f28354839e356f9191c0e
557c51f2ea85993da1f6f8fd3322ee36d8110b64 25-Aug-2011 David 'Digit' Turner <digit@android.com> sdk: add DLL_EXTENSION as an atree variable

This patch defines the DLL_EXTENSION variable to the host
shared library suffix (i.e. either ".so", ".dll" or ".dylib")
when packaging the SDK.

This is required by another patch to sdk/build/tools.atree that
will use ${DLL_EXTENSION} to copy the GLES emulation host libraries
to $SDK/tools/lib

Change-Id: I120d39e905afb453b0702d5f0eb2707f214385cc
e33ba4c49ed461d608c65eb4e09d31ca81d167ff 12-Jul-2011 Jeff Brown <jeffbrown@google.com> Remove the simulator target from all makefiles.
Bug: 5010576

Change-Id: Ie814f4c8d3aa1e7cc7f5735822ab25542f36cf62
3248bb2e076cb26a71c6a08e9788b2853e1f5f97 23-Jun-2011 David 'Digit' Turner <digit@android.com> sdk: provide ABI-dependent atree files

Backport from AOSP master

This patch allows development/sdk/ to provide ABI-specific .atree
files. This is useful to copy prebuilt CPU model-specific files
to the SDK platform image directory.

This is needed to deal with the fact that for ARMv7 platform builds,
the kernel image to use is prebuilt/android-arm/kernel-qemu-armv7 instead
of prebuilt/android-arm/kernel/qemu

Change-Id: Ib76caa54a059eca2dafc9cdba812b29f98b5e3c3
Orig-Change-Id: Icdca751852c01421fccf196436a9bc1114ea90f7
f844ec96dd36f6fe3a1aa52c751bc0fbf1562222 31-May-2011 Bruce Beare <bruce.j.beare@intel.com> x86: qemu emulator is the default build target

Change-Id: I200536d2d997eda6a6e62eaa9050269e3c7ff6c4
Orig-Change-Id: I1fc3cb491d593d3e28f90278cfc8de5d77852932
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
Signed-off-by: Jun Nakajima <jun.nakajima@intel.com>
77ec16ae9e00a929b1925aeca9635dee5dbff0a0 23-Jun-2011 David 'Digit' Turner <digit@android.com> sdk: provide ABI-dependent atree files

This patch allows development/sdk/ to provide ABI-specific .atree
files. This is useful to copy prebuilt CPU model-specific files
to the SDK platform image directory.

This is needed to deal with the fact that for ARMv7 platform builds,
the kernel image to use is prebuilt/android-arm/kernel-qemu-armv7 instead
of prebuilt/android-arm/kernel/qemu

Change-Id: Icdca751852c01421fccf196436a9bc1114ea90f7
0b6ece9dafcf6f06dd4418829434cdc4376375a3 27-May-2011 Raphael <raphael@google.com> SDK: properly strip all SDK llvm-rs-cc linux binaries.

Change-Id: Id3f024e90ef04eff4cc13a2202fcc9e94c5ac72f
7e8d442ca4f716dd3a67a63ae59779a1e1a6b45f 18-Jun-2011 Ying Wang <wangying@google.com> Uniq the system properties.

If multiple items with the same key appear in a config variable,
only the first item is taken.

Change-Id: Icf57befafb36ec35dd4d48c8c3ec595f353f68e7
0d23fec792d2bc92417d2b2e716be73704efc240 09-Jun-2011 Mike Lockwood <lockwood@android.com> Add support for products overriding properties in /default.prop

We need this to allow products to specify the default USB configuration,
and allow the build system to add adb to this configuration
for eng and userdebug builds.

For example:

PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
persist.sys.usb.config=mtp

Change-Id: I83d7d918e57a8117eb96919e17d8ad52afdc0388
Signed-off-by: Mike Lockwood <lockwood@android.com>
9197a487b4a30bcbc6ef41471ca5aa03440dca1f 09-Jun-2011 Joe Onorato <joeo@google.com> post process the system properties

Change-Id: Ib78fe238d90dd4523326e4fa088d9333edc9e299
bd0c91c8b9d36fd3ed8d8ac7e66b3e1eee3bb0bb 16-Feb-2011 Raphael <raphael@google.com> Merge c4d4731b4dd306b74b9e2245b4983b6b3c5b866e: 'Build SDK repository'. Do not merge.

When the build is invoked with the fake target "sdk_repo" and
a main target of sdk, win_sdk or sdk_addon, we now create
packages in DIST_DIR that can directly be used to populate the
SDK Repository.
This is quite close to how we actually distribute the SDK.

Change-Id: I863ac8baf159432d7c95df46cba6e4f3b9122629
21a8b2459f60d71ccf70f2411b63673c0e4c5757 16-Feb-2011 Raphael <raphael@google.com> Merge c4d4731b4dd306b74b9e2245b4983b6b3c5b866e: 'Build SDK repository'. Do not merge.

When the build is invoked with the fake target "sdk_repo" and
a main target of sdk, win_sdk or sdk_addon, we now create
packages in DIST_DIR that can directly be used to populate the
SDK Repository.
This is quite close to how we actually distribute the SDK.

Change-Id: Id08a3a55a564938dbeb6e3dd170d4a9a7153ae6e
08ee4287ccd97e421265d001439496b950e15f0d 19-Feb-2011 Bruce Beare <bruce.j.beare@intel.com> x86: qemu emulator is the default build target

Change-Id: I1fc3cb491d593d3e28f90278cfc8de5d77852932
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
Signed-off-by: Jun Nakajima <jun.nakajima@intel.com>
74b0c368825d30f912e0058023b874fd62dbf3ff 23-Mar-2011 David 'Digit' Turner <digit@android.com> Support target-specific sdk/build/tools.atree extension.

The purpose of this patch is to add the ability to specify a
target-specific extension to sdk/build/tools.atree, under the
name sdk/build/tools.$(TARGET_ARCH).atree

This is needed to move x86-specific changes out of tools.atree
in order to fix the build of internal Android branches that
don't include other x86-related changes to the build system.

Another patch, following this patch, will fix the build itself
by moving the x86-stuff to sdk/build/tools.x86.atree.

NOTE: The root cause of the problem is that tools.atree
probably shouldn't be in the public AOSP repository, but
under development/build/ instead. However, fixing this
requires more drastic changes to the build system.

Change-Id: Ie365c55527bcad38e1e5248f618e2fd5a96431a1
5d4808db1630048f6eb0610b75af01c9fc877412 16-Mar-2011 Doug Zongker <dougz@android.com> put extra recovery keys in the product definition

Change-Id: I71637cd578b24891c10171aa59406848649be703
4216a8c94e320b7025acd6bf99bac4f9ae45c5c7 15-Mar-2011 Xavier Ducrohet <xav@android.com> Add the host notice file to the SDK platform-tools folder.

Change-Id: Id9e789fed635c6e5b43254f8ef6ec353302ca1be
18a130e98a654b99057d974f563a645dbb96010c 19-Feb-2011 Bruce Beare <bruce.j.beare@intel.com> x86: qemu emulator is the default build target

Change-Id: I1fc3cb491d593d3e28f90278cfc8de5d77852932
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
Signed-off-by: Jun Nakajima <jun.nakajima@intel.com>
9238d44c92b355bac6b7a13b23f298336338bf3d 03-Nov-2010 Ying Wang <wangying@google.com> Only copy once even if the first matched src:dest pair appears more than once.

Change-Id: I476923007dac1174371d6e6526d72182eb6c7243
a73b6561cee39ad416f4af327dbe72ec565d2423 04-Mar-2011 Ying Wang <wangying@google.com> Drop support for target files with no recovery.fstab.

Change-Id: I099298cfffc2546975732a3bf0df60f96ccbdac4
Meanwhile don't build the ota and update zip files if no recovery.fstab
found.
2adc50374a18197fed3d9c8181272b032e86640e 02-Mar-2011 Ying Wang <wangying@google.com> sdk.atree does not need DIST_DIR any longer.

Change-Id: I34d8f13e1ddc27f853e3f15cfe0351d780a47aa8
b48e7c400b66e5d7f8c298fd882f304d3ff1edc5 01-Mar-2011 Raphael Moll <raphael@google.com> Pass DIST_DIR to sdk.atree

Change-Id: I224781b13bfbf11de553d201b4c2214f93235a67
a34fa95c164a9388ed0b84b17a63241bffd4132a 23-Feb-2011 Doug Zongker <dougz@android.com> force inclusion of system log tags in the event-log-tags file

Change-Id: I59066ff151b6cb74a70bd8a900d473a533c84de3
1b5f1dc30fb62256f9c45344a4141c72abc4d164 18-Feb-2011 Ying Wang <wangying@google.com> Use shell variable, instead of makefile var.

Change-Id: I802b145b563145437135412473704f911c8c1474
c4d4731b4dd306b74b9e2245b4983b6b3c5b866e 16-Feb-2011 Raphael <raphael@google.com> Build SDK repository

When the build is invoked with the fake target "sdk_repo" and
a main target of sdk, win_sdk or sdk_addon, we now create
packages in DIST_DIR that can directly be used to populate the
SDK Repository.
This is quite close to how we actually distribute the SDK.

Change-Id: Ie7e0f789bafd73d5ee2461349155a6e562e2edd9
15e487a792d7c6f84f9bc84eefb966e9118229d7 15-Feb-2011 Ying Wang <wangying@google.com> Don't build everything for APKCERTS_FILE

Before this change, to build APKCERTS_FILE you have to build any modules
in the system first, which include modules that only need to be checked,
instead of being built. This can reduce the build time when "dist" is
specified.

Change-Id: I64bee67977adcaf7b7c8df3f8f6492c9c33bc69d
279f3084bbb4781d872412f5e49c74f462f7844a 09-Feb-2011 Ying Wang <wangying@google.com> Fix the case BOARD_FLASH_BLOCK_SIZE smaller than BOARD_NAND_PAGE_SIZE, eg generic_x86

Also don't build ota package for generic_x86.

Change-Id: I7606d56b312ac2e0c3514a8f250e005e0c05a3f1
7a6a9c3528d997a1cb3a03eca3c0c11b14792449 01-Feb-2011 Raphael <raphael@google.com> SDK: Strip llvm-rs-cc in SDK.

SDK Bug: 3394374

Change-Id: I2b0e46d9f94d488611bd79193f4a11cc0f36be51
39f4b566dab9f2cca3668493747114531b67a969 01-Feb-2011 Raphael <raphael@google.com> SDK: Strip llvm-rs-cc in SDK.

SDK Bug: 3394374

Change-Id: I728112795ad40a31a1b4c476e043ef213241c617
e121d6acf47c3056e079ff62c82171e889cec3e0 01-Feb-2011 Doug Zongker <dougz@android.com> support TARGET_EXTRA_RECOVERY_KEYS

Specifying one or more key files (without .x509.pem extension) as
TARGET_EXTRA_RECOVERY_KEYS causes them to be included as acceptable
keys for recovery packages. They are *not* included in otacerts.zip,
so actual downloaded over-the-air packages can't use them, but they
can be used to sign sideload-only packages.

Bug: 3413359
Change-Id: I6f248ffa35f0c6b125dd8a7517493017e236c776
008367111ee3429bfe33d8d8021493596d3c1d6a 14-Jan-2011 Ying Wang <wangying@google.com> Don't increase image sizes for the release tools.

So it keeps consistent with the command run in the makefile.

Change-Id: Id26fa3387aa9bbab88c4ef3fbd26aff0d039c2e1
7558ad55ce34db67cc17059faade2a5908e20c8a 05-Jan-2011 Raphael Moll <ralf@android.com> Pass OUT_DIR variable to atree.

Change-Id: Iabbe905341dfe970448682a9dcbb170a04ad5222
085a14698b5d99b0b93ac70ea428c3c9e2277be2 18-Nov-2010 Ying Wang <wangying@google.com> Product-configurable sparse ext images.

Also pass extfs sparse image flag to the release tool.

Change-Id: I79a6a71873634a231aa8990cee22374259601505
9cb8c2835232c8dc99cecca85a7e99bdee7109a9 06-Dec-2010 Lars Svensson <lars1.svensson@sonyericsson.com> Make image-size-from-data-size not use hard coded values.

The function image-size-from-data-size was using hard
coded values. The size of spare area and pages has become
configurable so we need to read from the variables.

Change-Id: I9461d34400ffc2cc5920860d8aa78750d559e397
c647aecabb9cf03d73cfc34836e3bfc886b54c2e 30-Nov-2010 Sriram Raman <sriramkraman@google.com> Add mkuserimg.sh, make_ext4fs to otatools

Change-Id: Id48d6643f4579d695685fe2595bd86a80a5083c3
e22ad6784ca5123fd0dcd6c1c18beb47bfd3ae20 12-Nov-2010 Claes Elgemark <claes.elgemark@sonyericsson.com> Added generic hook for loading vendor specific tasks.

With this change it is possible for vendors to create rules that depend on
targets defined in Android.mk files.

This makes it easier to decouple functionality from the core buildsystem.
Very much as is done within the build git for tasks like creating SDK addon,
Generating eclipse .classpath file etc can then be done for vendors as well.

You can add targets that could perform poststeps on produced modules.
E.g. Do static verification or documentation on modules of a certain type.
You can e.g. create a target that would resign and upload all apks to a
binary repository.

Change-Id: Ic0fa7b60b919ede3c59fa2885d1fd4be1e928c04
c5a07ce038d7aeb62a5c02886cd2ecbf56687e9d 18-Nov-2010 Ying Wang <wangying@google.com> Pass extfs sparse image flag to the release tool.

Change-Id: Icb2a1c4fddb2b6153298ba1b849016aa3d792773
542903a27b5837ce04d57e14d888b43b06e9d82f 18-Nov-2010 Ying Wang <wangying@google.com> Product-configurable sparse ext images.

Change-Id: Ifd0ac14d7df331c9f6f1e3eee0722e07b4ab199a
25939e224e1cc0522f9028d3decafa878c3b171c 09-Nov-2010 Joe Onorato <joeo@google.com> Set ro.build.characteristics to the value from PRODUCT_CHARACTERISTICS that's also passed to aapt.

Bug: 3144768
Change-Id: Ic1724c64d015de7a5c4f13709b91db51b8f10872
75947ef5efe12b6664bcec6528f528c6ee261b0b 03-Nov-2010 Chih-Wei Huang <cwhuang@linux.org.tw> Add version_defaults.mk to be a prerequisite of build.prop

The version_defaults.mk defines variables that may affect
the content of build.prop.

Change-Id: Iabb82459949bb6e7a91829c5b485aad331c50b72
462d26bd322ff934ed685da8939e4b63277a8987 03-Nov-2010 Ying Wang <wangying@google.com> Only copy once even if the first matched src:dest pair appears more than once.

Change-Id: I9bef6172a1123518e97e04190fb857f9ee2c7582
53871886bd5d3ab286f822b92b2a1c39fc9b4959 06-Aug-2010 Naseer Ahmed <naseer@codeaurora.org> build: Add spare size flag to mkyaffs2image

Change-Id: Ib3a915ba5296d31f88cdc81e13da02f281dbdb9f
09a00a672bb18dccc97af6090739ea275c39d8a3 20-Oct-2010 Ying Wang <wangying@google.com> Don't build update zip package if there is no kernel, or it's generic device.

Move the update package code block forward to be side by side with the ota package code,
so that they are built under the same condition.
Bug: 3116070

Change-Id: I8055909cc614bfbeee215d1b770a80f728e326ee
f51f24a6ea5d972dcaf60f882c26a0a08c9014fc 28-Sep-2010 Xavier Ducrohet <xav@android.com> Use the new sdk/build/tools.atree.

As the sdk.git project is branched differently from the rest
of the platform, it's important to be able to control what
goes in the tools folder of the SDK on a per-branch basis.

Right now development/build/sdk.atree control what goes in
the tools folder (coming almost only from sdk.git) which causes
problems when the development.git and sdk.git branches are not
in sync.

Change-Id: I9158501cd68783d593e49e5fdea7f17d19b0120f
026f1451ce0c92c4630ca2d2d95f2fb9d68e9568 28-Sep-2010 Ying Wang <wangying@google.com> Fix userdata partition's ext4 mount point to data.

Bug: 3041475
Change-Id: I07306cd9c90072626dfc132d6655618ae70e64be
ffd5087ec81a281b1299048b4282dad593ccd703 28-Sep-2010 Xavier Ducrohet <xav@android.com> Use the new sdk/build/tools.atree.

As the sdk.git project is branched differently from the rest
of the platform, it's important to be able to control what
goes in the tools folder of the SDK on a per-branch basis.

Right now development/build/sdk.atree control what goes in
the tools folder (coming almost only from sdk.git) which causes
problems when the development.git and sdk.git branches are not
in sync.

Change-Id: Ia0b0ea37f8a4904b3a7f7805a552eeb499a2c0ee
0235237805991b48831dc8add072a50c478b2fcb 27-Sep-2010 Ying Wang <wangying@google.com> Remove emulator-based dexpreopt logic from the build system.

Change-Id: Ic96cbd1ebb9fa65aa85bf77f18a31913625d7e1c
e7874c430895b9a4e631c89f1e7729da9264d167 18-Sep-2010 Ying Wang <wangying@google.com> Integrate dexpreopt into the build system.

Change-Id: Id67f85d0f5c8674f5bc22e431114ca73625811ef
c0434ac8b504df8a2f2a2828dc9b3f804c3dda72 21-Sep-2010 Doug Zongker <dougz@android.com> add recovery.fstab as dependency so it triggers rebuild (do not merge)

Make recovery image depend on the fstab file so it gets rebuilt when
fstab changes. Add support for "emmc" fstab partition type to
edify_generator.

Change-Id: Ic5df4e86c24321bf7d82a644e3e4770352e4f64b
9ce0fb6e59415669074896cfa01e1f0cf97979b7 21-Sep-2010 Doug Zongker <dougz@android.com> support for per-partition fs_type

Include the recovery.fstab file in the recovery image. Remove the
global fs_type and partition_type values from the target-files
key/value dict, and parse the recovery.fstab file instead to find
types for each partition.

(Cherrypicked from gingerbread w/some edits to resolve conflicts.)

Change-Id: Ic3ed85ac5672d8fe20280dacf43d5b82053311bb
258bf46ea6bb4f25d01fab1b783238589e5bbec4 21-Sep-2010 Doug Zongker <dougz@android.com> support for per-partition fs_type (do not merge)

Include the recovery.fstab file in the recovery image. Remove the
global fs_type and partition_type values from the target-files
key/value dict, and parse the recovery.fstab file instead to find
types for each partition.

Change-Id: I35ee2dd0989441dc2a704b63c1b32e598049acb5
37974731fcb4e32b1de5f213d34bd832ca889869 17-Sep-2010 Doug Zongker <dougz@android.com> consolidate target_files metadata into one key-value file

Instead of separate files for recovery api version, tool extensions,
and mkyaffs2 options, put those all in the generic key-value file.

Change-Id: Ib642311632844d52e4895fd4747093fc7e86232d
c77a9ad444d49e2ad777678cf5671f0a94f44ffb 16-Sep-2010 Doug Zongker <dougz@android.com> store user-visible image sizes in target-files

Do the yaffs-specific adjustments to image sizes in common.CheckSize,
instead of baking it into the image size stored in the target-files
package. Remove the special fs_type flag and fold it into the
"info_dict" we have for saving key-value pairs from the build system.

Change-Id: I6e63f3330f6277d9a946b22e66cadeb51203ba14
c19a8d5590a4ffd42b37ceaca2d779b48e481f99 02-Jul-2010 Doug Zongker <dougz@android.com> support for ext4/EMMC in target_files and OTA generation

Move the image sizes into a more generic key-value file. Make them
optional. Add additional key/value pairs describing what kind of
filesystem the device uses. Pass new fs-type-related arguments in
edify scripts when mounting and reformatting partitions.

Don't include all the init.*.rc files from the regular system in
recovery -- they aren't needed, and break recovery on some devices.

Change-Id: Ic1c651f754ed00ba1cffe8cf56c43f7f3b0ebfd7
671f5fb09f3510c16f73049cad9d8d6d652eaad8 16-Sep-2010 Ying Wang <wangying@google.com> Don't increase partition size for ext4 user images. [DO NOT MERGE]

Change-Id: I5b82e6f7bd1c25ce3b1a4c16409b61aa1be7f71f
135a120e3904d782623e4a3fc958ed098e8de384 15-Sep-2010 Doug Zongker <dougz@android.com> remove the system board name from the build fingerprint

Change-Id: I4cbbd03084b6ac24184b7475be3d34130094667d
db2cb63612af2bc9e8bd7ea6d33da2218a33de2d 15-Sep-2010 Ying Wang <wangying@google.com> Change "make PRODUCT-XXX-tests" to build only tests-build-target

Change-Id: Ib1a1a7b09ea6f1c3eea84394dcd6e3ebcda81e1a
9c76255031d4ecf7f587eec96eb5d9bf37ef19d5 10-Sep-2010 Ying Wang <wangying@google.com> Dist userdataimg and tests-zip-package for tests builds

So that the build server can run the following command to build and dist only the two packages:
make -j16 tests-zip-package userdataimage-nodeps dist showcommands TARGET_BUILD_VARIANT=tests TARGET_PRODUCT=passion

Change-Id: I03d7049582ec8537a389e80b7ecdcae6625222ea
570a0eeffb4c06084f21a058efb25271bb0cd1f6 10-Sep-2010 Ying Wang <wangying@google.com> Dist userdataimg and tests-zip-package for tests builds

So that the build server can run the following command to build and dist only the two packages:
make -j16 tests-zip-package userdataimage-nodeps dist showcommands TARGET_BUILD_VARIANT=tests TARGET_PRODUCT=passion

Change-Id: I03d7049582ec8537a389e80b7ecdcae6625222ea
0545c9160d0d3dde4675184609cc7656de5558b0 07-Sep-2010 Jean-Baptiste Queru <jbq@google.com> Revert "Allow properties with spaces in their values"

This reverts commit de3bfade571033b01fbaccac2f0fdf7193e8d3ee.
c637db16d83b2c248b1cf0122e2ba558ed95762c 21-Apr-2010 Doug Zongker <dougz@android.com> remove remaining amend support

Remove the remaining (unused and untested) support for generating
amend scripts. This means that you won't be able to OTA directly from
cupcake to gingerbread.

Change-Id: Iaf5295db92a42b336960d05295f48b67cb729337
de3bfade571033b01fbaccac2f0fdf7193e8d3ee 02-Sep-2010 Jean-Baptiste Queru <jbq@google.com> Allow properties with spaces in their values

This way, such properties can be set in product definition files
instead of having to live in system.prop, which eliminates the need
for system.prop

Change-Id: I25d9665f65436df8215940e46380deb31b8161ba
d421f57d22009e4d9ce71298c2f93636ff9e7d9d 26-Aug-2010 Ying Wang <wangying@google.com> Fix mkyaffs2image extra flags in the release tools.

Change-Id: I806e3e85ef89941edf04352331e25730c491c470
fb0a347b747a91173c8a9f845a0362e3f8a9701f 26-Aug-2010 Ying Wang <wangying@google.com> Disable building OTA package if there is no kernel.

Change-Id: I9a10cba92dd7f9cccd8cca58a5fa2d3a8b4620eb
68bb65177cc6839e985c0a54343f44494de61d62 26-Aug-2010 Ying Wang <wangying@google.com> Show command lines run by releasetools.

Change-Id: Ic204e6738781c191cd6cefefdb351f8a156b2309
4de6b5bfc89de95b18514e75329a2ec7491bebbd 25-Aug-2010 Ying Wang <wangying@google.com> Fix mkbootimg parameters for releasetools.

Change-Id: I6192743e9db415f5fe7f3b82081f8a82061254b3
ffff0028ae9a83893f71efa370d283e2247bcdd4 23-Aug-2010 Ying Wang <wangying@google.com> Pass pagesize to makebootimage.

Change-Id: I719d765245469921de105430fdd92d478ea48e82
065521be4fd6965058fbd599bb43fe13101fee7c 23-Aug-2010 Ying Wang <wangying@google.com> Backport ext4 support from master [DO NOT MERGE]

ext4 support is needed by crespo.

Change-Id: I604cb9ada526ce8ba6b3648171ac1d614a5519a9
ad3cf5f868fc36de0a4fa501f074d35a94496b27 22-Aug-2010 Ying Wang <wangying@google.com> Restore OTA for crespo. [DO NOT MERGE]

Change-Id: I2472942741bdb2e4fa5037883f6acbe6c4ca36c3
60d1ee3e539e02ba701b9ff647fd23aca18f890d 21-Aug-2010 Jean-Baptiste Queru <jbq@google.com> Better way to disable OTAs for crespo - DO NOT MERGE

OTAs need to be disabled for all products using crespo
hardware, not just a single one.

Change-Id: I961462e5e87bec8c59dafa13dbf0fdc96bab29ab
7daa91323139fa7c0435a07b0e3fad6056d0954b 21-Aug-2010 Ying Wang <wangying@google.com> Disable OTA for crespo [DO NOT MERGE]

Change-Id: I22c29226bb783fed34766e91d43edcf6e61a837f
e0a40217df12c274f591da212d30bf66c923524c 03-Aug-2010 Colin Cross <ccross@android.com> Pass partition sizes to make_ext4fs

Change-Id: I81e84ca02e4326989d25f7d43306c56cdc39348c
9dd4ba88eeb54966d9952c71b6fd78cbac8db3ba 03-Aug-2010 Colin Cross <ccross@android.com> Add dependencies on make_ext4fs

Change-Id: I6e3a6ba33fd9e0ce35137f6e2f60d01521af4cb9
efb21682668cfcd924560cb03a747d07d73892aa 24-Jul-2010 Ying Wang <wangying@google.com> Dist apkcerts.txt for unbundled builds

Change-Id: Ic381d846f020dc43f48f43581c0db5721f2e36f7
38d7f02c50aae9b1578b575cf6dd12d73249368a 21-Jul-2010 Ying Wang <wangying@google.com> Trim spaces.

Change-Id: Ic3c592ca9457748acf7f2c5e99dccd3ed62f5ee4
77c882ff88686d3cd312e7ed752ddcd7ad93a169 28-Apr-2010 Ying Wang <wangying@google.com> Allow PRODUCT_PROPERTY_OVERRIDES to override default locale.

Change-Id: I5147d687750a50cfc186e99a9a8c88d3b2eb1692
If PRODUCT_PROPERTY_OVERRIDES has set default locale, buildinfo.sh skips setting them.
http://b/issue?id=2243115
b75105315187ec2719bdc8adfdea6fc4f6b296ef 14-Jul-2010 Joe Onorato <joeo@android.com> Fix event-log-tags so we don't rebuild framework.jar because of an installclean.

Produce an event logs tag file for everything we know about, in order
to properly allocate numbers. Then produce a file that's filtered
for what's going to be installed.

Change-Id: Id0778aec0b4d045e8ff91ba2c9c8265e860eaba5
45ac4341515f7ff4d483cfb8e2fba8d3c2cb1f6e 24-Jun-2010 Bruce Beare <brucex.j.beare@intel.com> Refactor Stripper. Allow a stripper other than SOSLIM to be specified

Change-Id: I61137f5bb123dc5f610af9928ed3debdf85ba74d
Signed-off-by: Bruce Beare <brucex.j.beare@intel.com>
69ef5ce4f0e0adfac1ff12f8cc3dde65fab36486 11-Jun-2010 Bruce Beare <brucex.j.beare@intel.com> Create systemtarball either with bz2 or gz

Change-Id: I64e93872942e8dcad4a894a906be7912bb6da308
Signed-off-by: Bruce Beare <brucex.j.beare@intel.com>
52aac20307073b8149a31d01b0b295651ea4b042 05-Jun-2010 Bruce Beare <brucex.j.beare@intel.com> Create boottarball just like systemtarball

Change-Id: I97640bc973ab1d115499878a63bff48f80b326ec
Signed-off-by: Bruce Beare <brucex.j.beare@intel.com>
4e3c6686d15423a41a419b78143852eebfc2eb46 31-Aug-2009 Chih-Wei Huang <cwhuang@linux.org.tw> Add $(TARGET_DEVICE_DIR)/system.prop to be a prerequisite

If $(TARGET_DEVICE_DIR)/system.prop exists, it should be
a prerequisite of $(INSTALLED_BUILD_PROP_TARGET),
as the following rules state.

Change-Id: Ie395b6f08cef198c3f5c733a5b6ae5a458335a9c
b4c7d32cbac0ef36062c4e2f348b47e027610eef 02-Jul-2010 Doug Zongker <dougz@android.com> support for ext4/EMMC in target_files and OTA generation

Move the image sizes into a more generic key-value file. Make them
optional. Add additional key/value pairs describing what kind of
filesystem the device uses. Pass new fs-type-related arguments in
edify scripts when mounting and reformatting partitions.

Don't include all the init.*.rc files from the regular system in
recovery -- they aren't needed, and break recovery on some devices.

Change-Id: I40e49e65f0d76f735259e4b4fef882322cd739da
068986605b2afcd5e044b62f22ac6ecd5c15b519 18-Jun-2010 Ying Wang <wangying@google.com> A nothing-to-do build should do nothing.

Before this CL, ota_from_target_files is always executed even with no new change.

Change-Id: I29d6aef3c60e5b0229551a3bf22f2d31cb41f219
933abf15bcd66138ba4e5fba7071e239a8662c6b 16-Jun-2010 Ying Wang <wangying@google.com> extfs support for img_from_target_files

Change-Id: Ie3df70426066bff467792b8528bc4528eb6afe15
c79f4da0ef8a030d0aaf342e6107a4f4788471a4 16-Jun-2010 Ying Wang <wangying@google.com> Move definition of build-userimage-ext-target to build/

Change-Id: I313dc26e8c497797c3321627e13ae298b1e37723
18b75566429107b147368f8e392f6b25f975f5ee 14-May-2010 Guang Zhu <guangzhu@google.com> Squashed commit of the following (DO NOT MERGE):

commit 7401608f3b9b52b3348e32ec9fefe7583d6c2fa4
Author: Guang Zhu <guangzhu@google.com>
Date: Fri Apr 23 11:54:37 2010 -0700

collect emm meta files for emma instrumented build

when doing 'make dist', with EMMA_INSTRUMENT on the coverage.em files
generated for each module will be collected into one emma_meta.zip file

Change-Id: I382c39a97005e6cae5c79ad7eaef1c8857f658af

commit 8376d70938f6507d54b66fe5832a637aa883974e
Author: Guang Zhu <guangzhu@google.com>
Date: Wed Mar 10 15:48:03 2010 -0800

enhancement for building app with emma code coverage

* global filter to avoid applying instrumentation on emma classes
* remove local variable information at dex step instead of compile time

Change-Id: If04c27bc717f34816077a98ead9ceb0dbcbb0d2f

Change-Id: I971bd0f291bede2568b21347247d37a7d035c661
144b028eac600bdf4817648dd23c577abba01134 10-May-2010 Colin Cross <ccross@android.com> Fix dependencies on ext2 user images

Change-Id: I0efca76ef0c38db40c41be573457b788b7b8d451
0a7b2c5c13dfd3d3c38bceb79fa2bd4a360addf8 07-May-2010 Colin Cross <ccross@android.com> build: Add support for ext3 and ext4 images

Change-Id: I63b36bfa0036419df92a60a1f8f7b0a7e6b1b62e
a37a2cb23159709260f248b46428987c9aeb2998 28-Apr-2010 Ying Wang <wangying@google.com> Dist only if the goal is to be built

Change-Id: I1b794f36a6dc39ce68cc990b967d2d55118c92ca
http://b/issue?id=2635603
0198d6ebb457d11797deb414c51b8897c67f7f10 23-Apr-2010 Guang Zhu <guangzhu@google.com> collect emm meta files for emma instrumented build

when doing 'make dist', with EMMA_INSTRUMENT on the coverage.em files
generated for each module will be collected into one emma_meta.zip file

Change-Id: I382c39a97005e6cae5c79ad7eaef1c8857f658af
9ca1628e3f565607e1fdef71b570d3ddb5ec09df 17-Apr-2010 Raphael <raphael@google.com> Support building Windows SDK under Linux.

- envsetup.mk & config.mk: we define a new BUILD_OS and a minimal set
of things like BUILD_OUT to be able to use some local tools when
doing cross-compilation. This allows us to use the Linux version of
ACP when cross-compiling the tools to Windows.

- Makfile: include windows_sdk.mk when needed to build a Windows SDK.

- main.mk: support a win_sdk target (e.g. PRODUCT-sdk-win_sdk)

(Merge master Change I9d08d0df)
3d224a0fc9ed34ac4c3c79c479d5c6dc5c31b87c 17-Apr-2010 Raphael <raphael@google.com> Support building Windows SDK under Linux.

- envsetup.mk & config.mk: we define a new BUILD_OS and a minimal set
of things like BUILD_OUT to be able to use some local tools when
doing cross-compilation. This allows us to use the Linux version of
ACP when cross-compiling the tools to Windows.

- Makfile: include windows_sdk.mk when needed to build a Windows SDK.

- main.mk: support a win_sdk target (e.g. PRODUCT-sdk-win_sdk)

Change-Id: I9d08d0df598b8a7292532d23c55f48101a95a240
6717059ccc85272163b7e4ea4954cb8f3b59530a 21-Apr-2010 Doug Zongker <dougz@android.com> don't use the -m option when building OTA packages any more

The -m option no longer exists; we only support one OTA package script
language in gingerbread.

Change-Id: I9b532a30f8c3b297b8ffdb2a570a24db37f056d1
139e33243bbe92858f39919c220a4d65fe8790bd 01-Apr-2010 Ying Wang <wangying@google.com> Add symbols.zip and build.prop to sdk dist.

Change-Id: I667f5ef847a6e8e78c6b3df5c2b092bb5d863955
http://b/issue?id=2394164
910dcbebc07a63debb0848e7cc157664508016ff 25-Mar-2010 Ying Wang <wangying@google.com> Cherry-pick 6f1c75849c4b101b55ae624755e43293724ce76e from eclair

Change-Id: I21a69669935d838595b2fa01c5be10e6c1975da9
283e2a1e1bae4e21824969a15da6420204633ddd 16-Mar-2010 Doug Zongker <dougz@android.com> store filesystem config info in target files at build time

Store a dump of the desired uid/gid/mode for every system file in the
target_files zip. Modify ota_from_target_files to use this stored
information when it is available, instead of running fs_config from
the current client (which might be out of sync from the one where the
target_files zip was built).

b/2516887 - New android_filesystem_config.h needed

Change-Id: I8409a0265d1d50daad9c2bc033c99b74b8931b20
518ce5753a95355eccf396f8ed9c36960c83274b 02-Mar-2010 Jean-Baptiste Queru <jbq@google.com> De-dupe PRODUCT_COPY_FILES

This allows to explicitly deal with situations where we
want to use PRODUCT_COPY_FILES to manage overrides.

Change-Id: I2f87862e19b973f090099f335e9bdeb0c9f3bfe9
75e326486763e9b0a764a837cae38719b79cb329 25-Feb-2010 Jean-Baptiste Queru <jbq@google.com> Don't build OTA package for aosp_emulator_us

This allows "make dist" to work on that configuration.

A better fix would be to allow each product to specify
whether it's an emulator target or a device target, and
to adapt to that, but that'd be a lot more intrusive.

Change-Id: I47708025204a4991466abceb1708a3020a543238
7e2f13b43a4a80f0739913368d4f21616caa33db 17-Feb-2010 Doug Zongker <dougz@android.com> build the event-log-tags file for the simulator

Change-Id: Idfbc8257e5e3651fe92649d59305f0e24ba60c91
1181898e547c16dc2fe2f81990f0d481e523f45f 05-Feb-2010 Dima Zavin <dima@android.com> core: pass nand page size to mkyaffs2image based on BOARD_NAND_PAGE_SIZE boardconfig var

Change-Id: I6feefba15eb1562161e38df03223cb2fba4eb7ee
Signed-off-by: Dima Zavin <dima@android.com>
7ba6359d3f09a0b2760265f0b41e8a2208251347 13-Jan-2010 The Android Open Source Project <initial-contribution@android.com> android-2.1_r1 snapshot
f6a53aa5f24878ad9098409ed3d3f41bb5c63fb5 16-Dec-2009 Doug Zongker <dougz@android.com> add "EXTERNAL" as special value of LOCAL_CERTIFICATE

Setting LOCAL_CERTIFICATE to "EXTERNAL" now marks an apk (either a
prebuilt or otherwise) as needing the default test key within the
system, but one that should be signed after the target_files is
produced but before sign_target_files_apks does the rest of the
signing. (We use this to ship apps on the system that are signed by
third parties, like Facebook.)
672b05c47cc703c984cf3afd6318cbeb24e3b80a 04-Dec-2009 Doug Zongker <dougz@android.com> make build depend on event-log-tags file

Oops, I forgot to make the build actually require the event-log-tags file.
9bd4962af87257c6a97e9026af7e4764394412c2 30-Nov-2009 Doug Zongker <dougz@android.com> break up event-log-tags; generate java source files with constants

Construct the /system/etc/event-log-tags file by unioning together any
*.logtags files included in LOCAL_SRC_FILES throughout the system (with
appropriate error checking for dup tag numbers, etc.)

For java packages, generate a java source file from the logtags file for
that package that contains static integer constants for each tag name.
1ae988040777f88f766fc421af79a61175e917af 18-Nov-2009 Xavier Ducrohet <xav@android.com> Change where makefile looks for sdk_clean.sh
e6b4e5b20ac8a3b01f1a99dd877a98c92036ce5e 13-Nov-2009 Jean-Baptiste Queru <jbq@google.com> eclair snapshot
2edfb71d01bff3632598e66eae7a32d656af8447 07-Nov-2009 David 'Digit' Turner <digit@google.com> Support secondary CPU ABI in build.prop

BoardConfig.mk typically defines TARGET_CPU_ABI to the name of the
native machine code CPU ABI supported by the target device. For example,
existing devices today use the value 'armeabi' corresponding to an
ARMv5TE instruction set with soft-float implementation.

This patch allows this file to also define TARGET_CPU_ABI2 to name
a secondary (minor) CPU ABI also supported by the device. This is useful
when the main ABI is ARMv7-A (identified as 'armeabi-v7a') which also
supports ARMv5TE. Such devices should have TARGET_CPU_ABI defined to
'armeabi-v7a' and TARGET_CPU_ABI2 defined to 'armeabi'.

TARGET_CPU_ABI2 will be translated into the ro.product.cpu.abi2 property
in build.prop. This value will be used by the PackageManager to handle
"fat-binaries" generated with the NDK.
c18736b1a777c386dc3c5e3f878249770b5edd78 30-Sep-2009 Doug Zongker <dougz@android.com> remember device-specific releasetools extensions in target-files

Store the location of the releasetools extensions in the target-files
zip, and make ota_from_target_files use that stored location by
default (though it can still be overridden with -s if desired).
6dd2ae02c1a117f7494d8b880fdc6c35572adaa8 26-Aug-2009 Doug Zongker <dougz@android.com> turn down allowed image size

yaffs appears to reserve 5 blocks on the partition for itself.
Account for this when computing the maximum allowable image size.
ecfad666e365f8606adc44a2e215c1b8863e895a 08-Aug-2009 Doug Zongker <dougz@android.com> use *_PARTITION_SIZE instead of *_MAX_SIZE

Make BoardConfig.mk store the size of the partition rather than the
maximum size of the image that can be flashed there, because the
function used to do the conversion isn't available when BoardConfig.mk
is read any more.
8510a1e0d7d45179e5fa19bebf26d022ec4c4e91 08-Aug-2009 Doug Zongker <dougz@android.com> use *_PARTITION_SIZE instead of *_MAX_SIZE

Make BoardConfig.mk store the size of the partition rather than the
maximum size of the image that can be flashed there, because the
function used to do the conversion isn't available when BoardConfig.mk
is read any more.
630b7d3ffaac72873f5b91e7e215daa9c2818935 08-Aug-2009 Brian Swetland <swetland@google.com> build: do not attempt to build recovery.img for TINY_ANDROID builds

Signed-off-by: Brian Swetland <swetland@google.com>
1e96ac8430da922332e4c85e7eed0e95442ff2ce 24-Jul-2009 Sriram Raman <sriramkraman@google.com> Make the recovery.img construction (from boot.img) logic depend on whether recovery.img was installed.
Don't have to re-specify exclusion list for the patch file construction.
b11428e53bc05165f372ff1786d39379ce6df679 24-Jul-2009 Sriram Raman <sriramkraman@google.com> Fix generic-userdebug build (don't build OTA for this target).
3455a3d4a1b5f59ccbcc2ac7268d11b03861c229 24-Jul-2009 Doug Zongker <dougz@android.com> don't try to build recovery patch in generic build
b003d89ee3a6d39a0ad3ca6e9c8a61f39ef3b92a 24-Jul-2009 Doug Zongker <dougz@android.com> make path explicit when running imgdiff

The build servers don't run "lunch" before building, so they don't
have the same path as everyone else. Explicitly set it when running
imgdiff.
22bc517cdfb6b7ee5f90f61de425516c1d7b0245 24-Jul-2009 Doug Zongker <dougz@android.com> fix imgdiff/bsdiff dependencies

These should be regular dependencies, not order-only ones.
7a7cd0d8a3ee6d061d7b505583cb791eec6124f5 24-Jul-2009 Doug Zongker <dougz@android.com> fix system size calculation for SDK build

The SDK build doesn't have recovery, don't try to generate a patch or
include it in the system image size calculation. Also there's a
dependency on bsdiff that was omitted.
73ef8257ce54ce1ddc2d4cfc3b3814ca734c0e11 24-Jul-2009 Doug Zongker <dougz@android.com> use a binary patch to install recovery from system

Instead of storing the whole recovery image in system in order to
flash it on first boot, we instead use an imgdiff patch from the boot
image to create the recovery image. This is substantially smaller
since it effectively only stores the recovery binary and UI images
(the kernel and the init binary are identical to that of the boot
image).

This change modifies the OTA-building script to create and install
these patches, and changes the calculation of the system image size in
the Makefile to reflect the new scheme.
6c770467fb4faad2c252c9c1b881ec0f253a3059 23-Jul-2009 Doug Zongker <dougz@android.com> applypatch changes for patching recovery image

Make some changes needed to applypatch in order to store the recovery
image in the system partition as a binary patch relative to the boot
image:

- make applypatch use shared libraries, so it's smaller. It will
need to be on the main system so it can install the recovery
image. Make an applypatch_static binary for use in recovery
packages (still needed for updating cupcake devices to donut).

- output the results of patching to an in-memory buffer and write
that to the partition; there's no convenient /tmp for us to us.
(This should be basically a no-op in recovery, since /tmp is a
ramdisk anyway.)
8cebf1ff7836a5dc365e49f7a14d7546a651d9c7 08-Jul-2009 Doug Zongker <dougz@android.com> fix mislaid 'if' in recovery

When I moved the building of the recovery image upwards in the file, I
moved an 'endif' surrounding it but not the matching 'if'. How did
this ever work?
4647f12a4ff9dc54247184f17ff3de1cc423f213 02-Jul-2009 Doug Zongker <dougz@android.com> fix image size tests

There are currently two errors in the way we test the size of built
images against the size of the partition on the hardware:

- the limits in BoardConfig.mk are set with the data size only, but
images contain an extra 64 bytes per 2048-byte page. This means we
think the partition is about 1/32 smaller than it really is.

- when we deliver a build via OTA, the system partition ends up with
one more file than when it's flashed via fastboot. That file is a
copy of the recovery image. In order to be able to OTA a build, we
need to make sure the system partition has enough room for all the
system files plus the recovery image as well.

For the kila system partition, these errors are roughly the same order
of magnitude -- about 2MB, one in the "safe" direction, one in the
"unsafe" direction. This change fixes both to give us a more accurate
notion of how close we are to the limit.

Make the build emit a warning (but not fail) when the size is within
32kb of the limit.

Also, include the values of the partition size limits in an info file
in the target-files package, so post-processing tools can use them
without parsing the BoardConfig.mk file.
659fc55e4495d1dfc88e93c7a1cd291518dc7cd3 23-Jun-2009 Doug Zongker <dougz@android.com> pass correct -s and -m options to release tools

When building an OTA package, TARGET_RELEASETOOLS_EXTENSIONS can be
set (in BoardConfig.mk) to specify where the device-specific
releasetools code is located. (The default location is the common
directory for the device's vendor.) The TARGET_OTA_SCRIPT_MODE can be
used to override the default script mode ("auto") for a particular
device.
e01100c7ac15bd884ca02c64f42b908b93e37c26 20-Jun-2009 Doug Zongker <dougz@android.com> generalize the definition of a "radio image"

Non-HTC devices may have multiple files constituting their "radio
image". Generalize the INSTALLED_RADIOIMAGE_TARGET variable a bit:
initially define it as empty, then let AndroidBoard.mk files add to
it. Provide a convenience function add-radio-image for them to call
to add files. Put all those files into the target_files zip for use
in OTA and fastboot package construction.

Note that for HTC devices, this changes the name of the radio image in
the target_files zip: instead of "RADIO/image" it will be
"RADIO/radio.img". Tools that use the target_files zip will need to
be changed.
c494d7cee85d980647ca915ea64355b71fe817eb 18-Jun-2009 Doug Zongker <dougz@android.com> generate OTA packages that use edify

Split the details of generating script syntax into a generator class:
one for amend (whose output should be equivalent to the current
output), and one for edify.

Fix 'otatools' build rule to build imgdiff.
602a84e0bbf1807a9403cfa50184241f6fc035c4 18-Jun-2009 Doug Zongker <dougz@android.com> fix releasetools for non-linux architectures

The ota and img building scripts contained some hardcoded 'linux-x86'
paths. Remove and replace with a slightly redefined -p option.
Modify Makefile to pass correct -p when building.
b1134dd04900416e74bc1ee51f65d4e066d90334 18-Jun-2009 Doug Zongker <dougz@android.com> remember in the target-files package what version of the API recovery uses
38a649f873da8d4df7df14619cbd967570d2de9b 17-Jun-2009 Doug Zongker <dougz@android.com> handle BOARD_KERNEL_BASE in releasetools

Some devices define a BOARD_KERNEL_BASE argument which must be given
as an argument to mkbootimg when building a bootable image. Store the
value of this var (if any) in the target-files zip and use it when
building images.
dddd957c74ead7246026e618ab40edf92037aad4 16-Jun-2009 Doug Zongker <dougz@android.com> explicitly list SDK image dependencies

The SDK build used to have the update package as a dependency, in
order to force various image files to be built. Now the the update
package can't be built for sdk-eng, list the individual images needed
instead.
367910fc6dd41e1d84789b305e6bd9cbafb78fbc 16-Jun-2009 Doug Zongker <dougz@android.com> don't build ota or update packages for sdk or sim
37c0e274d16b1b340f1fe1bd7d11e19aa2e73e26 16-Jun-2009 Doug Zongker <dougz@android.com> fix building of otacerts.zip

Was using a variable which was only defined inside the rule, outside
the rule. Change to use the correct variable.
8678df4c064a17575137bbacf8f5856052dd5bd7 15-Jun-2009 Doug Zongker <dougz@android.com> use releasetools scripts to build update and OTA packages

Use the python scripts in build/tools/releasetools (that are used to
build signed releases) to build packages within the Makefile as well.
a406c1e7a1ae22945d2b8bb766d46b7e3544e039 13-Jun-2009 Doug Zongker <dougz@android.com> build 'updater' binary for use in OTA packages
8b70e8c6574e6e6e80aaa84fe1a9426995fa0a78 27-May-2009 Doug Zongker <dougz@android.com> use minigzip instead of system gzip in the build

Use zlib's minigzip utility, built as part of our source tree, instead of
whatever installation of GNU gzip happens to be on the user's machine.
Using zlib's deflater, which is nicely available as a library (unlike
GNU gzip's deflater) will ultimately let us do binary patches to the
boot and recovery images.
ecc70d705ab8ad6461f23d8be97791227f4219ea 22-May-2009 Dianne Hackborn <hackbod@google.com> Define TARGET_CPU_ABI for finding native code in .apks
fbd10d940d9dca8aba940f91fceade4098c6cb92 20-May-2009 Robert Greenwalt <robdroid@android.com> Add PRODUCT_DEFAULT_WIFI_CHANNELS build var.

Allows the build to specify the default number of allowed
WIFI channels. Part of the fix for 1625953.
9537884b0dabe81bf612c79d12c7b4bf40de10a5 08-May-2009 Dianne Hackborn <hackbod@google.com> Add new property for dev codename, update version to Donut.
6ea3b8856d656752c0310ca237ed99e7451be83b 08-May-2009 Dima Zavin <dima@android.com> core: Recovery image should have the custom kernel base as well.

Signed-off-by: Dima Zavin <dima@android.com>
1e0847c2fcbe1b95464f32a719d2b9e620d1e6ec 08-May-2009 Dima Zavin <dima@android.com> core: Allow the board config to specify the kernel base address for mkbootimg

Signed-off-by: Dima Zavin <dima@android.com>
7b2845ab1a47324a6fb25261048510e79656a732 30-Apr-2009 Joe Onorato <joeo@android.com> Don't rebuild the NOTICE files when building with mm, mmm, etc.
eb19b3e0d1189cc7833f185a067c9f80b5487707 14-Apr-2009 Joe Onorato <> AI 146003: am: CL 145850 am: CL 145512 SDK add-on updates
- rename the directory and zip file
- make it build to the dist directory
Original author: joeo
Merged from: //branches/cupcake/...
Original author: android-build

Automated import of CL 146003
03fbe40d5346eb4d5258aa55a00a9a7cb18f8551 13-Apr-2009 Joe Onorato <> AI 145850: am: CL 145512 SDK add-on updates
- rename the directory and zip file
- make it build to the dist directory
Original author: joeo
Merged from: //branches/cupcake/...

Automated import of CL 145850
214a42bbb6e60f1231aa178c114a55dbe363c845 10-Apr-2009 Joe Onorato <> AI 145655: am: CL 145618 am: CL 145333 Cloned from CL 144759 by 'g4 patch'.
Original change by joeo@abreu on 2009/04/06 19:54:13.
Implement SDK add-ons in the build system.
- Add an option to use the standard javadoc doclet instead
of droiddoc, since droiddocs non-sdk templates aren't
ready for prime time.
- Add the notion of a stubs for a library. It's only
implemented for java libraries, but when we do native
libraries in the NDK or sdk-addons, it will work there too.
Original author: joeo
Merged from: //branches/cupcake/...
Original author: android-build

Automated import of CL 145655
64d85d0d827489c514f6aec075482563c80cda73 10-Apr-2009 Joe Onorato <> AI 145618: am: CL 145333 Cloned from CL 144759 by 'g4 patch'.
Original change by joeo@abreu on 2009/04/06 19:54:13.
Implement SDK add-ons in the build system.
- Add an option to use the standard javadoc doclet instead
of droiddoc, since droiddocs non-sdk templates aren't
ready for prime time.
- Add the notion of a stubs for a library. It's only
implemented for java libraries, but when we do native
libraries in the NDK or sdk-addons, it will work there too.
Original author: joeo
Merged from: //branches/cupcake/...

Automated import of CL 145618
15ca0bd5d0a028fd8e42f72a45f17d8e1ee67485 09-Apr-2009 Joe Onorato <> AI 145512: SDK add-on updates
- rename the directory and zip file
- make it build to the dist directory

Automated import of CL 145512
8bbfe659d76266a8d45e19793d22e34dccfe6610 09-Apr-2009 Joe Onorato <> AI 145333: Cloned from CL 144759 by 'g4 patch'.
Original change by joeo@abreu on 2009/04/06 19:54:13.
Implement SDK add-ons in the build system.
- Add an option to use the standard javadoc doclet instead
of droiddoc, since droiddocs non-sdk templates aren't
ready for prime time.
- Add the notion of a stubs for a library. It's only
implemented for java libraries, but when we do native
libraries in the NDK or sdk-addons, it will work there too.

Automated import of CL 145333
32a27c85770ccf823e6383ddeec5104a8e7f3c2d 02-Apr-2009 Doug Zongker <> AI 144157: Manually integrate 144143 from donut to fix build.

Automated import of CL 144157
7cb8e199b45659489c0073d0aecae75d07f92710 02-Apr-2009 Doug Zongker <> AI 144132: am: CL 144130 Don't build OTA package keys into the recovery binary; read
them from an external file in the recovery image. Use the
test-keys for all builds.
Original author: dougz
Merged from: //branches/donutburger/...

Automated import of CL 144132
934de9b7586940d70bad31cb218c211505183048 02-Apr-2009 Doug Zongker <> AI 144143: Define OTA_PUBLIC_KEYS to be the test keys in the otapackage
target as well.

Automated import of CL 144143
17c83cf22c426c628b4b21bc65128a0d80866d31 02-Apr-2009 Doug Zongker <> AI 144130: Don't build OTA package keys into the recovery binary; read
them from an external file in the recovery image. Use the
test-keys for all builds.

Automated import of CL 144130
4bb2b38d7d30b2d87ed35c4f892d1bf4bbef883e 25-Mar-2009 Sriram Raman <> Automated import from //branches/master/...@142411,142411
7b64124f0baabfa7216727a03e23fa1330fc6fad 25-Mar-2009 Sriram Raman <> Automated import from //branches/donutburger/...@142410,142410
09591102d0ee841119be3744698c86b4a0a7d1f3 25-Mar-2009 Sriram Raman <> Automated import from //branches/cupcake/...@142409,142409
88b607994a148f4af5bffee163e39ce8296750c6 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
05806d7af62e07c6225b2e7103a1b115ecf6c9ad 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
094268cf8cb37b9d904c8a1e3559cdd46d73cf66 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@132589
a9b22497534d404bf956cdcc0941e20057219a2a 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@137055
4d23ccc023c8b98eb97a7cce820aa80bff2f3522 20-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@132569
41977d7cd2f0676a1b135a0991545721d6dce3ef 19-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@132276
475fa12adef8fc2b08290555a33dc8a9fef05be4 11-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@130745
35cfb08c588ba0af98ad0845ced6a9eeeeca4054 22-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@127436
ed18741e07c5e344ff3375a293100ffb29f19b51 20-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@127101
66339ad5cebeae8f4cbf7e335c67368abbb91223 16-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@126645
dcc08f073b6873c69ab891d4f69f7c568e282df7 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
d858fe8e02e6b25c1ea229864d743176c4ac9362 28-Oct-2008 Bill Napier <napier@google.com> Changed dexpreopt/Config.mk to use new (correct) path.
b6c1cf6de79035f58b512f4400db458c8401379a 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution