Commit Graph

82326 Commits

Author SHA1 Message Date
Treehugger Robot
ad0a9f4bed Merge "Make dirs a configurable property" into main am: 5c04707a3f
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3094914

Change-Id: I1e45d399fa997453637f3a6d78e3782fce6ef0fb
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-21 23:08:41 +00:00
Treehugger Robot
382afbaf9b Merge "Remove printf in tests" into main am: c7360364fc
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3096237

Change-Id: I40d506dd6b8a9c61d9b505a23af971b4bebb384a
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-21 23:08:31 +00:00
Treehugger Robot
5c04707a3f Merge "Make dirs a configurable property" into main 2024-05-21 22:55:03 +00:00
Treehugger Robot
c7360364fc Merge "Remove printf in tests" into main 2024-05-21 22:50:22 +00:00
LaMont Jones
52df388f5a Minor flagging cleanup
Add an underscore to make the linter more happy.

Bug: 339672075
Bug: 328495189
Test: manual
Change-Id: I6b1d6dcd0aff3c82551021b3f4768a34f27d6fb2
2024-05-21 15:35:28 -07:00
LaMont Jones
c6aef16816 Add build_flag_declarations module
And generate build-flags/build_flags.{pb,textproto} files

Bug: 328495189
Test: manual,TH
Change-Id: I97eb864e2d84bc606fef7e9077554894338edaa0
2024-05-21 15:35:22 -07:00
LaMont Jones
fa4ba22a41 Add build-flag-declarations tool
This will be used to gather build flag declarations

Bug: 328495189
Test: manual, TH
Change-Id: I155c26b1442347c4d433c9cbf22b94d944636702
2024-05-21 15:34:11 -07:00
Cole Faust
d9c6a5b802 Make dirs a configurable property
The microdroid system image customizes dirs using soong config
variables, make it configurable so that selects can be used instead.

Bug: 342006386
Test: Presubmits
Change-Id: I4fbf4dc0a04ad1d1f6539476408606028390cd64
2024-05-21 14:54:00 -07:00
Cole Faust
749eeaa94c Update select tests for optionals
Bug: 323382414
Test: m nothing --no-skip-soong-tests
Change-Id: I314719c9e287638acbc1ef82651d14fee6e1a55a
2024-05-21 14:19:05 -07:00
Cole Faust
167c9be663 Add test for selects with variables am: b9519094d9
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3096217

Change-Id: Ia67752490a3cec0c8c8723c0655326131f4c4da9
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-21 19:13:35 +00:00
Spandan Das
5f1f9405b5 Restrict validateApexClasspathFragments to active apex prebuilts
This is a followup to https://r.android.com/3073624 that moved
validation of bcp jars to the top-level prebuilt apex. It is possible
that there can be multiple prebuilt variants of a mainline module and
each prebuilt might have a skew in bcp jars. This CL limits the check to
only the selected apex prebuilt.

Test: go test ./apex
Bug: 328578801
Change-Id: If225a1af6004b6584b86ec442f99672f0d1f8314
2024-05-21 18:59:23 +00:00
Cole Faust
bc82eaf0f6 Remove printf in tests
This causes unnecessary spam when running
m nothing --no-skip-soong-tests.

Test: m nothing --no-skip-soong-tests
Change-Id: I4d893b3da47a9f79774c67274a84ff77be9c4811
2024-05-21 11:22:29 -07:00
Cole Faust
b9519094d9 Add test for selects with variables
I thought this might need extra parsing code to handle, but it appears
to work fine.

Bug: 323382414
Test: Presubmits
Change-Id: I4e8bf44a222427c34b2709a41aa5497984154d9d
2024-05-21 11:20:15 -07:00
LaMont Jones
dbe31b1013 Merge "Add Factory methods, WriteFormattedMessage" into main am: e0d5ea1d7c
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3093084

Change-Id: I55f868e38e6f6915121cd57f1a9093ed152d2b80
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-21 17:39:05 +00:00
Yu Liu
2ac88c1e43 Merge "Write ninja file in parallel." into main am: 928cb6d557
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3089625

