Commit Graph

83825 Commits

Author SHA1 Message Date
Treehugger Robot
5fa409b88e Merge "Report UnflaggedApi issues as warnings but treat as errors when new" into main 2024-08-28 19:13:24 +00:00
Paul Duffin
88d3b39846 Report UnflaggedApi issues as warnings but treat as errors when new
The `UnflaggedApi` issue is only reported when doing API linting and
defaults to `Severity.HIDDEN` because AndroidX (among other users) do
not support using `@FlaggedApi` annotations. This change switches it to
be warning by default in the  Android build as there are some existing
instances of it, but will be treated as an error by the "Build Warnings
Aye Aye Analyzer" in a Gerrit change if it occurs on lines that are
modified/added by that change.

Bug: 361582214
Test: m checkapi
Change-Id: Ie5ed23d00dd49454aeb5b43ccd8ad027d9d34fd2
2024-08-28 18:24:02 +01:00
Yu Liu
b41b74fa2c Merge "Remove packagingSpecsDepSet from ModuleBase." into main 2024-08-28 17:12:07 +00:00
Cole Faust
80a6541647 Merge "Move aidl_camera_build_version to build number allowlist" into main 2024-08-28 16:59:54 +00:00
Chaitanya Cheemala (xWF)
8afc9b6a59 Merge "Revert "Implement detecting container violations."" into main 2024-08-28 11:08:54 +00:00
Chaitanya Cheemala (xWF)
5f2ae9bb28 Revert "Implement detecting container violations."
This reverts commit bb678f82d6.

Reason for revert: Likely culprit for b/362670437 - verifying through ABTD before revert submission. This is part of the standard investigation process, and does not mean your CL will be reverted.

Change-Id: I21a9fbc79618fce48f5713fdb9856f3eb751ec45
2024-08-28 09:13:02 +00:00
Satish Yalla
f2d6e5004f Merge "Revert "Implement detecting container violations."" into main 2024-08-28 05:48:21 +00:00
Satish Yalla
b2b1ef63e2 Revert "Implement detecting container violations."
This reverts commit bb678f82d6.

Reason for revert: Droidmonitor created revert due to b/362639013. Will be verifying through ABTD before submission.

Change-Id: I1dcb71672eeb44a17cf176d3731bcaf9aaf81edf
2024-08-28 05:10:31 +00:00
Treehugger Robot
26f071db92 Merge "Implement detecting container violations." into main 2024-08-28 04:39:12 +00:00
Treehugger Robot
dd5fa433f7 Merge "Add jacocoagent to allowlisted dependencies" into main 2024-08-28 04:12:28 +00:00
Jiyong Park
c7df8bf64b Merge "remove unused variable" into main 2024-08-28 03:35:59 +00:00
Treehugger Robot
529da9b897 Merge "dexpreopt rules for google mainline prebuilts with missing source" into main 2024-08-28 01:25:52 +00:00
Treehugger Robot
9cbbafe300 Merge changes from topic "ctx_in_ideinfo" into main
* changes:
  Add ctx argument to IDEInfo()
  Add configurable property support to neverallow
2024-08-28 00:49:13 +00:00
Yu Liu
713f415cde Merge "Remove moduleInfoJSON from ModuleBase." into main 2024-08-28 00:32:50 +00:00
Treehugger Robot
4e3486b0ba Merge "cc: clearer OS mismatch error." into main 2024-08-28 00:32:32 +00:00
Treehugger Robot
abb832233f Merge "Force rebuild linker.config.pb even after a build error" into main 2024-08-28 00:27:50 +00:00
Inseob Kim
09557a0aa3 Merge "Include TARGET_ODM_PROP to odm/etc/build.prop" into main 2024-08-28 00:15:14 +00:00
Treehugger Robot
78a3761bde Merge "Make IdeInfo into a provider" into main 2024-08-27 23:49:10 +00:00
Steven Moreland
aaae81f5fd cc: clearer OS mismatch error.
Bugs: me
Test: clear error message, for instance:

    error: frameworks/native/libs/binder/ndk/Android.bp:252:1: module "libbinder_ndk.ndk" variant "android_x86_64_silvermont_sdk_shared_29": OS mismatch between "libbinder_ndk.ndk" (android) and "libbinder_headers_platform_shared" (linux_glibc)

