Commit Graph

30087 Commits

Author SHA1 Message Date
Treehugger Robot
a3dc792131 Merge "Add a doc about dex_preopt_check." 2022-05-23 10:25:43 +00:00
Jiakai Zhang
500671f61c Add a doc about dex_preopt_check.
The doc lists some possible causes of a `dex_preopt_check` error, which
can be useful for developers to understand how to debug the error.

Bug: 232542678
Test: m nothing
Change-Id: I2e9868a6a470e41e8c3743c045e0cf4cf7367efa
2022-05-20 16:21:46 +01:00
Yi Kong
05b2217940 Merge "Rename modulesAddedWall to modulesWarningsAllowed" 2022-05-20 00:26:18 +00:00
Yi Kong
ee99ddf900 Rename modulesAddedWall to modulesWarningsAllowed
MODULES_ADDED_WALL is deceiving and it actually meant which modules are
allowed to have warnings (do not automatically append -Werror flag).

Test: presubmit
Bug: 233183337
Change-Id: Ia2eb972d3d76ba245840f9872cbcc66d2894dab3
2022-05-19 20:16:00 +08:00
Dmitrii Merkurev
8ab6603a43 Introduce EROFS compress hints to the Android build system
Make it possible to provide a prebuilt hints file to specify different compression strategies on a file basis for all partitions using:

BOARD_EROFS_COMPRESS_HINTS := <path>/erofs-hints.txt

or separately for every partition using:

BOARD_SYSTEMIMAGE_EROFS_COMPRESS_HINTS := <path>/system-partition-erofs-hints.txt
BOARD_VENDORIMAGE_EROFS_COMPRESS_HINTS := <path>/vendor-partition-erofs-hints.txt

Hints format: Each line is defined by tokens separated by spaces in the following form:

<pcluster-in-bytes> <match-pattern>

pcluster-in-bytes can be specified as 0 which mean file will not be compressed

Bug: 231934752
Test: used dump.erofs -S system.img to verify the system image isn't compressed after specifying BOARD_SYSTEMIMAGE_EROFS_COMPRESS_HINTS := no-compress.txt, where no-compress.txt contains 0 .*
Test: used dump.erofs --nid=<inode-for-all-apk-files> vendor.img to verify apk files are not compressed (the rest of the partition content is compressed)
Test: used dump.erofs -S <all-images> to verify all images are not compressed after specifying BOARD_EROFS_COMPRESS_HINTS := <path>/no-compress.txt
Change-Id: I64054e26af5ea5781c45d2183b7796a9ad2b7927
2022-05-17 23:10:37 +00:00
Treehugger Robot
d528b3c553 Merge "Create $(zip_root)/PVMFW & archive prebuilt used" 2022-05-17 16:34:22 +00:00
Treehugger Robot
3eb3ca0c9b Merge "Add keep rules for @KeepForWeakReference annotation" 2022-05-16 21:19:03 +00:00
Treehugger Robot
266225ccb2 Merge "Revert "Do not compress zip file for unit tests."" 2022-05-13 23:44:57 +00:00
Sam Saccone
7d7ae94bef Revert "Do not compress zip file for unit tests."
This reverts commit a24c755f66.

Reason for revert: not worth the additional storage cost.

Change-Id: I8ed24ddef4ac3f640bf35e79cddf433e0df0854d
2022-05-13 19:55:25 +00:00
Anton Hansson
59f95bcd1c Merge "Remove unused dependencies from sdk goals" 2022-05-13 08:55:55 +00:00
Colin Cross
544aedda27 Merge "Remove HOST_DALVIK_*" 2022-05-12 15:44:20 +00:00
Pierre-Clément Tosi
c7b837872d Create $(zip_root)/PVMFW & archive prebuilt used
It might be useful to have access to the prebuilt that the Android build
used to create the pvmfw partition so add a new directory (similarly to
other partitions) containing the prebuilt (which is also the only
content of the partition). This is particularly useful in ATC, when
detecting if the prebuilt was updated by the build.

Bug: 232253742
Test: m
Change-Id: I1116d91ffb073821568bcaeed30bbb43873dcafa
2022-05-12 16:37:46 +01:00
Anton Hansson
55a8f02ea8 Remove unused dependencies from sdk goals
The SDK no longer includes system images, so no longer needs to depend
on targets that are only relevant for the system images.

Remove all the explicit dependencies that end up depending on
"everything" but are not included in the sdk zip.

Two positive side-effects:
- fewer unused things get built (now ~32k targets, down from ~108k)
- apexes no longer get built, eliminating the risk of mismatch between
  module sdk prebuilts and source-built AOSP apexes.

There are some potential risks with this CL:
- because we no longer forcefully rebuild everything, if there are bugs
  in dependencies of exising files in the SDK, incremental builds may
  not rebuild them.
- some files that get built into the SDK may be being built as a
  side-effect of other files included in the SDK, so removing one file
  may cause another to not get built. The solution to that is to add
  the file not getting built to ALL_SDK_FILES.

