OSDN Git Service

android-x86/build.git
7 years agoRecognize new warning messages.
Chih-Hung Hsieh [Wed, 24 Aug 2016 19:24:32 +0000 (12:24 -0700)]
Recognize new warning messages.

* Generalize regular expression to match new warning messages.
* Remove old unused pattern.

Change-Id: I54f2e5bdb255b290cb3751ba56558f5fe8d7245e
Test: Run warn.py with build.log

7 years agoMerge "Clarify default tidy check lists."
Treehugger Robot [Wed, 17 Aug 2016 04:56:07 +0000 (04:56 +0000)]
Merge "Clarify default tidy check lists."

7 years agoMerge "Support dist-ing the userdatatarball"
Dan Willemsen [Wed, 17 Aug 2016 00:58:18 +0000 (00:58 +0000)]
Merge "Support dist-ing the userdatatarball"

7 years agoMerge "Remove spaces in tidy check list."
Treehugger Robot [Wed, 17 Aug 2016 00:44:50 +0000 (00:44 +0000)]
Merge "Remove spaces in tidy check list."

7 years agoSupport dist-ing the userdatatarball
Dan Willemsen [Tue, 16 Aug 2016 23:36:05 +0000 (16:36 -0700)]
Support dist-ing the userdatatarball

So that we can get to the contents of userdata from the build server
without extracting the image.

Bug: 27719200
Test: m userdatatarball dist
Change-Id: I1438597bd29df80665571f7dc3b4957b9adde870

7 years agoRemove spaces in tidy check list.
Chih-Hung Hsieh [Tue, 16 Aug 2016 23:27:30 +0000 (16:27 -0700)]
Remove spaces in tidy check list.

This will allow spaces in LOCAL_TIDY_CHECKS.

Bug: http://b/27779618
Change-Id: I6f9b133220e49b2581a06d2fd9083a1d6b7badca
Test: build with WITH_TIDY=1.

7 years agoClarify default tidy check lists.
Chih-Hung Hsieh [Tue, 16 Aug 2016 20:42:06 +0000 (13:42 -0700)]
Clarify default tidy check lists.

* Sort all enabled and disabled checks.
* Disable google-default-arguments for external and vendor projects.

Bug: http://b/27779618
Change-Id: I59e6eaf84fddf54bd89eb71a2189d73b64968057
Test: build with WITH_TIDY=1.

7 years agoMerge "Fix GET-INSTALL-PATH to work with Soong"
Dan Willemsen [Mon, 15 Aug 2016 21:07:53 +0000 (21:07 +0000)]
Merge "Fix GET-INSTALL-PATH to work with Soong"

7 years agoMerge "Replace META/care_map.txt when signing target files"
Tianjie Xu [Fri, 12 Aug 2016 18:01:55 +0000 (18:01 +0000)]
Merge "Replace META/care_map.txt when signing target files"

7 years agoFix GET-INSTALL-PATH to work with Soong
Dan Willemsen [Fri, 12 Aug 2016 00:20:33 +0000 (17:20 -0700)]
Fix GET-INSTALL-PATH to work with Soong

This was printing all of the Soong modules in addition to the modules
defined in the ONE_SHOT_MAKEFILE. So replicate what we did with
MODULES-IN-* with GET-INSTALL-PATH-IN-* and update all the users.

Bug: 30191725
Change-Id: Ib1e4bf00f64d7a3e8cd91f44eaf1ff82fdfbf162

7 years agoReplace META/care_map.txt when signing target files
Tianjie Xu [Fri, 12 Aug 2016 01:04:27 +0000 (18:04 -0700)]
Replace META/care_map.txt when signing target files

Do not copy the "META/care_map.txt" from the source zipfile when
signing the target files with sign_target_files_apks. Because we'll
generate a new care_map after rebuilding the system/vendor images;
and we'll write the new "META/care_map.txt" to the signed-target-file.

Change-Id: I6919cfdf8314a4084b5f612a9c89469f391486a4
Test: Run sign_target_files_apks locally, and the entry is updated.
Bug: 30812253

7 years agoMerge "Fix discrepancy in SANITIZE_TARGET format with soong."
Colin Cross [Thu, 11 Aug 2016 23:53:29 +0000 (23:53 +0000)]
Merge "Fix discrepancy in SANITIZE_TARGET format with soong."

7 years agoMerge "releasetools: Update the path to /default.prop for A/B devices."
Tao Bao [Thu, 11 Aug 2016 20:39:31 +0000 (20:39 +0000)]
Merge "releasetools: Update the path to /default.prop for A/B devices."

7 years agoMerge "Use soong_zip and zip2zip to make dist faster"
Treehugger Robot [Thu, 11 Aug 2016 19:28:13 +0000 (19:28 +0000)]
Merge "Use soong_zip and zip2zip to make dist faster"

