Commit graph

395 commits

Author SHA1 Message Date
Cole Faust
a83dd3bc49
Add soong_config_set_bool
To allow typing soong config variables as bools for using in soong
select expressions.

Bug: 323382414
Test: m nothing --no-skip-soong-tests
Change-Id: I39496cd2a3366689e3f232ba10353a7d56d8d1ed
2024-10-24 19:31:52 +02:00
Quallenauge
ef7318daaf
soong: Add ability to build scudo-free 32-bit libc variant.
Targets can switch on this feature by setting
MALLOC_SVELTE_FOR_LIBC32 := true

The default is to build libc32 with scudo enabled.

Change-Id: I207659af05412a8e7dc850d57b491ee565554a65
2024-10-24 19:28:26 +02:00
Ricardo Cerqueira
3329a204d2
build: Squash of allowing a device to generically define its own headers
Author: Ricardo Cerqueira <cyanogenmod@cerqueira.org>
Date:   2011-04-12 10:57:22 +0100
    Allow a device to generically define its own headers

    We have a few cases of devices including specific versions of projects
    just because of modified headers (msm_mdp.h comes to mind), and I just
    had enough of ifdeffing header files for specific cases (the P990 needs
    a lot of these).
    Now... if a target defines a TARGET_SPECIFIC_HEADER_PATH, any headers in
    there will take precedence over the standard ones; for example, on the
    p990, I have

    TARGET_SPECIFIC_HEADER_PATH := device/lge/p990/include

    which makes, for example, the
    device/lge/p990/include/hardware_legacy/AudioHardwareInterface.h be
    used instead of
    hardware/libhardware_legacy/include/hardware_legacy/AudioHardwareInterface.h
    whenever a source file uses <hardware_legacy/AudioHardwareInterface.h>

    Change-Id: I41b62668b60e3f62a6ebd3738d8d2675103a81e6a

    build: fix target header overlay

    LOCAL_C_INCLUDES as defined by the makefile should be put AFTER
    the overlay includes so the overlay always takes precedence.

    Change-Id: I489b2aab6dbacd9122d834f85e07b63ed1271f07

Author: Jan Altensen <info@stricted.net>
Date:   2020-09-10 15:18:49 +0200
    soong: add TARGET_SPECIFIC_HEADER_PATH

    Change-Id: I582ae8e6e010016b33fd9b020b723e5fc2dc442b

Change-Id: I3c885fe504ce4f646001697119cffd674db9ec49
2024-10-24 19:28:26 +02:00
Treehugger Robot
27d977e49b Merge "Drop product config include tags" into main 2024-06-06 22:12:38 +00:00
Cole Faust
b20aee1b1e Merge "Remove all VNDK deprecation flags" into main 2024-06-05 19:24:17 +00:00
Steven Moreland
62f6c088bf Merge "Shipping_api_level" into main 2024-06-05 19:23:21 +00:00
Cole Faust
58c46179b7 Remove unused variables in soong variables file
Test: Presubmits
Change-Id: I9c303c4dab9ad18653cda7ca62ec8884d044bba0
2024-06-04 11:10:59 -07:00
Steven Moreland
fb92bbdcd1 Shipping_api_level
Make it pretty in blueprint.

Bug: 340953047
Test: N/A
Change-Id: I68d1e891578afe2581e760b6a025e8280c3cb833
2024-06-04 03:21:07 +00:00
Kiyoung Kim
69f5dbb0d0 Remove all VNDK deprecation flags
VNDK is fully deprecated, so flags to deprecate VNDK is no longer
needed. This change removes all flags deprecates VNDK.

Bug: 330100430
Test: AOSP CF build succeeded
Change-Id: Ifc918a875d7d5bed232165873ee9b0c562841594
2024-05-31 09:52:18 +09:00
Kiyoung Kim
5ed5fe8b62 Do not pass VndkUseCoreVariant into Soong
VNDK use core variant is deprecated, so there is no meaning to pass this
variable into Soong. This change removes TARGET_VNDK_USE_CORE_VARIANT
passing into soong variable.

Bug: 330100430
Test: AOSP CF build succeeded
Change-Id: I5f46764862c7b32fbf48b942c4ac07426e97d6dd
2024-05-24 11:28:42 +09:00
Spandan Das
7930dd7fb2 Drop product config include tags
This product config variables were previously used to prune Android.bp
files from soong analysis using blueprint_package_includes

