Commit Graph

47327 Commits

Author SHA1 Message Date
Tao Bao
46901fb8ca releasetools: Log the exceptions before rethrowing.
In Append2Simg and Append in verity_utils.py, we catch and rethrow
exceptions as BuildVerityImageError. However, this suppresses the
traceback from the original exception which usually indicates the actual
cause. We can better handle this with the raise statement in Python 3,
which is however unavailable in Python 2.

This CL logs the exception before rethrowing to retain the useful bits.

Test: Inject an error to append2simg. `m -j systemimage` with
      aosp_marlin-userdebug. Check the output.
Change-Id: I0c2f57d6023fa1038256b85fa98d57ad0244a70d
2018-11-06 10:42:35 -08:00
Treehugger Robot
a0a7e03ff0 Merge "Link hwasan static library to native tests." 2018-11-02 01:51:02 +00:00
Evgenii Stepanov
ed90746cbd Link hwasan static library to native tests.
They are executables, but they are not EXECUTABLES.

Bug: 112438058
Test: make SANITIZE_TARGET=hwaddress tests
Change-Id: I0f5d8d6259d7df4196bde50ec553b73099f2c8ac
2018-11-01 15:43:14 -07:00
Treehugger Robot
1f50f75988 Merge "build_image too aggressive with right sizing" 2018-11-01 22:31:34 +00:00
Dan Willemsen
e0e0cadb21 Merge "Remove obsolete (CLANG|LLVM)_TBLGEN" 2018-11-01 20:51:11 +00:00
Mark Salyzyn
4a6ce93f27 build_image too aggressive with right sizing
Regression introduced by c3d408e3c1

Found a case where 1 + 1/59 reduction in size based on free space
failed when right sizing an ext4 image. Reduced the math to 1 + 1/60.

Test: compile
Bug: 111302946
Change-Id: I6a0f3919e8d45d0b3e7cd558a6ad4d3799012f2c
2018-11-01 12:45:29 -07:00
Treehugger Robot
c03653720f Merge "add flags_health_check binary to system_base.mk" 2018-11-01 18:46:52 +00:00
Paul Duffin
50537afe99 Merge "Allow UnsupportedAppUsage annotations to be in separate target" 2018-11-01 10:22:53 +00:00
Treehugger Robot
5e48a5c62e Merge "Remove host- prefix from protobuf libraries" 2018-11-01 10:12:38 +00:00
Dan Willemsen
b93d898312 Remove obsolete (CLANG|LLVM)_TBLGEN
The last users have been removed.

Test: treehugger
Change-Id: Iafbf5228020bad26e1c241d46473ec559920b2fb
2018-11-01 00:24:44 -07:00
Treehugger Robot
0764d72f14 Merge "De-dup INTERNAL_SYSTEMIMAGE_FILES to fix PDK builds" 2018-11-01 06:57:11 +00:00
Treehugger Robot
1b4b378bf7 Merge "Don't check VNDK lib list for PDK builds" 2018-11-01 05:10:15 +00:00
Treehugger Robot
cb0e71fd72 Merge "Revert "Create bundle modules suitable for bundletool"" 2018-11-01 03:32:21 +00:00
Hongyi Zhang
eaa08d4cd4 add flags_health_check binary to system_base.mk
Test: build succeeded, /system/bin/flags_health_check can be found on
device

Change-Id: Ia8b73d7bbfc6951e580f62b6bebf006211b0ce33
2018-11-01 03:28:19 +00:00
Jiyong Park
53c816f7de Don't check VNDK lib list for PDK builds
Some libs, such as libandroid_net.so and some other Renderscript related
ones, can't be built in PDK due to missing frameworks/base.

Bug: 118634643
Test: build PDK; build doesn't break due to missing VNDK libs

Change-Id: Ic2bf657d796c2044c3b8f49b2963ca84760d54d1
2018-11-01 10:50:27 +09:00
Colin Cross
3451e0ddf2 Revert "Create bundle modules suitable for bundletool"
This reverts commit afc4604f67.