7 years agoreleasetools: Update the path to /default.prop for A/B devices.
Tao Bao [Thu, 11 Aug 2016 18:00:58 +0000 (11:00 -0700)]
releasetools: Update the path to /default.prop for A/B devices.

On A/B devices (i.e. system_root_image="true"), /default.prop is
packaged at ROOT/default.prop (as opposed to BOOT/RAMDISK/default.prop
for non-A/B devices). Update the path so that we handle properties like
ro.bootimage.build.fingerprint properly.

The one for recovery is not affected, which stays at
BOOT/RAMDISK/default.prop for A/B devices and gets updated correctly.

Bug: 30811237
Test: Verify the property in the generated signed-TF.zip.
Change-Id: Id201a042d7ea988a64f89c6d04f43326a9851e27

7 years agoMerge "Add support for NDK r13."
Dan Albert [Thu, 11 Aug 2016 16:46:34 +0000 (16:46 +0000)]
Merge "Add support for NDK r13."

7 years agoUse soong_zip and zip2zip to make dist faster
Dan Willemsen [Sun, 7 Aug 2016 03:15:06 +0000 (20:15 -0700)]
Use soong_zip and zip2zip to make dist faster

soong_zip parallelizes the compression when creating a zip file, which
makes these packaging steps far shorter.

zip2zip skips the decompression and recompression during the -img- file
creation.

For an aosp_arm64-eng aosp/master build:

target_files.zip: 92s to 60s
symbols.zip: 147s to 7s
img.zip: 64s to 0.5s

There's still room to parallelize the image compression during
target_files.zip (add_img_to_target_files step takes most of the time)

Change-Id: I7b6a91e4a7dbeda2e49ca936b10181cff2f973d7

7 years agoAdd support for NDK r13.
Dan Albert [Tue, 9 Aug 2016 00:14:59 +0000 (17:14 -0700)]
Add support for NDK r13.

Test: make checkbuild
Change-Id: I4521c768c67771cee9df9e59ed45344c40c48a38

7 years agoMerge changes from topic 'ab_sideload'
Alex Deymo [Wed, 10 Aug 2016 03:55:24 +0000 (03:55 +0000)]
Merge changes from topic 'ab_sideload'

* changes:
  Replace OTA sideload verification key when signing A/B devices.
  Install the update-payload-key in the recovery image as well.

7 years agoMerge "Account for `LOCAL_NDK_VERSION` when packaging."
Treehugger Robot [Tue, 9 Aug 2016 01:36:23 +0000 (01:36 +0000)]
Merge "Account for `LOCAL_NDK_VERSION` when packaging."

7 years agoAccount for `LOCAL_NDK_VERSION` when packaging.
Dan Albert [Tue, 9 Aug 2016 00:13:31 +0000 (17:13 -0700)]
Account for `LOCAL_NDK_VERSION` when packaging.

Previously an app built with `LOCAL_NDK_VERSION := r10` would still
be packaged with r11's library.

Test: make checkbuild
Change-Id: I1dcbd65057adaa1af605b9770283f7da994fc3cf

7 years agoMerge "Simplify DEFAULT_LOCAL_TIDY_CHECKS."
Chih-hung Hsieh [Mon, 8 Aug 2016 23:22:13 +0000 (23:22 +0000)]
Merge "Simplify DEFAULT_LOCAL_TIDY_CHECKS."

7 years agoSimplify DEFAULT_LOCAL_TIDY_CHECKS.
Chih-Hung Hsieh [Mon, 8 Aug 2016 22:01:59 +0000 (15:01 -0700)]
Simplify DEFAULT_LOCAL_TIDY_CHECKS.

* Now each local directory path is matched against multiple
  patterns and only the last matched one will be used,
  or the DEFAULT_GLOBAL_TIDY_CHECKS is used.

Bug: http://b/27779618
Change-Id: I786e6cacd8a680a034b4bc09f561f658177d9b17
Test: build with WITH_TIDY=1.

7 years agoMerge "core: Makefile: fix a typo in a comment"
Treehugger Robot [Sun, 7 Aug 2016 16:01:06 +0000 (16:01 +0000)]
Merge "core: Makefile: fix a typo in a comment"

7 years agocore: Makefile: fix a typo in a comment
Alex Naidis [Sun, 10 Jan 2016 14:18:54 +0000 (14:18 +0000)]
core: Makefile: fix a typo in a comment

Change-Id: I1a8f1a4e2d7d29fa930fd0a07f4885c162f3e1f4
Signed-off-by: Alex Naidis <alex.naidis@linux.com>
8 years agoMerge "Define __ANDROID_API__ when building for the NDK."
Treehugger Robot [Sat, 6 Aug 2016 00:52:33 +0000 (00:52 +0000)]
Merge "Define __ANDROID_API__ when building for the NDK."

