Commit graph

4640 commits

Author SHA1 Message Date
Tao Bao
e95540e060 releasetools: Use java_path in sign_target_files_apks.py.
Prior to this CL, it was calling the hard-coded "java" although it was
accepting a "--java_path" option.

Also switch OPTIONS.java_args from string to list. Otherwise it won't
work when providing multiple args.

Bug: 32737832
Test: Specify "--java_path=" and "--java_args" when invoking
      sign_target_files_apks.py with "-v". Check the commands being
      called.
Change-Id: Id7ef98e778646d532027434de7fba9b7a104dbd0
2016-11-08 12:48:43 -08:00
Tao Bao
b4cd33fac9 releasetools: Make BBOTA incremental generation repeatable.
set() doesn't keep elements according to the order of insertion. So
Transfers managed with set() in intermediate steps may not appear in the
same order across runs. This leads to slightly different output packages
when generating the same incremental OTA.

This CL fixes the issue by replacing set() with OrderedDict() in
blockimgdiff.GenerateDigraph() and blockimgdiff.FindVertexSequence().

It also adds a testcase that ensures blockimgdiff.GenerateDigraph()
preserves the insertion order for Transfer.goes_after set.

Bug: 32220816
Test: ota_from_target_files.py gives identical package when running
multiple times.

Change-Id: I56d551e5ca926993ab46896e33c80e0ce42e506a
(cherry picked from commit 3348228423)
2016-11-06 00:37:29 -07:00
Tao Bao
9242e1f750 Merge "releasetools: compare size between compressed and patch while build otapackage"
am: 49758959f2

Change-Id: I17b988878cc7ffdfbe490f404c9cd5ab996a8c5f
2016-11-05 00:13:55 +00:00
Tao Bao
49758959f2 Merge "releasetools: compare size between compressed and patch while build otapackage" 2016-11-05 00:09:35 +00:00
Tao Bao
e3554167e2 Merge "releasetools: Make BBOTA incremental generation repeatable."
am: b9bd78d110

Change-Id: I6402481bf300b52d36df1570cceeae6ec3ff4f8f
2016-11-04 21:29:15 +00:00
Tao Bao
b9bd78d110 Merge "releasetools: Make BBOTA incremental generation repeatable." 2016-11-04 21:26:13 +00:00
Colin Cross
7227637308 findleaves.py: prevent recursion into symlink loops
am: 7829ebfebd

Change-Id: Ib0ff185e2798ca57c6c28157a1182e7b4d1ed820
2016-11-04 18:17:35 +00:00
Colin Cross
7829ebfebd findleaves.py: prevent recursion into symlink loops
Keep a set of all visited inodes, and prevent recursing into a symlink
to an already visited inode.

Test: m -j
Test: compare `build/tools/findleaves.py --prune=.repo --prune=.git --mindepth=2 --dir=. Android.mk` before and after
Change-Id: Ied14c40d3066ef9f8e8a2b1535f56f7bbbbd0ab6
2016-11-03 14:29:40 -07:00
Chih-hung Hsieh
85465a39fb Merge "Do not use multiprocessing.Pool when --processes=1."
am: 948ebf5510

Change-Id: Ia305f1c26706069d8e048340eac9037782f895b7
2016-10-28 20:44:35 +00:00
Chih-Hung Hsieh
63de300094 Do not use multiprocessing.Pool when --processes=1.
Purpose of this change is not to save some execution time,
but to avoid forking another process. In other applications
that use a wrapper to call this python script, it is difficult
to get overwritten file I/O functions work in a subprocess.
So the wrapper will call warn.py with --processes=1.

Test: run "warn.py --processes=1 build.log"
Change-Id: I5998d5c70d81a456c86eb4002f444a4a60135477
2016-10-28 10:53:34 -07:00
Sasha Levitskiy
c63565970c build: tools: Add json collection of installed files with hashes.
am: 3c97fa78cd

Change-Id: I5eb12808bbb82a4b9aeaa76b32d971ee4d2643ba
2016-10-27 20:56:44 +00:00
Alexander Levitskiy
343d72fac8 Merge "build: tools: Add json collection of installed files with hashes." into cw-f-dev 2016-10-27 20:51:15 +00:00
Tao Bao
53a1acf53b releasetools: Support verity signer args. am: c7814837a0 am: 8a6d94c9aa
am: b31f486d75

Change-Id: I871181398a41da89f1851a0b9a5599de23f6100e
2016-10-26 22:22:58 +00:00
Tao Bao
b31f486d75 releasetools: Support verity signer args. am: c7814837a0
am: 8a6d94c9aa

Change-Id: I3383bfa1920dad8976963813dd73435f19cb6593
2016-10-26 22:18:28 +00:00
Tao Bao
8a6d94c9aa releasetools: Support verity signer args.
am: c7814837a0

Change-Id: Ie5ba1d9b706eacae6d6d2f52624526521301c724
2016-10-26 22:13:27 +00:00
Tao Bao
3348228423 releasetools: Make BBOTA incremental generation repeatable.
set() doesn't keep elements according to the order of insertion. So
Transfers managed with set() in intermediate steps may not appear in the
same order across runs. This leads to slightly different output packages
when generating the same incremental OTA.

This CL fixes the issue by replacing set() with OrderedDict() in
blockimgdiff.GenerateDigraph() and blockimgdiff.FindVertexSequence().

It also adds a testcase that ensures blockimgdiff.GenerateDigraph()
preserves the insertion order for Transfer.goes_after set.

Bug: 32220816
Test: ota_from_target_files.py gives identical package when running
multiple times.

Change-Id: I56d551e5ca926993ab46896e33c80e0ce42e506a
2016-10-26 09:40:50 -07:00
Tao Bao
c7814837a0 releasetools: Support verity signer args.
system/extras/verity/build_verity_metadata.py now accepts
"--signer_args" to specify verity signer args.

Also remove the duplicate "--verity_signer_args" in
add_img_to_target_files.py, as we already have that in common.py.

Bug: 31500665
Test: Building and signing work w/ and w/o --signer_args.

Change-Id: I02f59c50a1ebf15c5505e9fffd5b9bbbbaa785be
(cherry picked from commit 458104266f)
2016-10-25 21:17:02 -07:00
Tao Bao
f4a88279ed Merge "releasetools: Support verity signer args."
am: 02d2d68aec

