OSDN Git Service

android-x86/build.git
7 years agoMerge "Fix a nullness warning."
Treehugger Robot [Tue, 11 Oct 2016 19:29:36 +0000 (19:29 +0000)]
Merge "Fix a nullness warning."

7 years agoMerge "Fix an uninitialized value warning."
Treehugger Robot [Tue, 11 Oct 2016 02:43:46 +0000 (02:43 +0000)]
Merge "Fix an uninitialized value warning."

7 years agoFix an uninitialized value warning.
Yunlian Jiang [Wed, 5 Oct 2016 17:58:37 +0000 (10:58 -0700)]
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

7 years agoMerge "Make AVB work when BOARD_USES_RECOVERY_AS_BOOT is set to true."
Treehugger Robot [Fri, 7 Oct 2016 19:44:37 +0000 (19:44 +0000)]
Merge "Make AVB work when BOARD_USES_RECOVERY_AS_BOOT is set to true."

7 years agoMerge "remove use of CTS_TESTCASES_OUT"
Guang Zhu [Fri, 7 Oct 2016 01:15:16 +0000 (01:15 +0000)]
Merge "remove use of CTS_TESTCASES_OUT"

7 years agoMerge "Use ASAN prebuilts if SANITIZE_HOST includes address"
Treehugger Robot [Fri, 7 Oct 2016 01:08:06 +0000 (01:08 +0000)]
Merge "Use ASAN prebuilts if SANITIZE_HOST includes address"

7 years agoremove use of CTS_TESTCASES_OUT
Guang Zhu [Tue, 4 Oct 2016 23:43:40 +0000 (16:43 -0700)]
remove use of CTS_TESTCASES_OUT

Bug: 31788743
Test: $ make cts dist
      # check contents of generated package and API coverage
      # report
      $ make checkbuild

Merged-In: Ieec069bafbcc6df5a5b3b06befb4a3a5678a06fd
Change-Id: Ieec069bafbcc6df5a5b3b06befb4a3a5678a06fd
(cherry picked from commit f8f0880b3b8fb6a80ed766068d5f1714625b8960)

7 years agoMerge "Replace product variable stashing with .KATI_READONLY"
Treehugger Robot [Thu, 6 Oct 2016 23:41:29 +0000 (23:41 +0000)]
Merge "Replace product variable stashing with .KATI_READONLY"

7 years agoMerge "Support multiple arch for coverage packaging."
Ryan Campbell [Thu, 6 Oct 2016 23:25:08 +0000 (23:25 +0000)]
Merge "Support multiple arch for coverage packaging."

7 years agoMake AVB work when BOARD_USES_RECOVERY_AS_BOOT is set to true.
David Zeuthen [Thu, 6 Oct 2016 17:05:38 +0000 (13:05 -0400)]
Make AVB work when BOARD_USES_RECOVERY_AS_BOOT is set to true.

Often BOARD_USES_RECOVERY_AS_BOOT is used together with
BOARD_BUILD_SYSTEM_ROOT_IMAGE, but with this combination we're currently
not adding a hash footer to boot.img. Fix this.

Bug: 31119415
Test: Built with BOARD_USES_RECOVERY_AS_BOOT set to true and inspected images.
Merged-In: If033e5c93f5b71fd17405af7d970dc3f0540a1d2
Change-Id: I2f10bbffb0ba2467d53e3e62d5379c3ab7236063

7 years agoReplace product variable stashing with .KATI_READONLY
Dan Willemsen [Wed, 5 Oct 2016 23:57:27 +0000 (16:57 -0700)]
Replace product variable stashing with .KATI_READONLY

Instead of using rot13 / rot26, use the Kati extension to mark these
variables as readonly.

Move $(strip) for a few variables to before they're marked readonly. Use
a different variable for modifications to BOARD_KERNEL_CMDLINE in
build/core/Makefile.

Test: build/tools/kati_all_products.mk on AOSP and internal master
Test: build-aosp_bullhead.ninja the same before / after
Change-Id: If98b24af763831a9c5c2de38037a69ab1bf9e023

7 years agoUse ASAN prebuilts if SANITIZE_HOST includes address
Dan Willemsen [Thu, 6 Oct 2016 06:26:24 +0000 (23:26 -0700)]
Use ASAN prebuilts if SANITIZE_HOST includes address

