Commit Graph

25714 Commits

Author SHA1 Message Date
android-build-team Robot
3f95724bcb Version bump to RQ1A.201205.008 [core/build_id.mk]
Change-Id: I6c6daca45f2fde2eb8fcb7718dc98df23e3ee793
2020-10-31 00:26:00 +00:00
Yifan Hong
d2ae9989cd Merge changes I7bd61f74,Ia84e604a,I75e13b92,I0db2af20,I4feac435
* changes:
  Mount generic ramdisk as readwrite.
  Do not put GENERIC_KERNEL_CMDLINE in recovery image.
  Move common code out of the conditional.
  Remove device-specific bits if recovery_as_boot
  Do not assume GKI just with vendor_boot.
2020-10-30 16:52:28 +00:00
Paul Duffin
58d6758ea1 Merge "Move boot jars package check to Soong" 2020-10-30 10:06:46 +00:00
Alistair Delva
38d49ca61a Merge "Allow flashing erofs system imgs" 2020-10-30 06:41:25 +00:00
android-build-team Robot
22c21c1d7d Version bump to RQ1A.201205.007 [core/build_id.mk]
Change-Id: I1e30f275e0165ababa3db85859f3e1c8700d689e
2020-10-30 01:46:56 +00:00
Daniel Norman
b8d52a2fdc Finds APK shared UID violations when merging target files.
This involved moving the find-shareduid-violation.py script to
releasetools to simplify the cross-tool usage. This new location aligns
this script with other similar python host tools.

In a future change this violation file will be used to check for
shared UID violations across the input build partition boundary.

Bug: 171431774
Test: test_merge_target_files
Test: Use merge_target_files.py to merge two partial builds,
      observe shared UID violations file contents in the result.
Test: m dist out/dist/shareduid_violation_modules.json
      (Checking that existing behavior in core/tasks is presereved)
Change-Id: I7deecbe019379c71bfdbedce56edac55e7b27b41
2020-10-29 09:33:26 -07:00
Paul Duffin
bbd4fae4d7 Move boot jars package check to Soong
Passes the SKIP_BOOT_JARS_CHECK property through to Soong and removes
the boot jars check. Moves the check_boot_jars directory containing the
script and data file into build/soong/scripts.

Test: m check-boot-jars - for failing and passing cases
      verified manually that apart from path differences the same
      files (same check sum) were checked in both old make checks and
      the new Soong ones
Bug: 171479578
Change-Id: I61c128806065befce239bbdd5491567827e1b2f5
2020-10-29 11:07:55 +00:00
Yo Chiang
e73c5a074d Fix missing required dependency caused by circular dependency
Fix a bug where if module A requires module B, and for whatever reason
module A and B have some common installed files, then all required
dependencies of the common files would be lost.

For example:
```
 # A requires B
ALL_MODULES.A.INSTALLED := a
ALL_MODULES.B.INSTALLED := a b
```

Right now the build system wouldn't generate any dependency for `a`.
However the correct behavior should be: `a` has a order-only dependency
on `b`.

Bug: 157444528
Test: Check generated build-*.ninja
Change-Id: Iec60231f6597ec46077393d1defa109b9c07b208
2020-10-29 10:48:17 +00:00
Yifan Hong
78b55b2244 Mount generic ramdisk as readwrite.
With this change, first stage init can prepare and move
resources to accomodate devices with and without a dedicated
recovery partition.

Test: build with and without recovery partition, and manually inspect
Bug: 171512004

Change-Id: I7bd61f74c16ee77f3f05dc208e0f3cfe81e302b0
2020-10-28 17:05:18 -07:00
Yifan Hong
78860164d0 Do not put GENERIC_KERNEL_CMDLINE in recovery image.
The GENERIC_KERNEL_CMDLINE should only be in the generic boot image.
If device uses recovery-as-boot, it never uses generic boot image
because on devices with generic boot image, recovery resources are
moved to vendor_boot instead.

Bug: 171512004
Test: builds

Change-Id: Ia84e604a8ded28af39c7f1861ff5d3b3af55849f
2020-10-28 17:05:18 -07:00
Yifan Hong
c56931c173 Move common code out of the conditional.
Test: builds
Change-Id: I75e13b929dbdb31785a59898579ed14bcc3eef60
2020-10-28 17:05:18 -07:00
Yifan Hong
3941a876de Remove device-specific bits if recovery_as_boot
On legacy devices (launched with R and below), if device:
- has a vendor_boot partition, and
- uses recovery_as_boot