Reason for revert: zip2zip fails for multiple resources with the same name in different directories

Bug: 117295826
Change-Id: I807dffdaced999b5514ff49fb732a461c1fc90a2
2018-11-01 00:22:26 +00:00
Dan Willemsen
37a1986454 De-dup INTERNAL_SYSTEMIMAGE_FILES to fix PDK builds
On PDK builds, we sometimes end up with multiple entries in
INTERNAL_SYSTEMIMAGE_FILES, if we've got the definition for it, and it's
in PDK_FUSION_SYSIMG_FILES. This causes us to define multiple rules in
sdk_font.mk, leading to overriding commands errors.

Bug: 118634643
Test: attempt PDK build
Change-Id: Ieb4f46c0eece96cf246197af4b03e693493cc6a1
2018-10-31 16:39:29 -07:00
Colin Cross
c66c317460 Merge changes from topics "soong-aar", "soong-bundle"
* changes:
  Store AAR path from Soong for dist
  Create bundle modules suitable for bundletool
  Dist bundle modules from Soong
2018-10-31 22:12:43 +00:00
Paul Duffin
79d8bf25ea Allow UnsupportedAppUsage annotations to be in separate target
Previously, all the UnsupportedAppUsage annotations were assumed to be
in the same target as was used at runtime. e.g. frameworks,
core-libart, etc. This change allows separate targets to be specified
in the EXTRA_HIDDENAPI_JARS. It is needed to avoid maintaining local
patches for those annotations in the libcore/ojluni/src/main/java code
which comes from upstream OpenJDK.

This was tested by making and then manually checking that the generated
out/target/common/obj/PACKAGING/hiddenapi-light-greylist.txt was the
same (after sorting) before and after this change.

Test: see above
Bug: 117818301
Change-Id: Icfadbe52601371f6a4cabef106750b16f6c6d4c8
2018-10-31 10:33:38 +00:00
Anton Hansson
a39bb7f23f Merge "Add list of locales to mainline_system" 2018-10-31 09:00:14 +00:00
Colin Cross
74e4cf10bf Store AAR path from Soong for dist
Store the path to the AAR file from Soong so that it will be picked
up by dist if requested in TARGET_BUILD_APPS.

Test: m checkbuild
Change-Id: Ifeaf2b5ca3f405fbe79a966ceee9989a38d77f6e
2018-10-30 15:48:33 -07:00
Colin Cross
afc4604f67 Create bundle modules suitable for bundletool
Create a bundle module in addition to creating an APK, which can
then optionally be merged with bundle modules from builds for
other architectures and then be passed to bundletool to create an
app bundle.

Bug: 117295826
Test: tapas Gallery2 && m dist
Change-Id: Ib9b5558888d6d6e841e8a5dcd7037dd0fd65a730
2018-10-30 15:48:25 -07:00
Colin Cross
0fb8c97b02 Dist bundle modules from Soong
Dist bundle modules when requested by TARGET_BUILD_APPS.

Bug: 117295826
Test: tapas RecoveryLocalizer && m dist
Change-Id: Iad63ceafc2a60e6735b50eca65cc4859f9d71b52
2018-10-30 15:47:59 -07:00
Tao Bao
757dfe8792 Merge "Revert "Work around e2fsck issue for building sparse GSIs"" 2018-10-30 15:18:58 +00:00
David Brazdil
4438e0bb8e Merge "Revert^4: Change command-line flags of hiddenapi" 2018-10-30 10:02:20 +00:00
Anton Hansson
3ae69f2990 Add list of locales to mainline_system
Locales not in this list will get stripped.

Bug: 80410283
Test: lunch mainline_arm64; m
Change-Id: I90a63e234e2f2ee32da8f9f257248f5ee6354151
Merged-In: I90a63e234e2f2ee32da8f9f257248f5ee6354151
(cherry picked from commit d994b0dc98)
2018-10-30 08:54:30 +00:00
Anton Hansson
41ec0a65a4 Merge "Add vendor restrict to mainline targets" 2018-10-30 07:43:55 +00:00
Treehugger Robot
6b38c9bb4c Merge changes Ia8fb5696,Id5ae6645
* changes:
  build_image setup ext4 dedupe on more images.
  build_image tune right-size image
