Commit graph

99249 commits

Author SHA1 Message Date
Tom Powell
bc0ef30e0e
releasetools: support reading release keys out of some sort of command
key passphrases may live in some sort of secure storage, support running
an arbitrary command to retrieve them.

Change-Id: I49862cf60f1b73a2356e0c492e1038beef28a95f
(cherry picked from commit 9caf8603575aecf51761feaeac6db619be76cfd3)
2024-10-24 19:27:38 +02:00
Peter Cai
44112727ed
releasetools: do not remove dynamic partitions in system-only builds
* Before this commit, the generated `dynamic_partitions_op_list` in
  FullOTA packages always tries to remove all partitions and recreate
  them upon flashing. This makes it impossible to have a system-only
  "FullOTA" because vendor partition(s) are always removed.

* This commit detects if a build is vendor-less and disables every
  dynamic partition operation except `resize`, in order to keep the
  original content around after the flash. The change should not affect
  non-dynamic-partition or builds with vendor image included.

Change-Id: I0cded7f3b2958f35103d73d19b7fb5f292f6c17f
Signed-off-by: Jesse Chan <jc@lineageos.org>
2024-10-24 19:27:38 +02:00
LuK1337
e7ee416ff9
Unset BOARD_EXT4_SHARE_DUP_BLOCKS
* This allows us to remount ext4 partitions read-write
  on devices with dynamic partitions.

This reverts the following commits:

Revert "Move BOARD_EXT4_SHARE_DUP_BLOCKS to BoardConfigMainlineCommon.mk"

This reverts commit I0eb035ba6edf44719d5de4f09fd97b5783537597.

Revert "enable BOARD_EXT4_SHARE_DUP_BLOCKS for generic_arm64"

This reverts commit 125b6d6eea.

Change-Id: I3768374d6da59f969ea44c1965f75c934edf3b57
2024-10-24 19:27:38 +02:00
Christian Oder
d76725c913
build_image: Allow disabling custom inode count calculation
This allows us to skip custom inode count calculation by setting
BOARD_*IMAGE_EXTFS_INODE_COUNT to -1, this will end up letting
mke2fs calculate appropriate inode count on its own.

While build_image only allocates exact number of needed inodes
plus 4% spare with .2% margin, mke2fs will allocate as many
inodes as it thinks is appropriate given the filesystem size.

Change-Id: If03d5edae8378be3b305346176067b01163f6f3d
2024-10-24 19:27:38 +02:00
Alessandro Astone
30f779c15b
Remove unused locale data for recovery
AOSP wants to show localized menus for rescue party and
format data. To achieve that, they produce at compile time a big
PNG file with rows of localized text. The runtime would then pick
the correct row to draw.

In order to customize our recovery UI we cannot draw pregenerated
text. Avoid generating these files to shrink recovery size.
(Saving 2.3MB on xxhdpi!)

Change-Id: Id38d239254f17eeed5491621865c747a8496ed83
2024-10-24 19:27:38 +02:00
Brint E. Kriebel
c161964bde
releasetools: Use the first entry of a mount point when reading fstab
There may be multiple entries in fstab for a mount point. Use the first
value found so the entries are prioritized in order.

Change-Id: Ibd2631413d3e00507d3a0ec84fb91755f1c7993c
Ticket: OPO-326
2024-10-24 19:27:38 +02:00
Matt Mower
8ba776d32f
Edify: Add abort message for bootloader asserts
* If a bootloader assert is not satisfied, print the
  versions that are supported by the package as well as the version
  on the device.

Change-Id: I958d49281c51bd4e60d596a727bb94cfc4a21909
2024-10-24 19:27:38 +02:00
Andrew Dodd
f0509ac9bd
ota: Disable downgrade check
We want users to be able to downgrade their packages.

Change-Id: I6bcbd4ee2a02640fe0855b0f1f197a02e914c927
2024-10-24 19:27:23 +02:00
Michael Bestas
cff3412a4e
Add blank_unblank_on_init to PRIVATE_RECOVERY_UI_PROPERTIES
...in order for it to end up in recovery properties.

Required after 139c727036

Change-Id: Ibc13eeaabbd24f04b1cea103281d6d98f7956729
2024-10-24 19:27:21 +02:00
Chirayu Desai
e7e735832d
Allow setting the recovery density separately from the aapt config
Change-Id: I817a4c01302956ec846503d9a585c43e690e45bf
2024-10-24 19:27:10 +02:00
Matt Mower
85dc11c468
build: Separate commands in recovery foreach loops
The foreach loops output a space separated list, not necessarily one
command per line. Separate commands with semicolons. Notably, this
fixes an issue with multiple device directories included in
TARGET_RECOVERY_DEVICE_DIRS.

