Commit graph

2715 commits

Author SHA1 Message Date
Dan Albert
ebb19aa01a Fix up a few callers of GetTypeAndDevice.
Change-Id: I8f2d8d28b60715f917e9aceb8f851ad652034aa7
2015-03-27 19:11:53 -07:00
Dan Albert
99e22a57d0 Merge "Make releasetools pylint clean." 2015-03-27 18:40:02 +00:00
Ying Wang
a2292c94d1 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 0eabd4f2c5)

Bug:19868522
Change-Id: Iafc467a0e3427b0d6ad3b575abcc98ddcc9ea0f1
2015-03-26 10:35:00 -07:00
Dan Albert
8b72aefb5a Make releasetools pylint clean.
This caught a few bugs/syntax errors (a few character classes were not
escaped properly in regex patterns, some indentation was illegal,
etc).

Change-Id: I50637607524e68c4fb9cad7167f58a46b8d26b2c
2015-03-24 11:05:16 -07:00
Dan Albert
5d60719e42 Merge "Run ZipFile.testzip() during zipfile tests." 2015-03-24 00:07:02 +00:00
Dan Albert
d6d1beb88c Run ZipFile.testzip() during zipfile tests.
This still doesn't catch the issue that [1] fixes, but it's probably a
good idea anyway.

[1]: https://android-review.googlesource.com/#/c/143469/

Change-Id: Iaa607ec7450d605b26114bd81ea41a14c6613c0e
2015-03-23 16:54:39 -07:00
Tao Bao
eaf885b1d0 Fix the computation of basefilename
Change-Id: I156b182414ef5b33611955cbc019e208c771013a
2015-03-23 16:05:26 -07:00
Greg Hackmann
6701db8145 Allow system images larger than 2GiB, pt. 2
We need to patch zipfile during close() too, because it refers to the
ZIP64 file size threshold when writing out the central directory

Bug: 18015246
Bug: 19888174

Change-Id: I1b49d653d0831fcc2106808f86c929d7a2b22ff3
Signed-off-by: Greg Hackmann <ghackmann@google.com>
2015-03-23 14:35:50 -07:00
Tao Bao
3910ebf468 Fix the syntax error in the edify script generator
file_getprop() always expects two arguments.

Bug: 19881931
Change-Id: Icf5577ad34188991c03f68c1217642d3adc4201c
2015-03-22 14:20:48 -07:00
Tao Bao
b8c8717191 Make the generated OTAs repeatable
The generated OTAs are supposed to be repeatable. The use of dict in
blockimgdiff.py breaks the assumption for block-based OTAs. Fixed by
using OrderedDict instead.

Change-Id: I945bdc879912ba174ca330c152b1f8fc7ed211ac
2015-03-19 19:42:12 -07:00
Dan Albert
8e0178d41b Allow system images larger than 2GiB.
Python 2.7's zipfile implementation wrongly thinks that zip64 is
required for files larger than 2GiB. We can work around this by
adjusting their limit. Note that `zipfile.writestr()` will not work
for strings larger than 2GiB. The Python interpreter sometimes rejects
strings that large (though it isn't clear to me exactly what
circumstances cause this). `zipfile.write()` must be used directly to
work around this.

This mess can be avoided if we port to python3.

The bug (b/19364241) in original commit has been fixed.

Bug: 18015246
Bug: 19364241
Bug: 19839468

(cherry picked from commit cd082d4bfe)

Change-Id: I7b5cc310e0a9ba894533b53cb998afd5ce96d8c6
2015-03-19 13:59:01 -07:00
Tao Bao
dd2a5892e5 Restrict the verification in block-based incremental OTAs
BlockImageDiff has three versions. Only the incremental OTAs generated
with the latest version (3) can be re-applied to the system that's
already on the target build. Otherwise, operations like move will make
unconditional changes and damage the system. During the verification
phase, abort the OTA update if BlockImageDiff is less than 3 and it
doesn't match the checksum of the source build.

