Commit graph

83968 commits

Author SHA1 Message Date
Inseob Kim
2900689117
Add system_ext support to build_prop module
As some partitions have build.prop under etc/, this change adds
relative_install_path property to build_prop module. Also this change
adds system_ext related Soong variables and system_ext support in
gen_build_prop.py.

Bug: 322090587
Test: build and compare system_ext/etc/build.prop
Change-Id: I416662b8bae09383af0cdd3d8444a5c300006b7b
2024-10-24 19:41:23 +02:00
Inseob Kim
ec12b7dc1e
Revert^6 "Use Soong-built system/build.prop"
d5a12721b5aab92122a0bfb979144affa9a2e62a

Change-Id: I6f4bf3043e73763b047bec3303f1547ec647d12b
2024-10-24 19:41:23 +02:00
Inseob Kim
831bbcdc38
Revert^6 "Sync gen_build_prop.py to sysprop.mk"
This reverts commit 7b7593968bfbddd16e461c44da7062e02db5ad7a.

Reason for revert: fixed breakage with aosp/3200730, verified with ABTD

Change-Id: I83a4cb1a39bce1a1da8fabd49c6c895862a6c686
2024-10-24 19:41:23 +02:00
Inseob Kim
e63689fec0
Revert^2 "Conditionally pass kernel version to build.prop"
This reverts commit 29fed1efe85cc07bb4311513e4acc1da73dfb298.

Reason for revert: Fixed breakage with aosp/3200730, verified with ABTD

Change-Id: I207abd188636673250eb9a070be95db0b82f39e7
2024-10-24 19:41:23 +02:00
Inseob Kim
ce0cfaaf3f
Revert^6 "Add TARGET_SYSTEM_PROP to system build.prop"
530c32acbee136ff3475192335cc7594589de096

Change-Id: I9dc817855e3db7b96320a977b24b84d72e762893
2024-10-24 19:41:23 +02:00
Inseob Kim
262fa746b8
Revert "Revert "Revert^2 "Set output for build_prop even on Soon..."
Revert submission 3200273-revert-3196490-revert-3195812-revert-3195644-revert-3195637-revert-3184480-system_build_prop_soong-BZIDUTEOOC-KRUETCBWUR-TUHZPHUVFJ-XYILSUPUOA-PCKYAVELZP

Reason for revert: fixed breakage with aosp/3200730, verified with ABTD

Reverted changes: /q/submissionid:3200273-revert-3196490-revert-3195812-revert-3195644-revert-3195637-revert-3184480-system_build_prop_soong-BZIDUTEOOC-KRUETCBWUR-TUHZPHUVFJ-XYILSUPUOA-PCKYAVELZP

Change-Id: If9e6841bb915a79d9817838a1657017ddee9c1a7
2024-10-24 19:41:23 +02:00
Kiyoung Kim
fb75ec2011
Add 'use_debug_art' to product_variable
Add 'use_debug_art' property to product_variable so it can be checked
from Android.bp whether ART debug APEX or ART APEX should be used.

Bug: 351698657
Test: AOSP CF eng build succeeded
Test: AOSP CF userdebug build succeeded
Change-Id: I01cd80f0d899c55828ecb05fdafdc9bb05fd8200
2024-10-24 19:41:23 +02:00
Inseob Kim
f2ef1a3447
Fix build thumbprint in gen_build_prop.py
Bug: 356297315
Test: TH and ABTD
Change-Id: I28bccbbafbf9bcdf45a58361e37435b8d74d7464
2024-10-24 19:41:23 +02:00
Inseob Kim
eebe034cc1
Fix DISPLAY_BUILD_NUMBER
The dot was accidentally removed.

Bug: 353425495
Test: build
Change-Id: Id0c08f3c98d5b2f56e49180baf98bb8847f6bebd
2024-10-24 19:41:23 +02:00
Justin Yun
7a3899f93f
Fix build error for gen_build_prop.py
Provided undefined constants and imports.

Bug: 346214958
Test: Define "PRODUCT_DEFAULT_DEV_CERTIFICATE := \
                 build/make/target/product/security/testkey" and
      m aosp_cf_system_x86_64
Change-Id: Ic65f059fe87a997a9be695ebf13dfde2d2c6f82c
2024-10-24 19:41:23 +02:00
Inseob Kim
3ea2ca1ede
Fix a bug that BUILD_VERSION_TAGS is ignored
Bug: 349046347
Test: set BUILD_VERSION_TAGS and build
Change-Id: Ib981d917435d23139ac0c5b0aba5b6893539d200
2024-10-24 19:41:23 +02:00
Inseob Kim
8cd40a7e3c
Add build_prop soong module
build_prop is a soong module generating {partition}/build.prop. It's
ported from build/make/core/sysprop.mk and will replace sysprop.mk in
the future. Currently used only by Android.bp cuttlefish system image.

