Commit Graph

26184 Commits

Author SHA1 Message Date
Treehugger Robot
222b4ab071 Merge "Use BOARD_API_LEVEL to define ro.board.api_level" 2021-04-08 00:15:06 +00:00
Hridya Valsaraju
b39ec7084a Add a build flag to turn on debugfs restrictions
Starting with Android R launched devices, debugfs cannot be mounted in
production builds. In order to avoid accidental debugfs dependencies
from creeping in during development with userdebug/eng builds, this
patch introduces a build flag that can be set by vendors to enforce
additional debugfs restrictions for userdebug/eng builds. The same flag
will be used to enable sepolicy neverallow statements to prevent new
permissions added for debugfs access.

Bug: 184381659
Test: make with/without PRODUCT_SET_DEBUGFS_RESTRICTIONS
Change-Id: I9aff974da7ddce9bf1a7ec54153b161527b12062
2021-04-07 16:47:59 -07:00
Ivan Lozano
ae2274b5a2 Add Rust vendor image support to Make.
This adds the requisite Make logic to handle Rust vendor modules.

Bug: 184042776
Test: Example cc_library vendor module can depend on rust_ffi_shared.
Test: Example rust_library vendor-only module compiles.
Change-Id: Ib5ef6b403ca7e19a2aac9b77ff08b051425ea019
2021-04-07 16:25:55 -04:00
Rupert Shuttleworth
90eeff54ea Merge "Mark prop file as writable before writing to it." 2021-04-07 12:40:34 +00:00
Treehugger Robot
d641585484 Merge "Builds boot-test-harness.img, if INSTALLED_BOOTIMAGE_TARGET." 2021-04-07 02:05:36 +00:00
Rupert Shuttleworth
3993af706c Mark prop file as writable before writing to it.
Test: Fixes USE_BAZEL=1 m builds.
Change-Id: I1e0fb448049ff21cd32541af56e856442bc25fa7
2021-04-07 01:22:00 +00:00
Ryan Prichard
5727dc3dd1 Merge "Stop linking against libatomic" 2021-04-06 21:43:33 +00:00
Jakub Kotur
f8735bc4f3 Add test configuration for rust benchmarks.
Same as rust tests with additional parameter.

Test: atest <module with rust_benchmark defined>
Bug: 155309706
Change-Id: Ia734c17bcb0776bbc628ad1e7257a1b38cdb2e4e
2021-04-06 12:41:10 +02:00
Yo Chiang
bebc8a35ef Merge "Refactor vendor_boot v4 build logic and add more checks" 2021-04-06 09:02:14 +00:00
Bowgo Tsai
1ed0fd54dc Builds boot-test-harness.img, if INSTALLED_BOOTIMAGE_TARGET.
Similar to commit Ic887ea93d4c5181eca0f82c3cdf3ce3b72f4c185
for boot-debug.img, we should also only build boot-test-harness.img
if boot.img exists.

Bug: 184365242
Test: tree hugger

Change-Id: Ie0d9e460905d488e418cf4ee1bd44e6e7c58470d
2021-04-06 08:20:15 +00:00
Justin Yun
07ceaa71c1 Use BOARD_API_LEVEL to define ro.board.api_level
GRF devices must define the API level of which the SoC is first
shipped by setting BOARD_SHIPPING_API_LEVEL. As this is a permanent
value, vendors may not change this value even if they implement new
features under the GRF policy.

BOARD_API_LEVEL can be optionally defined in this case to manually
set the api level of the vendor implementation.
The current api level will be set to `ro.board.api_level` property.

Bug: 176950752
Test: atest --host post_process_props_unittest
Change-Id: Ib126c1a622ded9848650f3f60c0f15005867272d
2021-04-06 16:33:07 +09:00
Yo Chiang
b5bff9a4d3 Merge "Fix Makefile formatting" 2021-04-06 07:27:44 +00:00
Stephen Hines
d49aa55cf1 Remove all unused, legacy FDO build rules
There are no current users of this feature. All remaining references are
legacy scripts that aren't actually in-use today.

https://source.corp.google.com/search?q=BUILD_FDO_INSTRUMENT%20-file:build%2F
https://source.corp.google.com/search?q=LOCAL_FDO&ct=os&sq=package:%5Eandroid$

