Commit graph

82075 commits

Author SHA1 Message Date
mrziwang
ba2a460008 Use OutputFilesProvider on syspropJavaGenRule
In the context of incremental soong, the output files
inter-module-communication will be through OutputFilesProvider.
The OutputFileProducer interface will be deprecated.

Test: CI
Bug: 339477385
Change-Id: I3b1cb3a4cfafa1385ef27a427009abb13accf834
2024-06-13 14:16:52 -07:00
Zi Wang
afc28427cf Merge "Use OutputFilesProvider on prebuilt_etc" into main 2024-06-13 20:56:57 +00:00
Treehugger Robot
68f5fbf99b Merge "Remove timestamp from local build number" into main 2024-06-13 18:45:09 +00:00
Cole Faust
1ae7b774eb Remove timestamp from local build number
The build_info.prop file was converted to soong, which then caused it to
have a stale build number due to not adding the build number file as a
dependency to avoid rebuilds. I added it as a dependency to fix the
staleness, but it always rebuilds locally now.

I think the way it worked before, it would get stale build numbers,
except that it was cleared with installclean which was always run on CI.
Now that it's a soong module and generated in out/soong/.intermediates
it's not cleared by installclean. I could make a system to register
files that should be installclean'd from a soong module, but I'd
eventually like to eliminate the need to run installclean entirely.

So as an alternative, just make the build number not change every build
when doing local builds, by removing the timestamp from it.

Bug: 346757289
Test: m repeatedly and observe no rebuilds the second time (of the system image, the build flags infrastructure seems to do some small rebuilding)
Change-Id: I0207feb739523dde3e89d1e5c4822865f641c313
2024-06-13 10:27:20 -07:00
Justin Yun
22c8aca893 Call PackageFile for dexpreopt files
Dexpreopt files use RuleBuilder.Install() that installs the file from
Make. By calling PackageFile, this information is also shared to
soong PackagingSpec.

Bug: 339314890
Test: See if .prof, .bprof, and vdex files are installed with
      "m aosp_cf_system_x86_64"

Change-Id: I42167603ecfd4334e4f35602bdf03a21846fc798
2024-06-13 09:04:42 +09:00
Treehugger Robot
6918e6084c Merge "Add unit test to verify contents of bootclasspath.pb.textproto" into main 2024-06-12 22:51:23 +00:00
Spandan Das
8a296baab8 Remove unused dexpreopt install path function
`odexOnSystemOther` (presumably) returns a boolean indicating whether
.odex/.vdex files should be installed in system_other.img. The
installation location logic is now colocated in build/soong/dexpreopt
package, so we can delete this unused function.

Test: go build ./java
Change-Id: Ibd1a3a0b945f8d7953baad05cbaf65cb58b5a05a
2024-06-12 21:17:29 +00:00
Spandan Das
fcea0a8cc4 Add unit test to verify contents of bootclasspath.pb.textproto
The unit test is useful for verifying that
min_sdk_version/max_sdk_version information is populated correctly.
Followup to https://r.android.com/3128893

Bug: 345621958
Test: go test ./apex
Change-Id: Id7696a8cefaab6d0b7f38b65a33e326152ac12d3
2024-06-12 18:22:46 +00:00
Spandan Das
a551b011d0 Merge "Fix missing missing (min|max)_sdk_version in bootclasspath.pb" into main 2024-06-12 18:21:33 +00:00
Spandan Das
306804fe41 Fix missing missing (min|max)_sdk_version in bootclasspath.pb
bootclasspath.pb.textproto of an apex contains
min_sdk_version/max_sdk_version information of its exported libraries.
It is populated using the stateful minSdkVersion/maxSdkVersion
properties of the SdkLibrary module. These were previously indirectly
populated by invoking `module.Library.GenerateAndroidBuildActions(ctx)`,
which has been removed https://r.android.com/3079425.

This CL updates the implementation to use `MinSdkVersion(ctx)` and
`MaxSdkVersion(ctx)` to get the appropriate values directly and not rely
on GenerateAndroidBuildActions.

Bug: 345621958
Test: cat out/soong/.intermediates/packages/providers/MediaProvider/apex/com.android.mediaprovider-bootclasspath-fragment/android_common_apex30/c49cac19acc21350e0f3590de64d2f7f/bootclasspath.pb.textproto
jars {
path: "/apex/com.android.mediaprovider/javalib/framework-mediaprovider.jar"
classpath: BOOTCLASSPATH
min_sdk_version: "30"
max_sdk_version: ""
}
jars {
path: "/apex/com.android.mediaprovider/javalib/framework-pdf.jar"
classpath: BOOTCLASSPATH
min_sdk_version: "30"
max_sdk_version: ""
}
jars {
path: "/apex/com.android.mediaprovider/javalib/framework-pdf-v.jar"
classpath: BOOTCLASSPATH
min_sdk_version: "34"
max_sdk_version: ""
}
// min_sdk_version values were empty previously