Test: SANITIZE_HOST=address m -j showcommands
Change-Id: Ifdca98d5fa32867005ace99e1eb5188e22923ac6

7 years agoMerge "Add a new ANALYZER severity group."
Chih-hung Hsieh [Wed, 5 Oct 2016 23:31:43 +0000 (23:31 +0000)]
Merge "Add a new ANALYZER severity group."

7 years agoMerge "Add tool to run kati for all products"
Treehugger Robot [Wed, 5 Oct 2016 22:56:03 +0000 (22:56 +0000)]
Merge "Add tool to run kati for all products"

7 years agoAdd tool to run kati for all products
Dan Willemsen [Mon, 16 May 2016 08:35:57 +0000 (01:35 -0700)]
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

7 years agoAdd a new ANALYZER severity group.
Chih-Hung Hsieh [Wed, 5 Oct 2016 18:53:20 +0000 (11:53 -0700)]
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

7 years agoFix a nullness warning.
Yunlian Jiang [Wed, 5 Oct 2016 00:23:03 +0000 (17:23 -0700)]
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

7 years agoMerge "Remove redundant LIBART_IMG_{HOST,TARGET}_BASE_ADDRESS"
Treehugger Robot [Wed, 5 Oct 2016 16:51:15 +0000 (16:51 +0000)]
Merge "Remove redundant LIBART_IMG_{HOST,TARGET}_BASE_ADDRESS"

7 years agoRemove redundant LIBART_IMG_{HOST,TARGET}_BASE_ADDRESS
Dan Willemsen [Wed, 5 Oct 2016 05:24:17 +0000 (22:24 -0700)]
Remove redundant LIBART_IMG_{HOST,TARGET}_BASE_ADDRESS

These are exported by Soong. Caught by an upcoming change to mark
Soong-exported variables as readonly.

Test: Manual checking that the values are still the same.
Change-Id: I18e2bca588c57809c16a9f0c386aad432bfbee2c

7 years agoMerge "Fix empty mac .toc generation"
Colin Cross [Wed, 5 Oct 2016 02:35:02 +0000 (02:35 +0000)]
Merge "Fix empty mac .toc generation"

7 years agoMerge "Don't prune $(OUT_DIR) from findleaves.py"
Colin Cross [Wed, 5 Oct 2016 01:38:04 +0000 (01:38 +0000)]
Merge "Don't prune $(OUT_DIR) from findleaves.py"

7 years agoFix empty mac .toc generation
Colin Cross [Wed, 5 Oct 2016 00:01:29 +0000 (17:01 -0700)]
Fix empty mac .toc generation

If a shared library has no exported symbols grep will return exit code
1 meaning no matches, but this should not be considered an error
during toc generation.

Test: external/clang/build.py
Change-Id: If589da38ad8b844fe1aff4738481cebea75cca42

7 years agoDon't prune $(OUT_DIR) from findleaves.py
Colin Cross [Tue, 4 Oct 2016 23:21:49 +0000 (16:21 -0700)]
Don't prune $(OUT_DIR) from findleaves.py

Pruning $(OUT_DIR) can be overaggressive if $(OUT_DIR) matches the name
of any directory in the source tree that contains Android.mk files.
Pruning $(OUT_DIR) is no longer necessary, as one of the first things
the build system does is put an empty Android.mk file in there to avoid
recursing into it.

Bug: 31941856
Test: m -j OUT_DIR=angler
Change-Id: I7c5e95816f35bd5906845716d56cca76de7fa1ad

7 years agoMerge "Make room for AVB hashtree and metadata."
David Zeuthen [Tue, 4 Oct 2016 22:32:26 +0000 (22:32 +0000)]
Merge "Make room for AVB hashtree and metadata."

7 years agoMerge "Accept environment variables DEFAULT_*_TIDY_CHECKS"
Chih-hung Hsieh [Tue, 4 Oct 2016 22:25:25 +0000 (22:25 +0000)]
Merge "Accept environment variables DEFAULT_*_TIDY_CHECKS"

7 years agoMake room for AVB hashtree and metadata.
David Zeuthen [Fri, 30 Sep 2016 21:29:22 +0000 (17:29 -0400)]
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

