Commit Graph

4638 Commits

Author SHA1 Message Date
William Roberts 7fe8b6d817 fs_config: drop fs_config_files/dirs PRODUCT_PACKAGES requirement
When configuring fs_config_files or fs_config_dirs for file_system
capabilities, drop the requirement that OEMs must add the target
to PRODUCT_PACKAGES. This limits the configuration requirement
to only needing to set the new and preferred TARGET_FS_CONFIG_GEN
or the older TARGET_ANDROID_FILESYSTEM_CONFIG_H method.

Test: That only setting TARGET_FS_CONFIG_GEN results in passwd and
group in the build image.
Change-Id: I818854fa1b3e94edaff59a32bd7cf23cf9b504aa
Signed-off-by: William Roberts <william.c.roberts@intel.com>
2016-11-29 16:21:17 -08:00
William Roberts 1c4721c3c5 fs_config: introduce group generator
Introduce a generator that outputs group files per man(5) group.

Succinctly, the output is a colon delimited string containing the following
fields:
  * group name
  * encrypted password (optional)
  * gid (int)
  * userlist (str,...)

Multiple colon delimited lines may exist, but will not be separated
across lines.

Sample generator output:
foo::2900:
foo_bar::2901:
custom_oem1::2902:

Test: That make group produces the group file.
Change-Id: Idd3fe925a09a227c6e894e1b5d2b3873b01531c6
Signed-off-by: William Roberts <william.c.roberts@intel.com>
2016-11-29 16:21:17 -08:00
William Roberts 316f9462af fs_config: introduce passwd generator
Introduce a generator that outputs passwd files per man(5) passwd.

Succinctly, the output is a colon delimited string containing the following
fields:

  * login name
  * encrypted password (optional)
  * uid (int)
  * gid (int)
  * User name or comment field
  * home directory
  * interpreter (optional)

Multiple colon delimited lines may exist, but will not be separated
across lines.

When run, produces:

foo::2900:2900::/:/system/bin/sh
foo_bar::2901:2901::/:/system/bin/sh
custom_oem1::2902:2902::/:/system/bin/sh

Note that this generator allows for 0 or more config.fs files. This allows for:
  * Unconditional inclusion of /system/etc/passwd in the generated image
  * A blank passwd file if no config.fs files are specified.

This ensures that when OEMs add config.fs files, there is no additional steps
for proper functionality (simpler for OEMs).

The one draw back is the additional inode consumption on system for a possible
blank file.

Test: That it produces a valid passwd file.
Change-Id: I19691c8260f02147ed861f8a319aeab3f5b1738e
Signed-off-by: William Roberts <william.c.roberts@intel.com>
2016-11-29 16:21:17 -08:00
William Roberts 8f42ce71ac fs_config: generate friendly in AID class
Generate the friendly name in one location. This prepares
the tool for generatting passwd and group files.

Also support mapping friendly names to identifiers.

Test: That output files stay the same as before.
Change-Id: I12198611126613eae81ca61614ed269c2439b72b
Signed-off-by: William Roberts <william.c.roberts@intel.com>
2016-11-29 16:21:17 -08:00
William Roberts 5f059a7691 fs_config: limit characters for AID_<name> sections
When generating files restrict the characters allowed in
AID_<name> to upercase, numbers, and underscores.

This detects errors ahead of time for generated C files as
well as handles seperation characters for passwd/group files.

This also lends itself to automatic detection of collisions
on friendly names, since freindly names are the lowercase
version of <name>.

Test: That invalid aid values result in a build failure.
Test: That the output files are consistent with ones before
this change (hash and diff checks)
Change-Id: Ie8ec44c1157ba9c22100e9169d9187f615e71280
Signed-off-by: William Roberts <william.c.roberts@intel.com>
2016-11-29 16:21:17 -08:00
William Roberts cfc51f5347 fs_config: generate oem AID header file
Generate an OEM AID_<name> header file seperate from fs_config
header file and provide details on how to export this interface
into native code.

Test: That ls, ps, chown and services function for built in
services as before.
Change-Id: Ie8ce6585e0721b52633ee50d62dcfe796e178f65
Signed-off-by: William Roberts <william.c.roberts@intel.com>
2016-11-29 16:21:17 -08:00
William Roberts d7104bca65 fs_config: android_id header generator
Implement an android_id generator that takes the data
acquired from parsing private/android_filesystem_config.h
and generates the android_id friendly name to uid mapping
for consumption in Bionic.

Test: That ls, ps, mkdir, chown, chgrp and services for built
in names work.
Change-Id: I1e55a401be0fca0ad162f8dc1e072e6afde7b927
Signed-off-by: William Roberts <william.c.roberts@intel.com>
2016-11-29 16:21:17 -08:00
William Roberts 64edf5bb97 fs_config: support parsing android_filesystem_config.h
Rather than hardcode the OEM ranges, parse and extract
AID values from android_filesystem_config.h.

An AID is defined to the tool as:
  * #define AID_<name>

An OEM Range is defined to the the tool as:
  * AID_OEM_RESERVED_START
  * AID_OEM_RESERVED_END
  or
  * AID_OEM_RESERVED_N_START
  * AID_OEM_RESERVED_N_END

Where N is a number.

While parsing, perform sanity checks such as:
1. AIDs defined in the header cannot be within OEM range
2. OEM Ranges must be valid:
   * Cannot overlap one another.
   * Range START must be less than range END
3. Like the C preproccessor, multiple matching AID_<name> throws
   en error.

The parser introduced here, prepares the tool to output android_ids
consumable for bionic.

Note that some AID_* friendly names were not consistent, thus a small
fixup map had to be placed inside the tool.

