Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2b33af39 authored by Treehugger Robot's avatar Treehugger Robot Committed by Automerger Merge Worker
Browse files

Merge "apex: run host_apex_verifier" into main am: 19b81d77

parents dcb8494f 19b81d77
Loading
Loading
Loading
Loading
+21 −0
Original line number Diff line number Diff line
@@ -83,6 +83,7 @@ func init() {
	pctx.HostBinToolVariable("assemble_vintf", "assemble_vintf")
	pctx.HostBinToolVariable("apex_elf_checker", "apex_elf_checker")
	pctx.HostBinToolVariable("aconfig", "aconfig")
	pctx.HostBinToolVariable("host_apex_verifier", "host_apex_verifier")
}

type createStorageStruct struct {
@@ -249,6 +250,13 @@ var (
		Description: "run apex_linkerconfig_validation",
	}, "image_dir")

	apexHostVerifierRule = pctx.StaticRule("apexHostVerifierRule", blueprint.RuleParams{
		Command: `${host_apex_verifier} --deapexer=${deapexer} --debugfs=${debugfs_static} ` +
			`--fsckerofs=${fsck_erofs} --apex=${in} && touch ${out}`,
		CommandDeps: []string{"${host_apex_verifier}", "${deapexer}", "${debugfs_static}", "${fsck_erofs}"},
		Description: "run host_apex_verifier",
	})

	assembleVintfRule = pctx.StaticRule("assembleVintfRule", blueprint.RuleParams{
		Command:     `rm -f $out && VINTF_IGNORE_TARGET_FCM_VERSION=true ${assemble_vintf} -i $in -o $out`,
		CommandDeps: []string{"${assemble_vintf}"},
@@ -966,6 +974,9 @@ func (a *apexBundle) buildApex(ctx android.ModuleContext) {
		validations = append(validations,
			runApexElfCheckerUnwanted(ctx, unsignedOutputFile.OutputPath, a.properties.Unwanted_transitive_deps))
	}
	if !a.testApex && android.InList(a.payloadFsType, []fsType{ext4, erofs}) {
		validations = append(validations, runApexHostVerifier(ctx, unsignedOutputFile.OutputPath))
	}
	ctx.Build(pctx, android.BuildParams{
		Rule:        rule,
		Description: "signapk",
@@ -1260,3 +1271,13 @@ func runApexElfCheckerUnwanted(ctx android.ModuleContext, apexFile android.Outpu
	})
	return timestamp
}

func runApexHostVerifier(ctx android.ModuleContext, apexFile android.OutputPath) android.Path {
	timestamp := android.PathForModuleOut(ctx, "host_apex_verifier.timestamp")
	ctx.Build(pctx, android.BuildParams{
		Rule:   apexHostVerifierRule,
		Input:  apexFile,
		Output: timestamp,
	})
	return timestamp
}