Support subtracting sources from globs

Support -file or -path/glob in file lists that contain globs to
subtract files from the resulting glob.  Also move source file
prefixing and handling into a common function.

Change-Id: Ib6d74ce22f53cae7348c4ba35b779976d90359a6
diff --git a/common/module.go b/common/module.go
index d497076..bafb583 100644
--- a/common/module.go
+++ b/common/module.go
@@ -432,3 +432,17 @@
 	_, ok := m.(AndroidModule)
 	return ok
 }
+
+func ExpandSources(ctx AndroidModuleContext, srcFiles []string) []string {
+	prefix := ModuleSrcDir(ctx)
+	for i, srcFile := range srcFiles {
+		if srcFile[0] == '-' {
+			srcFiles[i] = "-" + filepath.Join(prefix, srcFile[1:])
+		} else {
+			srcFiles[i] = filepath.Join(prefix, srcFile)
+		}
+	}
+
+	srcFiles = expandGlobs(ctx, srcFiles)
+	return srcFiles
+}