Test: build
Change-Id: I86ff6531a0868fb8e30741f0d04de1739fba4586
2021-04-05 17:13:00 -07:00
Stephen Hines
39e9090e7e Remove legacy host shared library linking with gcov
Test: build
Change-Id: I5f701edcfa9021f75659b6be4790119e6baca51c
2021-04-05 16:29:57 -07:00
Yi-Yo Chiang
9c461365de Fix Makefile formatting
Add indent to if-block so my text editor stop complaining.

Test: Presubmit
Change-Id: Ie3f4dbd114d894453bf46a91b47d5d0450e5e1e7
2021-04-05 12:49:17 +08:00
Yi-Yo Chiang
6c7e02e74e Support installing modules.options file
Usage:
```
BOARD_(VENDOR|VENDOR_RAMDISK)_KERNEL_MODULES_OPTIONS_FILE(_ver) := \
  $(wildcard <path of modules.options in source tree>)
```

Then the modules.options would be installed as
(vendor_dlkm|vendor_ramdisk)/lib/modules/(ver/)modules.options.

Also fix bug where the kernel version subdir is missing when generating
modules.blocklists file.

Bug: 182417593
Bug: 184238876
Test: Create a options file with incorrect syntax, verify build fails
Test: Verify the new macro indeed installs the options file
Change-Id: I7ba56e9dd8d73055bc276446c385a8d79080c2a6
2021-04-04 14:25:47 +00:00
Yi-Yo Chiang
1519d4351e Refactor vendor_boot v4 build logic and add more checks
Add more checks around BOARD_BOOT_HEADER_VERSION in board_config.mk.

Refactor generation logic of vendor_boot ramdisk fragments.
Consolidate initialization and validation check to its own section.
Adjust some variable names and initialization sequence so the follow-up
change can land more cleanly.
Rename variable name "dir" so that it don't collide with the Makefile
function "$(dir ...)".

Bug: 183395459
Test: Presubmit; Change should be no-op with respect to build artifacts.
Test: Modify BoardConfig of CF and m dist. Verify the vendor_boot.img
  with unpack_bootimg.
Change-Id: I8785c40dd9f87f3797a56ada93e65939d27d0e9b
2021-04-04 20:40:17 +08:00
Ryan Prichard
663b98bbab Stop linking against libatomic
The __atomic_* library functions are now part of the compiler-rt
builtins library:

https://android-review.googlesource.com/c/toolchain/llvm_android/+/1625025

Bug: http://b/153025717
Test: treehugger
Change-Id: Iebd5eaf17f8559696b6d6e2e0dd782f77b6bcab5
2021-04-02 21:05:48 -07:00
Yifan Hong
3e061bd1c8 Fix builds with enforce_vintf_kernel + !kernel
If a build has PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS
set (which is set for P+ builds) but no kernel is built,
the original code emits a warning, but it won't be able
to build target files package because it depends on
kernel_configs.txt and kernel_version.txt without any rules.

Properly clear BUILT_KERNEL_CONFIGS_FILE and BUILT_KERNEL_VERSION_FILE
so that it won't be depended on in this case.

Bug: 184128489
Test: TH + forrest

Change-Id: I4b8fbd117f114555cf606e3c3b48eb564dbe786b
2021-04-02 16:19:01 -07:00
Elliott Hughes
4ac1818cde Merge "Remove honggfuzz support." 2021-04-02 20:47:05 +00:00
Alexander Smundak
14e6f9c708 Merge "Address reviewer comments from the previous commits" 2021-04-02 18:07:47 +00:00
Elliott Hughes
a445ef6cde Remove honggfuzz support.
Everyone's on libFuzzer now.

(The "fuzz" referred to in base_system.mk was removed in Android 11, but
this reference was left lying around.)