7 years agoMerge "Enable toc optimization for host builds"
Colin Cross [Tue, 4 Oct 2016 20:57:52 +0000 (20:57 +0000)]
Merge "Enable toc optimization for host builds"

7 years agoAccept environment variables DEFAULT_*_TIDY_CHECKS
Chih-Hung Hsieh [Mon, 3 Oct 2016 04:31:04 +0000 (21:31 -0700)]
Accept environment variables DEFAULT_*_TIDY_CHECKS

* Define DEFAULT_GLOBAL_TIDY_CHECKS/DEFAULT_EXTERNAL_VENDOR_TIDY_CHECKS
  only if it is not already defined.

Bug: http://b/27779618
Test: build with WITH_TIDY=1 and define those variables.
Change-Id: I201c9da3769d6ef658a75d4a1bf42ec6816d4069

7 years agoMerge "Fix for non-empty a[name] tags in openJdk based javadocs."
Przemyslaw Szczepaniak [Tue, 4 Oct 2016 11:35:58 +0000 (11:35 +0000)]
Merge "Fix for non-empty a[name] tags in openJdk based javadocs."

7 years agoFix for non-empty a[name] tags in openJdk based javadocs.
Przemyslaw Szczepaniak [Mon, 26 Sep 2016 15:21:13 +0000 (16:21 +0100)]
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 a7edd92c457879f2719afe6b5d119886b869182f)

7 years agoSupport multiple arch for coverage packaging.
Ryan Campbell [Mon, 3 Oct 2016 18:23:40 +0000 (11:23 -0700)]
Support multiple arch for coverage packaging.

Modify copy rule to support multiple architectures. Use a method
similar to symbols.

Test: make lights.bullhead NATIVE_COVERAGE=true COVERAGE_PATHS=test/vts/hals/light/
Bug: 31911253
Change-Id: Ib3c53b4b305cbfcfd186010c5500b8d678190ddf

7 years agoEnable toc optimization for host builds
Colin Cross [Mon, 3 Oct 2016 23:49:02 +0000 (16:49 -0700)]
Enable toc optimization for host builds

The toc optimization had been disabled for host builds to ensure that
the timestamp of the final binary changed whenever its implementation
changed, in order to support rerunning host tools that were modified
during incremental builds.  However, only the final install rule must be
re-run to update the timestamp, and not the link rule.

Update the shared library install dependencies to use normal
dependencies instead of order-only dependencies for host modules, and
then enable the the toc optimization for host modules.  If the
implementation of a library changes it will be reinstalled, and
libraries or binaries that depend on it will also be reinstalled.

Bug: 26015464
Test: m -j; touch art/disassembler/disassembler_x86.cc; m -j, verify
      out/host/linux-x86/bin/oatdump is updated
Change-Id: I0a14decc1994eb55ad269d841943aef66e320c63

7 years agoMerge "Propagate signals through makeparallel"
Colin Cross [Tue, 4 Oct 2016 00:23:54 +0000 (00:23 +0000)]
Merge "Propagate signals through makeparallel"

7 years agoMerge "exec makeparallel"
Colin Cross [Tue, 4 Oct 2016 00:23:47 +0000 (00:23 +0000)]
Merge "exec makeparallel"

7 years agoMerge "Revert "Remove -d keepdepfile from ninja command line""
Colin Cross [Tue, 4 Oct 2016 00:23:37 +0000 (00:23 +0000)]
Merge "Revert "Remove -d keepdepfile from ninja command line""

7 years agoPropagate signals through makeparallel
Colin Cross [Mon, 3 Oct 2016 20:40:32 +0000 (13:40 -0700)]
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

7 years agoexec makeparallel
Colin Cross [Mon, 3 Oct 2016 20:38:27 +0000 (13:38 -0700)]
exec makeparallel

bash doesn't kill children when it receives SIGTERM.  Since makeparallel
is the last command run by the shell, run it with exec to replace the
shell with makeparallel so make can send the signal directly to
makeparallel.

Bug: 31907490
Test: m -j & killall make; pgrep -a makeparallel
Change-Id: If8aeb51ec224234da5f05eae3382ce77f48a57e2