Change-Id: Ic630346eab2a993a84d0aeaacd7167ef62cc24f6
(cherry picked from commit daebaa6ed3)
2015-03-13 17:57:15 -07:00
Michael Runge
910b005f18 Do not use block_verify on target-files where feature is missing.
This will only be used when the block file format is at least
version 3.  For V1/V2 (L, L MR1) block versions, fall back to
the old range_sha1 check.

Bug: 19357591
Change-Id: I7cb178b70d48ec3c98cdb88ed1c94cf7797a01d0
(cherry picked from commit cad78c12fb)
2015-03-13 11:36:14 -07:00
Jesse Zhao
7b985f6aed Fix the error that free_string is not defined.
Change-Id: I7490a91ea930daaf194dad0c8b3a3357558b4770
Bug:19573713
(cherry picked from commit 7ca20d1a1c)
2015-03-11 17:22:43 +00:00
Sami Tolvanen
dd67a295cc 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 cac671a9d1)
2015-03-11 17:22:06 +00:00
Ying Wang
fafe5ac819 Merge "Signapk.java: hide the password" 2015-03-11 16:46:00 +00:00
Mohamad Ayyash
9b19382f0e resolved conflicts for merge of fc759204 to stage-aosp-master
Change-Id: Icf58e881286a66cb3ca4cb122fa8c11ec217fbab
2015-03-04 15:43:45 -08:00
Mohamad Ayyash
b97746ef09 Allow flashing a squashfs system image
Change-Id: Ic51d11274784a8d2e9d57d5f0b821ebc89680e5a
Signed-off-by: Mohamad Ayyash <mkayyash@google.com>
2015-03-03 18:54:50 -08:00
Narayan Kamath
2479a0987d am 30b5ed7b: Merge "Fix zipalign README file and usage strings."
* commit '30b5ed7b1e8c67c816d64ad1b7c9bde3c3b5019c':
  Fix zipalign README file and usage strings.
2015-02-27 17:26:49 +00:00
Narayan Kamath
e0b8d19f31 Fix zipalign README file and usage strings.
Addresses comments from change 13e5965306.

Change-Id: I0a2c0048781858d3aa06347a77220547cfcdcebe
2015-02-27 14:17:17 +00:00
Narayan Kamath
e886392c37 am 37a44faa: Merge "Store native libs aligned to PAGE_SIZE"
* commit '37a44faa7266c8a7e0cc5077a4c028d6f5bfa7f7':
  Store native libs aligned to PAGE_SIZE
2015-02-26 12:45:34 +00:00
Dmitriy Ivanov
13e5965306 Store native libs aligned to PAGE_SIZE
- Add a new flag to zipalign (-p) that page aligns shared
  libraries (zip entries ending with ".so") in the archive.

- Add a new build variable LOCAL_PAGE_ALIGN_SHARED_LIBRARIES
  to turn on this behaviour in zipalign.

- Add a new LOCAL_JNI_SHARED_LIBRARIES_ZIP_OPTIONS to control
  zip behaviour.

Bug: 8076853
Bug: 19330157

Co-Authored-By: Simon Baldwin <simonb@google.com>
Co-Authored-By: Dimitry Ivanov <dimitry@google.com>
Change-Id: I1aa2c039bb2a590ae72f256acc9ba5401c2c59b1
2015-02-26 12:31:40 +00:00
Justin Harrison
b89ec38113 am 070eea05: am ffd4fee9: Merge "Revert "Allow system images larger than 2GiB."" into lmp-mr1-dev
* commit '070eea05f2f2d47aa873fd1e79160eb8529a0eb8':
  Revert "Allow system images larger than 2GiB."