Bug: 308188212
Test: m nothing
Change-Id: If3f88dbe2abb2db5f1112981e706d8a2cb228895
2024-05-22 19:23:46 +00:00
Cole Faust
a1848c3833 Export release flag types to soong
Bug: 323382414
Test: Presubmits
Change-Id: I8f91dfe84f9606a8cdbd2ca04013b1c10a146962
2024-05-21 16:53:55 -07:00
Christopher Ferris
9ff5fbb023 Add MALLOC_LOW_MEMORY as synonym for MALLOC_SVELTE.
The MALLOC_SVELTE variable name is confusing, so add a new variable
name called MALLOC_LOW_MEMORY. Still support MALLOC_SVELTE.
Also, support the change of Malloc_not_svelte to Malloc_low_memory.

Test: Verified scudo config is used by default.
Test: Verfified Android GO config uses the jemalloc low memory config.
Change-Id: I2606205da746d8ab20e29884c7dcb5a77add51e4
2024-04-25 16:46:35 -07:00
Linus Tufvesson
984b069ce2 Use flag for min supported target sdk
Test: Build and flash
Test: adb shell getprop ro.build.version.min_supported_target_sdk
Bug: 297603927
Change-Id: I3a2bcad6b001364a2cf35cad1cac7f69185169d0
2024-04-16 08:08:49 +00:00
Kiyoung Kim
665827ea7b Merge "Remove BOARD_VNDK_VERSION usage from Kati" into main 2024-04-09 07:31:00 +00:00
Kiyoung Kim
66481ae8e1 Remove BOARD_VNDK_VERSION usage from Kati
As of VNDK deprecation, BOARD_VNDK_VERSION should not be referenced
anymore. This change removes BOARD_VNDK_VERSION references and related
logics from Kati, so VNDK deprecation can be fully set without flag.

Bug: 330100430
Test: AOSP CF build succeeded
Change-Id: I9ea5f1236268b99eb731ebf48afd9e595d06ab1a
2024-04-09 14:47:29 +09:00
Spandan Das
7f52f2a804 Convert BuildIgnoreApexContritbutions variable to a boolean
(This relands aosp/3007754 with additional handling for go apexes. The
additional handling was added in internal in ag/26705862, so we need to
add this to aosp as well)

The ignore list is burdensome to maintain once we start adding the
module sdk contents to apex_contributions. Convert the variable to a
boolean. When set to true, all contents in `apex_contributions` will be
ignored

Test: m nothing on aosp,google and google_fullmte devices
Ignore-AOSP-first: CL topic does a cleanup of an internal only denylist

Merged-In: If899f6eaf5449c2aa789d0bd5b791a3db715c676
Merged-In: I4532f3743eb3b7121e1f5e522097c1aba3d9a4fd
Change-Id: I18db6657b78b2741c7f9af9e9d0150f85edeeda7
2024-04-03 01:00:01 +00:00
Inseob Kim
06d22319d2 Revert^2 "Migrate buildinfo.sh script into Soong"
This reverts commit 54101665ee.

Reason for revert: Fixed build breakage

Bug: 322090587
Change-Id: I065a187bf5863cbb381b4f3308aae7b7200ffa6d
Test: compare build.prop before and after
Test: build multiple times and see build.prop isn't rebuilt
2024-03-27 05:19:56 +00:00
Gina Ko
54101665ee Revert "Migrate buildinfo.sh script into Soong"
Revert submission 3004875-buildinfo_prop_soong

Reason for revert: DroidMonitor-triggered revert due to breakage b/331462869

Reverted changes: /q/submissionid:3004875-buildinfo_prop_soong

Bug: 331462869
Change-Id: I02b125f10aaba538998dfe3a503ed2021405e8ae
2024-03-26 22:45:44 +00:00
Inseob Kim
6a35810856 Migrate buildinfo.sh script into Soong
To build system.img in Soong, we need all artifacts including
build.prop. This fully migrates buildinfo.prop file into Soong as a
first step to build build.prop on Soong.