7 years agoRevert "Remove -d keepdepfile from ninja command line"
Colin Cross [Mon, 3 Oct 2016 22:12:08 +0000 (15:12 -0700)]
Revert "Remove -d keepdepfile from ninja command line"

This reverts commit 4aca5715523d1b8a85abde00d7ccc2989c90a96b.

Test: builds
Change-Id: Iddb3517a4596e84404db1738fa95eb15f435a42d

7 years agoMerge "Optimize rebuilds by reducing $(shell) usage"
Dan Willemsen [Mon, 3 Oct 2016 21:20:36 +0000 (21:20 +0000)]
Merge "Optimize rebuilds by reducing $(shell) usage"

7 years agoOptimize rebuilds by reducing $(shell) usage
Dan Willemsen [Sat, 1 Oct 2016 00:30:32 +0000 (17:30 -0700)]
Optimize rebuilds by reducing $(shell) usage

$(shell) isn't particularly fast in Kati, and they have to be executed
both when reading the makefiles and determining whether the ninja file
needs to be regenerated.

Right now, the regen time is mostly hidden because we run them in
parallel. We've also configured it to ignore any commands that contain
"echo", "date", or the output directory. That happens to remove most
commands that contain side effects, so running them in parallel is fine.

But the side effects contain some important things, like the clean up
necessary when switching products. So I'm removing those filters, and
then we'll need to run the shell commands in sequence, since there will
be side-effects. That makes regen take longer though, so use pure-Make
implementations instead of $(shell) where possible.

This set of changes reduces aosp/master aosp_arm64-eng build $(shell)
usage and time by 2/3:

*kati*: func shell time: 3.135095 / 709
*kati*: func shell time: 1.067331 / 236

Bug: 30947985
Test: Manual test lines for math functions
Test: Compare build-aosp_arm64.ninja before/after
Change-Id: I4fc9d6318957992921972994f277c17918e7e1eb

7 years agoMerge "Remove LOCAL_CTS_GTEST_LIST_EXECUTABLE"
Dan Willemsen [Sat, 1 Oct 2016 01:43:37 +0000 (01:43 +0000)]
Merge "Remove LOCAL_CTS_GTEST_LIST_EXECUTABLE"

7 years agoMerge "releasetools: Clean up sign_target_files_apks.py."
Treehugger Robot [Sat, 1 Oct 2016 00:11:33 +0000 (00:11 +0000)]
Merge "releasetools: Clean up sign_target_files_apks.py."

7 years agoMerge "Use DEFAULT_EXTERNAL_VENDOR_TIDY_CHECKS for vendor/google_devices"
Treehugger Robot [Fri, 30 Sep 2016 23:25:17 +0000 (23:25 +0000)]
Merge "Use DEFAULT_EXTERNAL_VENDOR_TIDY_CHECKS for vendor/google_devices"

7 years agoreleasetools: Clean up sign_target_files_apks.py.
Tao Bao [Fri, 30 Sep 2016 00:53:56 +0000 (17:53 -0700)]
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

7 years agoUse DEFAULT_EXTERNAL_VENDOR_TIDY_CHECKS for vendor/google_devices
Chih-Hung Hsieh [Fri, 30 Sep 2016 17:41:27 +0000 (10:41 -0700)]
Use DEFAULT_EXTERNAL_VENDOR_TIDY_CHECKS for vendor/google_devices

Many source files under vendor/google_devices
are old third party code with too many clang-tidy
misc-macro-parentheses warnings.

Test: build with WITH_TIDY=1
Change-Id: I79248af3ece9c7a4436b8cf5e6c25f224fd8201b

7 years agoMerge "releasetools: Fix the reference to OPTIONS.info_dict."
Tao Bao [Fri, 30 Sep 2016 17:39:22 +0000 (17:39 +0000)]
Merge "releasetools: Fix the reference to OPTIONS.info_dict."

7 years agoRemove LOCAL_CTS_GTEST_LIST_EXECUTABLE
Dan Willemsen [Fri, 30 Sep 2016 05:37:04 +0000 (22:37 -0700)]
Remove LOCAL_CTS_GTEST_LIST_EXECUTABLE

The one user has now been removed, so this is no longer necessary.

Test: None
Change-Id: I8fb9e7b90f664af616368685d81f8b10d0687306

