Fold annotations.
Use annotation slices looked up from map instead of read from disk to reduce copies. Bug: 68860345 Bug: 151177513 Bug: 151953481 Test: m all Test: m systemlicense Test: m listshare; out/soong/host/linux-x86/bin/listshare ... Test: m checkshare; out/soong/host/linux-x86/bin/checkshare ... Test: m dumpgraph; out/soong/host/linux-x86/dumpgraph ... Test: m dumpresolutions; out/soong/host/linux-x86/dumpresolutions ... where ... is the path to the .meta_lic file for the system image. In my case if $ export PRODUCT=$(realpath $ANDROID_PRODUCT_OUT --relative-to=$PWD) ... can be expressed as: ${PRODUCT}/gen/META/lic_intermediates/${PRODUCT}/system.img.meta_lic Change-Id: Ibf6f7d319092e0d54ab451ffbbd35dcd7d0080e0
This commit is contained in:
@@ -20,6 +20,15 @@ import (
|
||||
)
|
||||
|
||||
var (
|
||||
// RecognizedAnnotations identifies the set of annotations that have
|
||||
// meaning for compliance policy.
|
||||
RecognizedAnnotations = map[string]string{
|
||||
// used in readgraph.go to avoid creating 1000's of copies of the below 3 strings.
|
||||
"static": "static",
|
||||
"dynamic": "dynamic",
|
||||
"toolchain": "toolchain",
|
||||
}
|
||||
|
||||
// ImpliesUnencumbered lists the condition names representing an author attempt to disclaim copyright.
|
||||
ImpliesUnencumbered = ConditionNames{"unencumbered"}
|
||||
|
||||
|
@@ -188,10 +188,11 @@ func addDependencies(edges *[]*dependencyEdge, target string, dependencies []*li
|
||||
}
|
||||
annotations := newEdgeAnnotations()
|
||||
for _, a := range ad.Annotations {
|
||||
if len(a) == 0 {
|
||||
continue
|
||||
// look up a common constant annotation string from a small map
|
||||
// instead of creating 1000's of copies of the same 3 strings.
|
||||
if ann, ok := RecognizedAnnotations[a]; ok {
|
||||
annotations.annotations[ann] = true
|
||||
}
|
||||
annotations.annotations[a] = true
|
||||
}
|
||||
*edges = append(*edges, &dependencyEdge{target, dependency, annotations})
|
||||
}
|
||||
|
Reference in New Issue
Block a user