Bug: http://b/184301511
Test: treehugger
Change-Id: I6fe0f2c37e014647802279a656d2c6c9625b7a44
2021-04-02 10:24:48 -07:00
Sasha Smundak
357e37c4d4 Address reviewer comments from the previous commits
Fixes: 170637441
Test: rbcrun build/make/tests/run.rbc
Change-Id: Ifc16fe02d96bc3a4c5562b74da8c1e7b393dc000
2021-04-01 23:07:06 -07:00
Ryan Prichard
f56f074e06 Merge "Revert^2 "Switch platform-NDK unwinder to LLVM libunwind.a prebuilt"" 2021-04-01 22:42:33 +00:00
Treehugger Robot
8a42f673ac Merge "Adding bootimage_test_harness artifact to droidcore" 2021-04-01 13:51:50 +00:00
Ryan Prichard
6d74870a67 Revert^2 "Switch platform-NDK unwinder to LLVM libunwind.a prebuilt"
This reverts commit 9cd4aff304.

Bug: http://b/153025717
Test: treehugger
Change-Id: I548ca3dd5bdddb52199b4b5e1455832ee1d28125
2021-03-31 15:33:35 -07:00
Alexander Smundak
fe5799af6b Merge changes from topic "product_config_star"
* changes:
  Product configuration in Starlark support files.
  Roboleaf product configuration runner
2021-03-31 18:28:50 +00:00
Ryan Prichard
cf5487e07f Merge "Revert "Switch platform-NDK unwinder to LLVM libunwind.a prebuilt"" 2021-03-31 05:29:51 +00:00
Yi-Yo Chiang
f35afe97b1 Mark PRODUCT_CHECK_ELF_FILES as obsolete
Follow-up of aosp/1655468.

Bug: 149715904
Test: Presubmit
Change-Id: I3998c7356e3a41adaa00ab3d1d2c2ec66e2e37d7
2021-03-31 04:25:55 +00:00
Ryan Prichard
9cd4aff304 Revert "Switch platform-NDK unwinder to LLVM libunwind.a prebuilt"
This reverts commit 85a1213232.

Reason for revert: b/184095989

Change-Id: I4643a7bb2fea6411d7c673ec4017fdbab6070b9d
2021-03-31 03:25:26 +00:00
Bowgo Tsai
42131496c8 Adding bootimage_test_harness artifact to droidcore
Currently bootimage_test_harness is only built on a few targets
on release branches. However, we might have a last minute build
breakage on release branches as bootimage_test_harness is not
built on dev branches. Moving it to droidcore so we can have more
completed build coverage on pre-submit/post-submit builds.

Bug: 183865297
Test: `make` then check $OUT
Change-Id: I496609401a9444706726256d2f7b45c6bb69ee94
2021-03-31 03:11:14 +00:00
Dan Albert
ee90c8856e Merge "Switch platform-NDK unwinder to LLVM libunwind.a prebuilt" 2021-03-30 21:44:35 +00:00
Nicolas Geoffray
01545ef795 Merge "Preopt apps with updatable boot classpath too." 2021-03-30 13:40:57 +00:00
Yo Chiang
08b0004c9c Merge "Remove obsolete var PRODUCT_CHECK_ELF_FILES" 2021-03-30 08:54:24 +00:00
Yo Chiang
3060ba5048 Merge "Revert^2 "Add option to allow product makefiles to skip building s..."" 2021-03-30 06:29:09 +00:00
Ulya Trafimovich
03befa00fe Don't enforce <uses-library> checks if dexpreopt for apps is disabled.
Otherwise the check fails, as it depend on non-existent dexpreopt.config
files. This CL fixes broken build cf_x86_phone-userdebug_coverage.

Bug: 183931403
Bug: 132357300
Test: forrest build for cf_x86_phone-userdebug_coverage.
Change-Id: I6f977c1e0c2d2160b1813d2d1c36459f0641235e
2021-03-29 15:01:05 +01:00
Nicolas Geoffray
5bfe9267f8 Preopt apps with updatable boot classpath too.
Test: m
Test: egrep 'ethernet-service[^ ]*odex' out/soong/build.ninja \
    | grep updatable
  # is empty
  egrep 'oat-file=[^ ]*Gallery2[^ ]*odex' out/soong/build.ninja \
    | egrep -o 'Xbootclasspath:[^ ]*' \
    | sed 's/:/\n/g' \
    | grep updatable_bootjars
  # lists updatable boot jars
  egrep -o 'Xbootclasspath:[^ ]*' \
      -o `find out -name dexpreopt.sh | grep Dialer` \
    | sed 's/:/\n/g' \
    | grep updatable_bootjars
  # lists updatable boot jars