Change-Id: Idfa6d27daeb89056781c93a893e4080e49b3fcb0
2024-08-27 23:30:31 +00:00
Yu Liu
eb6d705d1f Remove packagingSpecsDepSet from ModuleBase.
The external code that depends on this field has been changed to use the
new interface, this field can be removed now.

Bug: 358425833
Test: Manually verified all the generated ninja and mk files and CI.
Change-Id: I12cb6e22c091bc90d3a3cbbf554e81b8dc27e264
2024-08-27 23:26:28 +00:00
Yu Liu
4297ad9046 Remove moduleInfoJSON from ModuleBase.
Bug: 358425833
Test: Manually verified all the generated ninja and mk files and CI.
Change-Id: I145272636b87b20e49c05e847336737cccc20f79
2024-08-27 23:23:26 +00:00
Yu Liu
3e4458bf52 Merge "Remove 6 install related fields from ModuleBase." into main 2024-08-27 23:16:21 +00:00
Cole Faust
b36d31d870 Add ctx argument to IDEInfo()
The IDEInfo() methods read properties. To make those properties
configurable, we need a context to evaluate them with.

Bug: 362579941
Test: m nothing --no-skip-soong-tests
Change-Id: I26d4b7084439b3006e50b02277298f74a929e1aa
2024-08-27 16:04:28 -07:00
Cole Faust
5b35cb9aef Add configurable property support to neverallow
Bug: 362579941
Test: m nothing --no-skip-soong-tests
Change-Id: I50b8bf3cc2e3520a12932b0a0e1041e079379590
2024-08-27 15:51:19 -07:00
Cole Faust
08c7f86575 Make IdeInfo into a provider
In order to keep the changes minimal, call the old IdeInfo method right
after GenerateAndroidBuildActions and then set the result of that
into a provider.

Test: Diff'd ninja files and saw no difference.
Change-Id: Ic706e7dbcb7c6e3d2a381ddae383eb87e105f385
2024-08-27 15:50:35 -07:00
Spandan Das
8a2c56c516 dexpreopt rules for google mainline prebuilts with missing source
AddFarVariationDependencies runs into issues in partner workspaces which
do not contain the sources of google mainline prebuilts, since the
prebuilt would be renamed in a prior prebuilt_rename mutator. To account
for this rename, add `prebuilt_` prefix in
`addDependenciesOntoSelectedBootImageApexes` to ensure that the prebuilt
apex does not get elided

Test: m nothing --no-skip-soong-tests
Test: in v-aml-prebuilt dev,
aninja -t query out/soong/dexpreopt_arm64/dex_bootjars_input/okhttp.jar | head -n3
out/soong/dexpreopt_arm64/dex_bootjars_input/okhttp.jar:
  input: g.android.Cp
    out/soong/.intermediates/vendor/partner_modules/ArtPrebuilt/prebuilt_com.google.android.art_compressed.deapexer/android_common/deapexer/javalib/okhttp.jar
(uses the prebuilt deapexed boot jar, and no the source apex boot jar)

Bug: 362163831
Change-Id: Ie94a36911ab40ac09a470efe505fd00ef3a5bf9c
2024-08-27 22:01:11 +00:00
Spandan Das
39d61f53ff Merge "Contents validation of override_apex's bootclasspath fragments" into main 2024-08-27 20:32:01 +00:00
Treehugger Robot
a5762dd78b Merge "Add a property to rust_ffi targets to exclude them from APEXes." into main 2024-08-27 20:13:19 +00:00
Spandan Das
a6f4b6b104 Merge changes from topic "cc_prebuilt_stubs" into main
* changes:
  Skip `-Wl,--version-script` on libclang_rt.* stubs (temp hack)
  Special case the stubgen args for bionic libs
  Add stub generation support to cc_prebuilt_library
2024-08-27 19:37:08 +00:00
Cole Faust
f23fdc048e Move aidl_camera_build_version to build number allowlist
This allows us to get most of the benefits of genrule sandboxing,
and defer deciding what to do about the build number until later.

