Revert "Patch to fix Aug train issue with tethering"
Revert "[automerge] Patch to fix Aug train issue with tethering ..." Revert submission 19432194-presubmit-am-5e598b33be884d9f98a29ce1c3c575fb Reason for revert: Not needed in tm-mainline-prod and breaks bluetooth. Reverted Changes: I57969b85a:Patch to fix Aug train issue with tethering Ie6560f201:[automerge] Patch to fix Aug train issue with teth... Change-Id: If44d16a00847a554862aa139c04370ad30166c74
This commit is contained in:
@@ -571,23 +571,6 @@ func (i *HiddenAPIInfo) FlagSubset() SignatureCsvSubset {
|
||||
|
||||
var HiddenAPIInfoProvider = blueprint.NewProvider(HiddenAPIInfo{})
|
||||
|
||||
// HiddenAPIInfoForSdk contains information provided by the hidden API processing for use
|
||||
// by the sdk snapshot.
|
||||
//
|
||||
// That includes paths resolved from HiddenAPIFlagFileProperties and also generated by hidden API
|
||||
// processing.
|
||||
type HiddenAPIInfoForSdk struct {
|
||||
// FlagFilesByCategory maps from the flag file category to the paths containing information for
|
||||
// that category.
|
||||
FlagFilesByCategory FlagFilesByCategory
|
||||
|
||||
// The output from the hidden API processing needs to be made available to other modules.
|
||||
HiddenAPIFlagOutput
|
||||
}
|
||||
|
||||
// Provides hidden API info for the sdk snapshot.
|
||||
var HiddenAPIInfoForSdkProvider = blueprint.NewProvider(HiddenAPIInfoForSdk{})
|
||||
|
||||
// ModuleStubDexJars contains the stub dex jars provided by a single module.
|
||||
//
|
||||
// It maps a *HiddenAPIScope to the path to stub dex jars appropriate for that scope. See
|
||||
@@ -970,11 +953,8 @@ func (s SignatureCsvSubsets) RelativeToTop() []string {
|
||||
// patterns that will select a subset of the monolithic flags.
|
||||
func buildRuleSignaturePatternsFile(
|
||||
ctx android.ModuleContext, flagsPath android.Path,
|
||||
splitPackages []string, packagePrefixes []string, singlePackages []string,
|
||||
suffix string) android.Path {
|
||||
hiddenApiSubDir := "modular-hiddenapi" + suffix
|
||||
|
||||
patternsFile := android.PathForModuleOut(ctx, hiddenApiSubDir, "signature-patterns.csv")
|
||||
splitPackages []string, packagePrefixes []string, singlePackages []string) android.Path {
|
||||
patternsFile := android.PathForModuleOut(ctx, "modular-hiddenapi", "signature-patterns.csv")
|
||||
// Create a rule to validate the output from the following rule.
|
||||
rule := android.NewRuleBuilder(pctx, ctx)
|
||||
|
||||
@@ -991,7 +971,7 @@ func buildRuleSignaturePatternsFile(
|
||||
FlagForEachArg("--package-prefix ", packagePrefixes).
|
||||
FlagForEachArg("--single-package ", singlePackages).
|
||||
FlagWithOutput("--output ", patternsFile)
|
||||
rule.Build("hiddenAPISignaturePatterns"+suffix, "hidden API signature patterns"+suffix)
|
||||
rule.Build("hiddenAPISignaturePatterns", "hidden API signature patterns")
|
||||
|
||||
return patternsFile
|
||||
}
|
||||
@@ -1065,7 +1045,7 @@ func buildRuleValidateOverlappingCsvFiles(ctx android.BuilderContext, name strin
|
||||
return validFile
|
||||
}
|
||||
|
||||
// hiddenAPIFlagRulesForBootclasspathFragment will generate all the flags for a fragment of the
|
||||
// hiddenAPIRulesForBootclasspathFragment will generate all the flags for a fragment of the
|
||||
// bootclasspath and then encode the flags into the boot dex files.
|
||||
//
|
||||
// It takes:
|
||||
@@ -1080,27 +1060,30 @@ func buildRuleValidateOverlappingCsvFiles(ctx android.BuilderContext, name strin
|
||||
// * index.csv
|
||||
// * all-flags.csv
|
||||
// * encoded boot dex files
|
||||
func hiddenAPIFlagRulesForBootclasspathFragment(ctx android.ModuleContext, bootDexInfoByModule bootDexInfoByModule, contents []android.Module, input HiddenAPIFlagInput, suffix string) HiddenAPIFlagOutput {
|
||||
hiddenApiSubDir := "modular-hiddenapi" + suffix
|
||||
func hiddenAPIRulesForBootclasspathFragment(ctx android.ModuleContext, contents []android.Module, input HiddenAPIFlagInput) *HiddenAPIOutput {
|
||||
hiddenApiSubDir := "modular-hiddenapi"
|
||||
|
||||
// Gather information about the boot dex files for the boot libraries provided by this fragment.
|
||||
bootDexInfoByModule := extractBootDexInfoFromModules(ctx, contents)
|
||||
|
||||
// Generate the stub-flags.csv.
|
||||
stubFlagsCSV := android.PathForModuleOut(ctx, hiddenApiSubDir, "stub-flags.csv")
|
||||
buildRuleToGenerateHiddenAPIStubFlagsFile(ctx, "modularHiddenAPIStubFlagsFile"+suffix, "modular hiddenapi stub flags", stubFlagsCSV, bootDexInfoByModule.bootDexJars(), input, nil)
|
||||
buildRuleToGenerateHiddenAPIStubFlagsFile(ctx, "modularHiddenAPIStubFlagsFile", "modular hiddenapi stub flags", stubFlagsCSV, bootDexInfoByModule.bootDexJars(), input, nil)
|
||||
|
||||
// Extract the classes jars from the contents.
|
||||
classesJars := extractClassesJarsFromModules(contents)
|
||||
|
||||
// Generate the set of flags from the annotations in the source code.
|
||||
annotationFlagsCSV := android.PathForModuleOut(ctx, hiddenApiSubDir, "annotation-flags.csv")
|
||||
buildRuleToGenerateAnnotationFlags(ctx, "modular hiddenapi annotation flags"+suffix, classesJars, stubFlagsCSV, annotationFlagsCSV)
|
||||
buildRuleToGenerateAnnotationFlags(ctx, "modular hiddenapi annotation flags", classesJars, stubFlagsCSV, annotationFlagsCSV)
|
||||
|
||||
// Generate the metadata from the annotations in the source code.
|
||||
metadataCSV := android.PathForModuleOut(ctx, hiddenApiSubDir, "metadata.csv")
|
||||
buildRuleToGenerateMetadata(ctx, "modular hiddenapi metadata"+suffix, classesJars, stubFlagsCSV, metadataCSV)
|
||||
buildRuleToGenerateMetadata(ctx, "modular hiddenapi metadata", classesJars, stubFlagsCSV, metadataCSV)
|
||||
|
||||
// Generate the index file from the CSV files in the classes jars.
|
||||
indexCSV := android.PathForModuleOut(ctx, hiddenApiSubDir, "index.csv")
|
||||
buildRuleToGenerateIndex(ctx, "modular hiddenapi index"+suffix, classesJars, indexCSV)
|
||||
buildRuleToGenerateIndex(ctx, "modular hiddenapi index", classesJars, indexCSV)
|
||||
|
||||
// Removed APIs need to be marked and in order to do that the hiddenAPIInfo needs to specify files
|
||||
// containing dex signatures of all the removed APIs. In the monolithic files that is done by
|
||||
@@ -1108,42 +1091,15 @@ func hiddenAPIFlagRulesForBootclasspathFragment(ctx android.ModuleContext, bootD
|
||||
// signatures, see the combined-removed-dex module. This does that automatically by using the
|
||||
// *removed.txt files retrieved from the java_sdk_library modules that are specified in the
|
||||
// stub_libs and contents properties of a bootclasspath_fragment.
|
||||
removedDexSignatures := buildRuleToGenerateRemovedDexSignatures(ctx, suffix, input.RemovedTxtFiles)
|
||||
removedDexSignatures := buildRuleToGenerateRemovedDexSignatures(ctx, input.RemovedTxtFiles)
|
||||
|
||||
// Generate the all-flags.csv which are the flags that will, in future, be encoded into the dex
|
||||
// files.
|
||||
allFlagsCSV := android.PathForModuleOut(ctx, hiddenApiSubDir, "all-flags.csv")
|
||||
buildRuleToGenerateHiddenApiFlags(ctx, "modularHiddenApiAllFlags"+suffix, "modular hiddenapi all flags"+suffix, allFlagsCSV, stubFlagsCSV, android.Paths{annotationFlagsCSV}, input.FlagFilesByCategory, nil, removedDexSignatures)
|
||||
buildRuleToGenerateHiddenApiFlags(ctx, "modularHiddenApiAllFlags", "modular hiddenapi all flags", allFlagsCSV, stubFlagsCSV, android.Paths{annotationFlagsCSV}, input.FlagFilesByCategory, nil, removedDexSignatures)
|
||||
|
||||
// Generate the filtered-stub-flags.csv file which contains the filtered stub flags that will be
|
||||
// compared against the monolithic stub flags.
|
||||
filteredStubFlagsCSV := android.PathForModuleOut(ctx, hiddenApiSubDir, "filtered-stub-flags.csv")
|
||||
buildRuleRemoveSignaturesWithImplementationFlags(ctx, "modularHiddenApiFilteredStubFlags"+suffix,
|
||||
"modular hiddenapi filtered stub flags"+suffix, stubFlagsCSV, filteredStubFlagsCSV,
|
||||
HIDDENAPI_STUB_FLAGS_IMPL_FLAGS)
|
||||
|
||||
// Generate the filtered-flags.csv file which contains the filtered flags that will be compared
|
||||
// against the monolithic flags.
|
||||
filteredFlagsCSV := android.PathForModuleOut(ctx, hiddenApiSubDir, "filtered-flags.csv")
|
||||
buildRuleRemoveSignaturesWithImplementationFlags(ctx, "modularHiddenApiFilteredFlags"+suffix,
|
||||
"modular hiddenapi filtered flags"+suffix, allFlagsCSV, filteredFlagsCSV,
|
||||
HIDDENAPI_FLAGS_CSV_IMPL_FLAGS)
|
||||
|
||||
// Store the paths in the info for use by other modules and sdk snapshot generation.
|
||||
return HiddenAPIFlagOutput{
|
||||
AnnotationFlagsPath: annotationFlagsCSV,
|
||||
MetadataPath: metadataCSV,
|
||||
IndexPath: indexCSV,
|
||||
StubFlagsPath: stubFlagsCSV,
|
||||
AllFlagsPath: allFlagsCSV,
|
||||
FilteredStubFlagsPath: filteredStubFlagsCSV,
|
||||
FilteredFlagsPath: filteredFlagsCSV,
|
||||
}
|
||||
}
|
||||
|
||||
func hiddenAPIEncodeRulesForBootclasspathFragment(ctx android.ModuleContext, bootDexInfoByModule bootDexInfoByModule, allFlagsCSV android.Path) bootDexJarByModule {
|
||||
// Encode the flags into the boot dex files.
|
||||
encodedBootDexJarsByModule := bootDexJarByModule{}
|
||||
encodedBootDexJarsByModule := map[string]android.Path{}
|
||||
outputDir := android.PathForModuleOut(ctx, "hiddenapi-modular/encoded").OutputPath
|
||||
for _, name := range android.SortedStringKeys(bootDexInfoByModule) {
|
||||
bootDexInfo := bootDexInfoByModule[name]
|
||||
@@ -1151,15 +1107,43 @@ func hiddenAPIEncodeRulesForBootclasspathFragment(ctx android.ModuleContext, boo
|
||||
encodedDex := hiddenAPIEncodeDex(ctx, unencodedDex, allFlagsCSV, bootDexInfo.uncompressDex, bootDexInfo.minSdkVersion, outputDir)
|
||||
encodedBootDexJarsByModule[name] = encodedDex
|
||||
}
|
||||
return encodedBootDexJarsByModule
|
||||
|
||||
// Generate the filtered-stub-flags.csv file which contains the filtered stub flags that will be
|
||||
// compared against the monolithic stub flags.
|
||||
filteredStubFlagsCSV := android.PathForModuleOut(ctx, hiddenApiSubDir, "filtered-stub-flags.csv")
|
||||
buildRuleRemoveSignaturesWithImplementationFlags(ctx, "modularHiddenApiFilteredStubFlags",
|
||||
"modular hiddenapi filtered stub flags", stubFlagsCSV, filteredStubFlagsCSV,
|
||||
HIDDENAPI_STUB_FLAGS_IMPL_FLAGS)
|
||||
|
||||
// Generate the filtered-flags.csv file which contains the filtered flags that will be compared
|
||||
// against the monolithic flags.
|
||||
filteredFlagsCSV := android.PathForModuleOut(ctx, hiddenApiSubDir, "filtered-flags.csv")
|
||||
buildRuleRemoveSignaturesWithImplementationFlags(ctx, "modularHiddenApiFilteredFlags",
|
||||
"modular hiddenapi filtered flags", allFlagsCSV, filteredFlagsCSV,
|
||||
HIDDENAPI_FLAGS_CSV_IMPL_FLAGS)
|
||||
|
||||
// Store the paths in the info for use by other modules and sdk snapshot generation.
|
||||
output := HiddenAPIOutput{
|
||||
HiddenAPIFlagOutput: HiddenAPIFlagOutput{
|
||||
AnnotationFlagsPath: annotationFlagsCSV,
|
||||
MetadataPath: metadataCSV,
|
||||
IndexPath: indexCSV,
|
||||
StubFlagsPath: stubFlagsCSV,
|
||||
AllFlagsPath: allFlagsCSV,
|
||||
FilteredStubFlagsPath: filteredStubFlagsCSV,
|
||||
FilteredFlagsPath: filteredFlagsCSV,
|
||||
},
|
||||
EncodedBootDexFilesByModule: encodedBootDexJarsByModule,
|
||||
}
|
||||
return &output
|
||||
}
|
||||
|
||||
func buildRuleToGenerateRemovedDexSignatures(ctx android.ModuleContext, suffix string, removedTxtFiles android.Paths) android.OptionalPath {
|
||||
func buildRuleToGenerateRemovedDexSignatures(ctx android.ModuleContext, removedTxtFiles android.Paths) android.OptionalPath {
|
||||
if len(removedTxtFiles) == 0 {
|
||||
return android.OptionalPath{}
|
||||
}
|
||||
|
||||
output := android.PathForModuleOut(ctx, "module-hiddenapi"+suffix, "removed-dex-signatures.txt")
|
||||
output := android.PathForModuleOut(ctx, "modular-hiddenapi/removed-dex-signatures.txt")
|
||||
|
||||
rule := android.NewRuleBuilder(pctx, ctx)
|
||||
rule.Command().
|
||||
@@ -1167,7 +1151,7 @@ func buildRuleToGenerateRemovedDexSignatures(ctx android.ModuleContext, suffix s
|
||||
Flag("--no-banner").
|
||||
Inputs(removedTxtFiles).
|
||||
FlagWithOutput("--dex-api ", output)
|
||||
rule.Build("modular-hiddenapi-removed-dex-signatures"+suffix, "modular hiddenapi removed dex signatures"+suffix)
|
||||
rule.Build("modular-hiddenapi-removed-dex-signatures", "modular hiddenapi removed dex signatures")
|
||||
return android.OptionalPathForPath(output)
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user