8 years agoDefine __ANDROID_API__ when building for the NDK.
Dan Albert [Fri, 5 Aug 2016 23:34:40 +0000 (16:34 -0700)]
Define __ANDROID_API__ when building for the NDK.

Traditionally this has come from android/api-level.h, but with the
libc headers unified it must be set by the build system since we don't
have per-API level copies of that header now.

Test: make checkbuild with other libc ndk_library patches
Change-Id: Idf6cbba131f065b048b1b412e992c55e3d17e701

8 years agoMerge "More NDK generated libs support."
Treehugger Robot [Fri, 5 Aug 2016 22:32:12 +0000 (22:32 +0000)]
Merge "More NDK generated libs support."

8 years agoMerge "Make it an error when LOCAL_CLANG is false."
Chih-hung Hsieh [Fri, 5 Aug 2016 22:25:43 +0000 (22:25 +0000)]
Merge "Make it an error when LOCAL_CLANG is false."

8 years agoMake it an error when LOCAL_CLANG is false.
Chih-Hung Hsieh [Thu, 4 Aug 2016 22:35:51 +0000 (15:35 -0700)]
Make it an error when LOCAL_CLANG is false.

Only projects in LOCAL_CLANG_EXCEPTION_PROJECTS can set LOCAL_CLANG to false.
Add external/gentoo/integration to this white list.

Bug: 30575506
Change-Id: Icd508686bc2eb8b9d400200166df80115af20da1
Test: build and find new warning in build.log

8 years agoReplace OTA sideload verification key when signing A/B devices.
Alex Deymo [Thu, 4 Aug 2016 23:06:12 +0000 (16:06 -0700)]
Replace OTA sideload verification key when signing A/B devices.

The update-payload-key is used by update_engine_sideload from recovery
to verify an update payload.

Bug: 27178350
Change-Id: I7a0a307ae565e5e9cbf2c9b58fbcc055e87771ce

8 years agoMore NDK generated libs support.
Dan Albert [Thu, 4 Aug 2016 21:14:50 +0000 (14:14 -0700)]
More NDK generated libs support.

Any NDK shared libraries not in LOCAL_SYSTEM_SHARED_LIBRARIES weren't
being pulled from the generated libs before since we were only
filtering my_system_shared_libraries and even if we had filtered
my_shared_libraries they would have been rewritten to my_ldlibs.

* Filter my_shared_libraries for NDK generated libs as well.
* Stop rewriting NDK LOCAL_SHARED_LIBRARIES to my_ldlibs. Instead,
  rewrite in the opposite direction just like we do for the platform.
* Move shared libs/ldlibs rewriting to before we filter NDK
  libraries out of shared libs/system shared libs.

Test: make checkbuild
Bug: http://b/27533932
Change-Id: If1860d9638de77089a46884f406766edaf362216

8 years agoInstall the update-payload-key in the recovery image as well.
Alex Deymo [Thu, 4 Aug 2016 03:52:54 +0000 (20:52 -0700)]
Install the update-payload-key in the recovery image as well.

The update-payload-key is required to verify the contents of the OTA in
recovery while sideloading an update.

Bug: 27178350
TEST=`make` builds a boot.img with the payload key in recovery.

Change-Id: I04616979023b84aa4a1feb6916db2b2725b25c54

8 years agoMerge "Allow late binding of LOCAL_CLANG_EXCEPTION_PROJECTS."
Treehugger Robot [Wed, 3 Aug 2016 20:04:20 +0000 (20:04 +0000)]
Merge "Allow late binding of LOCAL_CLANG_EXCEPTION_PROJECTS."

8 years agoAllow late binding of LOCAL_CLANG_EXCEPTION_PROJECTS.
Chih-Hung Hsieh [Wed, 3 Aug 2016 18:39:02 +0000 (11:39 -0700)]
Allow late binding of LOCAL_CLANG_EXCEPTION_PROJECTS.

* INTERNAL_LOCAL_CLANG_EXCEPTION_PROJECTS is defined later in other config.mk.
Bug: 30575506
Test: build and find new warning in build.log

Change-Id: If5341a856d1792add38c80a15b8deae39f156138

8 years agoMerge "Allow some bionic tests to compile with gcc."
Treehugger Robot [Wed, 3 Aug 2016 18:55:16 +0000 (18:55 +0000)]
Merge "Allow some bionic tests to compile with gcc."

8 years agoAllow some bionic tests to compile with gcc.
Chih-Hung Hsieh [Wed, 3 Aug 2016 17:42:10 +0000 (10:42 -0700)]
Allow some bionic tests to compile with gcc.

bionic/tests has some test cases compiled with both gcc and clang.

