| Age | Commit message (Collapse) | Author |
|
This change relands https://r.android.com/3304859.
Test: m nothing --no-skip-soong-tests && ABTD
Bug: 372771060
Change-Id: Ie798fee2a71c14d5e8ac5e2433394bbb090cd595
|
|
This relands https://r.android.com/3304080, with the following fixes
- Skip system_ext if the product (e.g. aosp_x86_64) does not support
system_ext
- Remove analysis error from GetFsTypeFromString if the fs type is
unsupported. Since we are autogenerating partitions now, internal
module creation should be skipped instead of erroring out. `fsType`
will raise an error for handcrafted filesystem modules that explicitly
set fs type to an unsupported type.
Test: presubmits
Test: lunch aosp_x86_64-trunk_staging-userdebug && m nothing
Change-Id: I83e0c266aa3dc2ab830c0636e1a89d00f6906968
|
|
This reverts commit dc6492f01bbfb4a0f3e10efe6fa8e7cb5a876982.
Reason for revert: Breaking targets in post submit
Change-Id: I50e80f1f6634db6cec42aba7f2262275b6ec8b88
|
|
This change:
- Adds a pre-deps bottom-up mutator that sets the appropriate deps
properties for the soong generate filesystem partition modules
- Makes `installInSysem` more genenric, so that it can be used for other
partitions
- Introduces `AppendDepsEntries` method in `android.PackagingBase` to
utilize it in the aforementioned mutator
- Modifies `fsDeps` from a 1D slice to a map (of partition to deps slice)
Test: m nothing --no-skip-soong-tests
Bug: 372771060
Change-Id: Ic251993d1d4c1caca544c5cebcaf29afd749da9e
|
|
Test: Presubmits
Change-Id: I4146224674c3546b7c48cb727f0662d3d347f02e
|
|
Test: go test ./filesystem
Bug: 372522486
Change-Id: I57c5a15a225e9e02ebec188d45b640f4185a33c0
|
|
Change-Id: Icf00143aa979fbaee5ec68088c5431f63d852158
|
|
Running `m soong_generated_filesystem_tests` will diff the
soong-generated system image with the make-generated one.
Currently, this test fails, but we can start working on narrowing it
down now.
Bug: 371351099
Test: m soong_generated_filesystem_tests
Change-Id: I6e341607415b3676e758417a587f69c247652c3a
|
|
This reverts commit 2cf1bf5624c8048b960b9e0ec27a7677739049ae.
Reason for revert: <Droidmonitor created revert due to b/371496012. Will be verifying through ABTD before submission.>
Change-Id: Ie9d0e279a3fa6de71427c0f7f9c95990e59c8a6d
|
|
Running `m soong_generated_filesystem_tests` will diff the
soong-generated system image with the make-generated one.
Currently, this test fails, but we can start working on narrowing it
down now.
Bug: 371351099
Test: m soong_generated_filesystem_tests
Change-Id: I364677f09286652e4577bf9e0d16481998dfd258
|
|
The module generates soong-built filesystem modules. This module creates
the system partition submodule, and will create other partition
filesystem submodules in the future.
Note that not all properties of the system submodule is currently set;
some properties like `deps` are not currently set.
Test: m nothing --no-skip-soong-tests
Bug: 369682648
Change-Id: I671a9b6a61e5453117f604394191243c5ae047d9
|
|
android_system_image just passed its embedded filesystem module to
InitAndroidModule (transitively via initFilesystemModule). This meant
that ModuleBase.module was pointing to the filesystem module, not
the system image module. This was a problem for the new "changeable
configuration" feature I'm working on, but you can also more readily
see the issue if you add a GenerateAndroidBuildActions function to
android_system_image: it won't be called.
Bug: 361816274
Test: Presubmits
Change-Id: I41978037b81910309a000dc1bba327e513ba5dce
|
|
A target must define "USE_SOONG_DEFINED_SYSTEM_IMAGE := true" and
"PRODUCT_SOONG_DEFINED_SYSTEM_IMAGE := <name of soong system image>"
to use the soong defined system image.
The system image must install the files to $PRODUCT_OUT for adb sync
and build verification. Instead of using 'update_product_out'
property in Android.bp, copy the files only if the name of the image
matches with PRODUCT_SOONG_DEFINED_SYSTEM_IMAGE.
Bug: 350599535
Bug: 365700376
Test: lunch aosp_x86_64-trunk_staging-userdebug && m &&
m aosp_cf_system_x86_64
Test: lunch aosp_cf_x86_64_phone_soong_system-trunk_staging-userdebug
&& m
and adb sync on the cf device
Change-Id: If8673ba2855a753a5559a588bd83068d950fd7e4
|
|
When building a system image from 'android_system_image' module,
update the $PRODUCT_OUT files with the files installed to the system
image.
Soong updates the $PRODUCT_OUT files only if the android_system_image
module has "update_product_out: true" property.
Bug: 350599535
Test: lunch aosp_cf_x86_64_phone_soong_system-trunk_staging-userdebug
&& m
Test: adb sync
Change-Id: Ia3418c5380cac42d5c766e8304c8ed2bab3d835a
|
|
If the partition of a spec is "root", that spec will be installed to
root instead. Normally that spec will be from prebuilt_root module with
install_in_root property.
Bug: 351258461
Test: USE_SOONG_DEFINED_SYSTEM_IMAGE=true m && cvd start
Change-Id: Iaaa9c2fb8a81fe0ba4710c641e1b65c5b71ad4a4
|
|
Add an IsAddingDependency method to IncomingTransitionContext that
returns true if IncomingTransition is called after the transition
has already won while adding a new dependency. This will be used
as part of the transition mutators to support an apex use case where
incoming dependencies during the initial apex mutator need to be
rewritten onto the platform variant for modules that don't support
the apex, but a later call to OtherModuleDependencyVariantExists
must not rewrite the requested apex variation onto the platform
variant.
This should be used sparingly, all uses will have to be removed in
order to support creating variants on demand.
Bug: 319288033
Test: TestIsAddingDependency
Flag: EXEMPT refactor
Change-Id: Ib8e419d35ff8f7cbff9667c1cd40d05ccfacab8b
|
|
Generate file list installed from a filesystem, so it can be compared
with files installed from KATI.
Bug: 346873717
Test: File list generated with aosp_cf_system_x86_64
Change-Id: I8c8f555d57fee90753120f637dc3bc633f276a09
Merged-In: I8c8f555d57fee90753120f637dc3bc633f276a09
|
|
Test: CI
Bug: 339477385
Change-Id: I0902726cfef13c716d73c1abc5c9836bdcf3e10f
|
|
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
|
|
With this change, the deps property in filesystem modules gather the
first target of the filesystem module only.
To gather dependencies across both targets, use multilib.both.deps
instead.
Bug: N/A
Test: go test ./...
Change-Id: Ie2ff0c48f08c61c8b219fc2c1540476ff8e4b1fc
|
|
By setting aconfig_flags: true, soong filesystem module installs the
aconfig_flags.pb file to its etc directory.
We need to define aconfigFilePaths to ModuleBase to store the list of
aconfig file paths that is generated from the GenerateBuildActions().
The aconfigFilePaths are collected when build the filesystem module
to build the aconfig_flags.pb for the filesystem image.
Bug: 335363964
Test: compare the cache list with those generated from make.
Change-Id: Ia32b566bf43174e94b9e610b9503608c6b583899
|
|
"revert-3069323-revert-3066748-duplicate_entry_fs-CIBDJQYRHU-FVLDIVWUZV" into main
* changes:
Revert^2 "Filesystem modules follow the installation semantic"
Revert "Revert "Prevent multiple PackagingSpecs having same inst..."
|
|
If build_logtags is set to true, etc/event-log-tags will be built by
collecting all logtags files from all dependencies.
Note that this is different from Makefile's current behavior that
collects all logtags files, including ones from uninstalled modules. But
the behavior is probably unintended, and ideally each partition image
should have its own logtags, rather than putting all tags to /system.
Bug: 336189540
Test: m aosp_cf_system_x86_64
Change-Id: I72b384cbb65e812af909eacd18799bd86f1dab13
|
|
54351867fa0dff593eb61d111d1d7ffb7d3d02f2
Change-Id: I12010c1013fc9dad19d259ba7b0251ac8e8e0907
|
|
Revert submission 3066748-duplicate_entry_fs
Reason for revert: b/338159248
Reverted changes: /q/submissionid:3066748-duplicate_entry_fs
Change-Id: I8aacdb36efce8343c3713542eee209e71bde660b
|
|
With this change, filesystem modules (android_filesystem,
android_system_image, etc.) follow the installation semantic which means
output from modules which don't produce installable files (i.e. modules
that return false on IsSkipInstall()) are not included in the filesystem
module.
Note that this bug has been there since the beginning but didn't trigger
an error due to another bug (b/335506668) which allowed multiple
packaging specs to contribute to the same path. That bug prevented the
non-installable variant of a module (e.g. stub) from being installed
simply because because it was "luckly" clobbered by the installable
variant of the same module (e.g. impl lib).
Bug: 335506668
Test: go test ./...
Change-Id: I2a42d178701d74bf6ccc5f33ba33918f8c608d40
|
|
|
|
android_systemimage_defaults is deleted and android_filesystem_defaults
is created so that we can have defaults not only for
android_system_image, but also all android_filesystem modules and its
derivatives.
Also, change adds a check which ensures that the partition_type of the
filesystem and its defaults are the same.
Bug: 330665150
Test: m
Change-Id: If635c794534ed89d264eaf7dfc406a8245b8e9f0
|
|
Bug: 287593065
Test: m
Change-Id: I01e986b2d8e3d992533dc7e2c07e4cdbeaca2c00
|
|
|
|
By setting fsverity.inputs, android_filesystem can now generate
.fsv_meta and BuildManifest.apk. It has been done by Makefile because
Makefile is the only one knowing all installed files. But now
android_filesystem is aware of all artifacts, so we can move fsverity
metadata generation into Soong.
Bug: 330282551
Test: m aosp_cf_system_x86_64 and see output
Change-Id: Iae4dd83eaede960c263bfba537211df4ff4b36bd
|
|
Bug: 330665150
Test: go test ./... under filesystem
Change-Id: Id32e6563491a3d129042de4a9517c545543a022d
|
|
//visibility:any_system_partition, //visibility:any_vendor_partition,
etc.
Then, if a partition visibility rule is not specificed, but the module
is installed on a non-system partition via the `vendor: true` or other
properties, the visibility rule for that partition will be added by
default.
This is so that "any_partition" doesn't imply that modules could be put
on the vendor partition when they weren't designed for that, and so that
modules that do need to go on the vendor partition don't need to specify
both vendor: true and visibility:any_vendor_partition.
Eventually, the partition properties should be deprecated, and replaced
with just these visibility rules.
Bug: 321000103
Test: go tests
Change-Id: I24dba36bbc20921941f892480bf7c050e93827c6
|
|
If `include_make_built_files` is set to the name of a partition, the
make-built files from that partition will be incorperated into this
soong module. This is to ease the transition to soong built filesystems.
If any files are present in both the soong-built file list and the
make-built one, the soong ones will be preferred.
Bug: 329146343
Test: go test
Change-Id: I456b283e1189116e699ed75357cc056f5d217688
|
|
The end result is a directory that's passed to build_image, so zipping
and then unzipping image contents will unnecessarily slow things down.
Bug: 329146343
Test: m microdroid --no-skip-soong-tests
Change-Id: I98223c60e8144d6c707832fcc03ba8fe94467e7b
|
|
Use android.WriteFileRuleVerbatim instead of a custom RuleBuilder
with echo commands.
Test: m nothing --no-skip-soong-tests
Change-Id: I9734305cbb404fd2ae841af2525f0db235622315
|
|
android_system_image used GatherPackagingSpecs and then filter only
system modules. But some modules were omitted in this logic because
there are modules which has the same relative path, so the later one is
ignored even though its partition info is what we're looking for. So add
filter logic in GatherPackagingSpecs to avoid this problem
Bug: 323793487
Test: build android_system_image, and then check if it contains every
module we want
Change-Id: Iec8ae920736d3d1920eecad71ba0f8f2fe848e6c
|
|
Convert coverageMutator to a TransitionMutator as a step towards
variants-on-demand.
Bug: 319288033
Test: coverage_test.go
Test: treehugger coverage builds
Change-Id: Ic50c0040dea8b42c36b5d784221daa00b7b0d379
|
|
Bug: 302465542
Test: build
Change-Id: I5bb5a0241d40cf142ed8bbefb76bc8a3709c3e34
|
|
If android_filesystem module is used with use_avb, defined
security_patch for the rollback protection.
Bug: 285855436
Test: m
Test: avbtool info_image --image <IMAGE>
Change-Id: I32c6108bb1aca398ced5e46b615d937685e261a7
|
|
The motivation is to support vendor images for microdroid, like the real
vendor images having "/vendor" as their mount point. This will help add
vendor_file_contexts easily.
Bug: 306313100
Test: manually build an image with file_contexts
Change-Id: I2e4bbf108eaa1da4f310ebb4099c4d1b42096436
|
|
filesystem should have coverage variants with coverage-enabled build.
Otherwise, it would fail to collect dependencies.
Bug: 273238141
Test: m nothing (soong tests)
Test: compare the artifacts
$ SKIP_ABI_CHECKS=true SOONG_COLLECT_JAVA_DEPS=true EMMA_INSTRUMENT=true\
EMMA_INSTRUMENT_FRAMEWORK=true CLANG_COVERAGE=true\
NATIVE_COVERAGE_PATHS='*' m microdroid
$ m microdroid
Change-Id: I792458ace00a63b4b5213898fd3209351a6e00be
|
|
This is the reland of the change aosp/2375848. The build of initrd on
linux-x86 that has incorrect format (b/264940248) is disabled in this
cl.
Bug: 260821553
Test: m microdroid_kernel_signed and inspect the output using `avbtool
info_image --image <output>`
Change-Id: I3ad2419b7132cde4b2fc34ddfa09ec5ba2166819
|
|
|
|
Revert submission 2375848-initrd_avb_footer
Reason for revert: build break
Reverted changes: /q/submissionid:2375848-initrd_avb_footer
Bug: 264940248
Change-Id: Iab44c187183a5d8eeefc952910e6262fc63627de
|
|
Bug: 260821553
Test: m microdroid_kernel_signed and inspect the output using `avbtool
info_image --image <output>`
Change-Id: Iacdf34aca15f5480766b6d4f971704f85f6bf44b
|
|
As part of building Android images we run host_init_verifier to ensure
that .rc files are well-formed. Unfortunately that doesn't cover the
Microdroid image. This change addresses the divergence.
Ideally we should have a concept of pluggable linters that we can run on
the generated image. However, introducing such concept will take some
time, so while we are working on it directly integrate
host_init_verifier into the build system.
Bug: 263486078
Test: m microdroid
Test: add incorrect .rc file and run m microdroid, verify it fails
Change-Id: Id8c9311915e89a10ce3ff7b1f209ebc8cb42211f
|
|
Avb_hash_algorithm corresponds to --hash_algorithm of avbtool while
avb_algorithm corresponds to signing algorithm.
Bug: 262892300
Test: Builds
Change-Id: Ief4b0f0fd89ebf64b45b29962a3811698bc922d6
|
|
When avb_hash_algorithm is set, for filesystem type build targets,
add_hashtree_footer will be called with the appropriate --hash_algorithm
flag.
Bug: 262892300i
Test: Build succeeds
Change-Id: If2f9c9aa1e98314b3d3e2f8bf25c1bab193f908e
|
|
It is used to provide name:value properties to the footer. Value can be
from a text in *.bp file or a binary file referenced via the `file`
prop. e.g.
```
avb_add_hash_footer {
...
props: [
{
name: "string_prop",
value: "string_value",
},
{
name: "binary_prop",
file: "a_binary_file_name",
},
],
}
```
This CL also adds a test for the module type which has been missing.
Bug: 256148237
Test: m nothing
Change-Id: Idf55b308c8ce760387c01a847846b42d1aebe4ea
|