Change-Id: I5ebdc84ecaaacabaea77b8b752141e2041622480
2024-10-24 19:27:04 +02:00
Tom Marshall
40cfceed2a
build: recovery: Support adding device-specific items
Change-Id: I25205e68282680932917016646dabd1abadbfce6
2024-10-24 19:26:42 +02:00
M1cha
82633d9de8
releasetools: ota_from_target_files: add FullOTA_PostValidate
Change-Id: I152412049f90fd546d4516cc064238c3192be553
2024-10-24 19:26:30 +02:00
TheScarastic
21f38c6d8e
Don't make recovery patch for devices with prebuilt vendor
Change-Id: I05c0155e6331bfeccd4ad545e003fa3fa3498044
2024-10-24 19:26:02 +02:00
dianlujitao
dfcb38a988
Move recovery-from-boot.p from /system to /vendor
The file was missed when moving recovery resources, but the assertion
path was changed, as a result non-Treble devices failed to build.

Fixes: Ia4045bd67ffb3d899efa8d20dab4c4299b87ee5f
Change-Id: Ib7822a9bd5b1a2ab7e762e9fb35dbb22291a3a76
2024-10-24 19:25:58 +02:00
Steve Kondik
0da100cff3
Allow override of device asserts, including multi-device support.
Set in board file with TARGET_OTA_ASSERT_DEVICE.
(cherry-picked from commit 0f452f21fc9323b9d1fe746161761cf40aaa5030)

Change-Id: I3d06bdc0e3e26bde0c0e646accd050364f9713b9

ota_from_target_files: Remove device dependent arguments

These device-specific arguments are defined at build time and are
necessary to generate the zip correctly. Don't use command line
arguments to specify them, but write all the needed information
in misc_info.txt when the target-files zip is generated.
ota_from_target_files will then read misc_info.txt and set
everything automatically.

Change-Id: Ibdbca575b76eb07b53fccfcea52a351c7e333f91
Signed-off-by: André Pinela <sheffzor@gmail.com>
2024-10-24 19:25:44 +02:00
Rashed Abdel-Tawab
a6a4d684dc
build: Automatically replace old-style kernel header includes with new header lib
This is a combination of 3 commits.
This is the 1st commit message:

build: add kernel header dependency if module uses kernel headers

Many of the QCOM components use kernel headers, but don't declare
the dependency on them.  This is fine in CAF because of the way they
build the boot.img before anything else.  In CM, we don't build the
boot.img the same, so we run into a race between the kernel build &
these modules... and the modules lose.

Warn about modules that have this missing dependency, and add it for
them so we don't have to modify each Android.mk.

Change-Id: I95f1e47b5ef440f6f5d8f64a0c3f38d9572e839e

============================================================================
This is the commit message #2:

build: Switch kernel header inclusion

The build is switching to the target INSTALLED_KERNEL_HEADERS to
declare dependencies on kernel headers.

Change-Id: I913e74681b02dfcf1eaed3d1e47ff4ab2300b12d

============================================================================
This is the commit message #3:

build: Automatically replace old-style kernel header includes with new header lib

Since we do this via soong and the result is a header library, just replace all
legacy include paths that point to the old header location with calls to the new
header library. Since we no longer have the legacy include, we can also remove
the additional dependency.

This reverts commit fa798218e5b7f96e12ab3acc9d47a3f26a140777.

Change-Id: I716955534e50831e6568ca01e480aa8b90075d92
2024-10-24 19:25:32 +02:00
dianlujitao
3bafdb4dd6
Add extra variables to _readonly_late_variables
These are modified by us at a later stage, so be sure
to allow it.

