Commit Graph

5393 Commits

Author SHA1 Message Date
Janis Danisevskis
7dde1e4004 Merge "The build related changes for Secure Clock and Shared Secret functionalities." am: 0ce3a40bf8 am: 3b55e031cd am: cf4ad11544
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1519849

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ic597e60c0fe3ccad109aed17d45783a811166e56
2021-01-15 13:55:17 +00:00
Treehugger Robot
b47dcf7f0d Merge "Adjust the double loadable check" 2021-01-15 02:22:09 +00:00
Jiyong Park
423e37873b API availability should be checked using __builtin_available
This change turns -Wunguarded-availability option which enforces calls
to APIs which are introduced after the min_sdk_version of the
compliation unit to be guarded with __builtin_available check. For
example, let's assume that we have foo() which was introduced with API
level 30.

void foo() __INTRODUCED_IN(30);

Then if foo() is called for a module whose min_sdk_version is less than
30, say 26, it should be called as below:

if (__builtin_available(android 30, *)) {
  foo();
} else {
  // fallback impl
}

For modules whose min_sdk_version is >=30, the guard is not required.

Bug: 150860940
Bug: 134795810
Test: m

Change-Id: I084148b9a051350626a37cb394daa4398b7332d5
2021-01-15 09:43:35 +09:00
Treehugger Robot
ee8ae11c0f Merge "Must use vendor variant for health storage AIDL HAL" 2021-01-14 22:22:08 +00:00
Chris Li
46cad069d1 Revert "To use same default for the nightly builds."
This reverts commit b063dc4221.

Reason for revert: DroidMonitor-triggered revert due to breakage https://android-build.googleplex.com/builds/quarterdeck?branch=git_master&target=crosshatch-userdebug&lkgb=7080774&lkbb=7082597&fkbb=7080869, bug 177549474

Test: make
Change-Id: I8b6cf3b56fddde9832e1428a3d1aef00f19637fb
2021-01-14 13:37:54 -08:00
Yifan Hong
59d876d69b Merge "Must use vendor variant for health storage AIDL HAL" 2021-01-14 20:32:55 +00:00
Cindy Zhou
5d5cfc164d Build against cfi supported coverage lib
The change will detect if a module is compiled against cfi support, and
will usebuild the coverage build against the libprofile that supports cfi. This is to resolve compilation errors when
building against modules with cfi support.
Bug: 177098919
Test: forrest build for cf_x86_phone-userdebug_coverage http://go/forrest-run/L81700000786828933

Change-Id: I8e0421cdf1c6e499292cfa3457cefd3c42f13155
Merged-In: I8e0421cdf1c6e499292cfa3457cefd3c42f13155
2021-01-14 11:46:10 -08:00
Colin Cross
6c0a9f69e9 Merge "Remove global state from VNDK" 2021-01-14 18:31:06 +00:00
Janis Danisevskis
0ce3a40bf8 Merge "The build related changes for Secure Clock and Shared Secret functionalities." 2021-01-14 18:04:02 +00:00
Jiyong Park
0474e1f677 Adjust the double loadable check
The check no longer tracks private dependencies like stubImplDepTag and
staticVariantTag. It also doesn't do the check for double_loadable
libraries that are not depended on by a LLNDK library.

Bug: N/A
Test: m
Test: add 'double_loadable: true, gen_trace: true` to an aidl_interface
module. The build doesn't break.

Change-Id: Iccd1a9d445a48d03c373708ba1bdd34b9a7f152d
2021-01-14 18:29:47 +09:00
Chih-Hung Hsieh
a66a988708 Fix comment. am: b767f913f1 am: 94bdb905c9 am: 575999b9cb
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1549745

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ib964ff78ad7dce355985e3489b5e884026b6536e
2021-01-14 09:05:12 +00:00
Ryan Prichard
b35a85ee8b Switch platform EH unwinder to prebuilt LLVM libunwind
For the platform libc++ STL, remove the
-Wl,--exclude-libs,libunwind_llvm.a argument, which is redundant with
the same argument in deviceGlobalLdflags.