Bug: 30575506
Change-Id: I68576a931021089ecc6b9c9d14ef0b3e3cf05e2d
Test: build and find new warning in build.log

8 years agoMerge "Issue warning on projects with LOCAL_CLANG set to false."
Chih-hung Hsieh [Wed, 3 Aug 2016 16:42:26 +0000 (16:42 +0000)]
Merge "Issue warning on projects with LOCAL_CLANG set to false."

8 years agoIssue warning on projects with LOCAL_CLANG set to false.
Chih-Hung Hsieh [Tue, 2 Aug 2016 21:22:06 +0000 (14:22 -0700)]
Issue warning on projects with LOCAL_CLANG set to false.

* LOCAL_CLANG_EXCEPTION_PROJECTS is the list of project prefixes.
* New warning message is detected by warn.py as high severity.

Bug: 30575506
Change-Id: I87a38b2ba6bab1d2e5e7a9d5ec9557f0e609727c
Test: build and find new warning in build.log

8 years agoMerge "introduce AUX build class of targets"
Alexey Polyudov [Tue, 2 Aug 2016 22:37:02 +0000 (22:37 +0000)]
Merge "introduce AUX build class of targets"

8 years agoMerge "report correct build target class"
Alexey Polyudov [Tue, 2 Aug 2016 22:03:59 +0000 (22:03 +0000)]
Merge "report correct build target class"

8 years agoMerge "Make linking with libcompiler_rt conditional"
Alexey Polyudov [Tue, 2 Aug 2016 22:03:48 +0000 (22:03 +0000)]
Merge "Make linking with libcompiler_rt conditional"

8 years agoMerge "Do not assume CLANG is used when custom toolchain is provided"
Alexey Polyudov [Tue, 2 Aug 2016 22:03:37 +0000 (22:03 +0000)]
Merge "Do not assume CLANG is used when custom toolchain is provided"

8 years agoMerge "Add LOCAL_NO_PIC to disable position-independent code"
Alexey Polyudov [Tue, 2 Aug 2016 22:03:19 +0000 (22:03 +0000)]
Merge "Add LOCAL_NO_PIC to disable position-independent code"

8 years agointroduce AUX build class of targets
Alexey Polyudov [Tue, 2 Aug 2016 00:41:49 +0000 (17:41 -0700)]
introduce AUX build class of targets

AUX is a new class, similar to TARGET
While TARGET defines toolchain for Application Processors
AUX is defining toolchains for arbitrary utility cores (DSPs, GPUs,
MCUs, etc). This allows building of non-android sources as part
of Android tree and avoid using prebuilts if source code is avaliable

Bug: 29635686
Change-Id: Ie755ea054b16c3e86369f5fb2ba6eb0b384af77f
Signed-off-by: Alexey Polyudov <apolyudov@google.com>
8 years agoreport correct build target class
Alexey Polyudov [Fri, 24 Jun 2016 18:13:34 +0000 (11:13 -0700)]
report correct build target class

Use PRIVATE_PREFIX to tell us what is the target class

Bug: 29635686
Change-Id: Ia895e780f741b9cb00c7ee9633055b5363e675a1
Signed-off-by: Alexey Polyudov <apolyudov@google.com>
8 years agoMake linking with libcompiler_rt conditional
Alexey Polyudov [Tue, 2 Aug 2016 00:38:35 +0000 (17:38 -0700)]
Make linking with libcompiler_rt conditional

introduce LOCAL_NO_LIBCOMPILER_RT
embedded targets do not necessarily want to have it

Bug: 29635686
Change-Id: Ieb04f7ea7237ae01a067dedfa2fb13571e9a789c
Signed-off-by: Alexey Polyudov <apolyudov@google.com>
8 years agoDo not assume CLANG is used when custom toolchain is provided
Alexey Polyudov [Fri, 24 Jun 2016 18:22:51 +0000 (11:22 -0700)]
Do not assume CLANG is used when custom toolchain is provided

When overriding toolchain with LOCAL_CC, LOCAL_CXX
build system shall not assume that this custom toolchain
is CLANG.

Bug: 29635686
Change-Id: I9712d098216740c4ff20bd2a4749f489af85b50e
Signed-off-by: Alexey Polyudov <apolyudov@google.com>
8 years agoAdd LOCAL_NO_PIC to disable position-independent code
Alexey Polyudov [Tue, 2 Aug 2016 00:36:39 +0000 (17:36 -0700)]
Add LOCAL_NO_PIC to disable position-independent code

on some toolchains and architectures building non-PIC
code renders more efficient assembly

Bug: 29635686
Change-Id: I6274f40d24e1bb43f03b45c60b5487abed02b7fc
Signed-off-by: Alexey Polyudov <apolyudov@google.com>
8 years agoMerge changes I9c735fe2,Ib918b2ed
Treehugger Robot [Mon, 1 Aug 2016 23:07:52 +0000 (23:07 +0000)]
Merge changes I9c735fe2,Ib918b2ed

