Soong package structure refactoring

Give prebuilt_etc and sh_binary their own packages and split the
gigantic main Android.bp up to small, per-package ones.

Test: m nothing, TreeHugger
Bug: 156980228
Change-Id: I7b00cd344b9f16861f1ff39edf0029f016b853d0
This commit is contained in:
Jaewoong Jung
2020-06-01 10:45:49 -07:00
parent a91b64d3ee
commit 4b79e98a6e
31 changed files with 787 additions and 691 deletions

18
xml/Android.bp Normal file
View File

@@ -0,0 +1,18 @@
bootstrap_go_package {
name: "soong-xml",
pkgPath: "android/soong/xml",
deps: [
"blueprint",
"blueprint-pathtools",
"soong",
"soong-android",
"soong-etc",
],
srcs: [
"xml.go",
],
testSrcs: [
"xml_test.go",
],
pluginFor: ["soong_build"],
}

View File

@@ -16,6 +16,7 @@ package xml
import (
"android/soong/android"
"android/soong/etc"
"github.com/google/blueprint"
"github.com/google/blueprint/proptools"
@@ -62,7 +63,7 @@ type prebuiltEtcXmlProperties struct {
}
type prebuiltEtcXml struct {
android.PrebuiltEtc
etc.PrebuiltEtc
properties prebuiltEtcXmlProperties
}
@@ -121,7 +122,7 @@ func (p *prebuiltEtcXml) GenerateAndroidBuildActions(ctx android.ModuleContext)
func PrebuiltEtcXmlFactory() android.Module {
module := &prebuiltEtcXml{}
module.AddProperties(&module.properties)
android.InitPrebuiltEtcModule(&module.PrebuiltEtc, "etc")
etc.InitPrebuiltEtcModule(&module.PrebuiltEtc, "etc")
// This module is device-only
android.InitAndroidArchModule(module, android.DeviceSupported, android.MultilibFirst)
return module

View File

@@ -20,6 +20,7 @@ import (
"testing"
"android/soong/android"
"android/soong/etc"
)
var buildDir string
@@ -57,7 +58,7 @@ func testXml(t *testing.T, bp string) *android.TestContext {
}
config := android.TestArchConfig(buildDir, nil, bp, fs)
ctx := android.NewTestArchContext()
ctx.RegisterModuleType("prebuilt_etc", android.PrebuiltEtcFactory)
ctx.RegisterModuleType("prebuilt_etc", etc.PrebuiltEtcFactory)
ctx.RegisterModuleType("prebuilt_etc_xml", PrebuiltEtcXmlFactory)
ctx.Register(config)
_, errs := ctx.ParseFileList(".", []string{"Android.bp"})