Bug: 322090587
Test: compare build.prop before and after
Test: build multiple times and see build.prop isn't rebuilt
Change-Id: I0d5aab21a825cfe22f97a6834209f9df196625d9
2024-03-21 17:18:59 +09:00
Yu Liu
9e28f469d5 Validate aconfig libs are built with the correct modes.
Bug: 323071835
Test: Unit tests and manual tests.
Change-Id: I508be0433e11295608be0551222ae38b761b9214
2024-03-06 01:25:46 +00:00
Jihoon Kang
49f08d9328 Introduce the product variable PRODUCT_EXPORT_RUNTIME_APIS
PRODUCT_EXPORT_RUNTIME_APIS is a product variable that inherits the
behavior of the build flag RELEASE_EXPORT_RUNTIME_APIS, which is being
removed. This will be utilized in the product `sdk_with_runtime_apis`,
which will be introduced in a future change.

Test: m nothing --no-skip-soong-tests
Bug: 326312949
Change-Id: I4966b7bfc7423db049acfcede67233352ba8341b
2024-02-22 20:08:53 +00:00
Jihoon Kang
c974a2786f Introduce product variable PRODUCT_HIDDEN_API_EXPORTABLE_STUBS
The new product variable behaves identical to the build flag
RELEASE_HIDDEN_API_EXPORTABLE_STUBS: if the variable is set to true, the
hiddenapi flags are generated from the "exportable" stubs (i.e. the
stubs that does not include READ_WRITE permission or DISABLE state
flagged apis) instead of the "everything" stubs (i.e. the stubs that
includes all flagged apis regardless of the state of the flags). If the
variable is set to false, the stubs are generated from the "everything"
stubs.

This product variable will be utilized for `sdk_with_runtime_apis`
product in the future changes.

Test: m nothing
Bug: 326310637
Change-Id: Iab3b46ac39972b8721d3aa07cec622c57dafbd0e
2024-02-22 20:08:18 +00:00
Spandan Das
9001b9afbf Merge "Revert "Revert "Create a product variable for skipping apex cont..."" into main 2024-02-20 07:53:04 +00:00
Spandan Das
7416360cb3 Revert "Revert "Create a product variable for skipping apex cont..."
Revert submission 2966055-revert-2964509-skip-apex-contributions-EOKWOFHENC

Reason for revert: The root cause CL has been reverted https://googleplex-android-review.git.corp.google.com/c/platform/vendor/google/build/+/26268799

Reverted changes: /q/submissionid:2966055-revert-2964509-skip-apex-contributions-EOKWOFHENC

Change-Id: I9a40b652d38f1a4a4693e0cdb66cbe48632bafff
2024-02-17 03:31:51 +00:00
Treehugger Robot
cdf6054f03 Merge "Revert "Create a product variable for skipping apex contribution..."" into main 2024-02-17 02:24:02 +00:00
Jihoon Kang
8804a8e2bd Revert "Create a product variable for skipping apex contribution..."
Revert submission 2964509-skip-apex-contributions

Reason for revert: 325666427

Reverted changes: /q/submissionid:2964509-skip-apex-contributions

Change-Id: I0172bdf99adce7b0eef42161c79cc7c1fdf977eb
2024-02-16 23:25:08 +00:00
Spandan Das
6d7a094dd0 Merge "Create a product variable for skipping apex contribution contents" into main 2024-02-15 08:10:57 +00:00
Spandan Das
debf166cad Create a product variable for skipping apex contribution contents
This denylist will be used to ignore the prebuilt google apexes listed
in apex_contributions of vendor/google/build when building aosp products
in next.

Test: in main, lunch aosp_cf_x86_64_phone-next-userdebug && m nothing
(with ag/25842580)
Bug: 308187268

Change-Id: I5330b44caf15193a00f1e255cef24b67c794382b
Merged-In: I5330b44caf15193a00f1e255cef24b67c794382b
2024-02-15 01:38:50 +00:00
Inseob Kim
5fd1645f11 Merge "Revert^2 "Use vFRC version as-is for ToT sepolicy version"" into main 2024-02-13 04:02:36 +00:00
Inseob Kim
4e72d5e4da Revert^2 "Use vFRC version as-is for ToT sepolicy version"
fb3a97fc7d

Change-Id: I13612dee1ebc6aabbd3bc46fb4c30568dc23a6da
2024-02-13 02:20:00 +00:00
Ikjoon Jang
fb3a97fc7d Revert "Use vFRC version as-is for ToT sepolicy version"
Revert submission 2952245-vfrc_as_tot_sepolicy

Reason for revert: DroidMonitor-triggered revert due to breakage https://android-build.corp.google.com/builds/quarterdeck?branch=git_main&target=mainline_modules_arm64-mainline-userdebug&lkgb=11421838&lkbb=11421957&fkbb=11421841, b/324335916