Bug: 205008975
Test: m sdk sdk_repo dist && diff sdk.zip before/after (identical)
Change-Id: I97284864f66aa88556fbe16864f45b04be97634e
2022-05-12 12:28:49 +00:00
Jared Duke
7d0c90b51f Add keep rules for @KeepForWeakReference annotation
Ensure annotated fields are kept when treeshaking-related optimizations
are enabled. Note that this still allows field removal if tree shaking
reveals no references, but will avoid removal if there are references
that might impact downstream usage, e.g., weak references.

Bug: 227455445
Test: atest InternalAnnotationsTest
Change-Id: I59c6277c43b14c5de8154fa1eefad01f0702e413
2022-05-11 09:47:12 -07:00
Colin Cross
a9203e6d87 Remove HOST_DALVIK_*
There are no more BUILD_HOST_DALVIK_* modules, remove the host dalvik
support.  The equivalent support in Soong just copies the device dex
file to the host dalvik location.

Test: m checkbuild
Change-Id: I4bcf916518317b28d3217994b2fe9ee95d7f50d6
2022-05-11 08:17:45 -07:00
Cole Faust
4edc0b30ff Remove all_product_makefiles
It was unused, along with all_product_configs.

Bug: 228518445
Test: Presubmits
Change-Id: Ibd105241581f8b03254b8fee382d916ea3a98890
2022-05-10 15:39:10 -07:00
Cole Faust
6f6060a358 Add function for flattening 2d lists
Bug: 226974242
Test: ./out/rbcrun ./build/make/tests/run.rbc
Change-Id: Iae977b34ca0ac156ec795c54f4951c769fa994dd
2022-05-05 11:41:59 -07:00
Ulya Trofimovich
de1949b562 Merge "Extend hardcoded list of optional uses-libraries." 2022-05-05 12:57:54 +00:00
Xin Li
c01930f7d7 Merge "Merge SP2A.220505.002" 2022-05-04 20:30:21 +00:00
Treehugger Robot
5161627644 Merge "fixup! Embed host liblz4.so in target_files" 2022-05-04 17:23:40 +00:00
Ulya Trafimovich
0932a821c0 Extend hardcoded list of optional uses-libraries.
This is a temporary workaround that should be replaced with build logic
that would propagate optionality via generated exported-sdk-libs files.

Bug: 214255490
Test: lunch aosp_cf_x86_64_phone-userdebug && m && launch_cvd \
    && adb wait-for-device && adb root \
    && adb logcat | grep -E 'ClassLoaderContext [a-z ]+ mismatch'
    # empty output, no errors at boot
Change-Id: I05e22e5f72a9f936b6e0010240f5e71849a9b2b0
2022-05-04 13:36:47 +01:00
Xin Li
a08bbcebb4 Merge SP2A.220505.002
Bug: 231319788
Merged-In: I5a35451e14cba5f115ab66926d62c4fa4556a267
Change-Id: Iebd16f49429a66da431c4277c60de7030b55b7a5
2022-05-03 20:54:36 +00:00
Treehugger Robot
7d2d41ce2e Merge "Remove RBC_BOARD_CONFIG" 2022-05-03 17:22:56 +00:00
Cole Faust
127115190b Remove RBC_BOARD_CONFIG
Always enable the rbc board config along with
the product config now that board config works
well.

Bug: 231224938
Test: Presubmits
Change-Id: I52a79d53dfe54878477ee015bd21863c4cee6b05
2022-05-02 14:16:04 -07:00
Håkan Kvist
8cabc71bf6 fixup! Embed host liblz4.so in target_files
Fix typo introduced in 6877e81467

Bug: 206729162
Test: m dist

Change-Id: I799cbc2048f0a3ac715ecf094049776b507b1505
2022-05-02 09:52:50 +02:00
Inseob Kim
0b734ccd91 Add 33.0 to PLATFORM_SEPOLICY_COMPAT_VERSIONS
Test: m selinux_policy
Change-Id: I0efaf48ff96c6225183cdbf13904ef41c9f2389d
2022-05-02 14:19:51 +09:00
Treehugger Robot
e30f7e8be1 Merge "Add deprecation warning for base-rules-hook" 2022-04-29 23:24:48 +00:00
Cole Faust
997cfaaceb Merge "Add implementations for firstword/lastword" 2022-04-29 18:32:40 +00:00
Treehugger Robot
f4e2f4150b Merge "Update OWNERS." 2022-04-29 17:05:22 +00:00
Sebastian Ene
399c35d490 Merge "Drop the PLATFORM_VERSION_CODENAME conditional" 2022-04-29 13:02:22 +00:00
Ulya Trafimovich
c6ebb82b9f Update OWNERS.
Some people left, some new files were added.

Bug: 214255490
Test: none
Change-Id: I39a4b313ad69e2a2076a0dc87e131add5dc85b20
2022-04-29 13:51:31 +01:00
Sebastian Ene
573fbcd114 Drop the PLATFORM_VERSION_CODENAME conditional
Evaluate the list of all active codenames when version_util.mk is
invoked.