Change-Id: Ib1aed8ff11eeef2fd64a6520e92cfb30678dadc7
2016-10-24 18:53:33 +00:00
Tao Bao
02d2d68aec Merge "releasetools: Support verity signer args." 2016-10-24 18:50:14 +00:00
Sasha Levitskiy
3c97fa78cd build: tools: Add json collection of installed files with hashes.
Adds installed-files.json in addition to installed-files.txt
Further sorts the file list to be ordered within the same size bucket.

Test: manual, cross-checked checksums with sha256sum utility
      checked build outputs.

Bug: 19988819
Merged-in: Ifb632eb4df65ec48645c8f93e36bae44ccc52ba8
Change-Id: Ifb632eb4df65ec48645c8f93e36bae44ccc52ba8
Signed-off-by: Sasha Levitskiy <sanek@google.com>
2016-10-20 10:07:13 -07:00
YOUNG HO CHA
ccc5c40523 releasetools: compare size between compressed and patch while build otapackage
Currently, whether contains patch or verbatim, compute with file size
and patch size.
But ota file must be compressed with zip, so it should be better with
compressed size than uncompressed.

Test: aosp_shamu-user build without proprietary blobs between MOB30P and NRD90S
$ du -k ota_shamu_old.zip ota_shamu_new.zip
217252	ota_shamu_old.zip
216520	ota_shamu_new.zip

Change-Id: If68cb1fbe2f7815067451915a0dcfe93ea5ba8d6
Signed-off-by: YOUNG HO CHA <ganadist@gmail.com>
2016-10-18 17:27:09 +09:00
Chih-Hung Hsieh
e3345c438b Merge "Use parallel subprocesses to classify warnings."
am: 92396e1747

Change-Id: I6e92d8d5a6ee4ca8e9fa626064f5d5752197d739
2016-10-18 04:01:15 +00:00
Treehugger Robot
92396e1747 Merge "Use parallel subprocesses to classify warnings." 2016-10-18 03:49:49 +00:00
Stephen Hines
2f64eb88e5 Split apart frameworks/compile into sub-projects.
am: d0aec89d43

Change-Id: I52500c1d216dfc26628835c87fb81d1bf5393c62
2016-10-18 01:08:34 +00:00
Chih-Hung Hsieh
a6bd044ac1 Use parallel subprocesses to classify warnings.
* Add a --processes flag to specify number of parallel processes,
  with default multiprocessing.cpu_count().
* Wrap long line to suppress pylint warning.

Test: run warn.py with a large build.log file.
Change-Id: I9a93a9324bc531c1bce741367013051ce40a67fa
2016-10-17 17:47:20 -07:00
Tao Bao
458104266f releasetools: Support verity signer args.
system/extras/verity/build_verity_metadata.py now accepts
"--signer_args" to specify verity signer args.

Also remove the duplicate "--verity_signer_args" in
add_img_to_target_files.py, as we already have that in common.py.

Bug: 31500665
Test: Building and signing work w/ and w/o --signer_args.

Change-Id: I02f59c50a1ebf15c5505e9fffd5b9bbbbaa785be
2016-10-17 16:25:22 -07:00
Stephen Hines
d0aec89d43 Split apart frameworks/compile into sub-projects.
These projects are all used by RenderScript, but it would be good to
differentiate warnings for each.

Change-Id: I983279d590630175a36075b01e8eec9100c07d26
Test: Ran warn.py
2016-10-17 15:40:38 -07:00
Mark Salyzyn
2421b1c099 Merge "zipalign missing header"
am: 94180579f7

Change-Id: I4643aebbb73a5d9103de48147d5a4a25c2db6ca4
2016-10-17 21:56:52 +00:00
Mark Salyzyn
404fd5bc4a zipalign missing header
Remove assumptions about header side effects

Test: compile
Bug: 30465923
Change-Id: I117567b0f99814b9d9a955b39c56f43f7972cf62
2016-10-17 12:22:44 -07:00
Chih-hung Hsieh
fd9558d09a Merge "Add more patterns for a finer project warning list."
am: 8ef4397c22

Change-Id: I5e377a80abc1953455b9b8a1840f579b7f133475
2016-10-15 01:44:04 +00:00
Chih-hung Hsieh
8ef4397c22 Merge "Add more patterns for a finer project warning list." 2016-10-15 01:36:59 +00:00
Sasha Levitskiy
1ea9eacdae Merge "build: tools: Add json collection of installed files with hashes."
am: fe77369b50

Change-Id: Ib3e9c8dead0a6fdbb0f93690da66e2a8e1ea0f39
2016-10-15 01:13:22 +00:00
Sasha Levitskiy
4a34533e11 build: tools: Add json collection of installed files with hashes.
Adds installed-files.json in addition to installed-files.txt
Further sorts the file list to be ordered within the same size bucket.

Test: manual, cross-checked checksums with sha256sum utility
      checked build outputs.

Bug: 19988819
Merged-in: Ifb632eb4df65ec48645c8f93e36bae44ccc52ba8
Change-Id: Ifb632eb4df65ec48645c8f93e36bae44ccc52ba8
Signed-off-by: Sasha Levitskiy <sanek@google.com>
2016-10-14 16:29:16 -07:00
Chih-Hung Hsieh
144864eed0 Add more patterns for a finer project warning list.
Bug: 31377083
Test: run warn.py --byproject build.log
Change-Id: I3cad8e24bc97a84f067a162ff728e30fde3c7197
2016-10-14 12:27:17 -07:00
Alex Deymo
ad5b6d2acb fat16copy: Fix allocation logic when extending directories. am: a1c977735b am: a507800e5f
am: 0931a41ea5

Change-Id: Iaad5cd91d5f09da7996c791ed55515c3d633c9ae
2016-10-14 03:32:45 +00:00
Alex Deymo
556d863425 fat16copy: Sort new directory entries. am: 567c5d0f95 am: cf24e4b85f
am: 3c6bf619ac

Change-Id: I689251be77849cb3ae1cdfa595d4ff3111f59ab5
2016-10-14 03:32:40 +00:00
Casey Dahlin
2ca8667d9e Make fat16copy.py add . and .. entries to directories am: df71efe378 am: 8cf11d1423
am: 70e24e55b3

