Commit graph

75984 commits

Author SHA1 Message Date
Anton Hansson
59f95bcd1c Merge "Remove unused dependencies from sdk goals" 2022-05-13 08:55:55 +00:00
Treehugger Robot
69b1b0c10a Merge "Lightweight ninja writer in Python" 2022-05-12 23:46:55 +00:00
Treehugger Robot
a96be433c4 Merge "Checkpoint new build orchestrator" 2022-05-12 22:55:33 +00:00
Joe Onorato
7cf6f97775 Checkpoint new build orchestrator
Test: rm -rf out && multitree_build
Change-Id: Ic274182f0925f30d56227597b65e5b9ef3b19707
2022-05-12 12:12:38 -07:00
Spandan Das
aacf2376a5 Lightweight ninja writer in Python
Summary:
- Create python classes for ninja vocbulary in `ninja_syntax.py`. These
  classes will be serialized to a ninja file
- Create a Writer class in `ninja_writer.py`. The current API supports
  adding variables,rules,build actions, etc. This can be extended in the
  future (See `test_ninja_writer.py` for examples)

Future Work:
 - Update the `Subninja` class once chDir is supported (aosp/2064612)
 - Support a width parameter that will be used to wrap long lines of
   text. This will improve readability of the generated files

Expected Use Case: Multi-tree build orchestrator

Test: python ./test_ninja_syntax.py
Test: python ./test_ninja_writer.py

Change-Id: I90c7ee69ddeb7c20c3fd4fca5a911dddbf2253bd
2022-05-12 17:47:29 +00:00
Michael Groover
9d1a0a47d5 Merge "Add support for -providerArg in signapk" 2022-05-12 17:40:31 +00:00
Colin Cross
544aedda27 Merge "Remove HOST_DALVIK_*" 2022-05-12 15:44:20 +00: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
Treehugger Robot
b4eef93771 Merge "Remove -j1 for aidl-freeze-api" 2022-05-11 23:12:07 +00:00
Michael Groover
2f8aad4f7f Add support for -providerArg in signapk
signapk currently accepts a Provider class that can be instantiated
and inserted before the signing. This commit adds support to specify
a -providerArg parameter that can be used to configure the Provider.
Prior to JDK 9 a Provider would accept a providerArg in a constructor
accepting a String; in JDK 9+ a Provider should first be instantiated
with the zero-arg constructor, then the configure method should be
called with the providerArg.

Bug: 142334653
Bug: 190974913
Fixes: 232134730
Test: Manually verified new Provider can be inserted with pre- and
      post-JDK 9 behavior.
Change-Id: I96f027640c59d3357e8dcf656626d1601bfef861
2022-05-11 21:55:24 +00:00
Treehugger Robot
a09c684e27 Merge "Remove all_product_makefiles" 2022-05-11 18:31:14 +00: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
Jeongik Cha
26e9dd30a4 Remove -j1 for aidl-freeze-api
Because bpmodify is safe in multi-process env.

Bug: 190577319
Bug: 229413853
Test: aidl-freeze-api
Change-Id: Ie47afc25e2259bbcbbff50f98fa9d36887558d27
2022-05-11 01:25:19 +00: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
8ccac5198d Merge "Add function for flattening 2d lists" 2022-05-10 05:26:03 +00:00
Treehugger Robot
4890a4ea35 Merge "Temporary hack for making T->S downgrade work" 2022-05-10 04:23:32 +00:00
Kelvin Zhang
9a698e6a9f Temporary hack for making T->S downgrade work
Downgrade OTA was broken because generic_ramdisk was removed from boot
partition in android T. Neither does O6 have init_boot. O6 also doesn't
include generic ramdisk in vendor boot, so no way for otatools to locate
contents of generic ramdisk. As a hack, omit boot partition timestamp if
we can't find ramdisk.

Test: generate T->S downgrade OTA for O6
Bug: 231656318
Change-Id: I9f5359462332aadadc324348873a3a4b2b126068
2022-05-09 10:20:52 -07:00
Treehugger Robot
46c4bb37d1 Merge "Disable verity for VABC updates on android R" 2022-05-06 00:03:20 +00: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
Treehugger Robot
1ef63b944e Merge "envsetup.sh: fix adb tab completion" 2022-05-05 07:52:42 +00:00
Kelvin Zhang
a9a87ec204 Disable verity for VABC updates on android R
Bug: 230277030
Test: th
Change-Id: I2872c490c852fb7d3784721e191ece80b4b1fd58
2022-05-04 16:45:14 -07: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
Mårten Kongstad
cb5c73fd9e envsetup.sh: fix adb tab completion
The adb module has been moved from system/core to packages/modules/adb.
Update the path to the adb tab completion script accordingly.