Then, when building the recovery/boot partition, the
device-specific bits, including dtb/kernel base/pagesize should
be moved to vendor_boot.

Previously, it is incorrectly assumed that A/B => recovery_as_boot.
In reality, we do have A/B devices with a dedicated recovery partition.

Note that for devices that uses GKI (BOARD_USES_GENERIC_KERNEL_IMAGE),
recovery_as_boot is never set to true. Instead, recovery resources
are moved to vendor_boot. On these devices, the conditional
'vendor_boot && recovery-as-boot' is always false. Hence:

- If the device has a dedicated recovery partition, it should use V3 header,
  and dtb/base/pagesize won't be in recovery header.
- If device does not have a dedicated recovery partition, the recovery
  image won't be built.

Test: builds
Change-Id: I0db2af20470cbe8a21044a984cccf264590aaccf
2020-10-28 17:05:18 -07:00
Yifan Hong
46aff099d2 Do not assume GKI just with vendor_boot.
This change ensures changes to GENERIC_KERNEL_CMDLINE only affects
devices that explicitly says it uses GKI/generic boot image.

In details, if the device has vendor_boot, but does not explicitly
specify that it uses GKI/generic boot image, do not include
GENERIC_KERNEL_CMDLINE in boot. boot cmdline is left empty
in this case.

The old logic:
- If device uses GKI *OR* has vendor_boot:
  boot uses GENERIC_KERNEL_CMDLINE, and do not include kernel base
  and pagesize.
  - If device has vendor_boot, INTERNAL_KERNEL_CMDLINE, kernel base
    and pagesize goes in vendor_boot.
- If device does not use GKI nor have vendor_boot:
  boot uses INTERNAL_KERNEL_CMDLINE, and includes kernel base and
  pagesize.

The new logic:
- If using GKI, boot uses GENERIC_KERNEL_CMDLINE. Remove kernel base
   and pagesize because they are device-specific.
- If not using GKI:
  - If building vendor_boot, INTERNAL_KERNEL_CMDLINE, base and
    pagesize goes in vendor_boot; boot does not have cmdline, base or
    pagesize.
  - Otherwise, put them in boot

Comparison of the code before and after:
- If device uses GKI,
  - For boot partition:
    - cmdline continues to be GENERIC_KERNEL_CMDLINE
    - kernel base and pagesize continues to be excluded
  - For vendor_boot partition:
    - cmdline continues to be INTERNAL_KERNEL_CMDLINE
    - kernel base and pagesize continues to be included
- If device does not use GKI:
  - If device has a vendor_boot partition:
    - For boot partition:
      * cmdline changes from GENERIC_KERNEL_CMDLINE to empty
      - kernel base and pagesize continues to be excluded
    - For vendor_boot partition:
      - cmdline continues to be INTERNAL_KERNEL_CMDLINE
      - kernel base and pagesize continues to be included
  - If device does not have a vendor_boot partition:
    - For boot partition:
      - cmdline continues to be INTERNAL_KERNEL_CMDLINE
      - kernel base and pagesize continues to be included

Test: builds
Bug: 171512004

