Commit graph

2363 commits

Author SHA1 Message Date
Doug Zongker
e985f6f4d8 fix transfer list for full OTAs
The erase command we insert at the top for full OTAs was getting
inserted in the wrong place for version 2.

Change-Id: I9caf03a40efbdba79f3428f73e50d4319d9ba371
2014-09-25 16:39:45 -07:00
Doug Zongker
846cb3a9e6 add unit tests for rangelib
Change-Id: I3b77e849007259e697da56bd493ae5b553b901d1
2014-09-25 16:39:32 -07:00
Doug Zongker
623381880a generate version 2 blockimgdiff files
Generate version 2 of the block_image_update transfer list format.
This improves patch size by a different strategy for dealing with
out-of-order transfers.  If transfer A must be done before transfer B
due to B overwriting A's source but we want to do B before A, we
resolve the conflict by:

  - before B is executed, we save ("stash") the overlapping region (ie
    the blocks B will overwrite that A wants to read)

  - when A is executed, it will read those parts of source data from
    the stash rather than from the image.

This reverses the ordering constraint; with these additions now B
*must* go before A.  The implementation of the stash is left up to the
code that executes the transfer list to apply the patch; it could hold
stashed data in RAM or on a scratch disk such as /cache, if available.

The code retains the ability to build a version 1 block image patch;
it's needed for processing older target-files.

Change-Id: Ia9aa0bd45d5dc3ef7c5835e483b1b2ead10135fe
2014-09-25 16:39:14 -07:00
Jeff Arneson
151c727736 Merge "Refactor show_annotations_list to remove HTML tags from method params" into lmp-dev 2014-09-25 03:45:50 +00:00
Michael Runge
560569a617 If oem_fingerprint_props is empty, ignore.
There may be cases where there is an OEM partition
but it has no effect on the OTA itself.  In these
cases, ignore an empty value from the misc_info.txt

Change-Id: I5f467e873030765af12810a07ddd5f302ca8cc0b
2014-09-18 15:12:45 -07:00
Jeff Arneson
ad46e7e7a1 Refactor show_annotations_list to remove HTML tags from method params
No need to pass in the HTML tags to start and end the list, since
we do the same thing everywhere, and it wasn't very complete anyways.

Change-Id: I504b78b699a03cc5ba7c6f0584173087aab2024b
2014-09-15 10:02:14 -07:00
Jeff Arneson
faa1dc5c01 Merge "Show annotation information for fields, enums, etc. and in the class list" into lmp-dev 2014-09-12 18:24:59 +00:00
Jeff Arneson
9eefef66a8 Show annotation information for fields, enums, etc. and in the class list
Add the "Included in documentation due to annotations..." text for
fields, enum constants, and pretty much everything with a description.

Added annotation text to eh classes.cs file used to generate the
class list page.

Change-Id: I2685d1a34fa292088c03ccd76f2627fe954c9000
2014-09-11 11:04:58 -07:00
Doug Zongker
b34fcce08c explicitly check the superblock for differences
When generating incrementals for the system and vendor partitions,
check the first block (which contains the superblock) of the partition
to see if it's what we expect.  If this check fails, give an explicit
log message about the partition having been remounted R/W (the most
likely explanation) and the need to flash to get OTAs working again.

Bug: 17393999
Change-Id: Ifd2132b428dbc4907527291712690204a3664ac0
2014-09-11 09:38:01 -07:00
Jeff Arneson
1e7fd557dd Make the text generated by showAnnotations more noticable in docs
Made the foreground of the "included in docs by annotation..." orange,
the same color used in the header of the docs page. This text is inserted
when the showAnnotations flag is used with doclava

Change-Id: I56e0b2060ed42cd0d077fff149d578d31c763f95
2014-09-10 21:20:12 +00:00
Doug Zongker
8544877399 select default search_path by platform
Bug: 17443175
Change-Id: I2b8b0a3b56e667b749ac167a6d09dc973ecf8419
2014-09-09 15:11:13 -07:00
Jeff Arneson
5c980afc5e Merge "Show annotation information in generated documentation" into lmp-dev 2014-09-08 16:39:56 +00:00
Baligh Uddin
bdc2e3186f Add java_args as a valid option
Bug: 17393134
Change-Id: If2749d03b5d409a08d415a829dd21f986cac1789
2014-09-06 00:37:54 +00:00
Jeff Arneson
3a5cb1bd15 Show annotation information in generated documentation
Display the annotations used to override @hide for classes in packages
and methods in classes.