Bug: 322090587
Bug: 346214958
Test: compare system/build.prop and aosp_cf_x86_64_system-build.prop for
      eng / user / userdebug
Change-Id: Iad76139fe86ec4f582218c185aa15baeacaa38dc
2024-10-24 19:41:23 +02:00
Inseob Kim
feb21547f9
Use product_config from buildinfo_prop module
Many parameters can be migrated to product_config module. This is also a
PoC, which is helpful for future build.prop migration.

Bug: 346214955
Test: compare buildinfo.prop before and after
Change-Id: I751220b3a09583e469ae721c0e49a1909b6428d7
2024-10-24 19:41:23 +02:00
Inseob Kim
26e9a73798
Add product_config module
product_config module will export productVariables struct (defined in
android/variable.go). Other modules can depend on product_Config module
to read product variables, without needing to update Soong.

Bug: 346214955
Test: build and see output of product_config module
Change-Id: I06e1d2716dc2a8b90984bb46c5fc901cd1ca5020
2024-10-24 19:41:23 +02:00
Cole Faust
4b2bb5e9ab
Cleanup configurable getter usages
You don't have to call module.ConfigurableEvaluator(ctx) if ctx is
already a ModuleContext, you only need to do that for more restricted
contexts like SingletonContext.

Bug: 323382414
Test: m nothing --no-skip-soong-tests
Change-Id: I7612290d43dae7decfae283a341882d9016c98a3
2024-10-24 19:41:23 +02:00
Aleks Todorov
24a3d377d8
cc: Enable select syntax for cppflags
Bug: 325444956
Test: m
Test: m [custom build target with select in cppflags]
Change-Id: I7d27096526ce5b37afe447f900613a6fbb639986
2024-10-24 19:41:23 +02:00
Inseob Kim
a79bbf3bdb
Make vbmeta Partitions property configurable
This allows using select statements.

Bug: 354824866
Test: boot
Change-Id: I6cb41177620f85697eeaa77d3aec79f21674e245
2024-10-24 19:41:23 +02:00
Nelson Li
4427aab6e3
Enable select syntax support for phony_deps in phony_rule
Previously, `phony_deps` in `phony_rule` was a simple []string type, so
the select syntax was not supported. This change modifies it to a
Configurable[[]string] type to enable select syntax support.

Bug: 354850153
Test: Add select syntax in the Andorid.bp
Change-Id: Ibc5e5ee5d8fb9c19dc45d744a71b625fe94c9d88
2024-10-24 19:41:23 +02:00
Inseob Kim
10ec15d67c
Make more apex properties configurable
This allows using select statements with these.

* apps
* binaries
* prebuilts

Bug: 354824866
Test: m --no-skip-soong-tests
Change-Id: I8e28937d2fa6514b41bd189f56f9f584a60d2c80
2024-10-24 19:41:23 +02:00
Inseob Kim
989266aaff
Make genrule's srcs property configurable
This allows using select statements with it.

Bug: 354824866
Test: m
Change-Id: If1d71ac177618ad3eb628cdec57469886ee27c88
2024-10-24 19:41:23 +02:00
Inseob Kim
7889cf45fa
Make some apex properties configurable
This allows using select statements with these.

* androidManifest
* canned_fs_config
* systemserverclasspath_fragments

Bug: 354824866
Test: m
Change-Id: I4c2182944ec14d99332f437c39a19ba0dc6b7731
2024-10-24 19:41:23 +02:00
Inseob Kim
3cc3ca4d62
Make the vintf_fragments property configurable
This allows using select statements with it.

Bug: 354824866
Test: m
Change-Id: I9080c14b8342868d842670c65386582552b32d46
2024-10-24 19:41:23 +02:00
Inseob Kim
bbf681deaf
Make the defaults property configurable
This allows using select statements with it.

Bug: 354824866
Test: m
Change-Id: I673df0869a68c2e79b19c577d0ae1ff2249388db
2024-10-24 19:41:23 +02:00
Cole Faust
1d86a7f5e8
Add tests for configurable PostProcessors
Bug: 362579941
Test: m nothing --no-skip-soong-tests
Change-Id: Iaaff66844ebe0b2fb19148bd07562785b12cd7e9
2024-10-24 19:41:23 +02:00
Cole Faust
77b84c1f56
Add tests for selects with bindings
Bug: 323382414
Test: m nothing --no-skip-soong-tests
Change-Id: I43f10ce21d777e94839c695cb7ca8dcbb968d1c3
2024-10-24 19:41:23 +02:00
Cole Faust
2dc6a269f1
Update selects_test for selects with deferred expressions
Bug: 323382414
Test: m nothing --no-skip-soong-tests
Change-Id: I18257ff586fb31d4e0b012a249726a925832cdac
2024-10-24 19:41:23 +02:00
Cole Faust
4be39f9509
Allow soong config variables to be boolean-typed
So that you can use `true` instead of `"true"` in select expressions.