Change-Id: Ib26e83e10aeb6c107fd6e5757185c05cd6665760
2024-10-24 19:25:22 +02:00
Luca Stefani
a47c7368d7
build: Add tequila build support
Squashed also with the following changes:

  Author: Luca Stefani <luca020400@lineageos.org>
  Date:   Thu Aug 17 22:22:13 2017 +0200

    core: Include Lineage pathmap

  Change-Id: Ie25dee383cc5bc9bb6390cff2cb2460d526d80b6

  Author: Simon Shields <simon@lineageos.org>
  Date:   Fri Mar 2 12:55:47 2018 +1100

    build: unconditionally use lineage pathmap

    even if we're not building a lineage target, we need to
    use the lineage pathmap to make things like recovery and ril
    happy

  Change-Id: I974c30ad10d4ff5b7805c3df9c22010f1e002bf1

  Author: Luca Stefani <luca.stefani.ge1@gmail.com>
  Date:   Tue Jan 22 15:50:52 2019 +0100

    Don't export BUILD_NUMBER in envsetup

    * The value is meant to be set only before running an /official/ build
    * This allows us to execute consecutive make commands without
      running kati for every invocation

  Change-Id: Ifa94b839f30c7260009c8a3c91c202b50e28022e

  Author: Luca Stefani <luca020400@lineageos.org>
  Date:   Fri Aug 18 10:17:00 2017 +0200

    envsetup: Call fixup_common_out_dir

  Change-Id: I84e16b0df5822cfd8514c46d709109a13c20f86e

  Author: Adrian DC <radian.dc@gmail.com>
  Date:   Sat May 12 11:24:33 2018 +0200

    build: Include LineageOS specific properties in build.prop

     * Our properties were supposed to go to /system/etc/prop.default
        after the following commit:
        "lineage: Move to Google's method of defining system default props"
        Change-Id: I6cb0e28a7599b010b389cc541015a37010a00f4b

     * However if BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED is not true,
        only /default.prop will retain the properties contents of
        ADDITIONAL_DEFAULT_PROPERTIES and PRODUCT_SYSTEM_DEFAULT_PROPERTIES,
        and none of our versioning identification was held in the system

     * Enabling BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED globally would
        break all properties on devices that handle partitions usually
        at the device level rather than the kernel due to mounting races

     * Include the vendor/lineage/config/main.mk entrypoint to be allowed
        to extend ADDITION_BUILD_PROPERTIES as we need to define our releases

  Change-Id: I19918eece0f0dd3ee967db0339b4d09c9a6d540e
  Signed-off-by: Adrian DC <radian.dc@gmail.com>

  Author: Rashed Abdel-Tawab <rashed@linux.com>
  Date:   Thu Sep 5 21:35:38 2019 -0700

    core: Only include Lineage SE policy if repo exists

  Change-Id: If799106d2da6d8c303430e316edff365a22f7c99

  Author: dianlujitao <dianlujitao@lineageos.org>
  Date:   Thu Sep 5 21:56:36 2019 +0800

    product: Exclude AOSP apn list on Lineage build

    Change-Id: I1fd10089421a2e4b57ef565d87ad1f6036bd1898

  Author: Michael Bestas <mkbestas@lineageos.org>
  Date:   Fri Apr 12 02:10:12 2019 +0300

    build: Conditionally include AudioPackage14.mk instead of AllAudio.mk

    * AllAudio.mk doesn't contain latest material files and also
      contains multiple duplicate files. Just copy the latest
      material ones and we'll include the older files in vendor/lineage

    Change-Id: Ic7353216a3f3dc3c51006d951ac932cfd6e5f3b5

  Author: dhacker29 <dhackerdvm@gmail.com>
  Date:   Sat Jun 6 22:22:05 2015 -0400

    Remove LatinIME as it is included per target in vendor/lineage

    Change-Id: Ibce4a244ec0653a7c7798d864047ac667866a1dc

  Author: razorloves <razorloves@gmail.com>
  Date:   Mon Oct 7 05:10:56 2019 -0500

    build: Remove su inclusion

    This stops including su in all lineage userdebug/eng builds.
    Inclusion of su is conditionally handled in /vendor/lineage.

    Change-Id: Ia3ad978146f170a2b260d77afe9eb580d4b4f823

  Author: Michael Bestas <mkbestas@lineageos.org>
  Date:   Sat Nov 7 22:45:12 2020 +0200

    Stop including vendor specific clear_vars.mk

    vendor/lineage/build/core/clear_vars.mk is no-op since 16.0

    Change-Id: I7e159cc9ed5a838c9a04c1a8b7dcf925d83f0e20

