aboutsummaryrefslogtreecommitdiff
path: root/filesystem/system_other.go
diff options
context:
space:
mode:
authormosimchah <mosimchah@gmail.com>2025-12-02 09:27:38 -0500
committermosimchah <mosimchah@gmail.com>2025-12-02 09:27:38 -0500
commitc7bade461dc55726f62997d13a48582f7c4b4655 (patch)
treeea0588da76060a2038f54f67efd046ca77634b10 /filesystem/system_other.go
parent0f5414d19317805e8bbbe7c4db5f0fd78769bad5 (diff)
parent89d78cff8b00d3b20a90074635c3fe5a2ee49474 (diff)
Merge branch 'lineage-23.1' of https://github.com/LineageOS/android_build_soong into HEADw16.1
* 'lineage-23.1' of https://github.com/LineageOS/android_build_soong: (528 commits) Revert "install_symlink: Make symlink target configurable" Reapply "Clear as much of cc.Module as possible after GenerateBuildActions" Revert "rust: config: Fix missing CPU variant LD flags in Rust" Rename build-flag in outdir Revert^4 "cipd: Default CIPD proxy server to on, add opt-out" Convert check-vintf-all to phony with actions Create a partial implementation of check-vintf-all for soong-only Configure RBE rust pool based on build variant Revert^3 "Add sdk version check to arr" Add jdk.internal.invoke to the allowlist Make droid always depend on symbols zip Import Device and Odm skus Don't install gob_gen in Soong Remove bazel reference from run_integration_tests.sh Fix bootstrap_test.sh Don't panic in aconfig libraries when AllowMissingDependencies is set Avoid returning nil paths from PathForModuleSrc Revert "Flag controled clang version" Rework module target dependencies on required deps Revert^2 "Add sdk version check to arr" ... Change-Id: I6e9a63fa14fda917a42e426e5dcebbad7f67e1de
Diffstat (limited to 'filesystem/system_other.go')
-rw-r--r--filesystem/system_other.go35
1 files changed, 9 insertions, 26 deletions
diff --git a/filesystem/system_other.go b/filesystem/system_other.go
index 32a6cc784..14895bd3f 100644
--- a/filesystem/system_other.go
+++ b/filesystem/system_other.go
@@ -23,6 +23,7 @@ import (
"time"
"github.com/google/blueprint"
+ "github.com/google/blueprint/depset"
"github.com/google/blueprint/proptools"
)
@@ -93,7 +94,7 @@ func (m *systemOtherImage) GenerateAndroidBuildActions(ctx android.ModuleContext
}
output := android.PathForModuleOut(ctx, "system_other.img")
- stagingDir := android.PathForModuleOut(ctx, "staging_dir")
+ stagingDir := android.PathForModuleOut(ctx, "system_other")
stagingDirTimestamp := android.PathForModuleOut(ctx, "staging_dir.timestamp")
builder := android.NewRuleBuilder(pctx, ctx)
@@ -160,29 +161,17 @@ func (m *systemOtherImage) GenerateAndroidBuildActions(ctx android.ModuleContext
builder.Build("build_system_other", "build system other")
- // Create a hermetic system_other.img with pinned timestamps
- builder = android.NewRuleBuilder(pctx, ctx)
- outputHermetic := android.PathForModuleOut(ctx, "for_target_files", "system_other.img")
- outputHermeticPropFile := m.propFileForHermeticImg(ctx, builder, propFile)
- builder.Command().
- Textf("PATH=%s:$PATH", strings.Join(pathToolDirs, ":")).
- BuiltTool("build_image").
- Text(stagingDir.String()). // input directory
- Input(outputHermeticPropFile).
- Implicits(systemInfo.BuildImagePropFileDeps).
- Implicit(fec).
- Implicit(stagingDirTimestamp).
- Output(outputHermetic).
- Text(stagingDir.String())
-
- builder.Build("build_system_other_hermetic", "build system other")
-
fsInfo := FilesystemInfo{
Output: output,
- OutputHermetic: outputHermetic,
RootDir: stagingDir,
+ ModuleName: ctx.ModuleName(),
FilesystemConfig: m.generateFilesystemConfig(ctx, stagingDir, stagingDirTimestamp),
PropFileForMiscInfo: m.buildPropFileForMiscInfo(ctx),
+ InstalledFilesDepSet: depset.New(
+ depset.POSTORDER,
+ []InstalledFilesStruct{buildInstalledFiles(ctx, "system-other", stagingDir, output)},
+ nil,
+ ),
}
android.SetProvider(ctx, FilesystemProvider, fsInfo)
@@ -193,6 +182,7 @@ func (m *systemOtherImage) GenerateAndroidBuildActions(ctx android.ModuleContext
// Dump compliance metadata
complianceMetadataInfo := ctx.ComplianceMetadataInfo()
complianceMetadataInfo.SetFilesContained(fullInstallPaths)
+ complianceMetadataInfo.SetPlatformGeneratedFiles(fullInstallPaths)
}
func (s *systemOtherImage) generateFilesystemConfig(ctx android.ModuleContext, stagingDir, stagingDirTimestamp android.Path) android.Path {
@@ -209,13 +199,6 @@ func (s *systemOtherImage) generateFilesystemConfig(ctx android.ModuleContext, s
return out
}
-func (f *systemOtherImage) propFileForHermeticImg(ctx android.ModuleContext, builder *android.RuleBuilder, inputPropFile android.Path) android.Path {
- propFilePinnedTimestamp := android.PathForModuleOut(ctx, "for_target_files", "prop")
- builder.Command().Textf("cat").Input(inputPropFile).Flag(">").Output(propFilePinnedTimestamp).
- Textf(" && echo use_fixed_timestamp=true >> %s", propFilePinnedTimestamp)
- return propFilePinnedTimestamp
-}
-
func (f *systemOtherImage) buildPropFileForMiscInfo(ctx android.ModuleContext) android.Path {
var lines []string
addStr := func(name string, value string) {