Commit graph

96796 commits

Author SHA1 Message Date
Zhuoyao Zhang
a7df315755 Merge "Add an integration test" into main 2024-05-02 20:54:52 +00:00
LaMont Jones
dac6b97f63 Merge "Enable build flags in protobuf" into main 2024-05-02 19:51:01 +00:00
Treehugger Robot
b9ffad8376 Merge "Enable perfetto persistent tracing" into main 2024-05-02 19:29:08 +00:00
Treehugger Robot
c039204466 Merge "check-flagged-apis: suppress unused variable warning" into main 2024-05-02 19:01:48 +00:00
Treehugger Robot
83705ef7d1 Merge "check-flagged-apis: add support for method with parameters" into main 2024-05-02 18:59:48 +00:00
Zhuoyao Zhang
db666bcb0c Add an integration test
Add a test to verify that the parameters passed from the
envsetup.sh function are compatible with the actual tool
event logger implementation.

Note that this change adds support for extra logger arguments.
This enables calling the real logger binary with a 'dry run'
flag to avoid actual logging during test execution.

Test: atest rul_tool_with_logging_test
Bug: 331638854

Change-Id: I6b280c53baae03477d4f52f0084efb1f500bd5d0
2024-05-02 18:43:19 +00:00
Daniel Zheng
76f13d280c Merge "create_brick_ota: logic fix" into main 2024-05-02 18:10:51 +00:00
Treehugger Robot
7bff3a85f9 Merge "Add * support products and modules" into main 2024-05-02 18:07:48 +00:00
Daniel Zheng
7e4cc58f2d create_brick_ota: logic fix
ota_metadata should be initialized outside of the if block.

Bug: 3072303
Test: th
Change-Id: Iabe52be3557c71921586d960d8a8a91c33d5558b
2024-05-02 09:55:45 -07:00
LaMont Jones
20dd4c2360 Enable build flags in protobuf
If RELEASE_BUILD_FLAGS_IN_PROTOBUF is False, then the results from
out/release-config are ignored and we do the old processing.

The following additional logic all goes away once the migration to protobuf
is finished.

- If we found .textproto files that don't have corresponding .mk files,
  we require protobuf.
- If we found .mk files that don't have corresponding .textproto files,
  we require legacy (make) processing.
- If PRODUCT_RELEASE_CONFIG_MAPS specifies .textproto files, we require
  protobuf.

In order to further isolate migration, the choice can be determined on a
release-config by release-config basis.  in each release config
directory, we look for:
 - `build_config/DEFAULT=proto`
 - `build_config/DEFAULT=make`
 - `build_config/${TARGET_RELEASE}=proto`
 - `build_config/${TARGET_RELEASE}=make`
The last such file found determines which code path is used.

Bug: 328495189
Test: manual, TH
Change-Id: I1d84db76b157082fc7db1b3cb7c9afe8cdf46cbf
2024-05-02 08:07:30 -07:00
Mårten Kongstad
8b81af4e11 Merge "check-flagged-apis: change internal format" into main 2024-05-02 14:51:49 +00:00
Mårten Kongstad
cd93aeb947 check-flagged-apis: suppress unused variable warning
Bug: 334870672
Test: m check-flagged-apis # verify no Lint warnings
Change-Id: If4fb93703f0f0bf3f27e6ec052cf488796bd717e
2024-05-02 14:01:12 +02:00
Mårten Kongstad
b4a14bfaa9 check-flagged-apis: add support for method with parameters
Teach check-flagged-apis to parse methods containing parameters.