7 years agoreleasetools: Fix the reference to OPTIONS.info_dict.
Tao Bao [Fri, 30 Sep 2016 04:59:06 +0000 (21:59 -0700)]
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

7 years agoMerge "Add LOCAL_EXPORT_C_INCLUDE_DEPS"
Treehugger Robot [Fri, 30 Sep 2016 01:38:04 +0000 (01:38 +0000)]
Merge "Add LOCAL_EXPORT_C_INCLUDE_DEPS"

7 years agoAdd LOCAL_EXPORT_C_INCLUDE_DEPS
Dan Willemsen [Thu, 29 Sep 2016 19:08:29 +0000 (12:08 -0700)]
Add LOCAL_EXPORT_C_INCLUDE_DEPS

This shouldn't be necessary for most makefiles, since we add
$(LOCAL_GENERATED_SOURCES) to this already included, but for prebuilts
that aren't actually prebuilts (Soong modules), we need to pass
dependencies so that the generated headers are built before being used.

Bug: 31742855
Test: Use, inspect build-*.ninja
Change-Id: I8d9f675af639d3f40780d48a016fc079a82531c2

7 years agoMerge "Update for new Android Verified Boot (AVB)."
David Zeuthen [Thu, 29 Sep 2016 17:48:40 +0000 (17:48 +0000)]
Merge "Update for new Android Verified Boot (AVB)."

7 years agoUpdate for new Android Verified Boot (AVB).
David Zeuthen [Thu, 15 Sep 2016 17:43:54 +0000 (13:43 -0400)]
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

7 years agoMerge "Only run warn.py's main function if it is the main program."
Treehugger Robot [Thu, 29 Sep 2016 03:58:07 +0000 (03:58 +0000)]
Merge "Only run warn.py's main function if it is the main program."

7 years agoMerge "Switch to using clang-3289846."
Stephen Hines [Thu, 29 Sep 2016 02:56:49 +0000 (02:56 +0000)]
Merge "Switch to using clang-3289846."

7 years agoOnly run warn.py's main function if it is the main program.
Meike Baumgärtner [Wed, 28 Sep 2016 17:48:06 +0000 (10:48 -0700)]
Only run warn.py's main function if it is the main program.

Test: run warn.py --byproject build.log
Change-Id: I155cce8c952d6d8a02c8e1809bf61a46c847c26e

7 years agoMerge "Fix pylint warning and refactor project_list."
Treehugger Robot [Wed, 28 Sep 2016 17:47:41 +0000 (17:47 +0000)]
Merge "Fix pylint warning and refactor project_list."

7 years agoMerge "Analyze unchanged blocks in odex files."
Tao Bao [Wed, 28 Sep 2016 17:08:10 +0000 (17:08 +0000)]
Merge "Analyze unchanged blocks in odex files."

7 years agoSwitch to using clang-3289846.
Stephen Hines [Wed, 28 Sep 2016 15:51:55 +0000 (08:51 -0700)]
Switch to using clang-3289846.

Bug: http://b/30252254
Test: Built/boot platform using latest prebuilts.
Change-Id: I7c9357a99afec323fd766e93b5d5e941e9e06244

7 years agoFix pylint warning and refactor project_list.
Chih-Hung Hsieh [Tue, 27 Sep 2016 22:39:28 +0000 (15:39 -0700)]
Fix pylint warning and refactor project_list.

Bug: 31377083
Test: run warn.py --byproject build.log
Change-Id: Id442cf6608bf5c14784063c05f5ff0b731f17486

7 years agoMerge "Fix Google pylint warnings."
Chih-hung Hsieh [Wed, 28 Sep 2016 04:10:26 +0000 (04:10 +0000)]
Merge "Fix Google pylint warnings."

7 years agoMerge "Remove WITH_SYNTAX_CHECK"
Treehugger Robot [Wed, 28 Sep 2016 01:44:23 +0000 (01:44 +0000)]
Merge "Remove WITH_SYNTAX_CHECK"

7 years agoFix Google pylint warnings.
Chih-Hung Hsieh [Wed, 28 Sep 2016 01:08:52 +0000 (18:08 -0700)]
Fix Google pylint warnings.

* Rename 'severity' to 'Severity'.
* Fix bad line indentations and space.

