Commit Graph

3614 Commits

Author SHA1 Message Date
Colin Cross
bff3c9b4c1 Merge changes I1de10391,I4399ca26,Iec3b2b0b
* changes:
  Use libstdc++ for ijar
  Build ijar for apps build
  Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files
2015-12-01 00:00:36 +00:00
Tao Bao
94792ca281 Merge "releasetools: Allow logging the diff for incrementals." am: 6d6e0481fa
am: e88245ddf0

* commit 'e88245ddf0a4920ff90866b9d66b2a3e4bd89f18':
  releasetools: Allow logging the diff for incrementals.
2015-11-30 20:18:45 +00:00
Tao Bao
e88245ddf0 Merge "releasetools: Allow logging the diff for incrementals."
am: 6d6e0481fa

* commit '6d6e0481fa86cb552e1b386e5449fe1fde2325cf':
  releasetools: Allow logging the diff for incrementals.
2015-11-30 20:15:39 +00:00
Tao Bao
d62c603573 releasetools: Allow logging the diff for incrementals.
Add an option "--log_diff <filename>" to ota_from_target_files.py
script. When enabled, it logs the differences between the source
and target builds into <filename> when generating incremental OTAs.

Also move target_files_diff.py into releasetools/ so that it can be
packed into otatools.zip.

Bug: 25372309
Change-Id: Ifd4ed0f2f12ef040ee377621ec8c35a873cec34f
2015-11-30 11:26:40 -08:00
Colin Cross
b15149cb2f Use libstdc++ for ijar
For some reason ijar won't build against libc++ for TARGET_BUILD_APPS
builds, but does build with libstdc++.

(cherry picked from commit 718bab6aec)

Bug: 25904002
Change-Id: I1de103918faa5bb574af6f12cc954e7fed44dc62
2015-11-30 11:16:30 -08:00
Shinichiro Hamaji
80876a6303 Build ijar for apps build
This fixes git_master-linux-apps build.

(cherry picked from commit 9084705744)

Change-Id: I4399ca2662e08c9b3cc2ad5a317e84d91b728115
2015-11-30 11:16:28 -08:00
Shinichiro Hamaji
89b255ab71 Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files
The same optimization was done for binaries in

https://android-review.googlesource.com/#/c/175250/

To create a TOC file from .jar files, this change introduces
ijar, which is designed for this purpose. Only #include lines
were modified from the original version.

https://github.com/bazelbuild/bazel/tree/master/third_party/ijar

Performance:

$ m && touch
frameworks/base/core/java/com/google/android/util/Procedure.java && time
m
Before: 4m30s (1580 targets)
After: 3m57s (772 targets)

Unfortunately, the improvement is small yet, but local
experiments showed we can cut ~2 more minutes if the similar
optimization is done for .dex files.

(cherry picked from commit c1f5d9c203)

Bug: 24597504
Change-Id: Iec3b2b0b0e674bee5d80cce3c300dc8fad6e7c13
2015-11-30 11:16:23 -08:00
Shinichiro Hamaji
371b8c7f77 Merge "Revert "Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files"" am: 2ff3ad9045
am: 51ef51c4ad

* commit '51ef51c4ad283198d5fb4a2ec9caecdc7a677838':
  Revert "Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files"
2015-11-27 04:05:01 +00:00
Shinichiro Hamaji
15bead2c59 Merge "Revert "Build ijar for apps build"" am: d17c3a57f6
am: c3725c256b

* commit 'c3725c256b5d786007f2565324324b386287725a':
  Revert "Build ijar for apps build"
2015-11-27 04:04:53 +00:00
Shinichiro Hamaji
51ef51c4ad Merge "Revert "Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files""
am: 2ff3ad9045

* commit '2ff3ad90455e868a1805d065f0aa2b8babbc6660':
  Revert "Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files"
2015-11-27 04:02:09 +00:00
Shinichiro Hamaji
c3725c256b Merge "Revert "Build ijar for apps build""
am: d17c3a57f6

* commit 'd17c3a57f6f183b97cc557e10e221b4dc1acf47f':
  Revert "Build ijar for apps build"
2015-11-27 04:02:01 +00:00
Shinichiro Hamaji
2ff3ad9045 Merge "Revert "Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files"" 2015-11-27 03:59:30 +00:00
Shinichiro Hamaji
d17c3a57f6 Merge "Revert "Build ijar for apps build"" 2015-11-27 03:59:18 +00:00
Shinichiro Hamaji
3ae7f66bab Revert "Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files"
This reverts commit c1f5d9c203.

Change-Id: I7e9969a060e3f1380154da65e76134168aee15d8
2015-11-27 03:58:51 +00:00
Shinichiro Hamaji
ea2da50e17 Revert "Build ijar for apps build"
This reverts commit 9084705744.

Change-Id: I8a9958788c51dcec5028ef396cb67abd541ce31f
2015-11-27 03:57:17 +00:00
Colin Cross
06c44241da Merge "Revert "Use libstdc++ for ijar"" am: 41dca40376
am: 6cd88d7514

