diff --git a/common/glob.go b/common/glob.go
index a3cfab2..7bb623d 100644
--- a/common/glob.go
+++ b/common/glob.go
@@ -68,16 +68,23 @@
 	return false
 }
 
-func ExpandGlobs(ctx AndroidModuleContext, in []string) []string {
+func expandGlobs(ctx AndroidModuleContext, in []string) []string {
 	if !hasGlob(in) {
 		return in
 	}
 
+	var excludes []string
+	for _, s := range in {
+		if s[0] == '-' {
+			excludes = append(excludes, s[1:])
+		}
+	}
+
 	out := make([]string, 0, len(in))
 	for _, s := range in {
 		if glob.IsGlob(s) {
-			out = append(out, Glob(ctx, s)...)
-		} else {
+			out = append(out, Glob(ctx, s, excludes)...)
+		} else if s[0] != '-' {
 			out = append(out, s)
 		}
 	}
@@ -85,12 +92,10 @@
 	return out
 }
 
-func Glob(ctx AndroidModuleContext, globPattern string) []string {
+func Glob(ctx AndroidModuleContext, globPattern string, excludes []string) []string {
 	fileListFile := filepath.Join(ModuleOutDir(ctx), "glob", globToString(globPattern))
 	depFile := fileListFile + ".d"
 
-	var excludes []string
-
 	// Get a globbed file list, and write out fileListFile and depFile
 	files, err := glob.GlobWithDepFile(globPattern, fileListFile, depFile, excludes)
 	if err != nil {
