gogio: load module-root Android jars

This commit is contained in:
Joe Julian
2026-04-16 21:03:09 -07:00
parent f71579e799
commit 7b5a6b418c
2 changed files with 33 additions and 5 deletions
+12 -4
View File
@@ -117,6 +117,7 @@ func buildAndroid(tmpDir string, bi *buildInfo) error {
if err != nil {
return err
}
moduleRoot := moduleRootForDir(bi.pkgDir)
var extraJars []string
visitedPkgs := make(map[string]bool)
var visitPkg func(*packages.Package) error
@@ -125,7 +126,7 @@ func buildAndroid(tmpDir string, bi *buildInfo) error {
return nil
}
dir := filepath.Dir(p.GoFiles[0])
jars, err := androidExtraJars(dir)
jars, err := androidExtraJars(dir, moduleRoot)
if err != nil {
return err
}
@@ -825,12 +826,19 @@ func copyTree(src, dst string) error {
})
}
func androidExtraJars(dir string) ([]string, error) {
func androidExtraJars(dir, moduleRoot string) ([]string, error) {
var jars []string
for _, pattern := range []string{
patterns := []string{
filepath.Join(dir, "*.jar"),
filepath.Join(dir, "android", "*.jar"),
} {
}
if moduleRoot != "" && moduleRoot != dir {
patterns = append(patterns,
filepath.Join(moduleRoot, "*.jar"),
filepath.Join(moduleRoot, "android", "*.jar"),
)
}
for _, pattern := range patterns {
matches, err := filepath.Glob(pattern)
if err != nil {
return nil, err