Bug: 178467404
Change-Id: Ia5d4e59bac3e32bc77f1a0ab9e1abb18768a7ee7
2021-03-29 14:03:12 +01:00
Yi-Yo Chiang
875442fde4 Remove obsolete var PRODUCT_CHECK_ELF_FILES
After aosp/1184262 is submitted, PRODUCT_CHECK_ELF_FILES is deprecated
and nobody is using this variable anymore.

Bug: 149715904
Test: Presubmit; Should be noop
Change-Id: Iaf4a6ae1fe4062684a9699b7ef999030ff483e16
2021-03-29 18:35:51 +08:00
Bowgo Tsai
bc50bb88e2 Merge "GKI: put debugging resources under fisrt_stage_ramdisk subdir." 2021-03-29 02:25:12 +00:00
Julien Desprez
c2e66a69ca Merge "Mark the unit tests module itself as its component" 2021-03-25 21:35:29 +00:00
Ulyana Trafimovich
86755e4ac0 Merge "Add config that controls if updatable BCP is included in dexpreopt." 2021-03-25 10:13:45 +00:00
Yo Chiang
e86bab474b Revert^2 "Add option to allow product makefiles to skip building s..."
This reverts commit ccfea17fb7.

Reason for revert: Original bug was resolved by updating branch config

Change-Id: I2327092261a2147fa8f2be3d878db04228e65511
2021-03-25 10:12:28 +00:00
Bowgo Tsai
099a7c40a7 GKI: put debugging resources under fisrt_stage_ramdisk subdir.
For consistency with android-11 GKI boot-debug.img, we should
put debug resources under the 'fisrt_stage_ramdisk' dir. This is
needed for devices with `androidboot.force_normal_boot=1` in the
kernel cmdline, where init will chroot into /fisrt_stage_ramdisk.

For devices without force_normal_boot, they still can use their
vendor_boot-debug.img for debugging purpose.

Bug: 183670217
Test: `make bootimage_debug`, then use unpack_bootimg and
      `lz4 -d -c ramdisk | toybox cpio -i` to unpack the ramdisk
      for inspection.
Change-Id: I0a79440dafd091141a1203a2c2c7be5bc1bfc836
2021-03-25 14:24:09 +08:00
Tianjie Xu
4b2242de5e Merge changes from topic "revert-1644988-nextgen-release-img-zip-cleanup-KPBTKCTROS"
* changes:
  Revert "Add option to allow product makefiles to skip building s..."
  Revert "Nextgen release: Don't build super_empty.img"
2021-03-25 05:13:52 +00:00
Tianjie Xu
ccfea17fb7 Revert "Add option to allow product makefiles to skip building s..."
Revert submission 1644988-nextgen-release-img-zip-cleanup

Reason for revert: b/183654818
Reverted Changes:
I2474e5fd6:Nextgen release: Don't build super_empty.img
I549439528:Add option to allow product makefiles to skip buil...

Change-Id: I711d1c288eed17686b048144d8d41c0fdd5cd8e1
2021-03-25 05:00:12 +00:00
Treehugger Robot
9ae28a750a Merge "Add filter to some boolean variables" 2021-03-24 23:20:53 +00:00
Julien Desprez
19275640fb Mark the unit tests module itself as its component
This will help to try out code coverage reporting.

Change-Id: I52953037cb1482d88102d4bf8719ec7192dfaa97
Test: presubmit
Bug: 172962242
2021-03-24 20:11:49 +00:00
Ulyana Trafimovich
c79c96ae43 Merge "Add PRODUCT_BROKEN_VERIFY_USES_LIBRARIES." 2021-03-24 15:18:42 +00:00
Ulya Trafimovich
b9f4306adf Add config that controls if updatable BCP is included in dexpreopt.
For now the config is always set to false (updatable boot jars are
excluded), but this may change in the future.

Bug: 178467404
Test: lunch aosp_cf_x86_64_phone-userdebug && m
Change-Id: I1b45a89748e065a29130efbf8b54dddfae69e48b
2021-03-24 10:51:46 +00:00
Inseob Kim
ce0671f057 Merge "Add WithDexpreopt soong variable" 2021-03-24 06:20:03 +00:00