Change-Id: I4feac435698f43ac299b430bff66147057865a62
2020-10-28 17:05:18 -07:00
Joseph Murphy
77c15cb2d4 Changes Robolectric test suite tag to its own value to enable filtering these in ATP.
Bug: b/157635117
Change-Id: I7748ccbef3dd44d1a4a79e9ded5182607c83a20b
2020-10-28 01:09:18 +00:00
Gao Xiang
961041ac80 Allow flashing erofs system imgs
Bug: 158339527
Test: build & boot
Signed-off-by: Gao Xiang <hsiangkao@redhat.com>
Change-Id: Ie74db8ebcd7214ffbec49d42b305b2f3ac2e8c9d
2020-10-28 01:24:39 +08:00
Jaewoong Jung
3b27e9104b Merge "Remove duplicate quotation marks in apkcerts list." 2020-10-26 19:05:00 +00:00
Yifan Hong
a7a900e256 Merge "Export BOARD_MOVE_RECOVERY_RESOURCES_TO_VENDOR_BOOT to Soong" 2020-10-24 01:08:16 +00:00
Jaewoong Jung
7b634d345d Remove duplicate quotation marks in apkcerts list.
Fixes: 160845661
Test: Modify dialer cert string && m apkcerts-list
Change-Id: I9da8dd70185057b2e13793dd14387223dc29b052
2020-10-23 14:02:16 -07:00
Dan Shi
e4d4188e4f Merge "Make *TS to include NOTICE file by default" 2020-10-23 16:09:35 +00:00
Martin Stjernholm
48d34d8ac0 Merge "Rename ART release APEX to com.android.art." 2020-10-23 10:03:24 +00:00
Dan Shi
413a53066b Make *TS to include NOTICE file by default
Bug: 170487545
Test: none
Change-Id: Ib3f726b847bc2123f0b564d0c3a8f5584720c021
2020-10-22 21:29:37 -07:00
android-build-team Robot
26eaef4b89 Version bump to RQ1A.201205.006 [core/build_id.mk]
Change-Id: I0e3913927f7487534b724ddf028d3f83b9028f5d
2020-10-22 21:15:39 +00:00
Dan Shi
0b8473591c Merge "Package host shared lib for art-host-tests" 2020-10-22 17:39:58 +00:00
Dan Shi
cb8655c3b9 Package host shared lib for art-host-tests
Bug: 169111770
Test: m art-host-tests
Change-Id: Ic5a9740977cd9a1f6bdfbbfef81116f7a3cf5e8a
2020-10-21 21:28:34 -07:00
Yifan Hong
21f97e27be Export BOARD_MOVE_RECOVERY_RESOURCES_TO_VENDOR_BOOT to Soong
Test: pass
Bug: 156098440
Change-Id: I84f26f7f12c53c0cc120c8122e75f68571794ac7
2020-10-21 15:44:03 -07:00
Tianjie Xu
f692346758 Merge "Generate partial ota update package if the board defines it" 2020-10-21 20:19:10 +00:00
android-build-team Robot
5d94291a87 Version bump to RQ1A.201205.005 [core/build_id.mk]
Change-Id: I2d2fd5069a2759b74ef32bec14f8d2b9213bbe12
2020-10-21 19:05:43 +00:00
Yifan Hong
ffb2a7f9da Merge "Build boot image if BOARD_KERNEL*_BOOTIMAGE_PARTITION_SIZE" 2020-10-21 18:34:31 +00:00
Julien Desprez
b4553b74d7 Merge "Remove the hosttestlib.jar as it shouldn't be needed" 2020-10-21 17:55:15 +00:00
Martin Stjernholm
c21bd0a42c Rename ART release APEX to com.android.art.
Test: See https://r.android.com/1457217
Bug: 169639321
Change-Id: Ib2e87f9ddb8ea5e7ceb2db0ea12566c0bd58ca75
Merged-In: Ib2e87f9ddb8ea5e7ceb2db0ea12566c0bd58ca75
2020-10-21 15:41:02 +01:00
Jingwen Chen
7d7f94547a symlink_outputs: Add .KATI_SYMLINK_OUTPUTS to build/make/core
Test: m
Bug: 160568334

Change-Id: Ie6fb4f16bb77845787d277857e17e6aac0a8c11a
2020-10-21 08:55:10 +00:00
Treehugger Robot
8d9added3c Merge "Add BUILD_BROKEN_ENFORCE_SYSPROP_OWNER" 2020-10-21 00:26:34 +00:00
Yifan Hong
ebe65f8c0a Build boot image if BOARD_KERNEL*_BOOTIMAGE_PARTITION_SIZE
Also gets the correct partition size and checks correctly.

Test: build aosp_arm64

Change-Id: I004e4b04d225d72db1904b983a6d03a916406085
2020-10-20 15:53:12 -07:00
Yifan Hong
9873891bd0 Merge "Do not build recovery-resource.dat if move_recovery_res_to_vendor_boot" 2020-10-20 22:26:15 +00:00
Tianjie
6bd3b1a7f1 Generate partial ota update package if the board defines it
Many partners have asked for platform support of system-only update.
So we config cuttlefish as an example to support the partial ota
updates. Also make such package available on the build server.
This allows continuous test to ensure the e2e update flow is working.

Bug: 170921953
Test: generate & apply a partial update, check output in presubmit
Change-Id: I79d0abeb1b2be18e6ff88f0455b6de6540a37794
2020-10-20 15:17:33 -07:00
Yifan Hong
3dd40ccebe Merge "Reland "Check system manifest against frozen data."" 2020-10-20 20:25:21 +00:00
Julien Desprez
8d5158fdf0 Remove the hosttestlib.jar as it shouldn't be needed
This jar is not needed anymore

Test: make cts
Bug: 171326035
Change-Id: Idb4a6ff0b848b3d813bc0aba97ce9214a9532f44
2020-10-20 13:22:43 -07:00
Yifan Hong
ef7a971ded Do not build recovery-resource.dat if move_recovery_res_to_vendor_boot
If recovery resources are moved to vendor_boot, it also means
there's no recovery image to install. Don't build
recovery-resource.dat in this case.

