aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTobias Thierer <tobiast@google.com>2018-02-09 09:45:27 +0000
committerTobias Thierer <tobiast@google.com>2018-02-09 09:46:11 +0000
commit606e9de344fae07473dd79e5ac556886a72035de (patch)
treeaabe3b652617aeabf7603e4017e496a03dabe7b3
parentf36a3d9b6da654bf8bd7a49315b1625cf0e774ce (diff)
downloadbuild_soong-606e9de344fae07473dd79e5ac556886a72035de.tar.gz
build_soong-606e9de344fae07473dd79e5ac556886a72035de.tar.bz2
build_soong-606e9de344fae07473dd79e5ac556886a72035de.zip
Revert "Support filegroup in exclude_srcs"
This reverts commit f36a3d9b6da654bf8bd7a49315b1625cf0e774ce. Reason for revert: Broke several builds. I'm acting build cop, reverting. Bug: 70351683 Change-Id: I775ada4e9cb6473519d51420b41b818af163da44
-rw-r--r--android/module.go44
-rw-r--r--cc/compiler.go1
-rw-r--r--genrule/filegroup.go1
-rw-r--r--java/java.go1
-rw-r--r--java/java_test.go49
-rw-r--r--python/python.go3
6 files changed, 22 insertions, 77 deletions
diff --git a/android/module.go b/android/module.go
index 6f247ab1..9de5294a 100644
--- a/android/module.go
+++ b/android/module.go
@@ -1176,24 +1176,15 @@ func (ctx *androidModuleContext) ExpandOptionalSource(srcFile *string, prop stri
func (ctx *androidModuleContext) ExpandSourcesSubDir(srcFiles, excludes []string, subDir string) Paths {
prefix := PathForModuleSrc(ctx).String()
- expandedExcludes := make([]string, 0, len(excludes))
-
- for _, e := range excludes {
- if m := SrcIsModule(e); m != "" {
- module := ctx.GetDirectDepWithTag(m, SourceDepTag)
- if module == nil {
- // Error will have been handled by ExtractSourcesDeps
- continue
- }
- if srcProducer, ok := module.(SourceFileProducer); ok {
- expandedExcludes = append(expandedExcludes, srcProducer.Srcs().Strings()...)
- } else {
- ctx.ModuleErrorf("srcs dependency %q is not a source file producing module", m)
- }
- } else {
- expandedExcludes = append(expandedExcludes, filepath.Join(prefix, e))
+ for i, e := range excludes {
+ j := findStringInSlice(e, srcFiles)
+ if j != -1 {
+ srcFiles = append(srcFiles[:j], srcFiles[j+1:]...)
}
+
+ excludes[i] = filepath.Join(prefix, e)
}
+
expandedSrcFiles := make(Paths, 0, len(srcFiles))
for _, s := range srcFiles {
if m := SrcIsModule(s); m != "" {
@@ -1203,33 +1194,22 @@ func (ctx *androidModuleContext) ExpandSourcesSubDir(srcFiles, excludes []string
continue
}
if srcProducer, ok := module.(SourceFileProducer); ok {
- moduleSrcs := srcProducer.Srcs()
- for _, e := range expandedExcludes {
- for j, ms := range moduleSrcs {
- if ms.String() == e {
- moduleSrcs = append(moduleSrcs[:j], moduleSrcs[j+1:]...)
- }
- }
- }
- expandedSrcFiles = append(expandedSrcFiles, moduleSrcs...)
+ expandedSrcFiles = append(expandedSrcFiles, srcProducer.Srcs()...)
} else {
ctx.ModuleErrorf("srcs dependency %q is not a source file producing module", m)
}
} else if pathtools.IsGlob(s) {
- globbedSrcFiles := ctx.Glob(filepath.Join(prefix, s), expandedExcludes)
+ globbedSrcFiles := ctx.Glob(filepath.Join(prefix, s), excludes)
for i, s := range globbedSrcFiles {
globbedSrcFiles[i] = s.(ModuleSrcPath).WithSubDir(ctx, subDir)
}
expandedSrcFiles = append(expandedSrcFiles, globbedSrcFiles...)
} else {
- p := PathForModuleSrc(ctx, s).WithSubDir(ctx, subDir)
- j := findStringInSlice(p.String(), expandedExcludes)
- if j == -1 {
- expandedSrcFiles = append(expandedSrcFiles, p)
- }
-
+ s := PathForModuleSrc(ctx, s).WithSubDir(ctx, subDir)
+ expandedSrcFiles = append(expandedSrcFiles, s)
}
}
+
return expandedSrcFiles
}
diff --git a/cc/compiler.go b/cc/compiler.go
index dd1cdeed..0d8e3a16 100644
--- a/cc/compiler.go
+++ b/cc/compiler.go
@@ -202,7 +202,6 @@ func (compiler *baseCompiler) compilerDeps(ctx DepsContext, deps Deps) Deps {
deps.GeneratedHeaders = append(deps.GeneratedHeaders, compiler.Properties.Generated_headers...)
android.ExtractSourcesDeps(ctx, compiler.Properties.Srcs)
- android.ExtractSourcesDeps(ctx, compiler.Properties.Exclude_srcs)
if compiler.hasSrcExt(".proto") {
deps = protoDeps(ctx, deps, &compiler.Proto, Bool(compiler.Properties.Proto.Static))
diff --git a/genrule/filegroup.go b/genrule/filegroup.go
index 9f4aa10d..8f28638b 100644
--- a/genrule/filegroup.go
+++ b/genrule/filegroup.go
@@ -62,7 +62,6 @@ func FileGroupFactory() android.Module {
func (fg *fileGroup) DepsMutator(ctx android.BottomUpMutatorContext) {
android.ExtractSourcesDeps(ctx, fg.properties.Srcs)
- android.ExtractSourcesDeps(ctx, fg.properties.Exclude_srcs)
}
func (fg *fileGroup) GenerateAndroidBuildActions(ctx android.ModuleContext) {
diff --git a/java/java.go b/java/java.go
index f55a7f5b..955b720b 100644
--- a/java/java.go
+++ b/java/java.go
@@ -466,7 +466,6 @@ 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 19c5f21b..60d9a408 100644
--- a/java/java_test.go
+++ b/java/java_test.go
@@ -131,19 +131,16 @@ 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,
- "java-fg/a.java": nil,
- "java-fg/b.java": nil,
- "java-fg/c.java": 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,
"prebuilts/sdk/14/android.jar": nil,
"prebuilts/sdk/14/framework.aidl": nil,
@@ -910,32 +907,6 @@ 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 {
diff --git a/python/python.go b/python/python.go
index ed879eb0..9a3b1bbc 100644
--- a/python/python.go
+++ b/python/python.go
@@ -266,13 +266,11 @@ func (p *Module) DepsMutator(ctx android.BottomUpMutatorContext) {
android.ExtractSourcesDeps(ctx, p.properties.Data)
// deps from "srcs".
android.ExtractSourcesDeps(ctx, p.properties.Srcs)
- android.ExtractSourcesDeps(ctx, p.properties.Exclude_srcs)
switch p.properties.Actual_version {
case pyVersion2:
// deps from "version.py2.srcs" property.
android.ExtractSourcesDeps(ctx, p.properties.Version.Py2.Srcs)
- android.ExtractSourcesDeps(ctx, p.properties.Version.Py2.Exclude_srcs)
ctx.AddVariationDependencies(nil, pythonLibTag,
uniqueLibs(ctx, p.properties.Libs, "version.py2.libs",
@@ -288,7 +286,6 @@ func (p *Module) DepsMutator(ctx android.BottomUpMutatorContext) {
case pyVersion3:
// deps from "version.py3.srcs" property.
android.ExtractSourcesDeps(ctx, p.properties.Version.Py3.Srcs)
- android.ExtractSourcesDeps(ctx, p.properties.Version.Py3.Exclude_srcs)
ctx.AddVariationDependencies(nil, pythonLibTag,
uniqueLibs(ctx, p.properties.Libs, "version.py3.libs",