* changes:
  Don't clean obj/{APPS,JAVA_LIBRARIES} during installclean
  Disable auto installclean for AAPT config change

8 years agoMerge "Fix clang-tidy performance warnings."
Treehugger Robot [Mon, 1 Aug 2016 21:04:20 +0000 (21:04 +0000)]
Merge "Fix clang-tidy performance warnings."

8 years agoMerge "Update package whitelist to track changes to java.lang.invoke."
Treehugger Robot [Mon, 1 Aug 2016 12:25:04 +0000 (12:25 +0000)]
Merge "Update package whitelist to track changes to java.lang.invoke."

8 years agoUpdate package whitelist to track changes to java.lang.invoke.
Narayan Kamath [Wed, 27 Jul 2016 12:53:24 +0000 (13:53 +0100)]
Update package whitelist to track changes to java.lang.invoke.

The introduction of java.lang.invoke.MethodType and its supporting
classes, in particular.

bug: 30550796
test: make checkbuild

Change-Id: Id2b84d3bb911f4bc5aef0761d357b1e9121030ab

8 years agoDon't clean obj/{APPS,JAVA_LIBRARIES} during installclean
Dan Willemsen [Sun, 31 Jul 2016 23:45:32 +0000 (16:45 -0700)]
Don't clean obj/{APPS,JAVA_LIBRARIES} during installclean

Anything product specific in here should be caught by an explicit
dependency, or the command line changing. This drastically reduces the
build time after an installclean.

Before this change, we were re-running all dex2oat commands after each
installclean, even if nothing changed.

Change-Id: I9c735fe2c5d82109d56996021502319179e43671

8 years agoDisable auto installclean for AAPT config change
Dan Willemsen [Sun, 31 Jul 2016 22:47:17 +0000 (15:47 -0700)]
Disable auto installclean for AAPT config change

PRODUCT_AAPT_CONFIG and PRODUCT_AAPT_PREF_CONFIG don't affect the
installed file list, they only affect how some files are built. The
changing command line is already noticed by ninja, so we'll only re-run
the necessary commands instead of a full installclean.

Change-Id: Ib918b2edeefc539b7f88cb22a1d751c397973b1d

8 years agoMerge "Refactor LOCAL_INIT_RC"
Dan Willemsen [Fri, 29 Jul 2016 23:44:33 +0000 (23:44 +0000)]
Merge "Refactor LOCAL_INIT_RC"

8 years agoMerge "Don't depend on a phony target"
Colin Cross [Fri, 29 Jul 2016 23:38:28 +0000 (23:38 +0000)]
Merge "Don't depend on a phony target"

8 years agoRefactor LOCAL_INIT_RC
Dan Willemsen [Thu, 28 Jul 2016 05:52:42 +0000 (22:52 -0700)]
Refactor LOCAL_INIT_RC

We supported de-duplicating LOCAL_INIT_RC across multiple architecture
variants in a single module definition, but that didn't work if the
module was defined with two different BUILD_PREBUILT definitions. That's
how we're exporting modules from Soong to Make.

Change-Id: Ifc93b15ef78ea3d8e78005d428a3ec57d7e414e8

8 years agoDon't depend on a phony target
Colin Cross [Fri, 29 Jul 2016 22:09:03 +0000 (15:09 -0700)]
Don't depend on a phony target

Phony targets are always dirty, depend on the ndk.timestamp file instead
of the ndk phony rule.

Change-Id: I8a90e61a1a79861af59f66f3bc0fdeecd0819992

8 years agoMerge "Record module type statistics"
Dan Willemsen [Fri, 29 Jul 2016 20:47:14 +0000 (20:47 +0000)]
Merge "Record module type statistics"

8 years agoRecord module type statistics
Dan Willemsen [Mon, 25 Jul 2016 23:03:53 +0000 (16:03 -0700)]
Record module type statistics

Creates a build_system_stats.txt build artifact that contains statistics
on how many BUILD_* modules are defined in a build. Also writes out
information about the Soong module types sent from the Soong build.

Merged-In: Iaf0c7062f542dc6942b5349854f3d49267cac4a5
Change-Id: Iaf0c7062f542dc6942b5349854f3d49267cac4a5

8 years agoMerge changes from topic 'soong-sysroots'
Dan Albert [Thu, 28 Jul 2016 15:58:51 +0000 (15:58 +0000)]
Merge changes from topic 'soong-sysroots'

* changes:
  Add a phony target for the NDK sysroots.
  Use the just built NDK headers and libs.
  Add LOCAL_COPY_TO_INTERMEDIATE_LIBRARIES.

