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

Commit 03584781 authored by Rupert Shuttleworth's avatar Rupert Shuttleworth
Browse files

Revert "Add some more properties to the bp2build APEX converter."

This reverts commit 69bf4c0d.

Reason for revert: Possibly broke CI (https://android-build.googleplex.com/builds/quarterdeck?branch=aosp-master-bazel&target=bp2build-incremental&lkgb=7266256&fkbb=7237028), rolling back just in case...

Change-Id: I14ebac4f47576a73285d1f724ae4499036e8e678
parent 69bf4c0d
Loading
Loading
Loading
Loading
+0 −4
Original line number Diff line number Diff line
@@ -147,10 +147,6 @@ func BazelLabelForModuleSrcSingle(ctx BazelConversionPathContext, path string) b
	return BazelLabelForModuleSrcExcludes(ctx, []string{path}, []string(nil)).Includes[0]
}

func BazelLabelForModuleDepSingle(ctx BazelConversionPathContext, path string) bazel.Label {
	return BazelLabelForModuleDepsExcludes(ctx, []string{path}, []string(nil)).Includes[0]
}

// BazelLabelForModuleSrc expects a list of path (relative to local module directory) and module
// references (":<module>") and returns a bazel.LabelList{} containing the resolved references in
// paths, relative to the local module, or Bazel-labels (absolute if in a different package or
+5 −63
Original line number Diff line number Diff line
@@ -3188,15 +3188,6 @@ func rModulesPackages() map[string][]string {

type bazelApexBundleAttributes struct {
	Manifest bazel.LabelAttribute
	Android_manifest   bazel.LabelAttribute
	File_contexts      string
	Key                bazel.LabelAttribute
	Certificate        bazel.LabelAttribute
	Min_sdk_version    string
	Updatable          bazel.BoolAttribute
	Installable        bazel.BoolAttribute
	Native_shared_libs bazel.LabelListAttribute
	Binaries           bazel.StringListAttribute
}

type bazelApexBundle struct {
@@ -3229,63 +3220,14 @@ func ApexBundleBp2Build(ctx android.TopDownMutatorContext) {

func apexBundleBp2BuildInternal(ctx android.TopDownMutatorContext, module *apexBundle) {
	var manifestLabelAttribute bazel.LabelAttribute
	if module.properties.Manifest != nil {
		manifestLabelAttribute.SetValue(android.BazelLabelForModuleSrcSingle(ctx, *module.properties.Manifest))
	}

	var androidManifestLabelAttribute bazel.LabelAttribute
	if module.properties.AndroidManifest != nil {
		androidManifestLabelAttribute.SetValue(android.BazelLabelForModuleSrcSingle(ctx, *module.properties.AndroidManifest))
	}

	var fileContexts string
	if module.properties.File_contexts != nil {
		fileContexts = *module.properties.File_contexts
	}

	var minSdkVersion string
	if module.properties.Min_sdk_version != nil {
		minSdkVersion = *module.properties.Min_sdk_version
	}

	var keyLabelAttribute bazel.LabelAttribute
	if module.overridableProperties.Key != nil {
		keyLabelAttribute.SetValue(android.BazelLabelForModuleDepSingle(ctx, *module.overridableProperties.Key))
	}

	var certificateLabelAttribute bazel.LabelAttribute
	if module.overridableProperties.Certificate != nil {
		certificateLabelAttribute.SetValue(android.BazelLabelForModuleDepSingle(ctx, *module.overridableProperties.Certificate))
	}

	nativeSharedLibs := module.properties.ApexNativeDependencies.Native_shared_libs
	nativeSharedLibsLabelList := android.BazelLabelForModuleDeps(ctx, nativeSharedLibs)
	nativeSharedLibsLabelListAttribute := bazel.MakeLabelListAttribute(nativeSharedLibsLabelList)

	binaries := module.properties.ApexNativeDependencies.Binaries
	binariesStringListAttribute := bazel.MakeStringListAttribute(binaries)

	var updatableAttribute bazel.BoolAttribute
	if module.properties.Updatable != nil {
		updatableAttribute.Value = module.properties.Updatable
	}

	var installableAttribute bazel.BoolAttribute
	if module.properties.Installable != nil {
		installableAttribute.Value = module.properties.Installable
	manifestStringPtr := module.properties.Manifest
	if module.properties.Manifest != nil {
		manifestLabelAttribute.SetValue(android.BazelLabelForModuleSrcSingle(ctx, *manifestStringPtr))
	}

	attrs := &bazelApexBundleAttributes{
		Manifest: manifestLabelAttribute,
		Android_manifest:   androidManifestLabelAttribute,
		File_contexts:      fileContexts,
		Min_sdk_version:    minSdkVersion,
		Key:                keyLabelAttribute,
		Certificate:        certificateLabelAttribute,
		Updatable:          updatableAttribute,
		Installable:        installableAttribute,
		Native_shared_libs: nativeSharedLibsLabelListAttribute,
		Binaries:           binariesStringListAttribute,
	}

	props := bazel.BazelTargetModuleProperties{
+0 −2
Original line number Diff line number Diff line
@@ -37,7 +37,6 @@ func registerApexKeyBuildComponents(ctx android.RegistrationContext) {

type apexKey struct {
	android.ModuleBase
	android.BazelModuleBase

	properties apexKeyProperties

@@ -62,7 +61,6 @@ func ApexKeyFactory() android.Module {
	module := &apexKey{}
	module.AddProperties(&module.properties)
	android.InitAndroidArchModule(module, android.HostAndDeviceDefault, android.MultilibCommon)
	android.InitBazelModule(module)
	return module
}

+4 −67
Original line number Diff line number Diff line
@@ -17,9 +17,6 @@ package bp2build
import (
	"android/soong/android"
	"android/soong/apex"
	"android/soong/cc"
	"android/soong/java"

	"testing"
)

@@ -29,13 +26,6 @@ func runApexTestCase(t *testing.T, tc bp2buildTestCase) {
}

func registerApexModuleTypes(ctx android.RegistrationContext) {
	// CC module types needed as they can be APEX dependencies viathe  native_shared_libs property
	cc.RegisterCCBuildComponents(ctx)
	ctx.RegisterModuleType("cc_library", cc.LibraryFactory)

	ctx.RegisterModuleType("apex_key", apex.ApexKeyFactory)

	ctx.RegisterModuleType("android_app_certificate", java.AndroidAppCertificateFactory)
}

func TestApexBundleSimple(t *testing.T) {
@@ -46,67 +36,14 @@ func TestApexBundleSimple(t *testing.T) {
		moduleTypeUnderTestBp2BuildMutator: apex.ApexBundleBp2Build,
		filesystem:                         map[string]string{},
		blueprint: `
apex_key {
        name: "com.android.apogee.key",
        public_key: "com.android.apogee.avbpubkey",
        private_key: "com.android.apogee.pem",
	bazel_module: { bp2build_available: false },
}

android_app_certificate {
        name: "com.android.apogee.certificate",
        certificate: "com.android.apogee",
        bazel_module: { bp2build_available: false },
}

cc_library {
        name: "native_shared_lib_1",
	bazel_module: { bp2build_available: false },
}

cc_library {
        name: "native_shared_lib_2",
	bazel_module: { bp2build_available: false },
}

apex {
	name: "com.android.apogee",
	manifest: "apogee_manifest.json",
	androidManifest: "ApogeeAndroidManifest.xml",
        file_contexts: "com.android.apogee-file_contexts",
	min_sdk_version: "29",
	key: "com.android.apogee.key",
	certificate: "com.android.apogee.certificate",
	updatable: false,
	installable: false,
	native_shared_libs: [
	    "native_shared_lib_1",
	    "native_shared_lib_2",
	],
	binaries: [
            "binary_1",
	    "binary_2",
	],
	name: "apogee",
	manifest: "manifest.json",
}
`,
		expectedBazelTargets: []string{`apex(
    name = "com.android.apogee",
    android_manifest = "ApogeeAndroidManifest.xml",
    binaries = [
        "binary_1",
        "binary_2",
    ],
    certificate = ":com.android.apogee.certificate",
    file_contexts = "com.android.apogee-file_contexts",
    installable = False,
    key = ":com.android.apogee.key",
    manifest = "apogee_manifest.json",
    min_sdk_version = "29",
    native_shared_libs = [
        ":native_shared_lib_1",
        ":native_shared_lib_2",
    ],
    updatable = False,
    name = "apogee",
    manifest = "manifest.json",
)`}})
}

+0 −3
Original line number Diff line number Diff line
@@ -1104,8 +1104,6 @@ func AndroidTestHelperAppFactory() android.Module {

type AndroidAppCertificate struct {
	android.ModuleBase
	android.BazelModuleBase

	properties  AndroidAppCertificateProperties
	Certificate Certificate
}
@@ -1121,7 +1119,6 @@ func AndroidAppCertificateFactory() android.Module {
	module := &AndroidAppCertificate{}
	module.AddProperties(&module.properties)
	android.InitAndroidModule(module)
	android.InitBazelModule(module)
	return module
}