Remove redundant setting of DistFiles by java.Library
A previous change handles dist properties automatically for all module types and as a result has made the java.Library setting of DistFiles redundant so this change removes that and the tests that duplicate tests of the general mechanism. Test: m nothing m dist sdk - before and after this change, compare result to make sure that there are no significant differences. Bug: 174226317 Change-Id: Ib79a3bdd46897efd84a9c456c37c374bd6036303
This commit is contained in:
parent
af970a2e7a
commit
620680516d
|
@ -85,7 +85,6 @@ func (library *Library) AndroidMkEntries() []android.AndroidMkEntries {
|
||||||
} else {
|
} else {
|
||||||
entriesList = append(entriesList, android.AndroidMkEntries{
|
entriesList = append(entriesList, android.AndroidMkEntries{
|
||||||
Class: "JAVA_LIBRARIES",
|
Class: "JAVA_LIBRARIES",
|
||||||
DistFiles: library.distFiles,
|
|
||||||
OutputFile: android.OptionalPathForPath(library.outputFile),
|
OutputFile: android.OptionalPathForPath(library.outputFile),
|
||||||
Include: "$(BUILD_SYSTEM)/soong_java_prebuilt.mk",
|
Include: "$(BUILD_SYSTEM)/soong_java_prebuilt.mk",
|
||||||
ExtraEntries: []android.AndroidMkExtraEntriesFunc{
|
ExtraEntries: []android.AndroidMkExtraEntriesFunc{
|
||||||
|
|
|
@ -16,7 +16,6 @@ package java
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"reflect"
|
"reflect"
|
||||||
"strings"
|
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"android/soong/android"
|
"android/soong/android"
|
||||||
|
@ -135,182 +134,6 @@ func TestHostdexSpecificRequired(t *testing.T) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestDistWithTag(t *testing.T) {
|
|
||||||
ctx, config := testJava(t, `
|
|
||||||
java_library {
|
|
||||||
name: "foo_without_tag",
|
|
||||||
srcs: ["a.java"],
|
|
||||||
compile_dex: true,
|
|
||||||
dist: {
|
|
||||||
targets: ["hi"],
|
|
||||||
},
|
|
||||||
}
|
|
||||||
java_library {
|
|
||||||
name: "foo_with_tag",
|
|
||||||
srcs: ["a.java"],
|
|
||||||
compile_dex: true,
|
|
||||||
dist: {
|
|
||||||
targets: ["hi"],
|
|
||||||
tag: ".jar",
|
|
||||||
},
|
|
||||||
}
|
|
||||||
`)
|
|
||||||
|
|
||||||
withoutTagEntries := android.AndroidMkEntriesForTest(t, config, "", ctx.ModuleForTests("foo_without_tag", "android_common").Module())
|
|
||||||
withTagEntries := android.AndroidMkEntriesForTest(t, config, "", ctx.ModuleForTests("foo_with_tag", "android_common").Module())
|
|
||||||
|
|
||||||
if len(withoutTagEntries) != 2 || len(withTagEntries) != 2 {
|
|
||||||
t.Errorf("two mk entries per module expected, got %d and %d", len(withoutTagEntries), len(withTagEntries))
|
|
||||||
}
|
|
||||||
if len(withTagEntries[0].DistFiles[".jar"]) != 1 ||
|
|
||||||
!strings.Contains(withTagEntries[0].DistFiles[".jar"][0].String(), "/javac/foo_with_tag.jar") {
|
|
||||||
t.Errorf("expected DistFiles to contain classes.jar, got %v", withTagEntries[0].DistFiles)
|
|
||||||
}
|
|
||||||
if len(withoutTagEntries[0].DistFiles[".jar"]) > 0 {
|
|
||||||
t.Errorf("did not expect explicit DistFile for .jar tag, got %v", withoutTagEntries[0].DistFiles[".jar"])
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestDistWithDest(t *testing.T) {
|
|
||||||
ctx, config := testJava(t, `
|
|
||||||
java_library {
|
|
||||||
name: "foo",
|
|
||||||
srcs: ["a.java"],
|
|
||||||
compile_dex: true,
|
|
||||||
dist: {
|
|
||||||
targets: ["my_goal"],
|
|
||||||
dest: "my/custom/dest/dir",
|
|
||||||
},
|
|
||||||
}
|
|
||||||
`)
|
|
||||||
|
|
||||||
module := ctx.ModuleForTests("foo", "android_common").Module()
|
|
||||||
entries := android.AndroidMkEntriesForTest(t, config, "", module)
|
|
||||||
if len(entries) != 2 {
|
|
||||||
t.Errorf("Expected 2 AndroidMk entries, got %d", len(entries))
|
|
||||||
}
|
|
||||||
|
|
||||||
distStrings := entries[0].GetDistForGoals(module)
|
|
||||||
|
|
||||||
if len(distStrings) != 2 {
|
|
||||||
t.Errorf("Expected 2 entries for dist: PHONY and dist-for-goals, but got %q", distStrings)
|
|
||||||
}
|
|
||||||
|
|
||||||
if distStrings[0] != ".PHONY: my_goal\n" {
|
|
||||||
t.Errorf("Expected .PHONY entry to declare my_goal, but got: %s", distStrings[0])
|
|
||||||
}
|
|
||||||
|
|
||||||
if !strings.Contains(distStrings[1], "$(call dist-for-goals,my_goal") ||
|
|
||||||
!strings.Contains(distStrings[1], ".intermediates/foo/android_common/dex/foo.jar:my/custom/dest/dir") {
|
|
||||||
t.Errorf(
|
|
||||||
"Expected dist-for-goals entry to contain my_goal and new dest dir, but got: %s", distStrings[1])
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestDistsWithAllProperties(t *testing.T) {
|
|
||||||
ctx, config := testJava(t, `
|
|
||||||
java_library {
|
|
||||||
name: "foo",
|
|
||||||
srcs: ["a.java"],
|
|
||||||
compile_dex: true,
|
|
||||||
dist: {
|
|
||||||
targets: ["baz"],
|
|
||||||
},
|
|
||||||
dists: [
|
|
||||||
{
|
|
||||||
targets: ["bar"],
|
|
||||||
tag: ".jar",
|
|
||||||
dest: "bar.jar",
|
|
||||||
dir: "bar/dir",
|
|
||||||
suffix: ".qux",
|
|
||||||
},
|
|
||||||
]
|
|
||||||
}
|
|
||||||
`)
|
|
||||||
|
|
||||||
module := ctx.ModuleForTests("foo", "android_common").Module()
|
|
||||||
entries := android.AndroidMkEntriesForTest(t, config, "", module)
|
|
||||||
if len(entries) != 2 {
|
|
||||||
t.Errorf("Expected 2 AndroidMk entries, got %d", len(entries))
|
|
||||||
}
|
|
||||||
|
|
||||||
distStrings := entries[0].GetDistForGoals(module)
|
|
||||||
|
|
||||||
if len(distStrings) != 4 {
|
|
||||||
t.Errorf("Expected 4 entries for dist: PHONY and dist-for-goals, but got %d", len(distStrings))
|
|
||||||
}
|
|
||||||
|
|
||||||
if distStrings[0] != ".PHONY: bar\n" {
|
|
||||||
t.Errorf("Expected .PHONY entry to declare bar, but got: %s", distStrings[0])
|
|
||||||
}
|
|
||||||
|
|
||||||
if !strings.Contains(distStrings[1], "$(call dist-for-goals,bar") ||
|
|
||||||
!strings.Contains(
|
|
||||||
distStrings[1],
|
|
||||||
".intermediates/foo/android_common/javac/foo.jar:bar/dir/bar.qux.jar") {
|
|
||||||
t.Errorf(
|
|
||||||
"Expected dist-for-goals entry to contain bar and new dest dir, but got: %s", distStrings[1])
|
|
||||||
}
|
|
||||||
|
|
||||||
if distStrings[2] != ".PHONY: baz\n" {
|
|
||||||
t.Errorf("Expected .PHONY entry to declare baz, but got: %s", distStrings[2])
|
|
||||||
}
|
|
||||||
|
|
||||||
if !strings.Contains(distStrings[3], "$(call dist-for-goals,baz") ||
|
|
||||||
!strings.Contains(distStrings[3], ".intermediates/foo/android_common/dex/foo.jar:foo.jar") {
|
|
||||||
t.Errorf(
|
|
||||||
"Expected dist-for-goals entry to contain my_other_goal and new dest dir, but got: %s",
|
|
||||||
distStrings[3])
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestDistsWithTag(t *testing.T) {
|
|
||||||
ctx, config := testJava(t, `
|
|
||||||
java_library {
|
|
||||||
name: "foo_without_tag",
|
|
||||||
srcs: ["a.java"],
|
|
||||||
compile_dex: true,
|
|
||||||
dists: [
|
|
||||||
{
|
|
||||||
targets: ["hi"],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
}
|
|
||||||
java_library {
|
|
||||||
name: "foo_with_tag",
|
|
||||||
srcs: ["a.java"],
|
|
||||||
compile_dex: true,
|
|
||||||
dists: [
|
|
||||||
{
|
|
||||||
targets: ["hi"],
|
|
||||||
tag: ".jar",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
}
|
|
||||||
`)
|
|
||||||
|
|
||||||
moduleWithoutTag := ctx.ModuleForTests("foo_without_tag", "android_common").Module()
|
|
||||||
moduleWithTag := ctx.ModuleForTests("foo_with_tag", "android_common").Module()
|
|
||||||
|
|
||||||
withoutTagEntries := android.AndroidMkEntriesForTest(t, config, "", moduleWithoutTag)
|
|
||||||
withTagEntries := android.AndroidMkEntriesForTest(t, config, "", moduleWithTag)
|
|
||||||
|
|
||||||
if len(withoutTagEntries) != 2 || len(withTagEntries) != 2 {
|
|
||||||
t.Errorf("two mk entries per module expected, got %d and %d", len(withoutTagEntries), len(withTagEntries))
|
|
||||||
}
|
|
||||||
|
|
||||||
distFilesWithoutTag := withoutTagEntries[0].DistFiles
|
|
||||||
distFilesWithTag := withTagEntries[0].DistFiles
|
|
||||||
|
|
||||||
if len(distFilesWithTag[".jar"]) != 1 ||
|
|
||||||
!strings.Contains(distFilesWithTag[".jar"][0].String(), "/javac/foo_with_tag.jar") {
|
|
||||||
t.Errorf("expected foo_with_tag's .jar-tagged DistFiles to contain classes.jar, got %v", distFilesWithTag[".jar"])
|
|
||||||
}
|
|
||||||
if len(distFilesWithoutTag[".jar"]) > 0 {
|
|
||||||
t.Errorf("did not expect foo_without_tag's .jar-tagged DistFiles to contain files, but got %v", distFilesWithoutTag[".jar"])
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestJavaSdkLibrary_RequireXmlPermissionFile(t *testing.T) {
|
func TestJavaSdkLibrary_RequireXmlPermissionFile(t *testing.T) {
|
||||||
ctx, config := testJava(t, `
|
ctx, config := testJava(t, `
|
||||||
java_sdk_library {
|
java_sdk_library {
|
||||||
|
|
|
@ -456,8 +456,6 @@ type Module struct {
|
||||||
// list of the xref extraction files
|
// list of the xref extraction files
|
||||||
kytheFiles android.Paths
|
kytheFiles android.Paths
|
||||||
|
|
||||||
distFiles android.TaggedDistFiles
|
|
||||||
|
|
||||||
// Collect the module directory for IDE info in java/jdeps.go.
|
// Collect the module directory for IDE info in java/jdeps.go.
|
||||||
modulePaths []string
|
modulePaths []string
|
||||||
|
|
||||||
|
@ -2114,8 +2112,6 @@ func (j *Library) GenerateAndroidBuildActions(ctx android.ModuleContext) {
|
||||||
if lib := proptools.String(j.usesLibraryProperties.Provides_uses_lib); lib != "" {
|
if lib := proptools.String(j.usesLibraryProperties.Provides_uses_lib); lib != "" {
|
||||||
j.classLoaderContexts.AddContext(ctx, lib, j.DexJarBuildPath(), j.DexJarInstallPath())
|
j.classLoaderContexts.AddContext(ctx, lib, j.DexJarBuildPath(), j.DexJarInstallPath())
|
||||||
}
|
}
|
||||||
|
|
||||||
j.distFiles = j.GenerateTaggedDistFiles(ctx)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (j *Library) DepsMutator(ctx android.BottomUpMutatorContext) {
|
func (j *Library) DepsMutator(ctx android.BottomUpMutatorContext) {
|
||||||
|
|
Loading…
Reference in New Issue