Change-Id: Iab8b2ef8b644a7bea10bfd28b99d9e69539b1357
2024-10-24 19:25:10 +02:00
Chirayu Desai
a3a2ca917a
No more spam
Change-Id: If570268c50eabcbfa357918b1266855f83119233
2024-10-24 19:22:05 +02:00
Michael Bestas
fb9cae1e23
Source tequila specific envsetup
Change-Id: I39d3e711a6beab47e3284919a9a4fef15b0f40b9
2024-10-24 19:21:33 +02:00
Chirayu Desai
7fc166ebd7
envsetup: export ANDROID_BUILD_TOP earlier
Change-Id: Ia3497f61f4e9aaeeb793cecd3b4f488f0a48181a
2024-10-24 19:21:00 +02:00
Android Build Coastguard Worker
3d9c9aacdb Version bump to AP3A.240905.015.A2 [core/build_id.mk]
Change-Id: I3e2152d0e109ecc6c89c249dea678afc93faf62b
2024-08-23 21:29:41 +00:00
Android Build Coastguard Worker
04d97e46e1 Version bump to AP3A.240905.015.A1 [core/build_id.mk]
Change-Id: I099f4156070c92d18df9d7ca34d399626a5b7843
2024-08-14 23:49:09 +00:00
Android Build Coastguard Worker
9e8a38292b Version bump to AP3A.240905.015 [core/build_id.mk]
Change-Id: I39a828922f156397cdfd084361598c7f31114183
2024-08-09 20:55:02 +00:00
Android Build Coastguard Worker
f3c1eacd49 [coastguard skipped] Merge sparse cherrypicks from sparse-12192237-L32900030005709642 into 24Q3-release.
COASTGUARD_SKIP: I926dbb03a144eb424e0177ff6b27b31700dbdf5b

Change-Id: Ic0bd375ca790ab0d8e5a66292a644e9376443764
2024-08-09 01:54:40 +00:00
Android Build Coastguard Worker
1ab90756d7 Version bump to AP3A.240905.014.Y1 [core/build_id.mk]
Change-Id: I926dbb03a144eb424e0177ff6b27b31700dbdf5b
2024-08-09 01:53:27 +00:00
Android Build Coastguard Worker
2c314e9fb3 [coastguard skipped] Merge sparse cherrypicks from sparse-12192237-L48700030005686605 into 24Q3-release.
COASTGUARD_SKIP: I7c4a1f291bb426ad599e1dc937e6ecd3889b5820
COASTGUARD_SKIP: Ia57ae5d45ff59cb31bac1abf985a5e9e466be096

Change-Id: I03248cd4692092e938c2ded13379f15816b8eaa3
2024-08-08 05:08:24 +00:00
Android Build Coastguard Worker
67aa8ba288 Make change and version bump to AP3A.240905.014.X1
Merge cherrypicks of ['android-review.googlesource.com/3028111'] into sparse-12192237-L48700030005686605.
SPARSE_CHANGE: I7c4a1f291bb426ad599e1dc937e6ecd3889b5820

Change-Id: Ia57ae5d45ff59cb31bac1abf985a5e9e466be096
2024-08-08 05:06:10 +00:00
Lokesh Kumar Goel
b9da7e704e Allow PLATFORM_BASE_OS override from product config
PLATFORM_BASE_OS is used to set value for
ro.build.version.base_os which is used to qualify
a device build as SMR (Security Maintenance Release)
during APFE (Android Partner Approval) to optimize the test span.
See ag/26859560 on how we plan to use this variable.

Add PRODUCT_BASE_OS that can be used to override
PLATFORM_BASE_OS value before making it read_only.

Plan is to set the value for PRODUCT_BASE_OS using build flags.
This way, it can be easily set per device when making on-demand
SMR releases. In future, move it to be set via soong variable
during build process once build system side is ready.