Bug: http://b/153025717
Test: device boots
Change-Id: Idd7791d52f74aab2d5f59419fb75f841fc29a2eb
2021-01-13 19:51:06 -08:00
Colin Cross
7821224d8e Remove global state from VNDK
Move the global lists of VNDK modules into boolean properties on the
modules themselves, and use the new SingletonModule functionality
to visit all modules and collect the list of modules with the properties
set.

Bug: 176904285
Test: all soong tests
Test: m checkbuild
Test: compare Soong outputs
Change-Id: Icf7e2f8f190a517d30f0780e98762bc0084ddb24
2021-01-13 16:44:32 -08:00
Yifan Hong
78d0f4880c Must use vendor variant for health storage AIDL HAL
Test: mmma hardware/interfaces/health/storage
Bug: 177470478
Change-Id: Iae8dc547d68ecb528c0eb9684353267c1dd30459
Merged-In: Iae8dc547d68ecb528c0eb9684353267c1dd30459
2021-01-13 16:11:45 -08:00
Yifan Hong
caaef4d275 Must use vendor variant for health storage AIDL HAL
Test: mmma hardware/interfaces/health/storage
Bug: 177470478
Change-Id: Iae8dc547d68ecb528c0eb9684353267c1dd30459
2021-01-13 16:07:37 -08:00
Chih-hung Hsieh
863faf6e6c Merge "To use same default for the nightly builds." am: 66f7fdd1c8 am: 10850c9de7 am: c98dc51ae0
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1546617

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I3d49935dc0b7fb70107a2211a7fac2d961643060
2021-01-13 23:01:16 +00:00
Chih-Hung Hsieh
b767f913f1 Fix comment.
Test: make
Change-Id: I6c69549cb873e1d160ec6d590749361dc1a291dd
2021-01-13 13:24:15 -08:00
Chih-hung Hsieh
66f7fdd1c8 Merge "To use same default for the nightly builds." 2021-01-13 21:22:48 +00:00
Orion Hodson
3264c90068 Merge "Remove remaining libnativehelper implicit includes" am: 62555ffa5a am: 02d9f55b5b am: 448a038a4d
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1371943

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ib9e4a808dc8d72c03232850374708164a08b2915
2021-01-13 07:46:01 +00:00
Orion Hodson
62555ffa5a Merge "Remove remaining libnativehelper implicit includes" 2021-01-13 06:11:03 +00:00
Colin Cross
afeacbb1ce Merge changes Ib29ede45,I1b2bfdfb am: 2bcb4940bb am: 0968f0b55e am: b892007c84
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1541225

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I38cdae92656ef4304cda49eb7da36d95e00ef90b
2021-01-12 22:25:08 +00:00
Evgenii Stepanov
70b23f8fd4 Merge "Include/exclude lists for memtag_heap sanitizer." am: e7c39a5da4 am: 40ab27f081 am: e03a8aefb8
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1540685

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I5629e73f4fed9db72fb08026dbd4efcedb51336e
2021-01-12 22:23:57 +00:00
Colin Cross
2bcb4940bb Merge changes Ib29ede45,I1b2bfdfb
* changes:
  Create LLNDK vendor variants when DeviceVndkVersion is not set
  Add a new SingletonModule type
2021-01-12 20:43:39 +00:00
Evgenii Stepanov
e7c39a5da4 Merge "Include/exclude lists for memtag_heap sanitizer." 2021-01-12 19:33:02 +00:00
Chirag Pathak
cfa220559d The build related changes for Secure Clock and Shared Secret functionalities.
Also restored sorting.

Test: N/A
Bug: b/171844725
Bug: b/168673523

Change-Id: I423e08cab38ef685fd9eb6a3c338e285de0e8757
2021-01-12 11:13:16 -08:00
Jiyong Park
b35a819834 __ANDROID_API__ tracks min_sdk_version
Previously, for cc_* modules, __ANDROID_API__ tracked the sdk_version
property. This however has caused a few number of problems:

1. It's confusing. __ANDROID_API__ has meant minSdkVersion. Therefore
the sdk_version property should mean minSdkVersion (since the macro
tracks the property). However, the introduction of the new
min_sdk_version property (which is currently for APEX) made this very
confusing. Also, this is not consistent with the java_* modules where
sdk_version means compileSdkVersion.

2. This is preventing go/android-future-symbols. The plan is to make the
APIs that are above the minSdkVersion available as weak symbols.
Previously those APIs had to be accessed via dlsym because they are
hidden behind the __ANDROID_API__ macro at build-time. To use make the
APIs visible at build-time, the module authors had to __ANDROID_API__
beyond their minSdkVersion. This is against the definition of
__ANDROID_API__.

To solve above problems, __ANDROID_API__ now correctly tracks
min_sdk_version. In addition, min_sdk_version now defaults to
sdk_version. Therefore, most of the modules that don't set
min_sdk_version aren't affected by this change.

Bug: 163288375
Test: m
Change-Id: I645e6bb1234c27ae0a69b7b87a59206cfd350744
2021-01-13 03:12:24 +09:00
ChengYou Ho
8e5839c075 Create authsecret aidl interface am: 50ab3ff048 am: 9739215454 am: 355ab7a280
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1541204

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I2967ea71cbcdd168f07cd985556c7be739949996
2021-01-12 09:37:13 +00:00
Chih-Hung Hsieh
b063dc4221 To use same default for the nightly builds.
* disable misc-no-recursion check

Bug: 173736193
Test: make with WITH_TIDY=1
Change-Id: Ibdf90d520f67b26f7adade4698868a47afa01161
2021-01-12 00:55:28 -08:00
ChengYou Ho
50ab3ff048 Create authsecret aidl interface
Bug: 176107318
Change-Id: Ia2ddb148600fb846a41802b25ec73a7747720090
2021-01-12 06:01:15 +00:00
Evgenii Stepanov
7e1167549f Support "memtag_heap" sanitizer. am: 193ac2eb96 am: c93afaf7ee am: 580eb59fb1
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1538502

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I952769cd9b4c1f4348db18fbc6b1194c2e6e86fe
2021-01-12 03:43:44 +00:00
Evgenii Stepanov
4beaa0c964 Include/exclude lists for memtag_heap sanitizer.
Bug: b/135772972
Test: cc_test.go / TestSanitizeMemtagHeap
Change-Id: I263b23647f1874ae3024101dce1b07091c1c9403
2021-01-11 17:50:07 -08:00
Evgenii Stepanov
193ac2eb96 Support "memtag_heap" sanitizer.
Memtag_heap adds an ELF note that enables MTE heap tagging in
bionic/scudo. Ignored on non-executables. With diagnostic
(diag:{memtag_heap:true}) enables the SYNC mode, otherwise - ASYNC mode.

Memtag_heap defaults to set (with diag) on cc_test targets, unset
otherwise. Ignored on non MTE-compatible hardware.

Bug: b/135772972
Test: soong tests

Change-Id: I88fd0f159e609e17bd13487749980a1ba02cb91c
2021-01-11 21:50:39 +00:00
Cindy Zhou
16d02e9e7f Merge "Build against cfi supported coverage lib" 2021-01-11 19:33:16 +00:00
ChengYou Ho
35556e51b6 Create OemLock aidl interface am: 142b28a095 am: 33274bb3ec am: de21b6de15
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1542685

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I9807537e7eda2efca383f8babd6b14bd51611f4c
2021-01-11 07:43:35 +00:00
ChengYou Ho
142b28a095 Create OemLock aidl interface
Bug: 176107318
Change-Id: I31da15e7aedfaafb1841de0fc8e81aed73405ae0
2021-01-11 05:57:07 +00:00
Cindy Zhou
7e82baa8fe Build against cfi supported coverage lib
The change will detect if a module is compiled against cfi support, and
will usebuild the coverage build against the libprofile that supports cfi. This is to resolve compilation errors when
building against modules with cfi support.
Bug: 177098919
Test: forrest build for cf_x86_phone-userdebug_coverage http://go/forrest-run/L81700000786828933

