From 620680516d86c72e85ce05de104849bd48e8f9af Mon Sep 17 00:00:00 2001 From: Paul Duffin Date: Wed, 25 Nov 2020 22:57:23 +0000 Subject: [PATCH] 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 --- java/androidmk.go | 1 - java/androidmk_test.go | 177 ----------------------------------------- java/java.go | 4 - 3 files changed, 182 deletions(-) diff --git a/java/androidmk.go b/java/androidmk.go index 386a97f64..25369ad9a 100644 --- a/java/androidmk.go +++ b/java/androidmk.go @@ -85,7 +85,6 @@ func (library *Library) AndroidMkEntries() []android.AndroidMkEntries { } else { entriesList = append(entriesList, android.AndroidMkEntries{ Class: "JAVA_LIBRARIES", - DistFiles: library.distFiles, OutputFile: android.OptionalPathForPath(library.outputFile), Include: "$(BUILD_SYSTEM)/soong_java_prebuilt.mk", ExtraEntries: []android.AndroidMkExtraEntriesFunc{ diff --git a/java/androidmk_test.go b/java/androidmk_test.go index 075b7aa6f..233e9d5c5 100644 --- a/java/androidmk_test.go +++ b/java/androidmk_test.go @@ -16,7 +16,6 @@ package java import ( "reflect" - "strings" "testing" "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) { ctx, config := testJava(t, ` java_sdk_library { diff --git a/java/java.go b/java/java.go index 42fb95574..8738e00cf 100644 --- a/java/java.go +++ b/java/java.go @@ -456,8 +456,6 @@ type Module struct { // list of the xref extraction files kytheFiles android.Paths - distFiles android.TaggedDistFiles - // Collect the module directory for IDE info in java/jdeps.go. modulePaths []string @@ -2114,8 +2112,6 @@ func (j *Library) GenerateAndroidBuildActions(ctx android.ModuleContext) { if lib := proptools.String(j.usesLibraryProperties.Provides_uses_lib); lib != "" { j.classLoaderContexts.AddContext(ctx, lib, j.DexJarBuildPath(), j.DexJarInstallPath()) } - - j.distFiles = j.GenerateTaggedDistFiles(ctx) } func (j *Library) DepsMutator(ctx android.BottomUpMutatorContext) {