8 years agoAdd a phony target for the NDK sysroots.
Dan Albert [Thu, 28 Jul 2016 04:57:49 +0000 (21:57 -0700)]
Add a phony target for the NDK sysroots.

`make ndk` will build all the NDK sysroots.

Test: make ndk
Bug: http://b/27533932
Change-Id: Ic2f5bf61f8911f7b8d08a473f2fe0576f3e06224

8 years agoUse the just built NDK headers and libs.
Dan Albert [Thu, 21 Jul 2016 17:04:12 +0000 (10:04 -0700)]
Use the just built NDK headers and libs.

The list of libraries is currently empty. Will add migrated libraries
in a follow up patch.

Test: Still builds.
Bug: http://b/27533932
Change-Id: Ibd9750620ca2ae86fe888a8a993bd26493bc1c8a

8 years agoAdd LOCAL_COPY_TO_INTERMEDIATE_LIBRARIES.
Dan Albert [Wed, 20 Jul 2016 18:02:18 +0000 (11:02 -0700)]
Add LOCAL_COPY_TO_INTERMEDIATE_LIBRARIES.

This allows a module to avoid being installed to the common library
directory.

Test: Prevents copying of NDK libraries with the NDK sysroot patches.
Bug: http://b/27533932
Change-Id: I24f11d5a70595bcd524ac5bd85034c226d2de211

8 years agoMerge "Handle multiple APKs from the same package in check_target_files_signatures...
Tao Bao [Thu, 28 Jul 2016 04:28:38 +0000 (04:28 +0000)]
Merge "Handle multiple APKs from the same package in check_target_files_signatures.py."

8 years agoHandle multiple APKs from the same package in check_target_files_signatures.py.
Tao Bao [Thu, 28 Jul 2016 02:45:43 +0000 (19:45 -0700)]
Handle multiple APKs from the same package in check_target_files_signatures.py.

We were using the package name as the key to index APKs. APKs from the
same package got messed up and gave wrong signature summary. Switch to
using the package filename as the key, which is identical in a given build.

Also fix the trailing space when printing the signature summary.

Bug: 30418268
Test: Run with a target_files.zip that has multiple APKs from the same package.

Change-Id: I6317e8c05e987c5690915e05c294153d10e2f0ab

8 years agoMerge "Link to shared libraries with the full paths."
Treehugger Robot [Wed, 27 Jul 2016 21:06:32 +0000 (21:06 +0000)]
Merge "Link to shared libraries with the full paths."

8 years agoLink to shared libraries with the full paths.
Dan Albert [Tue, 26 Jul 2016 18:54:47 +0000 (11:54 -0700)]
Link to shared libraries with the full paths.

This ensures that we're not accidentally linking the wrong version of
a library with the same name thanks to -L.

Test: Still builds.
Change-Id: I22e9e28412844ff4f8bda42ebbc300ea6574e474

8 years agoFix clang-tidy performance warnings.
Chih-Hung Hsieh [Wed, 27 Jul 2016 17:28:33 +0000 (10:28 -0700)]
Fix clang-tidy performance warnings.

* Use const reference parameter type to avoid unnecessary copy.

Bug: 30407689
Change-Id: Iefab05c077367f272abf545036b853e8a295c8cd
Test: build with WITH_TIDY=1

8 years agoMerge "Pass binder ABI to Soong"
Treehugger Robot [Wed, 27 Jul 2016 00:14:59 +0000 (00:14 +0000)]
Merge "Pass binder ABI to Soong"

8 years agoMerge "Add option to dump HTML warnings per project."
Treehugger Robot [Tue, 26 Jul 2016 23:04:29 +0000 (23:04 +0000)]
Merge "Add option to dump HTML warnings per project."

8 years agoPass binder ABI to Soong
Dan Willemsen [Tue, 26 Jul 2016 03:23:58 +0000 (20:23 -0700)]
Pass binder ABI to Soong

Change-Id: I7a7f197a114c39ab3a4233d430d9c677f581b1f9

8 years agoMerge "Add performance* to default global tidy checks."
Treehugger Robot [Tue, 26 Jul 2016 22:44:36 +0000 (22:44 +0000)]
Merge "Add performance* to default global tidy checks."

8 years agoAdd option to dump HTML warnings per project.
Chih-Hung Hsieh [Fri, 22 Jul 2016 21:09:31 +0000 (14:09 -0700)]
Add option to dump HTML warnings per project.

* Use --byproject flag to dump warnings in HTML file by projects.
* Add external/google and vendor/google projects, vs other
  external/non-google and vendor/non-google projects.
* Refactor code in dumpcategory to dump warnings by projects
  when --byproject is specified.
* Recognize new compiler -Wvarargs warning pattern.
* No change to default HTML output format.

Change-Id: I2406ad392ab18683357ff0ee0cf6c41f87cf399c
Test: run through current build.log files.