Change-Id: Ic5853335becb259339f89ecebfd583160792f8f9
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-21 17:35:18 +00:00
LaMont Jones
e0d5ea1d7c Merge "Add Factory methods, WriteFormattedMessage" into main 2024-05-21 17:30:21 +00:00
Yu Liu
928cb6d557 Merge "Write ninja file in parallel." into main 2024-05-21 17:22:01 +00:00
Jeongik Cha
aaa6dcdabb implement InstallDepNeeded for sdkLibraryComponentTag
To include a sdk library impl and a permission xml for that.

Bug: 340365498
Test: m aosp_cf_system_x86_64 && check if there is a sdk lib impl and
permission xml

Change-Id: I10190fb9d398b6249efd6fe50b204e328250f23f
2024-05-22 00:43:20 +09:00
Treehugger Robot
449b64c1d8 Merge "Add clang_verify property for cc." into main am: 1c07aaac6a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3094482

Change-Id: Ia3b3d4147229bf717aaadb2915091bc307b4367f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-21 08:24:20 +00:00
Treehugger Robot
1c07aaac6a Merge "Add clang_verify property for cc." into main 2024-05-21 08:00:45 +00:00
Hsin-Yi Chen
482ba4d840 Merge "Add --release and --lib-variant to the instructions to update ABI dumps" into main am: cf90c1596a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2967045

Change-Id: I525ec0ac594e378b46bf86fa8d1f495ee6657918
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-21 05:16:41 +00:00
Hsin-Yi Chen
cf90c1596a Merge "Add --release and --lib-variant to the instructions to update ABI dumps" into main 2024-05-21 04:56:19 +00:00
kellyhung
d62ea30647 Add clang_verify property for cc.
This property is to support cflags "-Xclang -verify" build pass in Soong. The behaviors of clang_verify:
- append cflags "-Xclang -verify"
- append "&& touch $out" to the clang command line

Bug: 311284462
Test: go test -run TestClangVerify

Change-Id: Ic5825e2d649da4c3c5ed6da916e9804d7e3c03da
2024-05-21 11:31:48 +08:00
Jiyong Park
7bf969053d Merge "Add multilib.prefer32.deps to packaging base" into main am: 46469d6a03
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3093784

Change-Id: Iaf689ca64bcf897279d4218f3a64336dc148b543
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-21 01:23:08 +00:00
Jiyong Park
46469d6a03 Merge "Add multilib.prefer32.deps to packaging base" into main 2024-05-21 01:00:58 +00:00
Treehugger Robot
54629c10f3 Merge changes from topic "revert-3094658-revert-3088867-QEHDREAABY-IOPVAUIKWL" into main am: 652824c8d6
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3094481

Change-Id: I37ed25d76cf010cafa5f57d618bf90d0c6340b1e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-20 23:09:15 +00:00
Treehugger Robot
652824c8d6 Merge changes from topic "revert-3094658-revert-3088867-QEHDREAABY-IOPVAUIKWL" into main
* changes:
  Revert^2 "Refactor how jni_libs dependencies are added"
  Revert^2 "Add make java.dependencyTag installable or not"
  Revert "Revert "APK-in-APEX should set use_embedded_native_libs:..."
  Revert^2 "Install jni symlinks in Soong"
2024-05-20 23:00:05 +00:00
Treehugger Robot
2c620fc832 Merge "Make refreshmod a script instead of a shell function" into main am: 39b3b1f71d
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3092994

Change-Id: I823367a045c8c3760b7163fe5e4d570d5147bdf7
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-20 22:41:07 +00:00
Treehugger Robot
73bf37414e Merge "Convert envsetup.sh shell functions to scripts." into main am: 4deefa4c99
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3092993

Change-Id: Iee36c388c33c4462c195484c71a0941d42cdbcfd
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-20 22:40:40 +00:00
Treehugger Robot
c068cbece3 Merge "Create empty monolithic hiddenapi flags files for non java devices." into main am: 766a156fac
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3093141