Test: tested parsing and dumping the data from android_filesystem_config.h
file.
Change-Id: Ifa4d1c9565d061b60542296fe33c8eba31649e62
Signed-off-by: William Roberts <william.c.roberts@intel.com>
2016-11-29 16:21:17 -08:00
William Roberts 11c29283ec fs_config: modularize fs_config_generator
This internally structures fs_config_generator.py to be able
to plug in generators to produce different outputs. This
prepares this tool for group and pwd file outputs.

Test: Checked diff and hash of before and after files.
Change-Id: Ie558518ac227dd946d70ab48027698b72a9bc94a
Signed-off-by: William Roberts <william.c.roberts@intel.com>
2016-11-29 16:21:17 -08:00
Ian Rogers 1eef968704 Merge "Update warn.py for new Error Prone diagnostics"
am: 7ed3af23a8

Change-Id: Iae1dec6c0b48be23d874c01b9d87627bbf0c0caf
2016-11-22 18:50:21 +00:00
Nick Glorioso 8a7b25c736 Update warn.py for new Error Prone diagnostics
Test: Local build, tee'd to file, ran warn.py and checked output HTML
Change-Id: Iee3386e88c73e4b8e0a1fcc60105ee5fb86e3cb0
2016-11-22 10:35:07 -08:00
Adrien Schildknecht 9a072cc0b0 Add support for creating ext4 images with mke2fs
We are investigating replacing make_ext4fs with the upstream tool mke2fs.
To mitigate the trouble that may arise if the new tool behave differently
compared to the old one, there will be a transition period.

Devices that want to use the new way of creating ext4 images can set the
variable "TARGET_USES_MKE2FS" to true in their BoardConfig.mk
By default, the build system will choose the old tool 'make_ext4fs'.

Test: m otapackage with TARGET_USES_MKE2FS={,false,true}
Change-Id: I282bcb9efe335a86c53986283090ca947d65c7f8
2016-11-18 17:06:29 -08:00
William Roberts c06559eb7b Merge "fs_config: move sort to be consistent with other sort"
am: 052a01958c

Change-Id: If18ab459d74e20f96db56d80ecdbf94580583463
2016-11-18 00:57:15 +00:00
Treehugger Robot 052a01958c Merge "fs_config: move sort to be consistent with other sort" 2016-11-18 00:29:53 +00:00
William Roberts 2088e57ed8 Merge "fs_config: correct README"
am: 4baaf905ee

Change-Id: I1a3fa8a296608205a29efb94c32fbfd14d4844f2
2016-11-17 23:42:52 +00:00
William Roberts 8cb6a1893e fs_config: move sort to be consistent with other sort
Test: Checked diff and hash of before and after output files, same.
Test: Tested build for basic boot and functionality.
Change-Id: If7806427e3a2a9ddb7a2c9aa14e1e4f9bf696acf
Signed-off-by: William Roberts <william.c.roberts@intel.com>
2016-11-17 14:18:38 -08:00
William Roberts db616f0091 fs_config: correct README
Testing on earlier versions of Python indicated an error in the
README. Python's ConfigParser prior to version 3.2 allows for
sections within the same file to override later sections.
Correct the README.

Test: Checked diff and hash of output file from before and after.
Change-Id: Ifd3f78414b4803e4b74decb1fdf6816d4902c4a2
Signed-off-by: William Roberts <william.c.roberts@intel.com>
2016-11-17 13:10:55 -08:00
Chih-hung Hsieh 70bbbdfdb1 Merge "Separate parallel_classify_warnings out of parse_input_file."
am: e4fb495b09

Change-Id: I5353f10ea0d78d8d9cd4539e4095b9c0ff010520
2016-11-15 22:34:03 +00:00
Chih-Hung Hsieh 76d0065ef8 Separate parallel_classify_warnings out of parse_input_file.
* Allow other callers of this module to:
  * pass any input stream to parse_input_file,
  * pass any warning_lines to parallel_classify_warnings,
  * call dump_csv or dump_html to get output.
* No output change.
* Capture and ignore signal.SIGTERM at the end,
  to avoid bad warning/error messages from the exit clean-up process.

Test: run warn.py build.log.
Change-Id: I1414797a536c0ee622e2a34c226578621be1ddab
2016-11-09 18:19:05 -08:00
Clay Murphy 731df4f4f3 Merge "Creates a css nowrap class for non-breaking elements in source.android.com Test: build2stage 36"
am: 98f15a70e9

Change-Id: I19f35481e688b205790e4f2d817932422b72b93f
2016-11-09 21:29:57 +00:00
Billy Lamberta 4d41e26a54 Creates a css nowrap class for non-breaking elements
in source.android.com
Test: build2stage 36

Change-Id: I467cc66d5e205b00ed188180140b1ae972e2ebad
2016-11-09 21:17:41 +00:00
Tao Bao dc04f93e39 Merge "releasetools: Use java_path in sign_target_files_apks.py."
am: 4a71d500c1

Change-Id: I61400574ac3f7d29906ca571f497554631ecd72d
2016-11-08 23:42:26 +00:00
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 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
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 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
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 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 8d565ed204 Fix samples metadata concat.
Change-Id: Ie9b616818995b3066d0e65ea1aa30077ed9d82ce
2016-10-07 12:12:50 -07: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 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 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 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 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
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 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 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 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 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
Dan Willemsen 83aba3a7ab Merge "Fix link_type checking" am: 665cda08f0 am: 1347d959de
am: 8459bbca6f

Change-Id: I22da0f1703995c4734a72901abe2dbcee62c1406
2016-09-20 01:01:38 +00:00