Change-Id: Ib3b8a5e1145451ea52158a1ca23a62902f2794d4
2016-10-14 03:32:34 +00:00
Alex Deymo
0931a41ea5 fat16copy: Fix allocation logic when extending directories. am: a1c977735b
am: a507800e5f

Change-Id: Ida8f372a1656ff0b4059c8b2d5629ea1b479c9fc
2016-10-14 03:27:14 +00:00
Alex Deymo
3c6bf619ac fat16copy: Sort new directory entries. am: 567c5d0f95
am: cf24e4b85f

Change-Id: I109b9e0d9f9e3bf6851b575a3b9576282b851c0a
2016-10-14 03:27:09 +00:00
Casey Dahlin
70e24e55b3 Make fat16copy.py add . and .. entries to directories am: df71efe378
am: 8cf11d1423

Change-Id: I6f2dd99f66ffafffca7161cc578cc08f7c798078
2016-10-14 03:27:04 +00:00
Alex Deymo
a507800e5f fat16copy: Fix allocation logic when extending directories.
am: a1c977735b

Change-Id: I5bc6da73f2c5f9dfb9b9e9cf34b77481d45ab911
2016-10-14 03:24:14 +00:00
Alex Deymo
cf24e4b85f fat16copy: Sort new directory entries.
am: 567c5d0f95

Change-Id: I2d7bc7b3e7ed5e0ddf940d490de439ff591c9817
2016-10-14 03:24:09 +00:00
Casey Dahlin
8cf11d1423 Make fat16copy.py add . and .. entries to directories
am: df71efe378

Change-Id: Idc2516c8a29d62589f355e8bdbbaade170a5cdb5
2016-10-14 03:24:04 +00:00
Alex Deymo
3b54b69205 Merge changes Ie3d82cfa,I2f808896,I587f400d
* changes:
  fat16copy: Fix allocation logic when extending directories.
  fat16copy: Sort new directory entries.
  Make fat16copy.py add . and .. entries to directories
2016-10-14 03:19:55 +00:00
Dan Willemsen
a62ff78df4 Update droiddoc templates for build/make move
am: 0f40bafa96

Change-Id: I74f5c5bb84c5a748ea38e6c8015dce8ecc269aaa
2016-10-12 19:21:52 +00:00
Clay Murphy
f8d8458edd Merge "Update droiddoc templates for build/make move" 2016-10-12 18:34:23 +00:00
Dan Willemsen
0f40bafa96 Update droiddoc templates for build/make move
Since build/ was moved to build/make/, the droiddoc templates now need
another ../ to reach the android root.

Test: m online-sac-docs
Change-Id: I2393f6c791df9b67ccafb4eb047fd8ccc52481cb
2016-10-12 10:35:53 -07:00
Chih-Hung Hsieh
71155edd09 Merge "Better pattern matching and dump of warning messages." am: 6949e7ecba am: 1a876e215b
am: fbb1b890fa

Change-Id: Icaff358e282166c635c3ac2edd3297547c32cf6d
2016-10-12 16:59:33 +00:00
Chih-Hung Hsieh
ae1a5c973b Merge "Normalize warning source file path to relative path." am: eb2f711528 am: d4b0a20c01
am: b4a26ee48f

Change-Id: I9fa7bdf12f86f65259409a1dc0735ab455ea6320
2016-10-12 16:59:19 +00:00
Chih-Hung Hsieh
fbb1b890fa Merge "Better pattern matching and dump of warning messages." am: 6949e7ecba
am: 1a876e215b

Change-Id: Ieeb9fe468a12aeb532f35ede9879f3968441709d
2016-10-12 16:52:01 +00:00
Chih-Hung Hsieh
b4a26ee48f Merge "Normalize warning source file path to relative path." am: eb2f711528
am: d4b0a20c01

Change-Id: I16d7425b3a933596c06ee7acdf396b0b2b37a483
2016-10-12 16:51:46 +00:00
Treehugger Robot
6949e7ecba Merge "Better pattern matching and dump of warning messages." 2016-10-12 16:35:34 +00:00
Dan Willemsen
82be5468c3 Update droiddoc templates for build/make move
Since build/ was moved to build/make/, the droiddoc templates now need
another ../ to reach the android root.

Test: m online-sac-docs
Change-Id: I2393f6c791df9b67ccafb4eb047fd8ccc52481cb
2016-10-12 00:10:33 -07:00
Chih-Hung Hsieh
5722f9247b Better pattern matching and dump of warning messages.
* Warning messages must start with source file path.
  This will reject lines containing only 'warning:'
  but not a source file path prefix.
* Escape both backslash and quotation marks in the
  dump of strings to JavaScript string literals.

Bug: 32060052
Test: run through build.log files
Change-Id: Ib064768b1ba2954f974604ea054f7a6d2ad15ae7
2016-10-11 15:33:19 -07:00
Chih-Hung Hsieh
a45c5c1cf9 Normalize warning source file path to relative path.
Remove Android root directory path from long
absolute source file path.

Test: run warn.py with build.log
Bug: 32059187
Change-Id: Ib630cebd8c56a9fef443139ca502d97e59c7b42e
2016-10-11 15:30:26 -07:00
Yunlian Jiang
b087e00ba0 Merge "Fix a nullness warning." am: b37e81d3cd am: 10b5a9d3f6
am: ea4f981031

Change-Id: Ie1fd127b89e6bc37514b05051708e69f37ae95f9
2016-10-11 19:48:01 +00:00
Yunlian Jiang
ea4f981031 Merge "Fix a nullness warning." am: b37e81d3cd
am: 10b5a9d3f6

Change-Id: I07c3a7c4f8b08b3b9c0a90a6b72cae70efcf9f4e
2016-10-11 19:42:01 +00:00
Treehugger Robot
b37e81d3cd Merge "Fix a nullness warning." 2016-10-11 19:29:37 +00:00
Yunlian Jiang
4fdd8f156d Merge "Fix an uninitialized value warning." am: f943e138d7 am: d7a0b25d66
am: 570063f82d

Change-Id: Iefbe15d4bb48b9e92df1a2223cccec0a32000452
2016-10-11 03:05:28 +00:00
Yunlian Jiang
570063f82d Merge "Fix an uninitialized value warning." am: f943e138d7
am: d7a0b25d66