* commit '6cd88d75147217bc42fed67b558f9e4c836a20a0':
  Revert "Use libstdc++ for ijar"
2015-11-26 22:25:12 +00:00
Colin Cross
6cd88d7514 Merge "Revert "Use libstdc++ for ijar""
am: 41dca40376

* commit '41dca403766d22373ba469d99ba1625d0930d02e':
  Revert "Use libstdc++ for ijar"
2015-11-26 22:23:02 +00:00
Colin Cross
39cca23d41 Revert "Use libstdc++ for ijar"
This reverts commit 718bab6aec.

Change-Id: I9aa222fc2936d7d89ae0700eeef505c6b317d777
2015-11-26 22:20:22 +00:00
Colin Cross
8713fde1c3 Merge "Use libstdc++ for ijar" am: c97b5272d7
am: 4c1944083f

* commit '4c1944083f03e1ddf55f16f815b89a337ffc60f6':
  Use libstdc++ for ijar
2015-11-26 22:14:40 +00:00
Colin Cross
4c1944083f Merge "Use libstdc++ for ijar"
am: c97b5272d7

* commit 'c97b5272d715ab9f4ff52748bd2f403235f94426':
  Use libstdc++ for ijar
2015-11-26 22:12:38 +00:00
Colin Cross
718bab6aec Use libstdc++ for ijar
For some reason ijar won't build against libc++ for TARGET_BUILD_APPS
builds, but does build with libstdc++.

Change-Id: I8e900b0f764f0bb8f827705cb9173f07e4f33862
2015-11-26 14:09:50 -08:00
Colin Cross
93e138b723 Merge "Build ijar for apps build" am: ec4db56e58
am: 3b5dbebe8d

* commit '3b5dbebe8d9a8beac49a8c16605df6afbec4de72':
  Build ijar for apps build
2015-11-26 17:38:34 +00:00
Colin Cross
3b5dbebe8d Merge "Build ijar for apps build"
am: ec4db56e58

* commit 'ec4db56e5802171bc2d0237f496e97ec093f0be0':
  Build ijar for apps build
2015-11-26 17:36:29 +00:00
Colin Cross
ec4db56e58 Merge "Build ijar for apps build" 2015-11-26 17:34:50 +00:00
Shinichiro Hamaji
9084705744 Build ijar for apps build
This fixes git_master-linux-apps build.

Change-Id: I1a77b2495d98d89f570cb165d7f25f617c9af9aa
2015-11-26 17:24:40 +09:00
Shinichiro Hamaji
b42da32564 Merge "Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files" am: c9a1b27845
am: 27770abe27

* commit '27770abe272eb54de5eea5fa94342c1393b681a0':
  Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files
2015-11-26 05:33:54 +00:00
Shinichiro Hamaji
27770abe27 Merge "Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files"
am: c9a1b27845

* commit 'c9a1b278458eddd3065c0e9fc06e12b2cb1c38cb':
  Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files
2015-11-26 05:30:54 +00:00
Shinichiro Hamaji
c9a1b27845 Merge "Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files" 2015-11-26 05:25:58 +00:00
Tao Bao
fe1373e194 Merge "target_files_diff: Allow writing outputs to file." am: 7b5eddd52b
am: acd1b8e160

* commit 'acd1b8e160c8114bd07be2175388f7dcefe09687':
  target_files_diff: Allow writing outputs to file.
2015-11-25 00:06:08 +00:00
Tao Bao
acd1b8e160 Merge "target_files_diff: Allow writing outputs to file."
am: 7b5eddd52b

* commit '7b5eddd52bfb70485488458a115a33f1af92759a':
  target_files_diff: Allow writing outputs to file.
2015-11-25 00:03:01 +00:00
Tao Bao
5dd9a2ce11 target_files_diff: Allow writing outputs to file.
Also clean up some pylint warnings.

Bug: 25372309
Change-Id: I226bfd72cb1310ba77352f8d367803e815e1cfa3
2015-11-24 15:23:20 -08:00
Alex Klyubin
21f2e7bf0f Merge "Clean up compiler warnings in signapk." am: 0aaf7aa53c
am: febce01c64

* commit 'febce01c64c18a4dea9d6f966939c3642b4381ed':
  Clean up compiler warnings in signapk.
2015-11-24 17:39:18 +00:00
Alex Klyubin
febce01c64 Merge "Clean up compiler warnings in signapk."
am: 0aaf7aa53c

* commit '0aaf7aa53ce5d1a8b5880303a21b83959bf1a432':
  Clean up compiler warnings in signapk.
2015-11-24 17:36:06 +00:00
Alex Klyubin
0aaf7aa53c Merge "Clean up compiler warnings in signapk." 2015-11-24 17:30:42 +00:00
Alex Klyubin
c218d3eca3 Clean up compiler warnings in signapk.
Bug: 25794543
Change-Id: Ia7da4fbaed77af4020e5aa0b14fe5e1bd8521edb
2015-11-24 09:27:55 -08:00
Tao Bao
842e858f0c Merge "releasetools: Fix the bug with TARGET_NO_RECOVERY." am: 4ed5735a68
am: 733ba8f0e4

