aboutsummaryrefslogtreecommitdiffstats
path: root/java
diff options
context:
space:
mode:
authorNan Zhang <nanzhang@google.com>2018-02-19 18:35:36 +0000
committerandroid-build-merger <android-build-merger@google.com>2018-02-19 18:35:36 +0000
commit73ca4ec589e61743680e97b2c6fe5f1462b4f3dc (patch)
tree0393bff8140c2b0cee773f011f3954cbbc10ff94 /java
parent12c0a1b2cfe870d42fbb65d49b2457d8bafcfb93 (diff)
parent6df794ebb40b98985b314acea2b8f07faf737ea6 (diff)
downloadbuild_soong-73ca4ec589e61743680e97b2c6fe5f1462b4f3dc.tar.gz
build_soong-73ca4ec589e61743680e97b2c6fe5f1462b4f3dc.tar.bz2
build_soong-73ca4ec589e61743680e97b2c6fe5f1462b4f3dc.zip
Merge "Revert "Revert "Support filegroup in exclude_srcs""" am: f28e32a2a5 am: 3aa79ee5f5
am: 6df794ebb4 Change-Id: If6f3707008c217dec95f991f3c8fa3585ce42b0b
Diffstat (limited to 'java')
-rw-r--r--java/java.go1
-rw-r--r--java/java_test.go49
2 files changed, 40 insertions, 10 deletions
diff --git a/java/java.go b/java/java.go
index b587990d..9d2074fe 100644
--- a/java/java.go
+++ b/java/java.go
@@ -466,6 +466,7 @@ func (j *Module) deps(ctx android.BottomUpMutatorContext) {
ctx.AddDependency(ctx.Module(), libTag, j.properties.Annotation_processors...)
android.ExtractSourcesDeps(ctx, j.properties.Srcs)
+ android.ExtractSourcesDeps(ctx, j.properties.Exclude_srcs)
android.ExtractSourcesDeps(ctx, j.properties.Java_resources)
android.ExtractSourceDeps(ctx, j.properties.Manifest)
diff --git a/java/java_test.go b/java/java_test.go
index 60d9a408..19c5f21b 100644
--- a/java/java_test.go
+++ b/java/java_test.go
@@ -131,16 +131,19 @@ func testContext(config android.Config, bp string,
}
mockFS := map[string][]byte{
- "Android.bp": []byte(bp),
- "a.java": nil,
- "b.java": nil,
- "c.java": nil,
- "b.kt": nil,
- "a.jar": nil,
- "b.jar": nil,
- "java-res/a": nil,
- "java-res/b": nil,
- "java-res2/a": nil,
+ "Android.bp": []byte(bp),
+ "a.java": nil,
+ "b.java": nil,
+ "c.java": nil,
+ "b.kt": nil,
+ "a.jar": nil,
+ "b.jar": nil,
+ "java-res/a": nil,
+ "java-res/b": nil,
+ "java-res2/a": nil,
+ "java-fg/a.java": nil,
+ "java-fg/b.java": nil,
+ "java-fg/c.java": nil,
"prebuilts/sdk/14/android.jar": nil,
"prebuilts/sdk/14/framework.aidl": nil,
@@ -907,6 +910,32 @@ func TestJarGenrules(t *testing.T) {
}
}
+func TestExcludeFileGroupInSrcs(t *testing.T) {
+ ctx := testJava(t, `
+ java_library {
+ name: "foo",
+ srcs: ["a.java", ":foo-srcs"],
+ exclude_srcs: ["a.java", ":foo-excludes"],
+ }
+
+ filegroup {
+ name: "foo-srcs",
+ srcs: ["java-fg/a.java", "java-fg/b.java", "java-fg/c.java"],
+ }
+
+ filegroup {
+ name: "foo-excludes",
+ srcs: ["java-fg/a.java", "java-fg/b.java"],
+ }
+ `)
+
+ javac := ctx.ModuleForTests("foo", "android_common").Rule("javac")
+
+ if len(javac.Inputs) != 1 || javac.Inputs[0].String() != "java-fg/c.java" {
+ t.Errorf(`foo inputs %v != ["java-fg/c.java"]`, javac.Inputs)
+ }
+}
+
func fail(t *testing.T, errs []error) {
t.Helper()
if len(errs) > 0 {