Commit Graph

83794 Commits

Author SHA1 Message Date
Yu Liu
3e4458bf52 Merge "Remove 6 install related fields from ModuleBase." into main 2024-08-27 23:16:21 +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
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
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
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
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
Priyanka Advani (xWF)
7cbbde8c84 Merge "Revert "Enable -Wfortify-source"" into main 2024-08-26 18:44:09 +00:00
Priyanka Advani (xWF)
109e77abcd Revert "Enable -Wfortify-source"
This reverts commit 608779b224.

Reason for revert: Droidmonitor created revert due to build breakages in b/362287839.

Change-Id: I6ff96539ae714698692794209d8e76e6062378b0
2024-08-26 18:22:13 +00:00
Cole Faust
1ead86c1a5 Sandbox the OUT_DIR environment variable
Currently, OUT_DIR is inherited from the parent process, leading to
scripts being able to find the output directory when the enviornment
variable is set to an absolute path. When sandboxing a command,
also rewrite the OUT_DIR environment variable to the sandboxed one,
so that scripts can't find the real out dir.

Bug: 307824623
Test: Presubmits
Change-Id: I325071121a60bddc4105df680fbdfe3d11dc94e2
2024-08-26 11:12:10 -07:00
Yu Liu
bad1eef6d8 Remove installFilesDepSet, packagingSpecsDepSet and licenseInstallMap
from ModuleBase.

The old packagingSpecsDepSet field is kept temporarily to bypass an
auto-merge issue, and will be removed in next change.

Bug: 358425833
Test: CI
Change-Id: I28b4933459c33224f756cc306cabc8088f9be862
2024-08-26 17:45:38 +00:00
Aditya Kumar
24bf5a76e3 Merge "Enable -Wfortify-source" into main 2024-08-26 17:45:11 +00:00
Chris Wailes
aa60bb44d4 rustc-1.80.1 Build 12274397
Bug: https://issuetracker.google.com/issues/361370910
Test: m rust
Change-Id: Ie1585c9b7f429310ec8b8cdddc6c5ce7c8bff001
2024-08-25 17:03:32 -07:00
Treehugger Robot
bc75594499 Merge "Make the defaults property non-configurable" into main 2024-08-26 00:03:30 +00:00
Cole Faust
52d37c3249 Make the defaults property non-configurable
In order to support changing the global configuration per-module,
we can't make decisions on configuration until the configuration is
decided. The defaults mutator is one of the earliest mutators, and
it would be helpful to run it before deciding the configuration.

Bug: 361816274
Test: Presubmits
Change-Id: Iee9c603d7e2601919d636345dfdedae47448db38
2024-08-23 16:20:58 -07:00
Qing Shen
ffb985e9bd Merge "Revert "Revert "Add a coverage suffix to avoid Ninja file regene..."" into main 2024-08-23 23:18:52 +00:00
Wei Li
ffb99497a7 Add "packages/" to Android.mk denylist.
Bug: 318428689
Change-Id: I229fb645cdf03881ed709216dd6743d456440403
Test: CIs
2024-08-23 22:54:40 +00:00
Qing Shen
713c54289c Revert "Revert "Add a coverage suffix to avoid Ninja file regene..."
Revert submission 3235973-revert-3207217-emma-flip-time-saver-BYWASVIMTD

Reason for revert: Rolling forward with a fix

Adding a coverage suffix for product_config.go too:

FAILED: ninja: 'out/soong/soong.sdv_core_cf.extra.variables', needed by 'out/soong/.intermediates/build/soong/product_config/product_config.json', missing and no known rule to make it
03:42:23 ninja failed with: exit status 1

Reverted changes: /q/submissionid:3235973-revert-3207217-emma-flip-time-saver-BYWASVIMTD

