Loading android/defs.go +0 −6 Original line number Diff line number Diff line Loading @@ -16,7 +16,6 @@ package android import ( "github.com/google/blueprint" "github.com/google/blueprint/bootstrap" ) var ( Loading Loading @@ -120,8 +119,3 @@ func init() { return ctx.Config().RBEWrapper() }) } // GlobToListFileRule creates a rule that writes a list of files matching a pattern to a file. func GlobToListFileRule(ctx ModuleContext, pattern string, excludes []string, file WritablePath) { bootstrap.GlobFile(ctx.blueprintModuleContext(), pattern, excludes, file.String()) } java/aar.go +10 −7 Original line number Diff line number Diff line Loading @@ -15,10 +15,10 @@ package java import ( "crypto/sha256" "fmt" "path/filepath" "slices" "strconv" "strings" "android/soong/android" Loading Loading @@ -236,18 +236,20 @@ func (a *aapt) aapt2Flags(ctx android.ModuleContext, sdkContext android.SdkConte rroDirs = append(rroDirs, resRRODirs...) } assetDirsHasher := sha256.New() var assetDeps android.Paths for i, dir := range assetDirs { for _, dir := range assetDirs { // Add a dependency on every file in the asset directory. This ensures the aapt2 // rule will be rerun if one of the files in the asset directory is modified. assetDeps = append(assetDeps, androidResourceGlob(ctx, dir)...) dirContents := androidResourceGlob(ctx, dir) assetDeps = append(assetDeps, dirContents...) // Add a dependency on a file that contains a list of all the files in the asset directory. // Add a hash of all the files in the asset directory to the command line. // This ensures the aapt2 rule will be run if a file is removed from the asset directory, // or a file is added whose timestamp is older than the output of aapt2. assetFileListFile := android.PathForModuleOut(ctx, "asset_dir_globs", strconv.Itoa(i)+".glob") androidResourceGlobList(ctx, dir, assetFileListFile) assetDeps = append(assetDeps, assetFileListFile) for _, path := range dirContents.Strings() { assetDirsHasher.Write([]byte(path)) } } assetDirStrings := assetDirs.Strings() Loading Loading @@ -282,6 +284,7 @@ func (a *aapt) aapt2Flags(ctx android.ModuleContext, sdkContext android.SdkConte linkDeps = append(linkDeps, manifestPath) linkFlags = append(linkFlags, android.JoinWithPrefix(assetDirStrings, "-A ")) linkFlags = append(linkFlags, fmt.Sprintf("$$(: %x)", assetDirsHasher.Sum(nil))) linkDeps = append(linkDeps, assetDeps...) // Returns the effective version for {min|target}_sdk_version Loading java/android_resources.go +0 −9 Original line number Diff line number Diff line Loading @@ -39,15 +39,6 @@ func androidResourceGlob(ctx android.EarlyModuleContext, dir android.Path) andro return ctx.GlobFiles(filepath.Join(dir.String(), "**/*"), androidResourceIgnoreFilenames) } // androidResourceGlobList creates a rule to write the list of files in the given directory, using // the standard exclusion patterns for Android resources, to the given output file. func androidResourceGlobList(ctx android.ModuleContext, dir android.Path, fileListFile android.WritablePath) { android.GlobToListFileRule(ctx, filepath.Join(dir.String(), "**/*"), androidResourceIgnoreFilenames, fileListFile) } type overlayType int const ( Loading Loading
android/defs.go +0 −6 Original line number Diff line number Diff line Loading @@ -16,7 +16,6 @@ package android import ( "github.com/google/blueprint" "github.com/google/blueprint/bootstrap" ) var ( Loading Loading @@ -120,8 +119,3 @@ func init() { return ctx.Config().RBEWrapper() }) } // GlobToListFileRule creates a rule that writes a list of files matching a pattern to a file. func GlobToListFileRule(ctx ModuleContext, pattern string, excludes []string, file WritablePath) { bootstrap.GlobFile(ctx.blueprintModuleContext(), pattern, excludes, file.String()) }
java/aar.go +10 −7 Original line number Diff line number Diff line Loading @@ -15,10 +15,10 @@ package java import ( "crypto/sha256" "fmt" "path/filepath" "slices" "strconv" "strings" "android/soong/android" Loading Loading @@ -236,18 +236,20 @@ func (a *aapt) aapt2Flags(ctx android.ModuleContext, sdkContext android.SdkConte rroDirs = append(rroDirs, resRRODirs...) } assetDirsHasher := sha256.New() var assetDeps android.Paths for i, dir := range assetDirs { for _, dir := range assetDirs { // Add a dependency on every file in the asset directory. This ensures the aapt2 // rule will be rerun if one of the files in the asset directory is modified. assetDeps = append(assetDeps, androidResourceGlob(ctx, dir)...) dirContents := androidResourceGlob(ctx, dir) assetDeps = append(assetDeps, dirContents...) // Add a dependency on a file that contains a list of all the files in the asset directory. // Add a hash of all the files in the asset directory to the command line. // This ensures the aapt2 rule will be run if a file is removed from the asset directory, // or a file is added whose timestamp is older than the output of aapt2. assetFileListFile := android.PathForModuleOut(ctx, "asset_dir_globs", strconv.Itoa(i)+".glob") androidResourceGlobList(ctx, dir, assetFileListFile) assetDeps = append(assetDeps, assetFileListFile) for _, path := range dirContents.Strings() { assetDirsHasher.Write([]byte(path)) } } assetDirStrings := assetDirs.Strings() Loading Loading @@ -282,6 +284,7 @@ func (a *aapt) aapt2Flags(ctx android.ModuleContext, sdkContext android.SdkConte linkDeps = append(linkDeps, manifestPath) linkFlags = append(linkFlags, android.JoinWithPrefix(assetDirStrings, "-A ")) linkFlags = append(linkFlags, fmt.Sprintf("$$(: %x)", assetDirsHasher.Sum(nil))) linkDeps = append(linkDeps, assetDeps...) // Returns the effective version for {min|target}_sdk_version Loading
java/android_resources.go +0 −9 Original line number Diff line number Diff line Loading @@ -39,15 +39,6 @@ func androidResourceGlob(ctx android.EarlyModuleContext, dir android.Path) andro return ctx.GlobFiles(filepath.Join(dir.String(), "**/*"), androidResourceIgnoreFilenames) } // androidResourceGlobList creates a rule to write the list of files in the given directory, using // the standard exclusion patterns for Android resources, to the given output file. func androidResourceGlobList(ctx android.ModuleContext, dir android.Path, fileListFile android.WritablePath) { android.GlobToListFileRule(ctx, filepath.Join(dir.String(), "**/*"), androidResourceIgnoreFilenames, fileListFile) } type overlayType int const ( Loading