Change-Id: I0f19e57829765e7d070cad4370d808a3a23d46ad
2016-10-11 02:59:59 +00:00
Treehugger Robot
f943e138d7 Merge "Fix an uninitialized value warning." 2016-10-11 02:43:47 +00:00
Yunlian Jiang
221c1c027a Fix an uninitialized value warning.
Warning from the static analyzer:

build/tools/zipalign/ZipFile.cpp:503:5: warning: Function call argument
is an uninitialized value
pEntry->setDataInfo(uncompressedLen, endPosn - startPosn, crc,

Specifically, it's referencing `crc`, which would be uninitialized if we
hit either of these two error cases, since we'd return `NO_ERROR`.

Note that the warning is still there, but that's only because the static
analyzer can't see the asserts. If we #undef NDEBUG in the file, then
the warning disappears.

Bug: none
Test: With NDEBUG undefined, the warning is gone.
Change-Id: Iaed66127746c38add2c842ab027f2e1982d0e2fd
2016-10-10 17:31:06 -07:00
Dirk Dougherty
3dc35a0148 Fix samples metadata concat. am: 8d565ed204 am: bafc0b1baf
am: 20e91f4e7a

Change-Id: I7e77f030b6dc45da3b22459bbd5871ff42285ba8
2016-10-08 02:35:33 +00:00
Dirk Dougherty
20e91f4e7a Fix samples metadata concat. am: 8d565ed204
am: bafc0b1baf

Change-Id: I21dadb32eeb771aae9c188372d0da1cf4ea16126
2016-10-08 02:31:32 +00:00
Dirk Dougherty
7f56225968 Fix samples metadata concat. am: 8d565ed204
am: 22fe7409a4

Change-Id: I08418dfb23d225fa73ed21cb0704b69c2c8d0028
2016-10-08 02:31:32 +00:00
Dirk Dougherty
22fe7409a4 Fix samples metadata concat.
am: 8d565ed204

Change-Id: Ic1a7d62fb278022518154f9c8fe3394df620670c
2016-10-08 02:27:02 +00:00
Dirk Dougherty
bafc0b1baf Fix samples metadata concat.
am: 8d565ed204

Change-Id: I02cf4c7c04ac691b71ef48a6e584c8f2b224a6ff
2016-10-08 02:27:01 +00:00
Dirk Dougherty
8d565ed204 Fix samples metadata concat.
Change-Id: Ie9b616818995b3066d0e65ea1aa30077ed9d82ce
2016-10-07 12:12:50 -07:00
Amanda Kassay
9d22bd1c63 Adding excludeFromSuggestions, wear preview project path, and android wear/tv/auto/versions projectsw to template am: b5c04107af am: 858aa63148
am: cb5021e842

Change-Id: I899a771e0743eb6ce0eb027e4511343cf83d6624
2016-10-06 17:00:02 +00:00
Amanda Kassay
cb5021e842 Adding excludeFromSuggestions, wear preview project path, and android wear/tv/auto/versions projectsw to template am: b5c04107af
am: 858aa63148

Change-Id: I6f7afd6d2c9a8b5deea04948468ddf1ccf8a6db2
2016-10-06 16:55:32 +00:00
Amanda Kassay
284c15d7c2 Adding excludeFromSuggestions, wear preview project path, and android wear/tv/auto/versions projectsw to template am: b5c04107af
am: 95bf07b069

Change-Id: I58488322e94b7e1ece1f77fdc600bc1fac6442b0
2016-10-06 16:55:32 +00:00
Amanda Kassay
858aa63148 Adding excludeFromSuggestions, wear preview project path, and android wear/tv/auto/versions projectsw to template
am: b5c04107af

Change-Id: I11d773f8ca2ca9b4b20a659432d39f8c4adbef2d
2016-10-06 16:52:32 +00:00
Amanda Kassay
95bf07b069 Adding excludeFromSuggestions, wear preview project path, and android wear/tv/auto/versions projectsw to template
am: b5c04107af

Change-Id: I0dbabb4c9dfa21971d6c46f3eb68aedec377968b
2016-10-06 16:52:32 +00:00
Chih-hung Hsieh
9031974b1f Merge "Add a new ANALYZER severity group." am: 89244619ad am: 8a2f279b37
am: 9a838ef507

Change-Id: I44d24577700403f26544a443fc47f1453daa1010
2016-10-05 23:43:52 +00:00
Chih-hung Hsieh
9a838ef507 Merge "Add a new ANALYZER severity group." am: 89244619ad
am: 8a2f279b37

Change-Id: If326565dda294235df273211ba2fb21ef4c292c9
2016-10-05 23:41:21 +00:00
Chih-hung Hsieh
89244619ad Merge "Add a new ANALYZER severity group." 2016-10-05 23:31:43 +00:00
Dan Willemsen
c9c6284660 Merge "Add tool to run kati for all products" am: 480678e220 am: 652c4b4001
am: 8c0a4f49a2

Change-Id: I086f181ffcd8291fa950c084f0471686d845eaf7
2016-10-05 23:04:28 +00:00
Dan Willemsen
8c0a4f49a2 Merge "Add tool to run kati for all products" am: 480678e220
am: 652c4b4001

Change-Id: I70645fc341fa1df26635d60731c8877421f73ead
2016-10-05 23:01:28 +00:00
Amanda Kassay
b5c04107af Adding excludeFromSuggestions, wear preview project path, and android wear/tv/auto/versions projectsw to template
b/31771704 b/31903798 b/31773716

Staged:
https://android-dot-devsite.googleplex.com/about/versions/nougat/index.html
https://android-dot-devsite.googleplex.com/index.html
https://android-dot-devsite.googleplex.com/wear/preview/index.html

Change-Id: Idf9893f9d108c26038ead06c84de771e21b89f37
2016-10-05 22:31:22 +00:00
Dan Willemsen
4c364620ac Add tool to run kati for all products
Test: get_build_var all_named_products
Test: build/tools/kati_all_products.sh
Change-Id: I3496cb4c59a1edb11c9149b95ecabd3a828b8972
2016-10-05 14:04:21 -07:00
Chih-Hung Hsieh
1eabb0ecb2 Add a new ANALYZER severity group.
* Separate clang-tidy's clang-analyzer-* warnings from
  other clang-tidy warnings.

Bug: 31559947
Test: build with WITH_TIDY=1 and DEFAULT_GLOBAL_TIDY_CHECKS=*,-readability-*,-google-readability-*
Change-Id: If03c421c9319741ef6588bc0d803b6da0cc4433a
2016-10-05 11:53:20 -07:00
Yunlian Jiang
4f1a91cbac Fix a nullness warning.
This silences a warning null pointer passed as an argument to a
'nonnull' parameter

BUG=None
Test: The warning is gone.

Change-Id: I10a17d4674bfb373d7fe8666863abd5f10a4d11f
2016-10-05 10:52:35 -07:00
David Zeuthen
4e9c89ab87 resolve merge conflicts of 86180eb to nyc-mr1-dev-plus-aosp
Change-Id: Ia4bfb2571bac509cebe22f70ff43e6696f832423
2016-10-04 18:53:34 -04:00
David Zeuthen
86180ebab9 Merge "Make room for AVB hashtree and metadata." am: 70209ad9f0
am: b5b638f7fa

Change-Id: I2bdfd752ff2082b241ad5fbf88e89644d9cd2f3f
2016-10-04 22:39:21 +00:00
David Zeuthen
70209ad9f0 Merge "Make room for AVB hashtree and metadata." 2016-10-04 22:32:27 +00:00
David Zeuthen
4014a9daa7 Make room for AVB hashtree and metadata.
While the system.img images currently built with AVB support verify
correctly, mounting the filesystem content fails. This is because
'avbtool add_hashtree_footer' used to claim some of the unused /
DONT_CARE space for stashing the verity tables and this resulting in the
mapped device ending up being smaller causing the mount failure.

Fix this by leaving enough room for AVB hashtree and metadata before
building the image. This is achieved by moving the AVB hashtree support
into build_image.py and using a just added '--calc_max_image_size'
option to 'avbtool add_hashtree_footer' to figure out how much space to
leave out.

This depends on https://android-review.googlesource.com/#/c/281821/

Bug: 31264226
Test: Mounting dm-verity set up from system.img now works.

Merged-In: I4c5de1004c1059f8c582e76b3b8517d427aa1a87

Change-Id: I945a5f1f6782791736cd319f216cfa6b448fb04d
2016-10-04 17:32:16 -04:00
Przemyslaw Szczepaniak
a8c8dadd09 Merge "Fix for non-empty a[name] tags in openJdk based javadocs." 2016-10-04 11:35:58 +00:00
Przemyslaw Szczepaniak
4bce2866fb Fix for non-empty a[name] tags in openJdk based javadocs.
openJdk based android javadoc contains <a name=... tags
that are non-empty. Currently they are being hidden,
causing badly formatted pages for some java.* classes
(missing text and random whitespace blocks).

This change makes the existing a[name] hiding rule
apply only to empty tags.

Test: make docs
Bug: 31700998
Change-Id: Ifa75bbabe308d7aed0cce6165c1113e5a382a121
(cherry picked from commit a7edd92c45)
2016-10-04 10:31:54 +00:00
Colin Cross
c66ad83f43 Merge "Propagate signals through makeparallel" am: e0f42b41f6 am: 6f4807da4b
am: fd00ed23a9

Change-Id: I322f8cecc72e64a6c318e04950c0d200c7f9ef6b
2016-10-04 00:34:44 +00:00
Colin Cross
fd00ed23a9 Merge "Propagate signals through makeparallel" am: e0f42b41f6
am: 6f4807da4b

Change-Id: Ia2a896df2782603b68c4dd5d348bcc7f5d661933
2016-10-04 00:30:39 +00:00
Colin Cross
49c45aecc4 Propagate signals through makeparallel
Set up a signal handler in makeparallel that will forward SIGHUP,
SIGINT, SIGQUIT, and SIGTERM to the child process.

Bug: 31907490
Test: m -j & killall make; pgrep -a ninja
Test: make makeparallel_test
Change-Id: I306e5335ed1b2c7056804d5da377a2f283877f30
2016-10-03 15:33:11 -07:00
Dirk Dougherty
77475e522f For ds builds only, emit a separate metadata file for samples only. am: a9fcf48078 am: fd40bbc586
am: 3d58e7f387

Change-Id: Iec35ec96194a76c67dec543cf28184f0d0c2e549
2016-10-01 01:19:00 +00:00
Dirk Dougherty
7e9cccdfba For ds builds only, emit a separate metadata file for samples only. am: a9fcf48078
am: 913e1dfcd7

Change-Id: I7c6164efec249e50abdc4b032e8f9a47f0ae17eb
2016-10-01 01:11:15 +00:00
Dirk Dougherty
3d58e7f387 For ds builds only, emit a separate metadata file for samples only. am: a9fcf48078
am: fd40bbc586

Change-Id: I97c8ecb583d951752218b94dcc88c3f81cf548cd
2016-10-01 01:11:12 +00:00
Dirk Dougherty
913e1dfcd7 For ds builds only, emit a separate metadata file for samples only.
am: a9fcf48078

Change-Id: Ic2b786401a3431896e6441c8c2c61545a6aaea1b
2016-10-01 01:07:42 +00:00
Dirk Dougherty
fd40bbc586 For ds builds only, emit a separate metadata file for samples only.
am: a9fcf48078

Change-Id: I1795160d80b1038ffe30758ce6fc4cd48d3bda2a
2016-10-01 01:07:41 +00:00
Dirk Dougherty
a9fcf48078 For ds builds only, emit a separate metadata file for samples only.
Change-Id: I95c03a10cca586c6675f98664479ba8bf2e43576
2016-09-30 17:33:50 -07:00
Tao Bao
658af49662 Merge "releasetools: Clean up sign_target_files_apks.py." am: ad49deb5e6 am: 4299e48f0c
am: dfc210c9a4

Change-Id: Iee5cda2c10bc9c474140bf1f303261d8cf31d7b8
2016-10-01 00:24:10 +00:00
Tao Bao
dfc210c9a4 Merge "releasetools: Clean up sign_target_files_apks.py." am: ad49deb5e6
am: 4299e48f0c

Change-Id: Ic59f6a2839502c4007f2e5dc51ac4a8eb2477b2d
2016-10-01 00:20:39 +00:00
Tao Bao
9aa4b9b1b6 releasetools: Clean up sign_target_files_apks.py.
Remove the obsolete workaround for API 24. Also make it pylint clean.

Test: 1. Sign a target_files.zip and get identical results.
      2. `pylint --rcfile=pylintrc sign_target_files_apks.py` gives 10.00/10.

Change-Id: I21736f959c5182486fd8ccebea9bbc594edef9fb
2016-09-30 15:29:09 -07:00
Tao Bao
8145c70f2b Merge "releasetools: Fix the reference to OPTIONS.info_dict." am: 0a5b59e78b am: 8b6d59e110
am: b00dbd1b11

Change-Id: Ib31adf3e30f4b9077e14c577ffdc5791e89b746b
2016-09-30 17:59:31 +00:00
Tao Bao
b00dbd1b11 Merge "releasetools: Fix the reference to OPTIONS.info_dict." am: 0a5b59e78b
am: 8b6d59e110

Change-Id: If2385afbd245654f27a96f02414856a7ce546a00
2016-09-30 17:48:38 +00:00
Tao Bao
b31b94e159 releasetools: Fix the reference to OPTIONS.info_dict.
sign_target_files_apks.py calls common.GetBootableImage() but without
calling 'OPTIONS = common.OPTIONS' first. In common.GetBootableImage(),
we should use the local info_dict parameter instead of OPTIONS.info_dict.

Test: sign_target_files_apks.py generates signed-TF.zip successfully.

Change-Id: Ia3d32b88691c26e5fb98feea709e3e3c3eb70fdb
2016-09-29 22:04:50 -07:00
David Zeuthen
27ac0e34fe resolve merge conflicts of c36ab42 to nyc-mr1-dev-plus-aosp
Change-Id: Iaf78fb6c723955fd92cc64194cb32bba73a9dafb
2016-09-29 14:25:03 -04:00
David Zeuthen
c36ab42dcc Merge "Update for new Android Verified Boot (AVB)." am: 8ee6d119d1
am: 621a3dbf7a

Change-Id: I1e7101853ba81ba21f68b9a72993dc731653692a
2016-09-29 18:04:21 +00:00
David Zeuthen
8ee6d119d1 Merge "Update for new Android Verified Boot (AVB)." 2016-09-29 17:48:40 +00:00
David Zeuthen
2ce63edab7 Update for new Android Verified Boot (AVB).
This updates the build system for the new Android Verified Boot
codebase. As this is based on Brillo Verified Boot, this change replaces
the existing BVB support.

Android Verified Boot is enabled by the BOARD_AVB_ENABLE variable

 BOARD_AVB_ENABLE := true

This will make the build system create vbmeta.img which will contain a
hash descriptor for boot.img, a hashtree descriptor for system.img, a
kernel-cmdline descriptor for setting up dm-verity for system.img and
append a hash-tree to system.img.

Additionally, the descriptors are left in boot.img and system.img so a
third party can create their own vbmeta.img file linking - using the
option --chain_partition - to these images. If this is not needed
footers can be erased using the 'avbtool erase_footer' command. It's
also harmless to just leave them in the images.

By default, the algorithm SHA256_RSA4096 is used with a test key from
the AVB source directory. This can be overriden by the
BOARD_AVB_ALGORITHM and BOARD_AVB_KEY_PATH variables to use e.g. a
4096-bit RSA key and SHA-512:

 BOARD_AVB_ALGORITHM := SHA512_RSA4096
 BOARD_AVB_KEY_PATH := /path/to/rsa_key_4096bits.pem

To prevent rollback attacks, the rollback index should be increased on a
regular basis. The rollback index can be set with the
BOARD_AVB_ROLLBACK_INDEX variable:

 BOARD_AVB_ROLLBACK_INDEX := 5

If this is not set, the rollback index defaults to 0.

The variable BOARD_AVB_MAKE_VBMETA_IMAGE_ARGS can be used to specify
additional options passed to 'avbtool make_vbmeta_image'. Typical
options to be used here include '--prop', '--prop_from_file', and
'--chain_partition'.

The variable BOARD_AVBTOOL_BOOT_ADD_HASH_FOOTER_ARGS can be used to
specify additional options passed to 'avbtool add_hash_footer' for
boot.img. Typical options to be used here include '--hash_algorithm' and
'--salt'.

The variable BOARD_AVBTOOL_SYSTEM_ADD_HASHTREE_FOOTER_ARGS can be used
to specify additional options passed to 'avbtool add_hashtree_footer'
for systems.img. Typical options to be used here include
'--hash_algorithm', '--salt', and '--block_size'.

BUG=31264226
TEST=Manually tested on edison-eng by inspecting {boot, system,
  vbmeta}.img in out/ directory as well as their counterparts in
  the IMAGES/ directory of edision-target_files-eng.zeuthen.zip

Merged-In: Ic9a61cfc65c148b12996e57f04da5432eef6b982

Change-Id: I97042655bca15e7eac899f12c5bada2f6184d307
2016-09-29 11:19:36 -04:00
Meike Baumgärtner
dc7706a8ad Merge "Only run warn.py's main function if it is the main program." am: 312c310f7c am: ce4e16d835
am: 8a37ee0c63

Change-Id: I48db2a1358ab5236706217a2c9a14de856854037
2016-09-29 04:19:33 +00:00
Meike Baumgärtner
8a37ee0c63 Merge "Only run warn.py's main function if it is the main program." am: 312c310f7c
am: ce4e16d835

Change-Id: I44973ef0f9ff3f8e1bc641db592b1ac3c96d051a
2016-09-29 04:11:30 +00:00
Treehugger Robot
312c310f7c Merge "Only run warn.py's main function if it is the main program." 2016-09-29 03:58:07 +00:00
Meike Baumgärtner
ac9d5df349 Only run warn.py's main function if it is the main program.
Test: run warn.py --byproject build.log
Change-Id: I155cce8c952d6d8a02c8e1809bf61a46c847c26e
2016-09-28 17:59:08 -07:00
Tao Bao
199c0b3948 Analyze unchanged blocks in odex files.
am: d0814585b8

Change-Id: Ie4d6415d4d3ebc1e28a299bd3bb0150262a07535
2016-09-28 19:37:54 +00:00
Chih-Hung Hsieh
882737b7cb Merge "Fix pylint warning and refactor project_list." am: 6784a3fcdd am: ac2df1c205
am: 62c9956819

Change-Id: I9171de8c9062b93de102ae782345d93da6892598
2016-09-28 18:00:50 +00:00
Chih-Hung Hsieh
62c9956819 Merge "Fix pylint warning and refactor project_list." am: 6784a3fcdd
am: ac2df1c205

Change-Id: I7f2017a50ab5b5aee425e86211e0746538e94e90
2016-09-28 17:57:47 +00:00
Treehugger Robot
6784a3fcdd Merge "Fix pylint warning and refactor project_list." 2016-09-28 17:47:41 +00:00
Tao Bao
7f5f23160d Merge "Analyze unchanged blocks in odex files." am: 6e12b72966 am: 0493339a1f
am: 4fbdde5150

Change-Id: Ibbd1b92b81249b7f11de1ba166ff04ee7ba73b88
2016-09-28 17:18:15 +00:00
Tao Bao
4fbdde5150 Merge "Analyze unchanged blocks in odex files." am: 6e12b72966
am: 0493339a1f

Change-Id: Icfdd5a0f02f43fdca2adf6468b106fcd403614bc
2016-09-28 17:15:45 +00:00
Tao Bao
d0814585b8 Analyze unchanged blocks in odex files.
In BBOTA, we generate patches based on _all_ the blocks of a pair of
input files (src and tgt). For security incremental OTAs, one common
pattern is that only a few blocks are changed in odex files (e.g.
headers). We don't really need to stash/patch the unchanged blocks.

This CL analyzes the unchanged blocks in odex files and computes the
diff for the changed blocks only. It reduces the OTA install time by
about 25% to 40% in our experiments, by paying an increase of 5% to 30%
OTA generation time cost.

Bug: 31570716
Test: Generate an incremental and apply on device.

Change-Id: If842c1afeff6894a3d27eb60b7e8f65a179b7977
(cherry picked from commit 08c8583aea)
2016-09-28 10:13:33 -07:00
Tao Bao
6e12b72966 Merge "Analyze unchanged blocks in odex files." 2016-09-28 17:08:10 +00:00
Chih-hung Hsieh
c67151bdf2 Merge "Fix Google pylint warnings." am: aa5f2ccde2 am: 2d06a27ae6
am: 9e0609ee36

Change-Id: Id5152ca1676935175d7a5c911b128d7e4b312aae
2016-09-28 04:22:56 +00:00
Chih-hung Hsieh
9e0609ee36 Merge "Fix Google pylint warnings." am: aa5f2ccde2
am: 2d06a27ae6

Change-Id: Id90eacb4b5316ac1cecd4c8578127fbf6a1c5102
2016-09-28 04:19:56 +00:00
Chih-Hung Hsieh
9f766239f0 Fix pylint warning and refactor project_list.
Bug: 31377083
Test: run warn.py --byproject build.log
Change-Id: Id442cf6608bf5c14784063c05f5ff0b731f17486
2016-09-27 21:13:52 -07:00
Chih-Hung Hsieh
b426c54e8a Fix Google pylint warnings.
* Rename 'severity' to 'Severity'.
* Fix bad line indentations and space.

Test: run warn.py --byproject build.log
Change-Id: I33d701cca408b5ca4715be8d44c890942b7d132a
2016-09-27 18:15:40 -07:00
Chih-Hung Hsieh
0c86a5b490 Merge "Add buttons to group warning by project or severity." am: 9796175d0f am: 9dee2ac43c
am: 3791e7b242

Change-Id: Ia47f5be94cfc37d2bb934eef97a3b9f860a0d139
2016-09-27 21:25:39 +00:00
Chih-Hung Hsieh
3791e7b242 Merge "Add buttons to group warning by project or severity." am: 9796175d0f
am: 9dee2ac43c

Change-Id: I10ff9eb5c01a9d594ccc3332b5a8daaf673705c8
2016-09-27 21:22:40 +00:00
Przemyslaw Szczepaniak
420ba30adb Fix for non-empty a[name] tags in openJdk based javadocs. am: a7edd92c45 am: ea14cfba0f
am: 6169f2b065

Change-Id: I328b66a8a08126baeaa38a66d888dcf0521c6976
2016-09-27 09:16:41 +00:00
Przemyslaw Szczepaniak
ea14cfba0f Fix for non-empty a[name] tags in openJdk based javadocs.
am: a7edd92c45

Change-Id: I5759d442e038f31105c249250ce3474564d7954c
2016-09-27 09:11:55 +00:00
Przemyslaw Szczepaniak
06dcac3666 Fix for non-empty a[name] tags in openJdk based javadocs. am: a7edd92c45
am: 8bcdd9a36c

Change-Id: Idf0ddf51b41549c55336a2c583d0f6199165284c
2016-09-27 09:11:55 +00:00
Przemyslaw Szczepaniak
8bcdd9a36c Fix for non-empty a[name] tags in openJdk based javadocs.
am: a7edd92c45

Change-Id: Iaef35c55e7af6f27a12944491026ee45b5ef8312
2016-09-27 09:08:40 +00:00
Chih-Hung Hsieh
2a38c37d57 Add buttons to group warning by project or severity.
* Add more project patterns.
* Add more top level comments for global variables and functions.
* Resequence severity numbers to match the dump order.
* Emit warning messages and tables to static HTML JavaScript arrays.
* Replace old static HTML table dumper functions with
  new dynamic HTML JavaScript to generate sections of warnings.
* Warning messages are grouped into sections by severity or projects.
* Better descriptions for SKIP warning patterns.
* Replace output function with print.

Bug: 31377083
Test: run warn.py --byproject build.log
Change-Id: I7b44ef6223d5b2f1aa31655a5a47d854f9a1dedc
2016-09-26 16:02:12 -07:00
Chih-Hung Hsieh
2616d8adfe Merge "Fix Google pylint warnings." am: bcd229277a am: 64af14a4d2
am: 14a22e9222

Change-Id: I6ef533be4ce3c798a4ff4c7d7364b3b3f5b81e49
2016-09-26 21:27:55 +00:00
Chih-Hung Hsieh
14a22e9222 Merge "Fix Google pylint warnings." am: bcd229277a
am: 64af14a4d2

Change-Id: I332da66829738d6793ca1795103f903271f235c6
2016-09-26 21:25:25 +00:00
Treehugger Robot
bcd229277a Merge "Fix Google pylint warnings." 2016-09-26 21:18:08 +00:00
Chih-Hung Hsieh
6c0fdbb84d Fix Google pylint warnings.
* Rename variables and functions to follow Google coding style.
* Fix line indentations to follow Google coding style.
* Add module and function docstrings.
* Change shebang line to avoid pylint warning.
* Suppress some pylint warnings to avoid too many changes at once.
* Fix typos.

Test: run warn.py --byproject build.log
Change-Id: I569961981b562e35cb5609a96cd5ebb40a80829c
2016-09-26 12:24:54 -07:00
Przemyslaw Szczepaniak
a7edd92c45 Fix for non-empty a[name] tags in openJdk based javadocs.
openJdk based android javadoc contains <a name=... tags
that are non-empty. Currently they are being hidden,
causing badly formatted pages for some java.* classes
(missing text and random whitespace blocks).

This change makes the existing a[name] hiding rule
apply only to empty tags.

Test: make docs
Bug: 31700998
Change-Id: Ifa75bbabe308d7aed0cce6165c1113e5a382a121
2016-09-26 16:36:03 +00:00
Alex Deymo
a1c977735b fat16copy: Fix allocation logic when extending directories.
When extending a directory, empty directory entries were left behind
signaling the end of a directory.

Bug: 31570546
Test: make dist; mdir shows all the files.

(cherry picked from commit d4516300b010c8155861e310dac871e8c10d3382)

Change-Id: Ie3d82cfaad51be73911293a54d18746e8adf62a2
2016-09-23 14:21:43 -07:00
Alex Deymo
567c5d0f95 fat16copy: Sort new directory entries.
Sort the entries returned by os.listdir to give a consistent ordering
across build.

Bug: None
Test: `make dist`

(cherry picked from commit ef34e5dca216e61fd81020e818f247f6ce47d26e)

Change-Id: I2f80889684f108208f07e13d725acaa7bc0ab099
2016-09-23 14:21:38 -07:00
Casey Dahlin
df71efe378 Make fat16copy.py add . and .. entries to directories
Test: fsck no longer complains
Bug: None

(cherry picked from commit 7d38ec37432c307d729b9a8fdb78dbf820427538)

Change-Id: I587f400df2f57b987df8b92d551c99f2f42a9af6
2016-09-23 14:21:31 -07:00
Tao Bao
08c8583aea Analyze unchanged blocks in odex files.
In BBOTA, we generate patches based on _all_ the blocks of a pair of
input files (src and tgt). For security incremental OTAs, one common
pattern is that only a few blocks are changed in odex files (e.g.
headers). We don't really need to stash/patch the unchanged blocks.

This CL analyzes the unchanged blocks in odex files and computes the
diff for the changed blocks only. It reduces the OTA install time by
about 25% to 40% in our experiments, by paying an increase of 5% to 30%
OTA generation time cost.

Bug: 31570716
Test: Generate an incremental and apply on device.

Change-Id: If842c1afeff6894a3d27eb60b7e8f65a179b7977
2016-09-23 12:15:23 -07:00
Chih-Hung Hsieh
6b4ce491f2 Merge "Recognize new warning messages." am: b0553ca65b am: d95f164112
am: b6e37662ba

Change-Id: Iaa46479649224d5b8e05d69d9af57aedd3d396c7
2016-09-23 04:40:43 +00:00
Chih-Hung Hsieh
b6e37662ba Merge "Recognize new warning messages." am: b0553ca65b
am: d95f164112

Change-Id: I063024bfa1bf1ad1ef516905ec04a0902cc840c1
2016-09-23 04:38:41 +00:00
Chih-Hung Hsieh
0a19207f7b Recognize new warning messages.
* -Wunnamed-type-template-args and -W#pragma-messages

Test: run warn.py with build.log.
Change-Id: I36277e001081604f92a4d9c92f9a0b5d3f0ee5e5
2016-09-22 17:44:38 -07:00
Chih-Hung Hsieh
213815c966 Merge "Simplify warn.py and output of warning count table and tablerow." am: eac773047f am: d7f5496a7c
am: 693c1baa15

Change-Id: I5830b4e416df88c5988bf2564c5d7461fd68626f
2016-09-23 00:15:11 +00:00
Chih-Hung Hsieh
693c1baa15 Merge "Simplify warn.py and output of warning count table and tablerow." am: eac773047f
am: d7f5496a7c

Change-Id: Ia434a91fd21427107170931bc7a6dd26199754f1
2016-09-23 00:13:41 +00:00
Dirk Dougherty
a57fa8b2f9 Support "ID" lang code in place of "IN". am: fc61720cd5 am: 1e3157760a
am: 4f4060398b

Change-Id: Ibbf7dae4de81f65b4caa9f433be5f144d251c449
2016-09-22 22:25:38 +00:00
Dirk Dougherty
197ed2bf27 Support "ID" lang code in place of "IN". am: fc61720cd5
am: 992ceaad75

Change-Id: Ic003d4fb88047791c4b2272e03bc6c850e652962
2016-09-22 22:18:04 +00:00
Chih-Hung Hsieh
99459fc0d0 Simplify warn.py and output of warning count table and tablerow.
* Use a loop to initialize empty 'members' and 'option' of warnpatterns.
* Create severity.{color,columnheader,header} from an attributes list.
* Compute totalbyproject and totalbyseverity from a constructor.
* Skip all-zero rows and columns in the warning count table.
* Remove redundant spaces and newlines in tablerow output.

Test: run through build.log files
Change-Id: I4d3fa4ecd92e1afab91d85b7535d03f8696e83d8
2016-09-22 15:15:43 -07:00
Dirk Dougherty
1e3157760a Support "ID" lang code in place of "IN".
am: fc61720cd5

Change-Id: If9670423332a3c785cc7b7ddc5e53b524f9e4e7d
2016-09-22 21:54:37 +00:00
Dirk Dougherty
992ceaad75 Support "ID" lang code in place of "IN".
am: fc61720cd5

Change-Id: I5b83ffec940a6b0c0d613955027b7b0668cbe589
2016-09-22 20:08:54 +00:00
Dirk Dougherty
fc61720cd5 Support "ID" lang code in place of "IN".
Change-Id: I56632e638fdda81e494cbb7080502b35393a291f
2016-09-21 18:29:18 -07:00