8 years agoAdd performance* to default global tidy checks.
Chih-Hung Hsieh [Tue, 26 Jul 2016 21:27:03 +0000 (14:27 -0700)]
Add performance* to default global tidy checks.

* This enables 5 performance related checks:
    performance-faster-string-find
    performance-for-range-copy
    performance-implicit-cast-in-loop
    performance-unnecessary-copy-initialization
    performance-unnecessary-value-param
* Recognize these new warnings in warn.py.

Bug: http://b/27779618
Change-Id: I7af3fdc262dd44db90d3b62eb37c5eac5a2eaa01
Test: build with WITH_TIDY=1 and run warn.py with build.log

8 years agoMerge "Remove unused libraries from otatools."
Treehugger Robot [Tue, 26 Jul 2016 00:36:57 +0000 (00:36 +0000)]
Merge "Remove unused libraries from otatools."

8 years agoRemove unused libraries from otatools.
Alex Deymo [Mon, 25 Jul 2016 23:08:39 +0000 (16:08 -0700)]
Remove unused libraries from otatools.

libbrillo-http was actually never used but it was being liked into
delta_generator anyway.

Bug: None
TEST=`lddtree delta_generator` doesn't show librillo-http.

Change-Id: I69ac66c87847d925b5798cf261c79466a3ff432a

8 years agoMerge "Revert "Rename libevent-host to libevent""
Treehugger Robot [Sat, 23 Jul 2016 00:40:35 +0000 (00:40 +0000)]
Merge "Revert "Rename libevent-host to libevent""

8 years agoRevert "Rename libevent-host to libevent"
Dan Willemsen [Fri, 22 Jul 2016 23:16:30 +0000 (23:16 +0000)]
Revert "Rename libevent-host to libevent"

This reverts commit ef31fc6477e1424f507095d1478f21445d569a21.
It's now using unique_host_soname to use a different installed name,
but keeping the libevent module name.

Change-Id: I1cb6e8e670636089993054236b089da059629da1

8 years agoMerge "Add java.lang.invoke to the package whitelist."
Narayan Kamath [Fri, 22 Jul 2016 09:33:16 +0000 (09:33 +0000)]
Merge "Add java.lang.invoke to the package whitelist."

8 years agoMerge "Count warnings per project and dump out CSV format."
Chih-hung Hsieh [Fri, 22 Jul 2016 00:54:50 +0000 (00:54 +0000)]
Merge "Count warnings per project and dump out CSV format."

8 years agoCount warnings per project and dump out CSV format.
Chih-Hung Hsieh [Thu, 21 Jul 2016 21:22:53 +0000 (14:22 -0700)]
Count warnings per project and dump out CSV format.

* No change to html output, except removing unused "PageTop" anchor.
* Add --gencsv flag to output a CSV file instead of html file.
  CSV files are combined to a table for dashboard charts.
* Count warnings from selected source project directories.
* CSV output lines are:
   num_of_warnings,project_name,warning_description
* project_name is empty for sum of warnings from all projects.
* warning_description could be:
  (1) "<severity>: <warning type description>"
      for one warning type, or
  (2) "<severity> warnings"
      for all warning types of the severity.

Change-Id: I1cf976ed0cf142091226b22665b7f28d383608fd
Test: run through current build.log files.

8 years agoMerge "Split -isystem headers into separate variables"
Colin Cross [Thu, 21 Jul 2016 17:51:13 +0000 (17:51 +0000)]
Merge "Split -isystem headers into separate variables"

8 years agoAdd java.lang.invoke to the package whitelist.
Narayan Kamath [Thu, 21 Jul 2016 11:06:57 +0000 (12:06 +0100)]
Add java.lang.invoke to the package whitelist.

Tracks libcore change that adds the first classes from this package
to core-oj.jar. Note that packages need to be whitelisted even if
the classes in question aren't public API.

Test: make checkbuild docs

Change-Id: I917dc63899124ca30bbeb2902787faea6754bb43

8 years agoSplit -isystem headers into separate variables
Colin Cross [Wed, 20 Jul 2016 19:22:57 +0000 (12:22 -0700)]
Split -isystem headers into separate variables

Split the variables that contain header directories into ones that
should be prefixed with -isystem and ones that should be prefixed with
-I in preparation for moving some headers from -isystem to -I.

Add $(wildcard) around SRC_HEADERS to match the soong behavior, and move
users of SRC_HEADERS from config.mk to binary.mk so that the exported
soong value is present.

Test: no changes to build.ninja compile rules
Change-Id: Iadecbbf4351a01e53cb57e721d31f4f836bb82d9

8 years agoMerge "Recognize new clang and clang-tidy warnings."
Treehugger Robot [Wed, 20 Jul 2016 22:57:29 +0000 (22:57 +0000)]
Merge "Recognize new clang and clang-tidy warnings."