Change-Id: I59e0c9b8a51f3e05ba3b7eb0804e897f82500161
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-20 22:40:02 +00:00
Treehugger Robot
39b3b1f71d Merge "Make refreshmod a script instead of a shell function" into main 2024-05-20 22:38:12 +00:00
Treehugger Robot
4deefa4c99 Merge "Convert envsetup.sh shell functions to scripts." into main 2024-05-20 22:38:09 +00:00
Treehugger Robot
766a156fac Merge "Create empty monolithic hiddenapi flags files for non java devices." into main 2024-05-20 22:21:29 +00:00
Treehugger Robot
fddb5b55a2 Merge "Do not instrument the implementation library of sdk_library" into main am: 58dace8454
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3094444

Change-Id: I5fabc72de6daac1706d64774fd24999489de919a
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-20 22:04:12 +00:00
Treehugger Robot
58dace8454 Merge "Do not instrument the implementation library of sdk_library" into main 2024-05-20 21:45:27 +00:00
Jiyong Park
92d8404bc5 Revert^2 "Refactor how jni_libs dependencies are added"
562d9054e5

Change-Id: Ib9e6efc736bd0ba20637afb0a8d05b9b0266586f
2024-05-21 06:41:37 +09:00
Jiyong Park
c1e5b1848a Revert^2 "Add make java.dependencyTag installable or not"
f14b5ba863

Change-Id: I0638d4997cb8e5178f869ea0f469a1a5c141611e
2024-05-21 06:41:36 +09:00
Jiyong Park
970c524ab5 Revert "Revert "APK-in-APEX should set use_embedded_native_libs:..."
Revert submission 3094658-revert-3088867-QEHDREAABY

Reason for revert: not a regression
Reverted changes: /q/submissionid:3094658-revert-3088867-QEHDREAABY

Change-Id: Ie1e4a196f181643a3e64e573b132d52d7455461b
2024-05-21 06:41:36 +09:00
Jiyong Park
25b9222a43 Revert^2 "Install jni symlinks in Soong"
b7646e4d4f

This is a relanding of I0930cb1ebb8ca8a6efd64b1ce2cdfd1c47fe19ef plus
some forward fix described below:

Export non-embedded JNI lib names via LOCAL_REQUIRED_MODULES

The non-embedded JNI libs are installed as the dependencies of the APK.
However, that dependency is not revealed to the Make world and as a
result, the JNI libs are dropped from the file_list.txt file which Make
uses to filter files to include in the image file.

Adding the lib names to LOCAL_REQUIRED_MODULES fixes it.

Bug: 341335305
Bug: 330276359
Test: m out/target/product/vsoc_x86_64_only/obj/PACKAGING/system_intermediates/file_list.txt
and check if libcarservicejni.so is there
Test: go test ./... under soong/java

Change-Id: If915a05909129c92fab7a6cbbd0c4c55f5ced598
2024-05-21 06:40:14 +09:00
优秀
d75e99859b Fix the problem of resource integration confusion caused by not adding regional configuration tailoring.
An android app is automatically creating a corresponding "product
characteristics" RRO. The app's resources are filtered by the aapt
product config, but the rro resources are not. This cl makes the RRO
resources also filtered.

When building the CN version, it was expected that only the resources
corresponding to the CN version would be retained, but the actual result
was that other unexpected areas appeared on the region setting interface
in boot interface. After investigation, it was found that the
framework-res__nosdcard__auto_generated_characteristics_rro.apk apk
integrated resources other than the CN version that caused this problem,
and the integration of this apk was not filtered by aaptconfig.
The purpose of this modification is to add aaptconfig filtering, and it
has been verified that this problem can be fixed.

Change-Id: I85d5d07397bd2b0759d35b9f3a07f015346af4e9
Signed-off-by: wybxyx <wybxyx@gmail.com>
2024-05-20 21:35:12 +00:00
LaMont Jones
e3de5ac6d0 Add Factory methods, WriteFormattedMessage
Adds:
 - FlagArtifactFactory()
 - FlagArtifactsFactory()
 - WriteFormattedMessage()