Test: run warn.py --byproject build.log
Change-Id: I33d701cca408b5ca4715be8d44c890942b7d132a

7 years agoMerge "Add buttons to group warning by project or severity."
Treehugger Robot [Tue, 27 Sep 2016 21:10:40 +0000 (21:10 +0000)]
Merge "Add buttons to group warning by project or severity."

7 years agoMerge "Enable LOCAL_SANITIZE:=cfi and add LOCAL_SANITIZE_DIAG."
Evgenii Stepanov [Tue, 27 Sep 2016 20:51:41 +0000 (20:51 +0000)]
Merge "Enable LOCAL_SANITIZE:=cfi and add LOCAL_SANITIZE_DIAG."

7 years agoMerge "Remove spaces from DEFAULT_TIDY_HEADER_DIRS"
Treehugger Robot [Tue, 27 Sep 2016 01:10:30 +0000 (01:10 +0000)]
Merge "Remove spaces from DEFAULT_TIDY_HEADER_DIRS"

7 years agoRemove WITH_SYNTAX_CHECK
Dan Willemsen [Tue, 27 Sep 2016 00:37:19 +0000 (17:37 -0700)]
Remove WITH_SYNTAX_CHECK

It's no longer used. The majority of the platform is on clang anyways.

Test: m -j
Change-Id: I4fb4375eaad2469e169d34c47ae3fe2a0540aeec

7 years agoMerge "build: add hwservicemanager to the core packages"
Treehugger Robot [Mon, 26 Sep 2016 23:54:53 +0000 (23:54 +0000)]
Merge "build: add hwservicemanager to the core packages"

7 years agoRemove spaces from DEFAULT_TIDY_HEADER_DIRS
Dan Willemsen [Mon, 26 Sep 2016 22:43:45 +0000 (15:43 -0700)]
Remove spaces from DEFAULT_TIDY_HEADER_DIRS

I'm preparing to move this to Soong, and it's simpler to compare if the
spaces are removed here (to match the other lists in this file).

Test: WITH_TIDY=true; compare build.ninja before and after change
Change-Id: Ib27a19a36ebb1132300a8c1eeace1202685dfc4c

7 years agoAdd buttons to group warning by project or severity.
Chih-Hung Hsieh [Fri, 23 Sep 2016 02:22:07 +0000 (19:22 -0700)]
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

7 years agobuild: add hwservicemanager to the core packages
Iliyan Malchev [Mon, 19 Sep 2016 22:20:14 +0000 (15:20 -0700)]
build: add hwservicemanager to the core packages

b/31458381
b/31240290

Test: passing build and runtime tests

Change-Id: I294c70d93d23ada94ff1175f2d3babd5b836eeee
Signed-off-by: Iliyan Malchev <malchev@google.com>
7 years agoMerge "Fix Google pylint warnings."
Treehugger Robot [Mon, 26 Sep 2016 21:18:07 +0000 (21:18 +0000)]
Merge "Fix Google pylint warnings."

7 years agoFix Google pylint warnings.
Chih-Hung Hsieh [Mon, 26 Sep 2016 17:56:43 +0000 (10:56 -0700)]
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

7 years agoAnalyze unchanged blocks in odex files.
Tao Bao [Tue, 20 Sep 2016 05:26:30 +0000 (22:26 -0700)]
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

7 years agoMerge "Recognize new warning messages."
Treehugger Robot [Fri, 23 Sep 2016 04:33:11 +0000 (04:33 +0000)]
Merge "Recognize new warning messages."

7 years agoMerge "link_type check: Support modules installed into /data"
Treehugger Robot [Fri, 23 Sep 2016 04:30:02 +0000 (04:30 +0000)]
Merge "link_type check: Support modules installed into /data"

7 years agoRecognize new warning messages.
Chih-Hung Hsieh [Wed, 21 Sep 2016 21:00:23 +0000 (14:00 -0700)]
Recognize new warning messages.

* -Wunnamed-type-template-args and -W#pragma-messages

Test: run warn.py with build.log.
Change-Id: I36277e001081604f92a4d9c92f9a0b5d3f0ee5e5

7 years agoMerge "Pass userdebug/eng variant to Soong"
Treehugger Robot [Fri, 23 Sep 2016 00:16:52 +0000 (00:16 +0000)]
Merge "Pass userdebug/eng variant to Soong"