* commit '733ba8f0e473b214e55e3b93ded7739c35d85b10':
  releasetools: Fix the bug with TARGET_NO_RECOVERY.
2015-11-20 04:53:32 +00:00
Tao Bao
733ba8f0e4 Merge "releasetools: Fix the bug with TARGET_NO_RECOVERY."
am: 4ed5735a68

* commit '4ed5735a68090e9eec240693ff6b97ea57576151':
  releasetools: Fix the bug with TARGET_NO_RECOVERY.
2015-11-20 04:50:31 +00:00
Tao Bao
48550cceb0 releasetools: Fix the bug with TARGET_NO_RECOVERY.
The packaging script is broken when we set TARGET_NO_RECOVERY and
SYSTEM_ROOT_IMAGE both. With TARGET_NO_RECOVERY set, we don't have
RECOVERY/RAMDISK/etc/recovery.fstab. It thus fails the assertion in
common.LoadRecoveryFSTab() that "/" must exist in fstab when enabling
SYSTEM_ROOT_IMAGE.

Change-Id: Id509d724f18be7cf7389dd786924ead894ac0cc1
2015-11-19 17:14:21 -08:00
Tao Bao
c684a97329 Add ro.build.ab_update property.
am: 532fdf4479

* commit '532fdf4479acb50cdb480e6fdfe24f0698fcd67b':
  Add ro.build.ab_update property.
2015-11-19 18:42:52 +00:00
Shinichiro Hamaji
c1f5d9c203 Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files
The same optimization was done for binaries in

https://android-review.googlesource.com/#/c/175250/

To create a TOC file from .jar files, this change introduces
ijar, which is designed for this purpose. Only #include lines
were modified from the original version.

https://github.com/bazelbuild/bazel/tree/master/third_party/ijar

Performance:

$ m && touch
frameworks/base/core/java/com/google/android/util/Procedure.java && time
m
Before: 4m30s (1580 targets)
After: 3m57s (772 targets)

Unfortunately, the improvement is small yet, but local
experiments showed we can cut ~2 more minutes if the similar
optimization is done for .dex files.

Bug: 24597504
Change-Id: Id54953aea25e497c8ebbe783b03f13b488577c6a
2015-11-19 17:10:35 +09:00
Tao Bao
2c1a4b9e88 Merge "releasetools: Pack updatable images into IMAGES/ for A/B update."
am: 128466cea5

* commit '128466cea5358eadbde19f52f16eef03f2685446':
  releasetools: Pack updatable images into IMAGES/ for A/B update.
2015-11-17 05:37:01 +00:00
Tao Bao
128466cea5 Merge "releasetools: Pack updatable images into IMAGES/ for A/B update." 2015-11-17 05:32:56 +00:00
Tao Bao
a0421cd1bd releasetools: Pack updatable images into IMAGES/ for A/B update.
Vendor-specific images (radio, bootloader and etc) used to stay in
RADIO/ in target_files zip. A/B updater expects them to be available
under IMAGES/. Make a copy for such images when calling
add_img_to_target_files.py.

We cannot move them directly from RADIO/ to IMAGES/, because we will
delete everything under IMAGES/ when signing for release.

Bug: 25674625
Change-Id: I977c879d0ff7e45c83b3f5c63844a5b135caa383
2015-11-16 16:42:43 -08:00
Tao Bao
532fdf4479 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
2015-11-16 12:38:07 -08:00
Tao Bao
b11d2c5dd6 releasetools: Support packaging for system_root_image.
For system images that contain the root directory, we need to find the
root directory at ROOT/ instead of BOOT/RAMDISK/.

 Conflicts:
	tools/releasetools/common.py

Change-Id: Ica345c8b1b03475f8ac6c44fd576045fcf17c882
2015-11-16 12:38:07 -08:00
Tao Bao
6ed1491402 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 8beab69bd5)
2015-11-16 12:02:24 -08:00
Daniel Rosenberg
b3b8ce6241 Add support for system images that contain the root directory
When the root directory is included in system, the assumption that
system is mounted at /system breaks down. Redirect /system to /
in that case.

Change-Id: I8031b32d7cb9ca699c1cc22939e28afce9d1c847
2015-11-16 12:02:24 -08:00
Daniel Rosenberg
fa7f9f7e0c 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
2015-11-16 12:02:24 -08:00
Tao Bao
37b96ef26b 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 db45efa647)
2015-11-16 12:02:24 -08:00
Tao Bao
116977c7db DO NOT MERGE Change the cache partition size check into warnings.
For some old builds, we may not define cache partition size. Change the
exception into a warning to make the script backward compatible.

Change-Id: Ia90531e3455d4888cfac6510cab879c50883be53
(cherry picked from commit 575d68a48e)
2015-11-16 12:02:24 -08:00