Reverted changes: /q/submissionid:2952245-vfrc_as_tot_sepolicy

Bug: 324335916
Change-Id: I573db8b1a7f7874e146eea1135594eb0f1b6658f
2024-02-08 02:53:55 +00:00
Kiyoung Kim
1e14cdfd56 Do not set BOARD_VNDK_VERSION and PLATFORM_VNDK_VERSION
Do not set BOARD_VNDK_VERSION and PLATFORM_VNDK_VERSION if VNDK is
deprecated. BOARD_VNDK_VERSION and PLATFORM_VNDK_VERSION should not be
used once VNDK is deprecated with KEEP_VNDK=false

Bug: 316829758
Test: AOSP CF build succeeded
Change-Id: Iead60663bed3653e63e7a444a873cfaea50780b0
2024-02-07 21:07:23 +09:00
Inseob Kim
5653f37337 Use vFRC version as-is for ToT sepolicy version
Minor version hasn't been used. As we are moving to a new versioning
scheme, removing the minor version and using vFRC version as-is to align
with other vendor interfaces.

Bug: 314010177
Test: build and boot
Change-Id: I138c13c798a15cbb52c45cbad68e5a65cb1d0888
2024-02-06 03:56:49 +00:00
Jihoon Kang
5a438e61ba Remove RELEASE_EXPOSE_FLAGGED_API and PRODUCT_NEXT_RELEASE_HIDE_FLAGGED_API export
As seen in the CLs in the same topic, these two variables are no longer
in used and do not need to be exported to Soong.

Test: m nothing --no-skip-soong-tests
Bug: 320515715
Change-Id: I268dc3f051d3ff15d95515755dd0c9f9c15dfc82
2024-01-16 20:09:50 +00:00
Jiyong Park
885b004547 Revert^2 "Add BUILD_BROKEN_DONT_CHECK_SYSTEMSDK"
5ef2634d5a

Change-Id: I4430ac4b2411baf3f33695ba3b1520345d7f493d
2024-01-04 23:23:38 +00:00
Sebastian Pickl
5ef2634d5a Revert "Add BUILD_BROKEN_DONT_CHECK_SYSTEMSDK"
Revert submission 2897682-dont_limit_systemsdk

Reason for revert: blocking revert for 318695834

Bug:318695834

Reverted changes: /q/submissionid:2897682-dont_limit_systemsdk

Change-Id: Ic4a63fe81434ddb9cb57519bd11c1924224111c6
2024-01-04 19:01:29 +00:00
Jiyong Park
7a0e042276 Add BUILD_BROKEN_DONT_CHECK_SYSTEMSDK
https://android-review.git.corp.google.com/q/topic:limit_systemsdk
introduced a new check for preventing the use of system SDKs above 34
from Java modules in the vendor partition.

As this may break some unprepared targets, introduce
BUILD_BROKEN_DONT_CHECK_SYSTEMSDK as a temporary escape hatch.

This flag will be deleted eventually.

Bug: 314011075
Test: Add BUILD_BROKEN_DONT_CHECK_SYSTEMSDK := true to BoardConfig.mk
Change-Id: Ie70ce428ec3df8580099efd99e5c7c9c4f9daecb
2024-01-04 23:48:27 +09:00
Vilas Bhat
f464d39aed 16k: core: Update DevicePageSizeAgnostic to DeviceNoBionicPageSizeMacro
This is part of a larger change to update the flag
PRODUCT_PAGE_SIZE_AGNOSTIC to PRODUCT_NO_BIONIC_PAGE_SIZE_MACRO.
This is to help clarify that this flag doesn't mean the device
will actually work end-to-end with any page size.

Bug: 312541564
Change-Id: I584282ab5623003721c0c32483a842de1b4f9ef9
2023-12-05 22:01:08 +00:00
Vilas Bhat
01e2b98ca8 16k: core: Update PRODUCT_PAGE_SIZE_AGNOSTIC to PRODUCT_NO_BIONIC_PAGE_SIZE_MACRO
This is to help clarify that this flag doesn't mean the device
will actually work end-to-end with any page size. Renaming
several dependent variables will be done in subsequent patches.