Bug: 328495189
Test: manual
Change-Id: I8b3c1e1e7ea3e52e9e7e8b1f8162fedd3e83dd33
2024-05-20 13:43:20 -07:00
Yu Liu
1b2ddc8093 Write ninja file in parallel.
Bug: 335718784
Test: CI
Change-Id: Ie36d78478a60359b704767689846e76b1c2ba76d
2024-05-20 20:28:44 +00:00
Jihoon Kang
34155e3363 Do not instrument the implementation library of sdk_library
Currently, the implementation library of the java_sdk_library is always
being instrumented due to the issue described in b/159241638.

With https://r.android.com/3079425, all compilation actions of the
java_sdk_library is delegated to the implementation library.
Consequently, this has caused all java_sdk_library to be instrumented,
leading to coverage builds failing due to double instrumentation (i.e.
instrumenting an already instrumented class file). In order to prevent
such error, this change modifies the property of the implementation
library to not instrument during coverage builds.

This change also copies some additional java library properties from
that of the implementation library to the top level sdk library, in
order to ensure that all non-null androidmk entries are correctly
reflected in that of the sdk library.

Test: lunch husky-trunk_staging-userdebug && EMMA_INSTRUMENT=true EMMA_INSTRUMENT_FRAMEWORK=true m droid dist
Bug: 340174053
Bug: 341170242
Change-Id: I9d8f1c190205fa7a827649961ba5222293a945ad
2024-05-20 19:08:49 +00:00
Spandan Das
a90db96bb9 Create empty monolithic hiddenapi flags files for non java devices.
This is a followup https://r.android.com/3089366 that disabled the
creation of out/soong/hiddenapi/hiddenapi* files for non java device
builds. This works fine for `m`, but `m dist` runs issues since
`f/b/boot/Android.bp` dists these files. For non java devices, the
previous implementation would report missing files during ninja
excecution (https://b.corp.google.com/issues/338363444#comment5)

This CL creates empty files for these so that the dist tags can always
be resolved.

Bug: 338363444
Test: lunch aosp_cf_x86_64_minidroid-trunk_staging-userdebug && m dist
Change-Id: Ice2d970a164246753da89a6a06dfd28a627a272d
2024-05-20 18:56:28 +00:00
Treehugger Robot
7bef057a69 Merge "Dump the required modules into module-info.json" into main am: a6ecdd39c8
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3094443

Change-Id: I3f0b12ea8f31b338201800fbfbc025997c7199ac
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-20 18:03:13 +00:00
Treehugger Robot
665ece7963 Merge changes Ifbe123d1,Ie2e738a6 into main am: 8298134503
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3083813

Change-Id: I007f8627939a5c65231fcfe7796e869d6a3db50c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-20 18:02:51 +00:00
Treehugger Robot
a6ecdd39c8 Merge "Dump the required modules into module-info.json" into main 2024-05-20 17:55:15 +00:00
Treehugger Robot
8298134503 Merge changes Ifbe123d1,Ie2e738a6 into main
* changes:
  Support min_sdk_version overrides in apexes
  Support min_sdk_version overrides in apps
2024-05-20 17:38:11 +00:00
Yi Kong
4e81f8efab Turn off relaxed-template-template-args as a workaround am: 9b9d29b845
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3092273

Change-Id: I9ec5ae9cb20cb98a9779c17fb4665adb272a7aff
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-20 16:46:46 +00:00
Hugo Drumond Jacob
44616ccdce Dump the required modules into module-info.json
Certain applications, like tracking the dependency chain of modules,
knowing the "required" dependencies is required.

In this context, "required" here means the `required` field in
Android.bp files.

Bug: 339193439
Test: Inspect module-info.json for the `required` field
Change-Id: I420c781d410e715ef86823278f99e4ffe51f8022
2024-05-20 18:40:09 +02:00