8 years agoRecognize new clang and clang-tidy warnings.
Chih-Hung Hsieh [Wed, 20 Jul 2016 17:08:51 +0000 (10:08 -0700)]
Recognize new clang and clang-tidy warnings.

* Count new clang-tidy warnings:
    google-runtime-references
    google-runtime-operator
* Count new clang warnings:
    -Wconst-conversion similar to -Wliteral-conversion
    -Wundefined-var-template
* Modified static analyzer warning message about
    "Null passed to a callee that requires a non-null ..."
* Disable google-runtime-references by default and
  disable misc-macro-parentheses in vendor projects;
  too many old C/C++ code have this warning.

Change-Id: Ib35e0af85875aada17c92b0237b76cd5ae3bfcc8
Test: build with clang-tidy.

8 years agoMerge "Factor out common include directories into helper"
Treehugger Robot [Wed, 20 Jul 2016 21:11:22 +0000 (21:11 +0000)]
Merge "Factor out common include directories into helper"

8 years agoMerge "Remove GOMA_HERMETIC form goma.mk"
Fang Deng [Tue, 19 Jul 2016 23:32:37 +0000 (23:32 +0000)]
Merge "Remove GOMA_HERMETIC form goma.mk"

8 years agoFactor out common include directories into helper
Colin Cross [Tue, 19 Jul 2016 20:19:21 +0000 (13:19 -0700)]
Factor out common include directories into helper

Refactor includes in transform-*-to-o to simplify future changes to the
default include paths.

Test: whitespace-only changes to the compile rules in build.ninja
Change-Id: I766af1f22a4838d933691b6df37530db3ba4e21d

8 years agoMerge "Switch to prebuilt clang-3016494"
Stephen Hines [Tue, 19 Jul 2016 22:02:31 +0000 (22:02 +0000)]
Merge "Switch to prebuilt clang-3016494"

8 years agoMerge "Disable warnings triggered in Clang r271374"
Stephen Hines [Tue, 19 Jul 2016 22:02:31 +0000 (22:02 +0000)]
Merge "Disable warnings triggered in Clang r271374"

8 years agoRemove GOMA_HERMETIC form goma.mk
Fang Deng [Tue, 19 Jul 2016 01:33:04 +0000 (01:33 +0000)]
Remove GOMA_HERMETIC form goma.mk

This CL removes the GOMA_HERMETIC setting from goma.mk so that
the default setting will be used. By default, GOMA will fallback
to local compiler if the exactly matched compiler is not available.

Change-Id: I22c83594f6bd30bc8ed1334ab7bb256ef218567b

8 years agoDisable warnings triggered in Clang r271374
Pirama Arumuga Nainar [Tue, 28 Jun 2016 17:54:33 +0000 (10:54 -0700)]
Disable warnings triggered in Clang r271374

http://b/28149048
http://b/29823425

Disable -Wnull-dereference.  The second bug above tracks that this
warning gets re-enabled.

Test: Tested build, boot and common usage for Arm, Arm64, x86, x86_64,
Mips images in AOSP and internal branch.

Change-Id: Ie41a495dd9bb247d3609f4848d7669d1faaeeb79

8 years agoSwitch to prebuilt clang-3016494
Pirama Arumuga Nainar [Tue, 28 Jun 2016 17:58:39 +0000 (10:58 -0700)]
Switch to prebuilt clang-3016494

Test: Tested build, boot and common usage for Arm, Arm64, x86, x86_64,
Mips images in AOSP and internal branch.

Bug: http://b/29823425
Change-Id: I97299c8b41ff9d3ac7019a349aa569609a099233

8 years agoMerge "Avoid matching the same warning line twice."
Treehugger Robot [Mon, 18 Jul 2016 23:18:47 +0000 (23:18 +0000)]
Merge "Avoid matching the same warning line twice."

8 years agoAvoid matching the same warning line twice.
Chih-Hung Hsieh [Mon, 18 Jul 2016 22:27:02 +0000 (15:27 -0700)]
Avoid matching the same warning line twice.

Used to skip only immediately followed identical warning lines.
Now classifywarning is called only once for each unique warning line.

Change-Id: Ie3b77ded70b41dafad91c042dbe15ad2be119e62
Test: run through build.log file

8 years agoMerge "Rename libevent-host to libevent"
Dan Willemsen [Mon, 18 Jul 2016 19:18:32 +0000 (19:18 +0000)]
Merge "Rename libevent-host to libevent"

8 years agoMerge "Only add linker_asan as dependency to shared executables"
Colin Cross [Sun, 17 Jul 2016 23:38:39 +0000 (23:38 +0000)]
Merge "Only add linker_asan as dependency to shared executables"