Bug: 307824623
Test: m aidl_camera_build_version
Change-Id: Ib3f4dd6d270ac56d068593c95ee40db44962b845
2024-08-27 12:22:31 -07:00
Yu Liu
82a6d1464d Remove 6 install related fields from ModuleBase.
Bug: 358425833
Test: Manually verified all the generated ninja and mk files and CI.
Change-Id: If2c3417781953a1eef2b07a241424157fd73abff
2024-08-27 19:03:35 +00:00
Spandan Das
ed7a030c6c Contents validation of override_apex's bootclasspath fragments
https://r.android.com/3083813 added support for overriding
min_sdk_version, and creating separate variants of transitive
dependencies of override apexes. This causes issues when there is a skew
between apex boot jars of source and prebuilt mainline modules. For
mediaprovider google apex, we now have _two_ source variants of
mediaprovider bcp fragment module.

This CL uses ApexInfo.BaseApexName to skip the check on both variants of
bootclasspath/systemserverclasspath fragments.

This CL also removes the prefix based check to determine if prebuilts
are active. If RELEASE_APEX_CONTRIBUTIONS for a specific mainline module
is set, it will be assumed that prebuilts for that mainline module are
active.

Test: go test ./apex ./java
Bug: 361771739

Change-Id: I01f7ef437df8f10b74ffa397ba461ff4f1f9bed6
2024-08-27 18:48:46 +00:00
Chris Wailes
bbcbe86fe3 Merge "rustc-1.80.1 Build 12274397" into main 2024-08-27 18:00:26 +00:00
Jihoon Kang
bb678f82d6 Implement detecting container violations.
This change introduces a method to detect violating inter-container
dependencies between modules. The method is run in
`ModuleBase.GenerateBuildActions`, after the container info provider is
set. Given that the provider of the direct dependencies would have been
set at this time, the method utilizes this information to determine
the violations, which are introduced in https://r.android.com/3141104.

Note that this enforcement does not turn all inter-container
dependencies as errors. Instead, it will only turn dependencies that
matches the pre-defined violations into errors. Even if the dependency
matches the violation, an error will not be thrown if the dependency
satisfies any of the exception functions (e.g. the dependent module is
stubs, or the two modules belong to the same apexes).

Test: m nothing --no-skip-soong-tests
Bug: 338660802
Change-Id: I36e9cd956c5a076a53635be0c6ff27f77725516e
2024-08-27 17:30:42 +00:00
Jihoon Kang
601939d0a7 Add jacocoagent to allowlisted dependencies
jacocoagent is implicitly added as a dependency in coverage builds, and
is not installed on the device.

Test: m nothing
Bug: 338660802
Change-Id: Icf14ce5f9b0819a3c5fbe74cf1674719859ad5c6
2024-08-27 17:27:52 +00:00
Ashutosh Agarwal
46e4fad202 Add a property to rust_ffi targets to exclude them from APEXes.
This is a temporary measure until stubs are properly supported by rust_ffi targets.

Bug: 361441210
Bug: 362509506
Change-Id: Ieabd4e3abf442de660f39ec6c5776f5832b25e14
Test: manual
2024-08-27 17:13:12 +00:00
Yu Liu
4b98396c64 Merge "Remove licenseMetadataFile and installFiles from ModuleBase." into main 2024-08-27 15:54:00 +00:00
Jiyong Park
e41a42d8d6 remove unused variable
Bug: N/A
Test: N/A

Change-Id: I334cd495599bb1aea022a215fd48e573060069de
2024-08-27 18:31:57 +09:00
Pindar Yang
1282d27291 Merge "Revert "Support BUILD_FRAMEWORK_COMPATIBILITY_MATRIX for soong"" into main 2024-08-27 03:25:23 +00:00
Pindar Yang
1558cc68ec Revert "Support BUILD_FRAMEWORK_COMPATIBILITY_MATRIX for soong"
Revert submission 3195743-compatibility_matrix

Reason for revert: Build Break, Bug: 361227456

Reverted changes: /q/submissionid:3195743-compatibility_matrix