Test: None
Bug: 155105803
(cherry picked from https://android-review.googlesource.com/q/commit:c4baa3aa7240e1b0cb013f853669aa419e55ee1e)
Merged-In: I7c4a1f291bb426ad599e1dc937e6ecd3889b5820
Change-Id: I7c4a1f291bb426ad599e1dc937e6ecd3889b5820
2024-08-08 05:04:28 +00:00
Android Build Coastguard Worker
bf6d5c483f [coastguard skipped] Merge sparse cherrypicks from sparse-12192237-L21000030005708971 into 24Q3-release.
COASTGUARD_SKIP: I8fc12d96524bb162b3182f4865d63dd92c1ca334

Change-Id: I040299859921f535737a55d630152a613878c3b3
2024-08-07 18:20:03 +00:00
Android Build Coastguard Worker
41b8912700 Version bump to AP3A.240905.014.Z1 [core/build_id.mk]
Change-Id: I8fc12d96524bb162b3182f4865d63dd92c1ca334
2024-08-07 18:18:56 +00:00
Android Build Coastguard Worker
36777736f4 Version bump to AP3A.240905.014 [core/build_id.mk]
Change-Id: I361c4f8c70338f5e2280ca28be8be6abab0397fc
2024-08-06 22:35:49 +00:00
Android Build Coastguard Worker
1c63ceefca Version bump to AP3A.240905.013 [core/build_id.mk]
Change-Id: Ib004149c4f7276560fc9234300b06733fbea57bc
2024-08-06 22:10:02 +00:00
Android Build Coastguard Worker
e7cead48a1 Version bump to AP3A.240905.012 [core/build_id.mk]
Change-Id: Id7aab457f3129f412cb5d46004963b281efd23b6
2024-08-06 09:36:17 +00:00
Android Build Coastguard Worker
39fdd7c40a Version bump to AP3A.240905.011 [core/build_id.mk]
Change-Id: Ief3b3961b75fe0bc72892eb6d77238e70df08b96
2024-08-03 00:14:51 +00:00
Android Build Coastguard Worker
94d9187289 Version bump to AP3A.240905.010 [core/build_id.mk]
Change-Id: I3c228ef0c8da259bbd405918c12ca87fbbc76a3b
2024-08-02 22:32:14 +00:00
Android Build Coastguard Worker
9bc2ab1cb6 Version bump to AP3A.240905.009 [core/build_id.mk]
Change-Id: I2673bd3bbad1dd3127d2fffbfa70c77c8a0461e2
2024-08-02 05:57:29 +00:00
Android Build Coastguard Worker
d51d544c9f Version bump to AP3A.240905.008 [core/build_id.mk]
Change-Id: I57996cdd63dffa7ea3d0d8baf373a7d6436a3760
2024-08-01 02:48:29 +00:00
Android Build Coastguard Worker
3020900a45 Version bump to AP3A.240905.007 [core/build_id.mk]
Change-Id: I1f91291a3a8b05ac4301cbb62a7c5f06dfd25112
2024-07-31 17:33:38 +00:00
Android Build Coastguard Worker
77072e88e4 Version bump to AP3A.240905.006 [core/build_id.mk]
Change-Id: Ie60ce523b47bc2f4906fe07d77aad0269f763aee
2024-07-31 15:40:59 +00:00
Android Build Coastguard Worker
67ffedda59 Version bump to AP3A.240905.005 [core/build_id.mk]
Change-Id: I71558816b9b595d9bee866788b04e9af747d68ea
2024-07-31 08:35:10 +00:00
Android Build Coastguard Worker
d0f98a4f7b Version bump to AP3A.240905.004 [core/build_id.mk]
Change-Id: Ibd5ae0e7767d0ff1b33b8b957c8ae9ce01123880
2024-07-30 00:04:17 +00:00
Android Build Coastguard Worker
98a6e97fb8 Version bump to AP3A.240905.003 [core/build_id.mk]
Change-Id: I88fad93d3ead7ebefdc863a69ad190ddf8033f84
2024-07-26 22:08:00 +00:00
Android Build Coastguard Worker
74afd0a2f9 Version bump to AP3A.240905.002 [core/build_id.mk]
Change-Id: I2e7e5e51c05321e6412e2d72643bd21db91f3590
2024-07-26 02:19:10 +00:00
Android Build Coastguard Worker
153d62e5d8 Version bump to AP3A.240905.001 [core/build_id.mk]
Change-Id: I5cf032164ee3086c6e79342fe4a89b1c013ee9fe
2024-07-25 04:17:42 +00:00
Android Build Coastguard Worker
e8084fda12 Version bump to AP3A.240617.040 [core/build_id.mk]
Change-Id: I8a9a62a98ad8e9e6505983eced93042b7d986bf8
2024-07-24 04:07:04 +00:00
Android Build Coastguard Worker
14fda11f19 Version bump to AP3A.240617.039 [core/build_id.mk]
Change-Id: I1cdc717fea259251ede25171172fa406fac7e85d
2024-07-24 01:41:25 +00:00
Android Build Coastguard Worker
3335cd0a28 Version bump to AP3A.240617.038 [core/build_id.mk]
Change-Id: If628b283571422d9383dd5ec1da3a5cdc0423da4
2024-07-23 00:24:19 +00:00
Android Build Coastguard Worker
d44e9e5f60 Version bump to AP3A.240617.037 [core/build_id.mk]
Change-Id: Ib9454b38de86959a9ae25243afc6f147b150e6c9
2024-07-20 07:25:52 +00:00