Merge changes from topic "revert_vendor" am: 3e2760a539 am: 7868fe0c6f am: f1d2946eaa
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1556737
MUST ONLY BE SUBMITTED BY AUTOMERGER
Change-Id: I2c3629d513298a21f25335d203964c8a2cac3222
diff --git a/cc/library.go b/cc/library.go
index 29a3c69..af9aaca 100644
--- a/cc/library.go
+++ b/cc/library.go
@@ -449,39 +449,24 @@
}
continue
}
- glob, err := ctx.GlobWithDeps(dir+"/**/*", nil)
- if err != nil {
- ctx.ModuleErrorf("glob failed: %#v", err)
- return
+ exts := headerExts
+ // Glob all files under this special directory, because of C++ headers.
+ if strings.HasPrefix(dir, "external/libcxx/include") {
+ exts = []string{""}
}
- isLibcxx := strings.HasPrefix(dir, "external/libcxx/include")
- j := 0
- for i, header := range glob {
- if isLibcxx {
- // Glob all files under this special directory, because of C++ headers with no
- // extension.
- if !strings.HasSuffix(header, "/") {
+ for _, ext := range exts {
+ glob, err := ctx.GlobWithDeps(dir+"/**/*"+ext, nil)
+ if err != nil {
+ ctx.ModuleErrorf("glob failed: %#v", err)
+ return
+ }
+ for _, header := range glob {
+ if strings.HasSuffix(header, "/") {
continue
}
- } else {
- // Filter out only the files with extensions that are headers.
- found := false
- for _, ext := range headerExts {
- if strings.HasSuffix(header, ext) {
- found = true
- break
- }
- }
- if !found {
- continue
- }
+ ret = append(ret, android.PathForSource(ctx, header))
}
- if i != j {
- glob[j] = glob[i]
- }
- j++
}
- glob = glob[:j]
}
// Collect generated headers