Bug: 230720688
Change-Id: I1c6a3e94230e856cf41f1f79b37893576957dc3d
Signed-off-by: Sebastian Ene <sebastianene@google.com>
2022-04-29 09:09:03 +00:00
Treehugger Robot
0941f062af Merge "Fix incorrect function call in product-graph" 2022-04-29 07:54:05 +00:00
Treehugger Robot
f8935efee8 Merge "Allow non-compat suite to locate testcases dir properly" 2022-04-29 01:23:44 +00:00
Cole Faust
f773f3a024 Add deprecation warning for base-rules-hook
This lets product/board config define a function that
is called while processing modules defined in an
Android.mk file.

When the product/board configs are converted
to starlark, they won't be able to supply a base-rules-hook
anymore. Emit a warning saying that it's deprecated.

Bug: 226974242
Test: Manually
Change-Id: Ie6baa4952516a3ec5c6c440f9106f7b5185803b7
2022-04-28 16:20:32 -07:00
Cole Faust
c93109dc36 Add implementations for firstword/lastword
Bug: 226974242
Test: ./out/rbcrun ./build/make/tests/run.rbc
Change-Id: Ibb992f42a59212bae48acd55647b2d0872c2f69e
2022-04-28 15:56:33 -07:00
Treehugger Robot
55d522096a Merge "Prototype changes for multitree" 2022-04-28 22:20:47 +00:00
Dan Shi
3e85ca9d4b Allow non-compat suite to locate testcases dir properly
cc_test that can run on hostside are default to be part of
host-unit-tests suite. The suite is set up similar to device-tests and
general-tests, and it's not a compatibility suite. So following variable
will always be empty:
$(COMPATIBILITY_TESTCASES_OUT_host-unit-tests.
It should use HOST_OUT_TESTCASES as testcases dir.

The same logic should be applied to art-host-tests.

Bug: None
Test: build
Change-Id: Ieddacd5157da73c6df473c103be109d9c3a55281
2022-04-28 13:36:36 -07:00
Cole Faust
76413f4c58 Merge "Sort rblf_wildcard results and remove file existence functions" 2022-04-28 19:54:32 +00:00
Treehugger Robot
b27140daa0 Merge "Replace DEX_FLAGS by flags for D8 and R8." 2022-04-28 12:40:13 +00:00
Ulya Trofimovich
4faef3876d Merge "Remove DEXPREOPT_USE_ART_IMAGE; it is no longer needed." 2022-04-28 09:44:21 +00:00
Inseob Kim
05fa7f1455 Prototype changes for multitree
This change contains a prototype implementation for multitree.
A new file core/tasks/multitree.mk adds a goal named "update-meta",
which searches for "imported" and "exported" Android.bp modules and
writes a json metadata to track dependencies between components.

Bug: 230448564
Test: m
Change-Id: Ie93e3bf130cacb6b6de41acee3bd302f64f1ab95
2022-04-28 08:03:55 +00:00
Cole Faust
542399a8e8 Merge "Make mkstrip always return a string" 2022-04-27 21:37:25 +00:00
Cole Faust
23b94e63ba Fix incorrect function call in product-graph
This was accidentally broken in aosp/2064287

Fixes: 230599451
Test: m product-graph
Change-Id: Ibc9aabc5ddf7ad4d347e89019be44ef0c8ae0ff7
2022-04-27 11:55:08 -07:00
Cole Faust
63e1012b05 Merge "Send trace logs to stderr instead of stdout" 2022-04-27 16:50:10 +00:00
Treehugger Robot
b9b9c000d5 Merge "Add PLATFORM_VERSION_LAST_STABLE to soong config" 2022-04-27 13:00:36 +00:00
Ulya Trafimovich
30142ffc0a Remove DEXPREOPT_USE_ART_IMAGE; it is no longer needed.
Bug: 170935728
Test: lunch aosp_cf_x86_64_phone-userdebug && m && lunch_cvd
Change-Id: Icc50932228b6ce27799ac9ce9b2f637029436b6b
2022-04-27 13:32:04 +01:00
Anton Hansson
721a377982 Merge "Remove notice file for sdk system image" 2022-04-27 10:56:04 +00:00
Cole Faust
5e43109586 Make mkstrip always return a string
This is what mk2rbc assumes, and previously that
assumption was incorrect when passing a list to
mkstrip.

Bug: 226974242
Test: Presubmits
Change-Id: I7b1596662df7c966404aab2a99d7c2e53d917bd6
2022-04-26 15:30:20 -07:00
Cole Faust
c7b8b6ed88 Sort rblf_wildcard results and remove file existence functions
Kati's $(wildcard) results are guaranteed to be sorted,
but go's filepath.Glob() is not.

Remove the file existence functions because they can
just be replaced with wildcards.

Bug: 226974242
Test: go test
Change-Id: I02fb6292b932bc28cd856ec3c7cb9ed9e96ca630
2022-04-26 12:15:41 -07:00