Bug: 312541564
Test:
```
 $ source build/envsetup.sh
 $ lunch aosp_cf_arm64_phone_pgagnostic-trunk-userdebug
 $ get_build_var TARGET_NO_BIONIC_PAGE_SIZE_MACRO
 true
```
Change-Id: I9bae8b00139f601a3324da902aeb4ae82113ccdd
2023-12-05 21:59:31 +00:00
Justin Yun
2c583744cb Define __ANDROID_VENDOR_API__
cc modules can use __ANDROID_VENDOR_API__ to read BOARD_API_LEVEL
that is the API level of the vendor surface.

Bug: 313822931
Test: check ninja commands to have -D__ANDROID_VENDOR_API__=<version>
Change-Id: I868b88ae72b4f60bc3d5ad567fbacd2222dd62d7
2023-11-30 05:30:48 +00:00
Yi-Yo Chiang
f061800468 Deprecate BOARD_BUILD_GKI_BOOT_IMAGE_WITHOUT_RAMDISK
These variables are no longer used. We don't build GKI in the platform
tree anymore. Remove these vars as we are not maintaining these.

Bug: 229701033
Test: presubmit
Change-Id: If8c978a07094da6a651c1e3f06a437dea9ef52b9
2023-11-24 15:04:33 +08:00
Jihoon Kang
9e0998b777 Revert^2 "Disable from-text stub build for sdk products"
This change introduces `PRODUCT_BUILD_FROM_SOURCE_STUB` product
variable, which is set to true for sdk targets.

This change resubmits https://r.android.com/2834692.

Test: m TARGET_PRODUCT=sdk TARGET_RELEASE=trunk_staging sdk and inspect ninja query to verify that stubs are built from source
Bug: 311203379
Change-Id: I7d9f833ae76ceabbf2ce4df0141688e24ea164c8
2023-11-17 01:52:12 +00:00
Alyssa Ketpreechasawat
c7bc53999d Merge "Remove jars in PRODUCT_APEX_BOOT_JARS_FOR_SOURCE_BUILD_ONLY (e.g. framework-pdf in MP) from ApexBootJars when prebuilt is enabled." into main 2023-11-14 19:13:32 +00:00
Alyssa Ketpreechasawat
ba231d2084 Remove jars in PRODUCT_APEX_BOOT_JARS_FOR_SOURCE_BUILD_ONLY (e.g. framework-pdf in MP) from ApexBootJars when prebuilt is enabled.
framework-pdf is newly added framework jar which is not yet included in
the actual prebuilt apex. Thus, we add it PRODUCT_APEX_BOOT_JARS_FOR_SOURCE_BUILD_ONLY. The APEX_BOOT_JARS_EXCLUDED will be created based on PRODUCT_APEX_BOOT_JARS_FOR_SOURCE_BUILD_ONLY and will be removed from ApexBootJars.

Bug: 304719212
Test: lunch cf_x86_phone-next-userdebug & m
Test: lunch cf_x86_phone-trunk-userdebug & m
Change-Id: I9902131629900fbd629b8560a422ed8c2b06073c
2023-11-13 13:22:32 +00:00
LaMont Jones
99845eeaba Export build flags to soong.
This exports a map of build flags used in this release config to Soong.

Bug: b/302514918
Test: manual
Change-Id: Ia93195f09dee4945f07326eb7a5973c2ce2e025b
2023-11-01 16:16:53 +00:00
Cole Faust
2fc2709115 Merge "Revert^2 "Enable genrule sandboxing by default"" into main 2023-10-19 23:10:55 +00:00
Cole Faust
b0990300e9 Revert^2 "Enable genrule sandboxing by default"
50cd6b2a18

Change-Id: Ie0be9331481eb1e9b96034b155efb76a8be9596a
2023-10-18 22:50:28 +00:00
Mateusz Cicheński
50cd6b2a18 Revert "Enable genrule sandboxing by default"
Revert submission 2782270-genrule_sandboxing_by_default

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

Reverted changes: /q/submissionid:2782270-genrule_sandboxing_by_default

Change-Id: I3a8eb5d3a6a9e0d51ed7798c99187e9ca236b7bd
2023-10-17 17:36:43 +00:00
Cole Faust
fa7445da12 Add PRODUCT_PACKAGES to soong.variables
Bug: 297269187
Test: m bazel_sandwich
Change-Id: Iea8877b7fe56f7cd0e5e227ce0e6597bdc708162
2023-10-16 18:27:23 -07:00