Also teach envsetup.sh to complain if completion files are not found.

Test: manual: adb tab completion works
Test: source build/envsetup.sh && declare -F _adb
Change-Id: I7d6fda3813b95e64de7b1953675f66659e750c31
2022-05-04 14:47:20 +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
Treehugger Robot
7b53ae67f1 Merge "Only enable zucchini if configuration file exists" 2022-05-04 02:39:39 +00:00
Treehugger Robot
83b8158d3e Merge "Adding -j1 for aidl-freeze-api" 2022-05-04 01:15:38 +00: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
Håkan Kvist
3db1ef61de Only enable zucchini if configuration file exists
Only enable zucchini if configuration file zucchini_config.txt exits
in target files and version in source and target is the same.

Without this patch zucchini would be enabled if configuration file
was missing from both target files.

Bug: 231204699
Test: Run ota package generation with zucchini_config.txt missing from
      both source and target zips. Confirm that zucchini is disabled.
Change-Id: Ia34998fd911d5860b38fe49fa5a88056a22d661e
2022-05-03 13:00:32 +02:00
Treehugger Robot
98050a4e97 Merge "Expose GetRamdiskFormat and use in ota_utils.py" 2022-05-03 08:27:35 +00:00
Treehugger Robot
d9e0788ee7 Merge "Merge identical key/val pairs in dynamic partition info" 2022-05-03 02:37:34 +00:00
Jeongik Cha
9c376b4ec8 Adding -j1 for aidl-freeze-api
bpmodify isn't safe for multi processes env because it doesn't use any
lock mechanism even with -w option(in-place change)

So, added -j1 option as a temp solution.

Bug: 190577319
Bug: 229413853
Test: run aidl-freeze-api with -j1
Change-Id: I7fabfa1224ea0bb8d71538f4c8012255df28a3e8
2022-05-03 01:51:06 +00:00
Treehugger Robot
7a79a27356 Merge "Add 33.0 to PLATFORM_SEPOLICY_COMPAT_VERSIONS" 2022-05-03 00:32:17 +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
TJ Rhoades
6f488e9e33 Expose GetRamdiskFormat and use in ota_utils.py
Some OTA files may have additional OTA props; when this is being computed within
ota_utils.py -> ComputeRuntimeBuildInfos, the ramdisk type needs to be passed into
PartitionBuildProps.FromInputFile as not all ramdisk may still use gzip. This check
is already defined in common.py, so this change also exposes the function GetRamdiskFormat.

Bug: 231075507

Signed-off-by: TJ Rhoades <tjr@microsoft.com>
Change-Id: If1b93b887990f0d90df2c6003122821c1e66a1ac
2022-05-02 13:19:49 -07:00
Kelvin Zhang
6a683ce02b Merge identical key/val pairs in dynamic partition info
We might add new values to dynamic_partition_info.txt, so some kind of
generic fallback mechanism is needed. If keys are different, we need to
decided on a case-by-case basis which side takes precedence. For
example, Virtual AB requires vendor support, so vendor side takes
precedence. VABC on T+ devices are implemented entirely in system, so
system/framework side takes precedence.

Bug: 230876542
Test: th
Change-Id: I67747368547d3ef3e29ad64f8f818ef4c5896246
2022-05-02 12:19:45 -07:00
Daniel Norman
d3eb2e30dc Merge "Infers custom vendor partitions." 2022-05-02 16:25:58 +00: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
Daniel Norman
679242b877 Infers custom vendor partitions.
Rather than hardcoding a list of allowed vendor partitions, we accept
anything in the vendor target files that is not a framework partition.

Also extend support for inferred misc_info keys when the device uses
SYSTEM/product or SYSTEM/system_ext.

Test: test --host releasetools_test
Test: Use to merge a device with a custom IMAGES/*.img in the vendor
      build, and SYSTEM/system_ext in the system build.
Bug: 225902565
Change-Id: I638c0f9c019357150516ea6c208ecd60c03c450f
2022-04-29 15:07:48 -07:00
Steven Moreland
2b9eda69aa Merge "finalization: AIDL_FROZEN_REL" 2022-04-29 18:39:18 +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