Bug: 334870672
Test: atest --host check-flagged-apis-test
Change-Id: I171660b914b73fd85e03ed9300c2c81f33d80d61
2024-05-02 09:53:54 +02:00
Mårten Kongstad
ece054c856 check-flagged-apis: change internal format
Switch the internal format to represent Symbols to (something close to)
the format described in section 4.3.2 of the JVM spec, i.e.

  com/android/SomeClass/someMethod(II[Ljava/lang/String;)Z

This will make parsing method parameters from api-versions.xml easier,
as that file already uses this format, and converting API signature
files to the same format is less painful than going in the other
direction.

Bug: 334870672
Test: atest --host check-flagged-apis-test
Change-Id: I1e1fb8fe208cd51cce2cc129f5aa1cb495672c16
2024-05-02 09:50:33 +02:00
Treehugger Robot
7faf630b7c Merge "Disable kotlin -checkdiscard rule" into main 2024-05-02 00:50:05 +00:00
Jared Duke
32c8a6a43d Disable kotlin -checkdiscard rule
kotlin-stdlib is included transitively as a library jar by way of
androidx.annotations, which means we cannot ensure associated classes
are discarded by R8. Disable the related `-checkdiscard` proguard rule
until that inclusion is resolved, avoiding spurious warnings in build
output.

Bug: 302383328
Test: m
Flag: NA
Change-Id: I7514e6841735e95e1a16d42d6a6e134103ecb108
2024-05-01 23:34:24 +00:00
Treehugger Robot
e78ad285cb Merge "Add a release config map override for go devices" into main 2024-05-01 23:05:20 +00:00
Spandan Das
68dce16b3f Add a release config map override for go devices
One use case for this is to select go prebuilt apexes when building go
devices.

Bug: 338002385
Test: presubmits
Test: verified that this map shows up in `get_build_var
PRODUCT_RELEASE_CONFIG_MAPS` of a go device

Change-Id: I5505c581597bbd5a4e5f8fc6cd69987f67f0adb6
2024-05-01 22:04:36 +00:00
Treehugger Robot
b604cf3f81 Merge "Remove deprecated Goma makefiles" into main 2024-05-01 20:23:18 +00:00
Cole Faust
c80e7eeb77 Merge "sdk-addon: Prevent nested data/ inside $(PRIVATE_STAGING_DIR)" into main 2024-05-01 19:32:12 +00:00
Kousik Kumar
fe9aaa23fe Remove deprecated Goma makefiles
Goma is no longer used with android platform builds. Just a minor cleanup.

Bug: n/a
Change-Id: I62844c1d555677006a1022dab4f12bcfd7e55758
2024-05-01 18:14:17 +00:00
Treehugger Robot
0c2ef754f3 Merge ""Steal" single value variables in rbc inheritance" into main 2024-05-01 15:54:12 +00:00
Ted Bauer
daa3c71739 Merge "Update dependencies for new aconfig flag storage" into main 2024-05-01 15:37:20 +00:00
Cole Faust
8383184b7a "Steal" single value variables in rbc inheritance
This behavior of "stealing" values from parent makefiles is needed to
match make. We already had similar behavior for list variables via
the __move_items function, but were missing it for single value
variables.

Test: ./out/rbcrun -mode rbc ./build/make/tests/run.rbc
Change-Id: Ib320b9b1cce0224184f585c7a391be1b5353b440
2024-04-30 17:30:18 -07:00
Ted Bauer
4560e3ae8f Update dependencies for new aconfig flag storage
Bug: 328444881
Test: m
Change-Id: I3685a74e9e93a6ecb89a054e243b48b67f470d55
2024-04-30 23:57:51 +00:00
Spandan Das
7d5b29ef85 Merge "Revert "Align boot jar exclusion with apex_contributions"" into main 2024-04-30 23:24:05 +00:00
Spandan Das
213847d3f6 Revert "Align boot jar exclusion with apex_contributions"
This reverts commit f340066ee3.

Reason for revert: Breaks go/ab/git_main:barbet-ap2a-userdebug

Change-Id: I62639525d5b2507a07c3145ff556fdf2b156cb01
2024-04-30 23:10:28 +00:00
Dennis Shen
c0102331c8 Merge "aconfig: add a new aconfig storage file flag listing api" into main 2024-04-30 23:06:18 +00:00
Treehugger Robot
3c5b13078b Merge "Align boot jar exclusion with apex_contributions" into main 2024-04-30 21:46:01 +00:00
Treehugger Robot
40cc23b709 Merge "Move coverage builds prebuilt special case to make" into main 2024-04-30 20:04:44 +00:00
Treehugger Robot
13f8f70758 Merge "Move aosp_x86_64 away from non-AB" into main 2024-04-30 18:20:06 +00:00
Dennis Shen
45c94c6421 aconfig: add a new aconfig storage file flag listing api
added a new function called list_flag_with_info to list all the flags
given all four storage files (package.map, flag.map, flag.val, flag.info).
also exported this api thru cxx interface so aconfigd can use it.

Bug: b/312444587
Test: atest -c
Change-Id: Ibbfe657b980d40e25e5e28962b930338192e2d98
2024-04-30 17:52:44 +00:00
Kelvin Zhang
892b51ab7d Move aosp_x86_64 away from non-AB
non-AB is deprecated, move GSI targets to AB updates

Test: th
Bug: 334489639
Change-Id: I96e398c43f594cdc4ac6e20cf9444cb67a80eee3
2024-04-30 09:34:58 -07:00
Kean Mariotti
ee081de947 Enable perfetto persistent tracing
Enable go/perfetto-persistent-tracing for eng builds.

Bug: 325622427
Test: adb shell perfetto --query \
    and check the tracing session 'sysui_persistent' started
Change-Id: Ic655eea67c96faf4fbc67bb1da3c359d50a73ccc
2024-04-30 14:05:04 +00:00
Ted Bauer
ced25ac630 Merge "Add cc_defaults containing libs needed for static linking" into main 2024-04-30 01:20:21 +00:00
Treehugger Robot
15967616ca Merge "Add tool to determine if products can be lunched" into main 2024-04-29 23:57:36 +00:00
Ted Bauer
d724dd04e2 Add cc_defaults containing libs needed for static linking
Bug: 328444881
Test: m
Change-Id: I35cbce94301415381b3ad38d7e5c697f9c010856
2024-04-29 23:41:52 +00:00
Fabián Cañas
29252f8001 Add tool to determine if products can be lunched
This could aid in cleaning unmaintained products from manifests.

Change-Id: Ic1ae4d62711cf27f17c1e4c770f64db074768fd5
Test: lunchable
2024-04-29 22:58:11 +00:00
Pawan Wagh
cc1dd590fd Merge "Fix dependency of system img on boot_otas" into main 2024-04-29 22:22:17 +00:00
Spandan Das
f340066ee3 Align boot jar exclusion with apex_contributions
`RELEASE_APEX_BOOT_JARS_PREBUILT_EXCLUDED_LIST` exists to flag apex boot
jars that may exist in source builds, but not in a google apex prebuilt
(a prebuilt might not have been generated yet). This is a build flag, and
exists in the <rel>.scl

It is feasible that certain products in a specific release config
never use apex prebuilts. Therefore, we need to selectively
apply `RELEASE_APEX_BOOT_JARS_PREBUILT_EXCLUDED_LIST` to products that
use apex prebuilts. At ToT, this is done via looking at
module_build_from_source_value of ANDROID soong config namespace, and
<apex>_module soong config namespace for every optional module.

<apex>_module soong config namespace was removed in
https://r.android.com/3056785. In preparation for removing
module_build_from_source, use
`PRODUCT_BUILD_IGNORE_APEX_CONTRIBUTION_CONTENTS` to determine if
prebuilts are being used.

Test: in internal, lunch barbet-ap2a-userdebug && get_build_var APEX_BOOT_JARS_EXCLUDED
com.android.mediaprovider:framework-pdf com.android.mediaprovider:framework-pdf-v
(this is the only release config where there is a delta between prebuilt
and source apex boot jars)

Test: in internal, lunch barbet-trunk_staging && get_build_var
APEX_BOOT_JARS_EXCLUDED
"" (empty string)

Change-Id: I981ad3a7767f3602a844c8d53eadfd1f2e5db420
2024-04-29 22:06:43 +00:00
Spandan Das
2bdaea7e20 Move coverage builds prebuilt special case to make
Having this in make has the following advantages
- allows this to be used in other places in make that are sensitive to
  prebuilt selection, e.g. apex boot jars that are present in source but
  not in prebuilt apexes
- collocates the various prebuilt special edge cases

Test: presubmits
Test: in internal, lunch cf_x86_64_phone-next-userdebug
Test: EMMA_INSTRUMENT_FRAMEWORK=true get_build_var PRODUCT_BUILD_IGNORE_APEX_CONTRIBUTION_CONTENTS
true

Bug: 308188056
Change-Id: I3e81b348e9f1e72e6d120a881d37356c413b005b
2024-04-29 21:31:31 +00:00
Treehugger Robot
faeac4d7f7 Merge "Drive instrumentation with build flag" into main 2024-04-29 21:26:55 +00:00
Michael Wright
c791547786 Merge "check-flagged-apis: remove debug print" into main 2024-04-29 20:29:51 +00:00
Michael Wright
cfbcdc1ec5 Merge changes Ia860d7b0,Ie98db767 into main
* changes:
  check-flagged-apis: allow / chars in Symbol names
  check-flagged-apis: add support for methods (no parameters)
2024-04-29 20:29:35 +00:00
Ted Bauer
d19d351148 Drive instrumentation with build flag
Bug: 328444881
Test: m
Change-Id: Iebb250e8a836c77b14fcc6b9536eba90f9da7a4b
2024-04-29 20:12:27 +00:00
Pawan Wagh
bd2d79d311 Fix dependency of system img on boot_otas
If BOARD_16K_OTA_MOVE_VENDOR := true is set BoardConfig,
there is still dependency of system img on boot otas as it is system ota
paths are being added in default installed modules. Add vendor paths
whenever move vendor is set.

Bug: 335022191
Test: m
Change-Id: I19b41e5b9ade50f3cabf43995af36e66e09c6acf
2024-04-29 19:48:26 +00:00
Wei Li
013330b028 Merge "Add license metadata declarations which are moved from device/google/raviole/Android.mk." into main 2024-04-29 18:19:12 +00:00
Gaurav Johari
0c16cb6a66 Merge "Do not fail cogsetup.sh if repo is not in PATH" into main 2024-04-29 17:09:25 +00:00
Treehugger Robot
80c40c4d91 Merge "FakeFeatureFlagsImpl optionally takes defaults via a FeatureFlags." into main 2024-04-29 16:53:28 +00:00
Ted Bauer
d475818504 Merge "Read from new storage in C++ aconfig codegen" into main 2024-04-29 16:47:45 +00:00