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

Commit af3fd511 authored by Jooyung Han's avatar Jooyung Han Committed by Automerger Merge Worker
Browse files

Merge "apex: Do not compress EROFS APEX" into main am: 5c5dc9dc

parents aedc8953 5c5dc9dc
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -1743,7 +1743,13 @@ func (a *apexBundle) setPayloadFsType(ctx android.ModuleContext) {
}

func (a *apexBundle) isCompressable() bool {
	return proptools.BoolDefault(a.overridableProperties.Compressible, false) && !a.testApex
	if a.testApex {
		return false
	}
	if a.payloadFsType == erofs {
		return false
	}
	return proptools.Bool(a.overridableProperties.Compressible)
}

func (a *apexBundle) commonBuildActions(ctx android.ModuleContext) bool {
+27 −0
Original line number Diff line number Diff line
@@ -9093,6 +9093,33 @@ func TestCompressedApex(t *testing.T) {
	ensureContains(t, androidMk, "LOCAL_MODULE_STEM := myapex.capex\n")
}

func TestCompressedApexIsDisabledWhenUsingErofs(t *testing.T) {
	t.Parallel()
	ctx := testApex(t, `
		apex {
			name: "myapex",
			key: "myapex.key",
			compressible: true,
			updatable: false,
			payload_fs_type: "erofs",
		}
		apex_key {
			name: "myapex.key",
			public_key: "testkey.avbpubkey",
			private_key: "testkey.pem",
		}
	`,
		android.FixtureModifyProductVariables(func(variables android.FixtureProductVariables) {
			variables.CompressedApex = proptools.BoolPtr(true)
		}),
	)

	compressRule := ctx.ModuleForTests("myapex", "android_common_myapex").MaybeRule("compressRule")
	if compressRule.Rule != nil {
		t.Error("erofs apex should not be compressed")
	}
}

func TestApexSet_ShouldRespectCompressedApexFlag(t *testing.T) {
	t.Parallel()
	for _, compressionEnabled := range []bool{true, false} {