7 years agoMerge "Simplify warn.py and output of warning count table and tablerow."
Treehugger Robot [Fri, 23 Sep 2016 00:06:26 +0000 (00:06 +0000)]
Merge "Simplify warn.py and output of warning count table and tablerow."

7 years agoPass userdebug/eng variant to Soong
Dan Willemsen [Thu, 22 Sep 2016 21:52:53 +0000 (14:52 -0700)]
Pass userdebug/eng variant to Soong

Test: Run build with eng/userdebug/user and check the soong.variables
Change-Id: I7cd71a94e92526b6cc61303b13b7bc593cbbfc3a

7 years agoSimplify warn.py and output of warning count table and tablerow.
Chih-Hung Hsieh [Thu, 22 Sep 2016 20:43:12 +0000 (13:43 -0700)]
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

7 years agolink_type check: Support modules installed into /data
Dan Willemsen [Thu, 22 Sep 2016 17:56:36 +0000 (10:56 -0700)]
link_type check: Support modules installed into /data

Test: compare build.ninja before/after, look at warnings.html
Change-Id: I1b78748dd80b73d2601b2adf0aaac8a6b2b350d5

7 years agoMerge changes from topic 'jack-d-b3-as-stable'
Benoit Lamarche [Thu, 22 Sep 2016 09:34:26 +0000 (09:34 +0000)]
Merge changes from topic 'jack-d-b3-as-stable'

* changes:
  Fix bad JACK_PLUGIN variable
  Add support for Jack plugin

7 years agoMerge "Package up proguard jack_dictionary"
Dan Willemsen [Wed, 21 Sep 2016 19:39:47 +0000 (19:39 +0000)]
Merge "Package up proguard jack_dictionary"

7 years agoFix bad JACK_PLUGIN variable
Yohann Roussel [Mon, 19 Sep 2016 15:49:03 +0000 (17:49 +0200)]
Fix bad JACK_PLUGIN variable

Changed to LOCAL_JACK_PLUGIN.

(cherry picked from commit 17924b136cb5bfc60d138e8c7e5c18a90b5965c3)

Test: Manually tested by some manual activations of the coverage plugin.
Change-Id: I1be4aaa502103fc308d35a5672dc4fe5900c4ebe

7 years agoAdd support for Jack plugin
Yohann Roussel [Fri, 5 Aug 2016 15:45:10 +0000 (17:45 +0200)]
Add support for Jack plugin

And ensure compatibility with coverage plugin.

(cherry picked from commit 862bb84d37e3e6ca61080de58f206e512e09d4e0)

Bug: 28876950
Test: Manually tested by some manual activations of the coverage plugin.
Change-Id: I804558a501825357bf0812de626d2957eedbdc13

7 years agoMerge "Replace usages of my_register_name with my_all_targets"
Treehugger Robot [Wed, 21 Sep 2016 00:38:59 +0000 (00:38 +0000)]
Merge "Replace usages of my_register_name with my_all_targets"

7 years agoReplace usages of my_register_name with my_all_targets
Colin Cross [Tue, 20 Sep 2016 23:01:28 +0000 (16:01 -0700)]
Replace usages of my_register_name with my_all_targets

A few module types add extra dependencies on $(my_register_name), move
them to $(my_all_targets) so that they are built for mm and mma too.

Bug: 31526036
Test: mmm framework
Change-Id: I2e594ce771451a99691739b963f4ce517e9dd595

7 years agoPackage up proguard jack_dictionary
Dan Willemsen [Thu, 1 Sep 2016 18:02:43 +0000 (11:02 -0700)]
Package up proguard jack_dictionary

Bug: 31182185
Test: m dist in an unbundled branch
Change-Id: I7ee1ba076cfa03f294f8231f6bdd8fa8df5557af

7 years agoMerge "Add targets for building individual modules using javac"
Paul Duffin [Tue, 20 Sep 2016 11:51:40 +0000 (11:51 +0000)]
Merge "Add targets for building individual modules using javac"

7 years agoMerge "Fix link_type checking"
Dan Willemsen [Mon, 19 Sep 2016 21:54:08 +0000 (21:54 +0000)]
Merge "Fix link_type checking"