Change-Id: Ia547747b16d255c1a093deee96a1abb61fd47dff
2024-06-12 17:12:56 +00:00
Tomasz Wasilczyk
ff18ea26f8 Merge "Enable cmake testing" into main 2024-06-12 15:37:06 +00:00
Treehugger Robot
0499f2c687 Merge "build_flag: when printing all flags, sort them." into main 2024-06-12 02:21:23 +00:00
LaMont Jones
0bfb255d26 Merge changes Ib0f26c98,Ie4e74bce into main
* changes:
  build-flag: support `set --redacted=true NAME`
  build-flag: ensure release_config declaration exists
2024-06-12 00:28:15 +00:00
Tomasz Wasilczyk
c3177e0ffc Enable cmake testing
Bug: 302718225
Test: atest binder_sdk_test
Change-Id: Id841d73d11f3b0c75f7bcd523be8ff69300a503e
2024-06-11 13:36:20 -07:00
Sam Saccone
6ace4cf906 Merge "Only generate kythe xrefs on the primary module" into main 2024-06-11 20:23:38 +00:00
mrziwang
8937176646 Use OutputFilesProvider on prebuilt_etc
In the context of incremental soong, the output files
inter-module-communication will be through OutputFilesProvider.
The OutputFileProducer interface will be deprecated.

Test: CI
Bug: 339477385
Change-Id: Ibd64f7e526f39a067ce395b32b87d3fdb117a573
2024-06-11 12:42:24 -07:00
Cole Faust
9decf834ce Only generate kythe xrefs on the primary module
Currently the kythe build is hitting the 6 hour timeout, but we're
generating kythe files for all variants. Generating them only for
the primary variant should drastically cut its runtime.

Bug: 345440993
Test: Presubmits
Change-Id: I3846b25c7f0bc22153e4f0a0cb81c5015854dd70
2024-06-11 11:50:47 -07:00
Zi Wang
3125b75d5d Merge "PrebuildEtcModule no longer implements OutputFiles method" into main 2024-06-11 16:55:22 +00:00
LaMont Jones
50cf9be45c build_flag: when printing all flags, sort them.
Bug: None
Test: manual
Change-Id: I1d3d6e9d9e56d2987e43e4a41162df4d3c39ad31
2024-06-11 09:52:05 -07:00
Pirama Arumuga Nainar
658bd0540e Merge "Revert^8 "Upgrade to clang-r522817"" into main 2024-06-11 16:25:58 +00:00
Pirama Arumuga Nainar
44755fa745 Merge "Revert^2 "rustc-1.78.0 Build 11910258"" into main 2024-06-11 16:25:58 +00:00
Tomasz Wasilczyk
e07a19bc63 Merge "cc_cmake_snapshot: fix cc_test and cc_benchmark" into main 2024-06-11 16:04:36 +00:00
LaMont Jones
fcb2d377ca build-flag: support set --redacted=true NAME
Simplify the process of redacting a flag.

Bug: None
Test: manual
Change-Id: Ib0f26c9846141030e1f23a389044debc9945bbbf
2024-06-11 09:04:26 -07:00
LaMont Jones
6b002a7d08 build-flag: ensure release_config declaration exists
If we are setting a flag for a release config in a map directory that
doesn't yet declare that release config, this map directory needs to
contribute to the release config.

Bug: 345278765
Test: manual
Change-Id: Ie4e74bce008c4c4fdc4bc16e3209f0d9ef9cf8a2
2024-06-11 09:04:26 -07:00
Aleks Todorov
ef0024775f Merge "cc: Make export_include_dirs configurable" into main 2024-06-11 09:09:30 +00:00
Yi Kong
cdb8501c1e Merge changes from topic "optimize_for_size" into main
* changes:
  Enable MLGO inliner optimization for optimize_for_size cases
  Add "Optimize_for_size" build property
2024-06-11 05:38:13 +00:00
Zi Wang
7524af662b Merge "Use OutputFilesProvider on sh_binary" into main 2024-06-10 22:27:31 +00:00
mrziwang
e2346b87d9 PrebuildEtcModule no longer implements OutputFiles method
In the context of incremental soong, the output files
inter-module-communication will be through OutputFilesProvider.
The OutputFileProducer interface will be deprecated.

These module types are included in this change:
linker_config
llndk_libraries_txt
sanitizer_libraries_txt
java_sdk_library_xml
vndksp_libraries_txt
vndkcore_libraries_txt
vndkprivate_libraries_txt
vndkpublic_libraries_txt

Test: CI
Bug: 339477385
Change-Id: I35575bbad137df5ff8001db9a61ba5b3d13eaa6d
2024-06-10 15:17:07 -07:00
Jihoon Kang
0030148fcb Merge "Remove exportable modules when generating snapshots targeting older platform" into main 2024-06-10 20:46:09 +00:00
Frederick Mayle
61d180ac27 Merge "allow arch_variants for C++'s rtti option" into main 2024-06-10 20:09:58 +00:00
mrziwang
4f58b5f703 Use OutputFilesProvider on sh_binary
In the context of incremental soong, the output files
inter-module-communication will be through OutputFilesProvider.
The OutputFileProducer interface will be deprecated.