Test: builds with cuttlefish with GKI
Bug: 156098440
Change-Id: I86db08d2dede6af644afadac54ff8beb853f4933
2020-10-20 13:18:04 -07:00
Treehugger Robot
fd8dae609f Merge "Revert "Remove env-var-allowlist"" 2020-10-20 19:58:46 +00:00
Daniel Norman
6a93af91dc Merge "Removes usage of TARGET_NO_VENDOR_BOOT." 2020-10-20 17:18:01 +00:00
Yifan Hong
7a157b0319 Reland "Check system manifest against frozen data."
This reverts commit 8197702d73.

Test: lunch cf_x86_auto && m check-vintf-all 

Reason for revert: auto targets fixed in the same topic

Change-Id: I193416a4d0718e5790eb54e5c0674edc2d975632
2020-10-20 17:08:11 +00:00
Kousik Kumar
92f32615ed Revert "Remove env-var-allowlist"
Revert "Add -fdebug-compilation-dir option"

Revert submission 1461902-debug-compilation-dir

Reason for revert: "-Xclang" isn't being uniformly respected everywhere. For example, in ".S" compilations, when I pass `-Xclang -fdebug-compilation-dir=.", the assembler seems to be ignoring it and then inserting the `pwd` into the command, however when I pass "-fdebug-compilation-dir=.", it strips out the path to the current working directory.
This indicates that we need to update re-client's input processor so that we can pass -fdebug-compilation-dir=. without "-Xclang" and then remove `PWD` setting.
For now, I'll update this patch to pass both "-fdebug-compilation-dir=." and `PWD` and when RBE side fix is done, I'll remove `PWD` in a separate CL.

Reverted Changes:
Ib0f271e55:Add -fdebug-compilation-dir option
Ifa0592af5:Remove env-var-allowlist

Change-Id: I7c690b3e00d37dbcc8fbaa66dda49f39032be3ab
2020-10-20 05:52:49 +00:00
Yifan Hong
d7c6f4f966 Merge "Revert "Check system manifest against frozen data."" 2020-10-20 03:10:15 +00:00
Yifan Hong
ace5d21b67 Merge "Add BOARD_MOVE_GSI_AVB_KEYS_TO_VENDOR_BOOT" 2020-10-20 01:51:11 +00:00
Yifan Hong
8197702d73 Revert "Check system manifest against frozen data."
This reverts commit 843240c81a.

Reason for revert: breaks devices with cameraserver

Change-Id: Idedad49276fb928346cee68133e643602b79cd7a
Fixes: 171262706
2020-10-20 01:07:24 +00:00
android-build-team Robot
55ddfd84d3 Version bump to RQ1A.201205.004 [core/build_id.mk]
Change-Id: I95da9acd43b6ed9c2dbdad7a29e7b7477df409d0
2020-10-19 22:27:13 +00:00
Yifan Hong
fe386d15f8 Merge "Check system manifest against frozen data." 2020-10-19 21:24:29 +00:00
Inseob Kim
9d281d9271 Add BUILD_BROKEN_ENFORCE_SYSPROP_OWNER
In terms of sepolicy rules, every property should have an apporpriate
owner attribute, which can be one of: system_property_type,
product_property_type, or vendor_property_type. This will be enforced
for devices launching with S or later. Devices launching with R or
eariler can relax this by setting following under BoardConfig.mk:

BUILD_BROKEN_ENFORCE_SYSPROP_OWNER := true

See system/sepolicy/public/te_macros for more details.

Bug: 131162102
Test: system/sepolicy/tools/build_policies.sh
Change-Id: Iee05fc15beac1ccf61da4ea901a85b9d4068e0ca
2020-10-19 13:31:58 +09:00
Treehugger Robot
6a2135b6e6 Merge changes from topic "split_ramdisk"
* changes:
  Exclude board cmdline/dtb/pagesize/base in generic boot image
  Add BOARD_MOVE_RECOVERY_RESOURCES_TO_VENDOR_BOOT.
  Add BOARD_EXCLUDE_KERNEL_FROM_RECOVERY_IMAGE.
  Add GKI global variable.
2020-10-17 00:40:54 +00:00
Tianjie Xu
4df8556158 Merge "Make the ro.build.version.release consistent between device build prop & partition build prop" 2020-10-16 23:10:37 +00:00