7 years agoMerge "Add a script that verifies OTA package signature."
Treehugger Robot [Mon, 19 Sep 2016 17:28:01 +0000 (17:28 +0000)]
Merge "Add a script that verifies OTA package signature."

7 years agoAdd targets for building individual modules using javac
Paul Duffin [Thu, 15 Sep 2016 13:34:42 +0000 (14:34 +0100)]
Add targets for building individual modules using javac

This is needed in order to be able to run error prone (which is
a plugin replacement for javac) on a subset of the java code.

Bug: 31507496
Test: Build javac-check-core-tests and check the resulting JAR
Change-Id: I5a556920572fcdad7b39d67e3f00fe0e0f1f8f46

7 years agoMerge "Only update previous product config when changed"
Dan Willemsen [Sat, 17 Sep 2016 02:29:06 +0000 (02:29 +0000)]
Merge "Only update previous product config when changed"

7 years agoAdd a script that verifies OTA package signature.
Tao Bao [Tue, 13 Sep 2016 18:13:48 +0000 (11:13 -0700)]
Add a script that verifies OTA package signature.

Currently it supports verifying packages signed with RSA algorithms
(v1-v4 as in bootable/recovery/verifier.cpp). No support for ECDSA (v5)
signed packages yet.

$ ./build/tools/releasetools/check_ota_package_signature.py \
    bootable/recovery/tests/testdata/testkey_v1.x509.pem \
    bootable/recovery/tests/testdata/otasigned_v1.zip

Package: bootable/recovery/tests/testdata/otasigned_v1.zip
Certificate: bootable/recovery/tests/testdata/testkey_v1.x509.pem
Comment length: 1738
Signed data length: 2269
Use SHA-256: False
Digest: 115e688ec3b77743070b743453e2fc6ce8754484

VERIFIED

Bug: 31523193
Test: Used the tool to verify existing packages (like above).

Change-Id: I71d3569e858c729cb64825c5c7688ededc397aa8

7 years agoMerge "Remove objclean"
Treehugger Robot [Fri, 16 Sep 2016 21:46:20 +0000 (21:46 +0000)]
Merge "Remove objclean"

7 years agoOnly update previous product config when changed
Dan Willemsen [Fri, 16 Sep 2016 17:03:22 +0000 (10:03 -0700)]
Only update previous product config when changed

I'm working on removing the --ignore_dirty=$(OUT_DIR)/% argument from
Kati. If we're always writing to a file that we're also reading, then
with that flag removed, we'll always reparse all the makefiles.

So instead, use the method from the generated java file cleanup where we
read from a "previous" file, write to a "current" file, then use a
cmp || mv to overwrite the "previous" file if necessary. When the flag
is removed, this will cause Kati to need to run twice any time this
changes, but it's better than forever.

Bug: 30947985
Test: Switch between aosp_arm-eng and full-eng
Change-Id: Id2d1445809b60ce26700bb2aca765df3b5c2b360

7 years agoRemove objclean
Dan Willemsen [Fri, 16 Sep 2016 05:03:04 +0000 (22:03 -0700)]
Remove objclean

We don't need to manually remove objects when switching SANITIZE_TARGET
-- that will be handled by Ninja noticing that the command lines are
different.

Bug: 30947985
Test: None
Change-Id: I83c15981cf6ea258bb7fa85490b0b1ede1058aa6

7 years agoMerge changes from topics 'ndk-compiler-rt_extras', 'ndk-libc++-libdl'
Treehugger Robot [Fri, 16 Sep 2016 06:40:32 +0000 (06:40 +0000)]
Merge changes from topics 'ndk-compiler-rt_extras', 'ndk-libc++-libdl'

* changes:
  Use libcompiler-rt_extras with NDK builds.
  Always link libdl with libc++ for the NDK.

7 years agoMerge "Fix typo in coverage target out path."
Treehugger Robot [Fri, 16 Sep 2016 02:06:18 +0000 (02:06 +0000)]
Merge "Fix typo in coverage target out path."

7 years agoFix typo in coverage target out path.
Ryan Campbell [Fri, 16 Sep 2016 00:32:13 +0000 (17:32 -0700)]
Fix typo in coverage target out path.

Change-Id: I4a448708ab74e08b2c515039ee5d71c32861214e