Change-Id: I74d0e3fda09b1367f3dbb939d4f47c4d09b3d51f
2024-08-23 21:41:52 +00:00
Treehugger Robot
4215c9953e Merge "Make aninja work with alternate out dirs" into main 2024-08-23 21:30:05 +00:00
Cole Faust
cab168098f Make aninja work with alternate out dirs
Test: Manually
Change-Id: Ia7b18b04cabafa0bbce0232b32547f6d87059dc4
2024-08-23 13:02:55 -07:00
Aditya Kumar
608779b224 Enable -Wfortify-source
Bug: 315245071
Change-Id: I6a75787f5244c5e89b188113839a2c95c805450e
2024-08-23 19:02:46 +00:00
Treehugger Robot
65c530c17e Merge "Remove suffix based stub matching logic" into main 2024-08-23 03:42:12 +00:00
Treehugger Robot
fe5f57b27f Merge "Make java_sdk_library phony target depend on its stub jar" into main 2024-08-23 03:14:53 +00:00
Cole Faust
43c36cade8 Merge "Use musl build of n2" into main 2024-08-23 01:18:16 +00:00
Jihoon Kang
4b9220af10 Make java_sdk_library phony target depend on its stub jar
Currently, the (from-text) stub jar depends on the check api timestamp
of the same api scope droidstubs. However, building the top level
sdk_library phony target does not trigger check api, as the top level
java_sdk_library "depends" on the stub submodules but the top level
phony target does not build the stubs generated by its submodule, nor
the top level java_sdk_library generate any output files.

In order to support the user's workflow of observing checkapi failure
after modifying the api by running `m <java_sdk_library name>`, this
change adds the paths to the stub jars as dependencies as the top level
java_sdk_library phony target.

Bug: 234113632
Test: modify source file api, run m <java_sdk_library name> and observe checkapi failure
Change-Id: Iccd42c8ef7d5de20f71c347455c1a90d83a6c70c
2024-08-22 22:11:04 +00:00
Jihoon Kang
fa3f0782f7 Remove suffix based stub matching logic
This change prevents non-stub modules with stub suffix from being
determined as the stub module, and instead makes the check more robust
by determining the condition based on the user-hidden
`Stub_contributing_api` property, which is only set for the stub
submodules generated by `java_sdk_library`.

Test: m nothing --no-skip-soong-tests
Bug: 361179822
Change-Id: I28a599c5b4fe1e8460e60580c0535aaf19e39ba3
2024-08-22 22:05:03 +00:00
Cole Faust
4e58bba1fc Use musl build of n2
We're seeing bugs on the build server only, and previous similar bugs
were caused by issues in the older version of glibc the build server
uses, so try using the musl build of n2 to see if it resolves the
issues.

Bug: 318434287
Test: Presubmits
Change-Id: I416cd77f4dfb4ca04f6dd5b36fa73585a2904b55
2024-08-22 14:27:03 -07:00
Maciej Żenczykowski
5bd48e5a06 Merge "bpf.go: adjust for p/m/C change to location of bpf headers" into main 2024-08-22 19:27:54 +00:00
LaMont Jones
82bf453665 Merge "Align release config protos with style guide" into main 2024-08-22 16:17:41 +00:00
Yu Liu
75c242497f Merge "Remove outputFiles from ModuleBase." into main 2024-08-22 06:48:09 +00:00
Treehugger Robot
e0e4a24dcc Merge "Add "TARGET_BOARD_PLATFORM" into ProductVariables" into main 2024-08-22 05:43:38 +00:00
Stephen Hines
09c2389063 Merge "rustc-1.79.0 Build 12250333" into main 2024-08-22 02:45:29 +00:00
Herbert Xue
0fc8abe740 Add "TARGET_BOARD_PLATFORM" into ProductVariables
Bug: 360872208
Bug: 348120216
Test: aosp_cf_x86_64_phone-trunk_staging-eng && m hosttar
Change-Id: I79917b10245b982c466afde0570d9da0395232b3
2024-08-22 00:54:10 +00:00
Kiyoung Kim
17b4117cb8 Merge changes from topic "product_variable_vintf_fragments" into main
* changes:
  Variables uses vintf_fragment_modules
  Append vintf_fragment_modules as required for AndroidMk
2024-08-22 00:41:29 +00:00
LaMont Jones
95b0ba4192 Align release config protos with style guide
Rename `enum workflow` to `enum Workflow`, and similarly for `message`
declarations.

This should reduce downstream issues when the protos are converted to
non-Go languages.

Bug: 347076012
Test: TH, manual
Change-Id: Iee20dc763fcef497d8b88f83f489604fda104100
2024-08-21 15:54:59 -07:00
Maciej Żenczykowski
57af33927f bpf.go: adjust for p/m/C change to location of bpf headers
Test: TreeHugger
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Id08dba160d2296581d6b41ade3e464b9bfe74540
2024-08-21 13:15:49 -07:00
Yu Liu
876b7ce263 Remove outputFiles from ModuleBase.
Bug: 358425833
Test: CI
Change-Id: I6c398fbdbc38b99fa62f8670baa44ffd51b5e6d3
2024-08-21 19:11:43 +00:00