Bug: 323382414
Test: m nothing --no-skip-soong-tests
Change-Id: I950bd8e04f8fab5187ea5075514d476227943f33
2024-10-24 19:39:05 +02:00
Cole Faust
5b91c24c11
Make required a configurable property
So that users can use select statements with it.

Fixes: 347605145
Bug: 342006386
Test: m nothing --no-skip-soong-tests
Change-Id: Ica0ca6d1725b000b3748c0293e5a9f9b38ed87f9
2024-10-24 19:38:47 +02:00
Cosmin Tanislav
8b82c0d750
soong: paths: Fix out of tree $OUT
Change-Id: Ia915a7fcb95c76272fff6d350dc69abacb7b9e00
2024-10-24 19:38:44 +02:00
Quallenauge
878adb61bf
Add ability to enable scudo-free 32-bit libc variant.
The default value is set to enable scudo with the
32-bit libc variant.

Change-Id: I9205da12eceadfe6245763a49c7208d30b82ad99
2024-10-24 19:38:41 +02:00
Alessandro Astone
90d46b8e4b
soong: Add equivalent for LOCAL_EXPORT_CFLAGS
Change-Id: Ieb3e5739b50789bdbaf41a7d5adb04b08f7b9ea2
2024-10-24 19:38:37 +02:00
Bruno Martins
ba53cd2aba
check_boot_jars: Add oplus packages to whitelist
Change-Id: I8e467e35f148cfae9b2cc4ae32a26ffbca1984b5
2024-10-24 19:38:30 +02:00
Michael Bestas
cd0f7bbd34
check_boot_jars: Add IFAA Manager to whitelist
Fixes:
Error: out/target/common/obj/JAVA_LIBRARIES/org.ifaa.android.manager_intermediates/classes.jar
  contains class file org/ifaa/android/manager/IFAAManager.class,
  whose package name org.ifaa.android.manager is not in the whitelist
  build/make/core/tasks/check_boot_jars/package_whitelist.txt
  of packages allowed on the bootclasspath.

(The error only pops up when using "make dist")

Change-Id: Ib17b935ca39de7f6e8e6b68aa81fbebe1d5a30a5
2024-10-24 19:38:10 +02:00
Scott Lobdell
9d618bc55f
Add qcom.fmradio and org.codeaurora.internal to allowlist
B58: Add org.codeaurora.ims to the list.

Bug: 192690464
Change-Id: I0837873f5bf4e3a8402d70e720d2b55ee4e0a991
(cherry picked from commit ef25c8777180f88650dad8bd2499e8c8c9d174b7)
2024-10-24 19:38:10 +02:00
daniml3
d44bc5b281
sandbox_linux: set CCACHE_DIR as a writable path
Fixes "Read-only file system" error when using ccache.

NOTE: This is only required when both ccache exec and dir are on the
same partition.

Change-Id: I99afe644c8ee0e0b881c1643fef0cb31b83bcd17
2024-10-24 19:38:10 +02:00
dianlujitao
243b54c46e
Add Init_rc to Product_variables.Eng
Change-Id: If490b64f3631ec0825ffa28964a3e65572a9bcb8
2024-10-24 19:38:10 +02:00
LuK1337
d00a3c6c93
Add exported-to-kati namespaces to root namespace
This lets us use boot jar modules that are hidden behind
soong_namespace.

Change-Id: If0068387efdeca5458b5b97ce6b993b10a268bd2
2024-10-24 19:38:10 +02:00
Chirayu Desai
d0ee341157
Replace {device,qti}_kernel_headers only when building inline
Change-Id: Ibbae77a92f5f96da92213d0a0078867ddeeeaf04
2024-10-24 19:38:10 +02:00
Nolen Johnson
87f74a3d2b
Replace qti_kernel_headers with generated_kernel_headers
* Further avoids edits in CAF repos.

Change-Id: I99f9773e3132de7816c921c9d6b09e3e62b68265
2024-10-24 19:38:10 +02:00
Chirayu Desai
17e9e9c0be
Replace device_kernel_headers with generated_kernel_headers
* For inline kernel building
* Avoids having to make edits to multiple repos, even
  if it's a quick replacement