Test: CI
Bug: 339477385
Change-Id: I77929210f4ee2d83d110bca1391edc54be69f0db
2024-06-10 12:58:40 -07:00
Paul Duffin
ccad8ff606 Merge "Hide some noisy Metalava issues" into main 2024-06-10 19:47:31 +00:00
Paul Duffin
b679bdd997 Hide some noisy Metalava issues
Changes https://r.android.com/3106478 and https://r.android.com/3110137
unintentionally started reporting some previously hidden issues as
error when new. This change hides those issues again.

Bug: 343157584
Test: m checkapi before and after
Change-Id: I2e04c919ce5c4f2b39fab65afd13bc31725031f0
2024-06-10 20:46:05 +01:00
Jihoon Kang
98aa8fa840 Remove exportable modules when generating snapshots targeting older platform
This change modifies the contents of the generated Android.bp files so
that when generating a snapshot on a older platform, the "exportable"
modules are removed from the bp files, as the "exportable" modules are
first introduced in V and do not exist in older platforms.

Bug: 345162614
Test: ABTD
Change-Id: I2dba51b98deec7805bd796647a66981f237c55a9
2024-06-10 18:12:35 +00:00
Chris Wailes
ffebc5b71f Revert^8 "Upgrade to clang-r522817"
This reverts commit 8c27af2136.

Reason for revert: Re-land the Rust 1.78.0 and Clang r522817 updates

Change-Id: Id1fe3790c9688f2c204ca26b5638e1a245cc65f4
2024-06-10 18:06:52 +00:00
Chris Wailes
c8a44e32cf Revert^2 "rustc-1.78.0 Build 11910258"
This reverts commit 8517b8cd87.

Reason for revert: Re-land the Rust 1.78.0 and Clang r522817 updates

Change-Id: Icd3f4554b0e27ed8543a7c1b0301d4dd8ed4a82b
2024-06-10 18:06:27 +00:00
Zi Wang
2cbebeaf31 Merge "Use OutputFilesProvider on filesystem module types" into main 2024-06-10 17:53:11 +00:00
Aleks Todorov
c9becde031 cc: Make export_include_dirs configurable
Bug: 325444956
Test: m
Test: m [custom cc_library_headers with select]
Change-Id: Iebd66bb3f322276ff0f16dc7765257ea309b081f
2024-06-10 18:37:22 +01:00
Frederick Mayle
7833af17f9 allow arch_variants for C++'s rtti option
Currently, the RTTI setting is ignored for host builds, but we want to
change that. As a prereq, we need a way to explicitly enable/disable it
for host builds.

Bug: 341341056
Test: m
Change-Id: Ie503218181cec4f4ef70063caaa4832f748a8eb5
2024-06-07 16:06:46 -07:00
Zhuoyao Zhang
739b09eddf Merge "Add run_tool_with_logging as a standalone scripts" into main 2024-06-07 22:33:20 +00:00
Treehugger Robot
63de06c142 Merge "Make buildinfo_prop a regular module" into main 2024-06-07 18:36:54 +00:00
mrziwang
555d133433 Use OutputFilesProvider on filesystem module types
Test: CI
Bug: 339477385
Change-Id: I0902726cfef13c716d73c1abc5c9836bdcf3e10f
2024-06-07 11:15:33 -07:00
Cole Faust
daba74e728 Merge "Make buildinfo_prop depend on build number file" into main 2024-06-07 17:27:27 +00:00
Spandan Das
02f1e342cd Merge "Drop PRODUCT_INCLUDE_TAGS from banner vars" into main 2024-06-07 16:01:21 +00:00
Dmitrii Ishcheikin
9f50e8551d Merge changes from topic "revert-3108411-rust-update-prebuilts-1.78.0-PFGKGKZUFP" into main
* changes:
  Revert "rustc-1.78.0 Build 11910258"
  Revert^7 "Upgrade to clang-r522817"
2024-06-07 13:32:57 +00:00
Dmitrii Ishcheikin
8c27af2136 Revert^7 "Upgrade to clang-r522817"
36c6af6bd2

Change-Id: Id3320a7862f1ebbfe49bfa4caa36e7ccfd515524
2024-06-07 13:06:19 +00:00
Dmitrii Ishcheikin
8517b8cd87 Revert "rustc-1.78.0 Build 11910258"
Revert submission 3108411-rust-update-prebuilts-1.78.0

Reason for revert: b/345708905

Reverted changes: /q/submissionid:3108411-rust-update-prebuilts-1.78.0

Change-Id: I66b95447ddfcb3d35e5f4305a6d9feb2896fbdf7
2024-06-07 13:06:19 +00:00
Treehugger Robot
620b0c46d9 Merge "Regard out/soong/release-config as a source directory" into main 2024-06-07 05:12:31 +00:00
Chris Wailes
86cbd9e46d Merge "Revert^6 "Upgrade to clang-r522817"" into main 2024-06-07 03:31:39 +00:00
Chris Wailes
a4760cfbc0 Merge "rustc-1.78.0 Build 11910258" into main 2024-06-07 03:31:39 +00:00