2018-10-29 23:33:24 +00:00
Tao Bao
27809667b4 Revert "Work around e2fsck issue for building sparse GSIs"
This reverts commit ec7fa1cd09.

The earlier e2fsck issue has been addressed by [1].

[1] https://android-review.googlesource.com/c/platform/external/e2fsprogs/+/725259/

Bug: 112062612
Test: m PRODUCT-aosp_x86_64-eng \
          SANITIZE_HOST=address ASAN_OPTIONS=detect_leaks=0 \
          -j e2fsck systemimage
Change-Id: I7287cb8639ae45abdf753821421bd070b819a30e
2018-10-29 16:02:47 -07:00
Mark Salyzyn
f0cef8d8bf build_image setup ext4 dedupe on more images.
Add ext4 dedupe to system_other, product, product_services, odm and
oem images.  Experimental savings without any other configuration
changes was 0%, .75%, 3.4% respectively for the raw image file size
for the first three.

Test: manual
Bug: 111302946
Change-Id: Ia8fb5696151acad59bb144ea93f2c2ddac962bbd
2018-10-29 13:37:10 -07:00
Mark Salyzyn
c3d408e3c1 build_image tune right-size image
To more quickly settle on a no free space result, recognize that
there is roughly 1/58.5 overhead managing the free space pool as
determined experimentally.  This algorithm carries with it some
risk of being sensitive to any alterations in ext4.

This also addresses the issue of a much larger apparent free space
available calculated on the sample pass when deploying ext4 dedupe,
and resolves the poorer estimation that happens without accounting
for the overhead.

The alternative of adding a second pass works to a similar, and
likely more comforting algorithm and result.  But doing so adds
a minute to the typical incremental build time, or +50% to the
time it takes to determine ext4 right sized images.

Test: manual
Bug: 111302946
Change-Id: Id5ae6645b9aa2d036e6fefe2fb17672e8f8ef6f0
2018-10-29 13:37:04 -07:00
Anton Hansson
89fe71180b Merge "Add a mainline arm64 device" 2018-10-29 19:03:41 +00:00
Anton Hansson
123f8e73ed Add vendor restrict to mainline targets
Prevents additions of non-aosp artifacts to these products.

Bug: 80410283
Test: lunch mainline_arm64; m nothing
Test: lunch mainline_system_arm64; m nothing
Change-Id: Id12a77bd7f4cc9917aecbca76e8a2842d7c77613
2018-10-29 16:25:49 +00:00
Anton Hansson
284b81c1ae Add a mainline arm64 device
The existing 'generic' targets are emulator devices, and targeting
it has the side-effect of including emulator-specific artifacts.

Create a mainline device instead, which is really generic. This also
allows specifying tweaks unsuitable for the emulator.

Include BoardConfigGsiCommon for now, even though it includes a few
things we likely won't want in the future.

Bug: 80410283
Bug: 111538404
Test: lunch mainline_arm64; m
Change-Id: I15e7cb41fcbd3c0592a091ba7a8575ddf10bda71
2018-10-29 16:15:04 +00:00
David Brazdil
9007e530aa Revert^4: Change command-line flags of hiddenapi
The `hiddenapi` build tool now reads a dex file from one filename
and writes a modified dex file to another. Change the build rule
to reflect it.

This reverts commit d8c427fbba.

Change-Id: Ic9a4188a65f7a6fb28edae1aeda7422e93800c58
Test: m
2018-10-27 21:46:19 +00:00
Colin Cross
615212e1a2 Remove host- prefix from protobuf libraries
Test: m checkbuild
Change-Id: I3e7e5f22a5becd2f37db89b6681ff21737b29267
2018-10-26 23:55:49 -07:00
Treehugger Robot
df45f28a82 Merge "Really mark sdk_addon as PHONY to fix m snod" 2018-10-27 00:28:23 +00:00
Yifan Hong
779dc30020 Merge changes from topic "dpgroup"
* changes:
  Add dynamic partition info to target files
  BOARD_{GROUP}_SIZE must not be empty.
  Add _a and _b to group names to super.