2015-02-13 20:37:10 +00:00
Justin Harrison
ffd4fee911 Merge "Revert "Allow system images larger than 2GiB."" into lmp-mr1-dev 2015-02-13 18:48:17 +00:00
Justin Harrison
2de68bbbf4 Revert "Allow system images larger than 2GiB."
This reverts commit cd082d4bfe.

Change-Id: Ie63e1ba70d907d2849164871bc7ec71c245f7af9
2015-02-13 18:47:51 +00:00
smain@google.com
1cd422cd3d am 19b8c2f7: am 8cde3e71: am cf80e847: am d162be5b: change video analytics to distinguish between start and resume events. also scrub out any additional parameters from the videoId before passing to analytics
* commit '19b8c2f776036288dfad8983e38419c3d4316fc9':
  change video analytics to distinguish between start and resume events. also scrub out any additional parameters from the videoId before passing to analytics
2015-02-10 23:21:02 +00:00
smain@google.com
8cde3e71e7 am cf80e847: am d162be5b: change video analytics to distinguish between start and resume events. also scrub out any additional parameters from the videoId before passing to analytics
* commit 'cf80e8479bc71538902ac07df91fff8d544a174e':
  change video analytics to distinguish between start and resume events. also scrub out any additional parameters from the videoId before passing to analytics
2015-02-10 19:12:49 +00:00
smain@google.com
cf80e8479b am d162be5b: change video analytics to distinguish between start and resume events. also scrub out any additional parameters from the videoId before passing to analytics
* commit 'd162be5b5f65ba0311374242d48303f120398d48':
  change video analytics to distinguish between start and resume events. also scrub out any additional parameters from the videoId before passing to analytics
2015-02-10 19:05:42 +00:00
Jesse Zhao
234d122ea6 am c6af9b8f: am 28b2b00a: Merge "Update vendor fingerprint." into lmp-mr1-dev
* commit 'c6af9b8f4a09cc4208ad119218f57022d6fead5b':
  Update vendor fingerprint.
2015-02-07 00:06:13 +00:00
Dan Albert
f8f91c9470 am 3907eaf8: am cd082d4b: Allow system images larger than 2GiB.
* commit '3907eaf8b7c6f7209c4cb11a6b8b66a34f292151':
  Allow system images larger than 2GiB.
2015-02-07 00:06:10 +00:00
Jesse Zhao
28b2b00adb Merge "Update vendor fingerprint." into lmp-mr1-dev 2015-02-06 22:21:06 +00:00
Dan Albert
cd082d4bfe Allow system images larger than 2GiB.
Python 2.7's zipfile implementation wrongly thinks that zip64 is
required for files larger than 2GiB. We can work around this by
adjusting their limit. Note that `zipfile.writestr()` will not work
for strings larger than 2GiB. The Python interpreter sometimes rejects
strings that large (though it isn't clear to me exactly what
circumstances cause this). `zipfile.write()` must be used directly to
work around this.

This mess can be avoided if we port to python3.

Bug: 18015246
Change-Id: I8a476d99c5efdef6ea408373b706e9fbd3a798be
2015-02-06 13:24:06 -08:00
Jesse Zhao
2625d27151 Update vendor fingerprint.
Change-Id: I5d4abdff8b7b13e01271440f4d4f2ffe1b015b71
Bug: 19257598
2015-02-06 09:50:06 -08:00
smain@google.com
d162be5b5f change video analytics to distinguish between start and resume events.
also scrub out any additional parameters from the videoId before passing to analytics

Change-Id: Idf3351028e62d0d03c0f680a904bb83ef8353797
2015-02-05 17:49:49 -08:00
Ying Wang
f4bd044f09 am d51b0fd3: Merge "Fail even dev build when property value exceeds length limit."
* commit 'd51b0fd3e4b3b39a36019bb1cd06fe29979f4ee8':
  Fail even dev build when property value exceeds length limit.
2015-02-05 02:31:30 +00:00
Ying Wang
38df101343 Fail even dev build when property value exceeds length limit.
Let developers know the issue earlier when they set up new
products.