Change-Id: Ib89cdc64eb816ca0df872473b1e9a9dfdb08ceee
2024-08-27 03:22:41 +00:00
Justin Yun
87f543d889 Force rebuild linker.config.pb even after a build error
After a build failure of linker.config.pb, we must manually remove
the temp.pb file to resume the build again after fixing the error.
By adding '--force' flag, the script will overwrite the existing
temp.pb file.

Bug: na
Test: build after an error for linker.config.pb
Change-Id: If51ba8291de49a7c0bed8771d702f61c904d3455
2024-08-27 10:30:27 +09:00
Yu Liu
ec81054548 Remove licenseMetadataFile and installFiles from ModuleBase.
Bug: 358425833
Test: Manually verified all the generated ninja and mk files and CI.
Change-Id: I447ec74b7f9c3b8c686ed41511e2051f40ac88f8
2024-08-27 00:16:22 +00:00
Jihoon Kang
17a362a506 Add the list of currently existing violations
This change adds the list of currently existing inter-container
dependency violations. The list is extracted from the container
enforcement mutator, which is implemented in the child change
https://r.android.com/3155659, but is splitted into a separate change
for the ease in review and resolving merge conflicts.

Test: m nothing
Bug: 338660802
Change-Id: If0e352092dcd4573daa9a5675f679c38bede18f8
2024-08-26 23:22:01 +00:00
Spandan Das
18c2607bde Merge "Move installation rules of dexpreopt'd apex systemserver jars to soong" into main 2024-08-26 22:27:57 +00:00
Wei Li
91a1e9f894 Merge "Add "packages/" to Android.mk denylist." into main 2024-08-26 21:24:56 +00:00
Treehugger Robot
7389ad5c18 Merge "Guarantee frameworks.aidl stability." into main 2024-08-26 21:21:19 +00:00
Spandan Das
746161db0c Move installation rules of dexpreopt'd apex systemserver jars to soong
This will eventually allow us to build devices by skipping `katiBuild`
and moving straight to `katiPackaging`.

Implementation details
- Replace ctx.PackageFile with ctx.InstallFile. These makes these rules
  available to both make and soong packaging systems. This will be done
inside d.dexpreopt function
- Add InstallDepNeeded on the dependency tags in this chain
(apex --> sscp_fragment --> (java_library|java_sdk_library)). This is
necessary for the soong packaging system.
- Remove `LOCAL_SOONG_INSTALLED_MODULE=""`. A non-empty string ensures
  that kati honors the installation rules generated by soong.

Bug: 355509400
Test: lunch aosp_cf_x86_64_phone-trunk_staging-userdebug (mainline source)
Test: lunch cf_x86_64_only_phone-ap3a-userdebug (mainline prebuilts)
(no diff in system_intermediates/file_list.txt in both cases)

Change-Id: I190a919e9480e7d9981a6b9b96a50d9c33ceea02
2024-08-26 20:58:10 +00:00
Treehugger Robot
803ca1cf0d Merge "Sandbox the OUT_DIR environment variable" into main 2024-08-26 20:49:59 +00:00
Spandan Das
5922333d5c Skip -Wl,--version-script on libclang_rt.* stubs (temp hack)
The checked-in libclang_rt.* prebuilts do not contain versioned symbols,
but the autogenerated map.txt file for these libraries contain versions
e.g.
LIBCLANG_RT_ASAN {
  global:
...
}
```

This causes a discrepancy between the symbols in the stubs and impl
variants of these libraries. After https://r.android.com/3236596 is
submitted and a new set of libclang_rt.* prebuilts are generated, this
discrepancy will go away.

For now, skip `-Wl,version-script` when generating the stub
variants of these libraries to prevent link errors at build time.

Test: lunch aosp_panther_hwasan-trunk_staging-userdebug && m crash_dump
Bug: 3222365
Change-Id: Ic1e06cb58ec33b761136ac325f191da7ac900151
2024-08-26 19:43:31 +00:00
Yu Liu
ad64c5f370 Merge "Remove installFilesDepSet, packagingSpecsDepSet and licenseInstallMap from ModuleBase." into main 2024-08-26 19:00:12 +00:00