2018-10-26 18:23:53 +00:00
Dan Willemsen
ea898f1c53 Really mark sdk_addon as PHONY to fix m snod
When we're using a dont_bother_goals (including snod), we don't load
build/make/core/tasks/*.mk, so sdk_addon isn't defined as a PHONY rule.

This causes a build break because build/make/core/Makefile uses
dist-for-goals with sdk_addon. dist-for-goals requires its arguments to
be PHONY targets.

Test: m snod
Change-Id: I69937fe9360be57766d17ed4c28b5d2a1e348308
2018-10-26 11:17:25 -07:00
Paul Hobbs
27ec8b868e Merge "Revert "Revert^2: Change command-line flags of hiddenapi"" 2018-10-26 17:22:35 +00:00
Luman Qu
d8c427fbba Revert "Revert^2: Change command-line flags of hiddenapi"
This reverts commit e9540386e2.

Reason for revert: Caught by droidcop https://b.corp.google.com/issues/118481351

Change-Id: I66e45ef5a84d63682e5c33c9aa1e708160606611
2018-10-26 16:53:09 +00:00
Treehugger Robot
43930504e1 Merge "Mark BUILD_NUMBER as obsolete, more vars as readonly" 2018-10-26 15:42:36 +00:00
David Brazdil
6d0b0f6103 Merge "Revert^2: Change command-line flags of hiddenapi" 2018-10-26 09:19:23 +00:00
Colin Cross
e0006c91ca Merge "Pass privileged dexpreopt module configuration to Soong" 2018-10-26 00:00:12 +00:00
Yifan Hong
07d3d79e6e Add dynamic partition info to target files
Test: builds and manual inspect
Bug: 117182932
Change-Id: Ic84860d976d18ef7aa8d050fd1118d1e75a0456d
2018-10-25 16:23:42 -07:00
Yifan Hong
a50b5e34a4 BOARD_{GROUP}_SIZE must not be empty.
Otherwise, OTA generation will fail.
Test: OTA generation
Test: do not define it, build error

Change-Id: I63da80bd35d1982db0510428560727c759212771
2018-10-25 16:23:42 -07:00
Yifan Hong
16a07e1806 Add _a and _b to group names to super.
For A/B devices, append slot suffix to dynamic
partition group names. This ensures that during an
update, partitions from target slot doesn't take
more than half of the super partition.

Test: flash and lpdump
Bug: 111610495
Change-Id: I07a082b67d0f9faada150c7ac3527eb737a81655
2018-10-25 16:23:42 -07:00
Treehugger Robot
fea4263ec1 Merge "releasetools: Fix the error message." 2018-10-25 22:35:37 +00:00
Tao Bao
f3fc62c8a0 releasetools: Fix the error message.
This avoids showing a message as below:

raise BuildImageError("Failed to get tune2fs usage:\n{}".format(output))
UnboundLocalError: local variable 'output' referenced before assignment

The `output` won't be set under such a case, which unfortunately hides
the real cause. This CL addresses the issue by letting it throw
implicitly, which contains the command and outputs.

Test: `m dist`
Test: `python -m unittest test_build_image`
Change-Id: Icf015bab8869d150516246ed73552f6502127cdf
2018-10-25 12:29:44 -07:00
David Brazdil
e9540386e2 Revert^2: Change command-line flags of hiddenapi
Change command-line flags of hiddenapi

The `hiddenapi` build tool now reads a dex file from one filename
and writes a modified dex file to another. Change the build rule
to reflect it.

This reverts commit 5381eb684e.

Test: m
Change-Id: I8d37935c5ea381348278ec668d474f6ffb8e8411
2018-10-25 17:25:23 +00:00