Change-Id: I3f2ecbc3a833c1a8a84bd75407a5c035e5fea70a
2015-02-04 15:10:59 -08:00
Ying Wang
16ba2ed82b resolved conflicts for merge of 4c178ebc to lmp-mr1-dev-plus-aosp
Change-Id: If84527e9333b855d406dc7ac317868f4cfd3f1f2
2015-02-04 11:28:56 -08:00
Ying Wang
14cc23d433 Remove support of factory ramdisk/bundle.
Bug: 18779515
Change-Id: Ia6d51d43965447e2e95944a7d2b4b41adb121cb7
2015-02-04 11:00:01 -08:00
Jesse Zhao
5827eec013 am fbc8c145: am 0c9384d5: Merge "verify system and vendor image together before patching." into lmp-mr1-dev
* commit 'fbc8c1454e8f2167635398078bb53033dc90f15d':
  verify system and vendor image together before patching.
2015-01-28 23:42:18 +00:00
Jesse Zhao
0c9384d512 Merge "verify system and vendor image together before patching." into lmp-mr1-dev 2015-01-28 23:30:54 +00:00
Narayan Kamath
675a726fe4 resolved conflicts for merge of 8f5fc9e2 to lmp-mr1-dev-plus-aosp
Change-Id: Ie1587a4e2434b9cfbca16bc764e99e94511f8212
2015-01-22 18:53:59 +00:00
Dirk Dougherty
4433ac859c am d1283889: am 48141e05: am 5a97f244: am 529a107f: Add new subtab under Distribute tab.
* commit 'd12838890563b2fb4532630373760a995970f687':
  Add new subtab under Distribute tab.
2015-01-16 18:17:59 +00:00
Dirk Dougherty
48141e0599 am 5a97f244: am 529a107f: Add new subtab under Distribute tab.
* commit '5a97f24411df6ca7221343ac93f25decb99b6bea':
  Add new subtab under Distribute tab.
2015-01-16 18:03:42 +00:00
Narayan Kamath
baf3eb93ee 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
2015-01-16 10:16:52 +00:00
Dirk Dougherty
5a97f24411 am 529a107f: Add new subtab under Distribute tab.
* commit '529a107f9de5051b734fad4cecf1f971998aeade':
  Add new subtab under Distribute tab.
2015-01-16 00:58:59 +00:00
Dirk Dougherty
529a107f9d Add new subtab under Distribute tab.
Change-Id: I991c3295dea40629fdb9dde4a8ccbecad25f8136
2015-01-15 16:27:39 -08:00
Jesse Zhao
75bcea0267 verify system and vendor image together before patching.
Change-Id: Ia43657ed6cd8860b0edb78cc2dd6388c761e1f8b
Bug: 17919909
2015-01-07 21:44:09 +00:00
David Turner
7a864af1b7 am aa112716: Merge "build_image: Set file system labels on disk images"
* commit 'aa112716067167d58d1db37aaf8adc49b83b59a1':
  build_image: Set file system labels on disk images
2015-01-07 20:28:17 +00:00
Jeff Arneson
579be06705 am 35764d6f: am ef789fa1: am bb9eda64: am 2ff97d99: am d194c6ac: Merge "Fix Documentation typo when showAnnotations is used with doclava" into lmp-docs
* commit '35764d6f99761ed63d2d762be4bddf0a3a1e5e0a':
  Fix Documentation typo when showAnnotations is used with doclava
2015-01-06 02:27:21 +00:00
Jeff Arneson
ef789fa152 am bb9eda64: am 2ff97d99: am d194c6ac: Merge "Fix Documentation typo when showAnnotations is used with doclava" into lmp-docs
* commit 'bb9eda64a300bbbeffc58798f9af04d332544557':
  Fix Documentation typo when showAnnotations is used with doclava
2015-01-06 02:00:09 +00:00