Bug: 16848303
Change-Id: I5599e6593613edbbe6a002d5d46a0a6561dec55a
2014-09-05 22:28:59 +00:00
Baligh Uddin
339ee4968a Add jvm args option. I rather not hardcode some large value just for Volantis. This can easily be passed in from sign-build.sh and should be a no-op for any other tools
Bug: 17393134
Change-Id: Ic2325d7c1e1e7292c9339e169efbed526f82263c
2014-09-05 18:29:47 +00:00
Doug Zongker
424296a4e8 add missing AOSP copyright notices
Change-Id: Idc812db30b259a55702f8728197f957f2d24d978
2014-09-02 08:53:09 -07:00
Ricardo Cervera
2178358f2f am 71346e66: am 14d6c100: am 54d2ca33: docs: Changing adt bundle links to HTTPS
* commit '71346e665f83bc80df5f32127639582387b100fd':
  docs: Changing adt bundle links to HTTPS
2014-08-27 16:28:11 +00:00
Ricardo Cervera
71346e665f am 14d6c100: am 54d2ca33: docs: Changing adt bundle links to HTTPS
* commit '14d6c100aa1926ec9e24c1f17e3aabba95141503':
  docs: Changing adt bundle links to HTTPS
2014-08-27 16:16:15 +00:00
Ricardo Cervera
54d2ca33a3 docs: Changing adt bundle links to HTTPS
Change-Id: I35c291bfef9a267aab5b8f108a6c6592c4f08750
2014-08-27 08:48:49 -07:00
Doug Zongker
ab7ca1d286 refactor BlockDifference into common
Move BlockDifference into common and make its script generation code
more complete, so that it can be use by releasetools.py to do diffs on
baseband images.

Bug: 16984795
Change-Id: Iba9afc1c7755458ce47468b5170672612b2cb4b3
2014-08-26 13:12:11 -07:00
Doug Zongker
4d0bfb4f40 remove unused xdelta3/xz utilities
This was part of the original block-based OTA mechanism.

Bug: 16987495
Change-Id: I5bd6599829ee6084a8da1f0b14af87aabf07c130
2014-08-26 13:11:56 -07:00
Doug Zongker
5f9c28cad4 fix build
Change-Id: I1e503406129343bbfddacc1150c81e403b47778c
2014-08-26 13:11:37 -07:00
Doug Zongker
fc44a515d4 new block OTA system tools
Replace the xdelta/xz-based block OTA generation with a new system
based on the existing bsdiff/imgdiff tools.

Bug: 16984795
Change-Id: Ia9732516ffdfc12be86260b2cc4b1dd2d210e886
2014-08-26 13:10:25 -07:00
Doug Zongker
6f1d031b39 take bootable images from target_files if present
Now that we're building and saving images in the target_files at build
time, we should use those images instead of rebuilding them.

Bug: 17201052
Change-Id: I459e650f66f1e0bdf01ad54df9e34f36bf2ee899
2014-08-22 10:25:57 -07:00
Geremy Condra
95ebe7a09b Use the specified verity key to sign boot and recovery OTA images.
This ensures that when the verity key is rotated to a release key
both the boot and recovery images will be correctly signed. It does
mean that they will both be signed with the same key for now, but
as that doesn't change the threat model separating them is just a
distant nice-to-have.

Bug: 15725238
Change-Id: I5b75e4346fe0655065643ab553431690cc1a8cb0
2014-08-20 20:17:01 +00:00
Geremy Condra
f19b365cc9 Add support for switching to verity release keys.
Bug: 15725238
Change-Id: I8f92210fd854b5a2567cf76aaecb5be02c3f9293
2014-08-20 00:05:23 +00:00
Benoit Fradin
a45a8682fa BuildBootImage: Add secondstage image support [DO NOT MERGE]
The AOSP bootimage format allows the use of a second stage image
however the BuildBootableImage function does not allows the "second"
optional argument. This patch adds the support of this argument.

Bug: 17035158

Change-Id: I8ed9d9e56449945c2d42fc908269921c394f68c0
Signed-off-by: Benoit Fradin <benoit.fradin@intel.com>
Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com>
Signed-off-by: Patrick Tjin <pattjin@google.com>
2014-08-14 11:24:54 -07:00
Doug Zongker
f21cb5a219 save file block allocations in target_files
make_ext4fs can now output a file listing the blocks used for each
file in the image.  Request this file and save it in the target_files;
it will be used for future improvements to block OTAs.

Bug: 16984795
Change-Id: Id1e60465e3b5a9d126a7934b4d089cf34d8fec44
2014-08-12 17:09:38 -07:00
Brian Carlstrom
56ef86df84 resolved conflicts for merge of a8138028 to lmp-dev-plus-aosp
(cherry picked from commit 4a5a11e416)

Change-Id: Ic5c2297d50f2e59ca5b1eb0c3b81328d23a48253
2014-08-06 17:47:40 -07:00
Colin Cross
8381b98869 Merge "Revert "HACK: report CPU abi as 2nd arch if present"" into lmp-dev 2014-08-05 17:41:31 +00:00
Colin Cross
ef77e517f7 Revert "HACK: report CPU abi as 2nd arch if present"
This reverts commits 8179d4dcf6,
00c67a0568, and
d00c0a2e20.