Change-Id: I01d4a9b3e24315731efbc8d16882818d20e38e89
2024-10-24 19:38:10 +02:00
Jan Altensen
f5c73b4700
soong: allow overriding header files
Includes:

  Author: Jan Altensen <info@stricted.net>
  Date:   Sat Aug 7 19:41:59 2021 +0200

    soong: move header override to compiler.go

     * library.go only covers libraries

    Change-Id: I3374999d6b364dd1bbc2060996964ee7b04493e7

Change-Id: Ia9d2210605c5927b529fbe9485b0e5abd079f487
2024-10-24 19:38:10 +02:00
Sam Mortimer
34e34e8c1d
soong: Add PathForSourceRelaxed
Used by vendor/lineage generated kernel header module.

Partial pick from:
Author: Sam Mortimer <sam@mortimer.me.uk>
Date:   Fri Aug 17 11:25:08 2018 -0700
    soong: Add java sources overlay support
    Change-Id: I94143febb0a8afa6a165364d36a40d5120a4e7bc

Change-Id: I415af71458f2a7be8e256cb3c548994f09c5bebf
2024-10-24 19:38:10 +02:00
LuK1337
277672eab4
cleanbuild: Add install to installclean files
Change-Id: Ib46d9638a2b3648d5e2ade1dfa864bc4e2ae695c
2024-10-24 19:37:55 +02:00
Jarl-Penguin
7e2044fa35
cleanbuild: Add recovery_kernel to installclean files
Signed-off-by: Jarl-Penguin <jarlpenguin@outlook.com>
Change-Id: I89b7093be92cb22a223033f9a7269624f7293c35
2024-10-24 19:37:52 +02:00
Julian Veit
a7671f2808
cleanbuild: add *.zip.sha256sum to installclean_files
Change-Id: I91f92349423eeb99e7e4521f6239baabe8b1314c
2024-10-24 19:37:47 +02:00
HeroBuxx
fee41a1895
soong: ui: dumpvar: Apparently PRODUCT_SOONG_NAMESPACES is necessary
Bring back PRODUCT_SOONG_NAMESPACES after this change:
3690485a16

Change-Id: I1efa7620d79eb9c330f0f028a91e10d2a9ce49e8
Signed-off-by: HeroBuxx <me@herobuxx.me>
2024-10-24 19:37:38 +02:00
Rashed Abdel-Tawab
c4ec0f2daa
soong: Add TEQUILA_VERSION to dumpvars
Change-Id: I24b29442f041aec451a173db404f542060ac67d2
2024-10-24 19:36:20 +02:00
Michael Bestas
a118060197 Source tequila specific envsetup
Change-Id: I39d3e711a6beab47e3284919a9a4fef15b0f40b9
2024-09-07 20:41:09 +00:00
Android Build Coastguard Worker
3fe78dc9b3 Merge cherrypicks of ['android-review.googlesource.com/3197217', 'android-review.googlesource.com/3203370'] into 24Q3-release.
Change-Id: Ida44fe5e0a853ea8cea1578c548f8d93ced9bce4
2024-08-06 22:35:41 +00:00
Spandan Das
56866c5c6d Hide unflagged mainline prebuilts with missing source.
Partner worksapces contain two versions of mainline prebuilts - BigAndroid
and Go. These two prebuilts export dexpreopt'd system server artifacts
to be installed in system image. Since the install paths are same, we
run into duplicate installation rules issue unless one of them is
hidden.

This hiding was previously done by creating a dependendency between
source aosp apex to BA and Go google prebuilts. However, this
implementaion had the unfortunate side effect on the packaging name of
the Google mainline prebuilts - the name becomes the aosp apex name.

Instead of creating the dependency to aosp apex, this CL hides all
mainline apex_set(s) if it has not been flagged using
RELEASE_APEX_CONTRIBUTIONS_*. Since there are some non mainline apex
prebuilts, apex_name will be used to determine whether the prebuilt is a
mainline module.

Test: m nothing --no-skip-soong-tests
Test: In partner workspaces, downloaded the CLs in b/355682304#comment7
Test: m out/target/product/generic/obj/PACKAGING/system_intermediates/file_list.txt
verified that aosp apexes are not installed, but mainline prebuilts are
installed

Test: unset RELEASE_APEX_CONTRIBUTIONS_ADSERVICES to build from source
Test: m out/target/product/generic/obj/PACKAGING/system_intermediates/file_list.txt
verified that aosp adservices is installed, and adservices prebuilt is
**not* installed.

Bug: 355682304
(cherry picked from https://android-review.googlesource.com/q/commit:85bd4625edc95c6e030acf4b4289724ff39e1d6e)
Merged-In: Idacb65313553bdea5c0593976694de478034229e
Change-Id: Idacb65313553bdea5c0593976694de478034229e
2024-08-06 22:35:28 +00:00