Change-Id: I8e0421cdf1c6e499292cfa3457cefd3c42f13155
2021-01-10 06:35:48 -08:00
Treehugger Robot
74f08f9b44 Merge "Update comments for (vendor|product)_available" am: 4ba271573d am: 428410f284 am: c08535a83b
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1542686

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: If0e5dc0279f54de3b5fda1e5eee588240f0862b1
2021-01-08 21:38:07 +00:00
Treehugger Robot
4ba271573d Merge "Update comments for (vendor|product)_available" 2021-01-08 20:48:15 +00:00
Kris Alder
7a4f30005a Merge "add options for LibFuzzer, HWASan, and ASan to fuzz_config" am: 4803765257 am: 73fb162a6e am: 28fd479588
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1542043

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ic97e9d59e340fe19c274c93c800ef616aac1f274
2021-01-08 17:55:17 +00:00
Ivan Lozano
0000a41830 Merge "Refactor CC to prep for Rust sanitizable modules." am: 65f7312db0 am: 09e17772e3 am: f5fd6bd02e
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1527233

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I3af612b60d961dee88accfbb726fcdda29d45cdf
2021-01-08 17:54:56 +00:00
Kris Alder
4803765257 Merge "add options for LibFuzzer, HWASan, and ASan to fuzz_config" 2021-01-08 17:06:28 +00:00
Ivan Lozano
3968d8f678 Refactor CC to prep for Rust sanitizable modules.
Adds a PlatformSanitizable interface which both CC and Rust can
implement so that the sanitizer mutators in CC can sanitize Rust
shared/static libraries appropriately.

Bug: 147140513
Test: m nothing
Change-Id: Ib31103b6c4902a4d5df2565c0d7c981298d100a3
2021-01-08 08:53:46 -05:00
Justin Yun
0b1db6d5e9 Update comments for (vendor|product)_available
As we replaced '(vendor|product)_available: false' with
'vndk.private: true', update the soong comments with it.

Bug: 175768895
Test: na
Change-Id: Iaa08d0caf2995d2327443e156abe8448c4e500c5
2021-01-08 15:22:34 +09:00
Treehugger Robot
b0c3fd7a0e Merge "Do not read 'vendor_available: false'" am: 86cc40a74c am: d2279b4421 am: 49f37c378d
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1541272

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I5cec2463cb34c06838e191f2a721978154c6b460
2021-01-08 01:27:50 +00:00
Treehugger Robot
2d349e4514 Merge "Implement fake vendor snapshot" am: 56bfef1032 am: a64ac34c21 am: 087944d6e4
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1538640

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I08fc4e8479f49f595467890407f3d2e057294202
2021-01-08 01:27:08 +00:00
Treehugger Robot
4a4432ed0e Merge "Remove redundant snapshot functions" am: 42beaf6d93 am: a2461dae24 am: 03dca72f33
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1541207

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I6c24183bb6fdafc0736377b2062aa5a2cd4da129
2021-01-08 01:26:55 +00:00
Colin Cross
b5f6fa678d Create LLNDK vendor variants when DeviceVndkVersion is not set
The LLNDK vendor variants need to exist even when the VNDK is not
being used in order for the next patch to list them once the global
maps are removed.

Bug: 176904285
Test: m checkbuild
Change-Id: Ib29ede455d5b6a4b7d3f4685db8fba6d32025314
2021-01-07 17:19:27 -08:00
Treehugger Robot
86cc40a74c Merge "Do not read 'vendor_available: false'" 2021-01-08 00:57:35 +00:00
Treehugger Robot
56bfef1032 Merge "Implement fake vendor snapshot" 2021-01-08 00:24:51 +00:00
Treehugger Robot
42beaf6d93 Merge "Remove redundant snapshot functions" 2021-01-08 00:24:27 +00:00