Bug: 15933961
2014-08-05 11:01:54 -07:00
Doug Zongker
f83400896d add 5 minute timeout on binary patch construction
When making bsdiff/imgdiff patches, give up after 5 minutes.  (On
certain large files it can take hours to build a patch, if it ever
even completes.)

Change-Id: I123c06f8194f85f6f4e640f7eb31c7746f76ba4d
2014-08-05 10:39:37 -07:00
Doug Zongker
56d91dd07f Merge "fall back to generating full OTA if incremental fails" into lmp-dev 2014-08-01 17:53:35 +00:00
Doug Zongker
62d4f18a30 fall back to generating full OTA if incremental fails
Block incremental OTA generation can currently fail on some
target-files pairs.  Fall back to generating a full OTA so that the
script succeeds rather than failing.

Change-Id: Ide70395d1f3759aa2076bd173836f6a5e5b397c0
2014-08-04 16:06:43 -07:00
Ying Wang
a961a09e59 Fix error: 'NoneType' object is not iterable
Change-Id: I5a54edbed0e5e5481a570b93c07d50f6ca3e18e0
2014-07-29 11:42:37 -07:00
Doug Zongker
3c84f56948 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
2014-07-31 11:06:30 -07:00
David Friedman
9384878820 am 81415ada: Updated .cs page to accommodate split of NDK into 32- and 64-bit packages.
* commit '81415adad38fe06f50f381d6317ca0b93848e095':
  Updated .cs page to accommodate split of NDK into 32- and 64-bit packages.
2014-07-16 13:29:09 +00:00
David Friedman
ba6dc7272c am 93848788: am 81415ada: Updated .cs page to accommodate split of NDK into 32- and 64-bit packages.
* commit '9384878820ec7c881fdf054e8a0a88b2d1b94f64':
  Updated .cs page to accommodate split of NDK into 32- and 64-bit packages.
2014-07-16 13:36:20 +00:00
Deepanshu Gupta
9c5564e060 Fix incremental builds for SDK.
Atree used to output files without escaping the filenames. This resulted
in breaks for incremental builds when filenames contained '$' symbol.
The change fixes this by escaping the filename properly.

Change-Id: I957787b1b3536c64ba6fcb5b4bb5fc60e8b04452
2014-07-15 17:26:56 -07:00
David Friedman
81415adad3 Updated .cs page to accommodate split of NDK into 32- and 64-bit packages.
Change-Id: I33af76d23035067ed740d2bf734708aca8dcffe2
2014-07-15 11:38:40 -07:00
Daniel Rosenberg
f3bcb2d4c3 Merge "Added support for building verified vendor partition" into lmp-dev 2014-07-14 18:38:02 +00:00
Daniel Rosenberg
f4eabc3961 Added support for building verified vendor partition
Change-Id: I762724800ccab3a365e6d2efdf86cd9c394818eb
Signed-off-by: Daniel Rosenberg <drosen@google.com>
2014-07-14 22:55:22 +00:00
Colin Cross
8179d4dcf6 HACK: use CPU_ABI hack only for arm64
The previous hack breaks x86_64, use it only for arm64.

Bug: 15018047
Bug: 16116257
Change-Id: Ia11f237590f7f3c7bc6a25208415b86240d2d6be
2014-07-14 12:51:52 -07:00
Raph Levien
fed4c5ca5a Merge "Add Zopfli-recompress option to zipalign" 2014-07-10 20:54:59 +00:00
Elliott Hughes
45a45d611f am a97f675c: am 1b1840cb: am af95db03: Merge "ADBS now uses stack_core code to parse traces."
* commit 'a97f675c921efdbc34f33f12c9a523fc898e624f':
  ADBS now uses stack_core code to parse traces.
2014-07-09 01:28:20 +00:00
Elliott Hughes
a97f675c92 am 1b1840cb: am af95db03: Merge "ADBS now uses stack_core code to parse traces."
* commit '1b1840cbef77f2abfe95af56bc927c647a693429':
  ADBS now uses stack_core code to parse traces.
2014-07-08 20:15:39 +00:00
Raph Levien
093d04c631 Add Zopfli-recompress option to zipalign
Zopfli provides compression roughly 5% better than zlib, while remaining
completely compatible with zlib decoders. This patch adds a "-z" option
to zipalign, recompressing all compressed files within the zip archive.

Change-Id: If177ca4b82ec701b7446861b2cfe08c6bd403813
2014-07-07 16:03:49 -07:00
Brigid Smith
90c66cff3a ADBS now uses stack_core code to parse traces.
Change-Id: Ic1d822e2599fb0ad54dbe20d54e1dd6e3eaf18d6
2014-07-07 15:14:41 -07:00
Ying Wang
00c67a0568 Fix typo.
Bug: 15978907
Bug: 15018047
Change-Id: I6250bb6d67af8c612283541efe0e2120077ad2fb
2014-06-30 18:01:46 -07:00
JP Abgrall
1207d5e02b Merge "releasetools: only allow yaffs to have no userdata image size (fix build)" 2014-06-27 15:56:14 +00:00