Merge "Migrate java/androidmk.go to new system #1"
This commit is contained in:
@@ -80,12 +80,14 @@ type AndroidMkEntries struct {
|
||||
footer bytes.Buffer
|
||||
|
||||
ExtraEntries []AndroidMkExtraEntriesFunc
|
||||
ExtraFooters []AndroidMkExtraFootersFunc
|
||||
|
||||
EntryMap map[string][]string
|
||||
entryOrder []string
|
||||
}
|
||||
|
||||
type AndroidMkExtraEntriesFunc func(entries *AndroidMkEntries)
|
||||
type AndroidMkExtraFootersFunc func(w io.Writer, name, prefix, moduleDir string, entries *AndroidMkEntries)
|
||||
|
||||
func (a *AndroidMkEntries) SetString(name, value string) {
|
||||
if _, ok := a.EntryMap[name]; !ok {
|
||||
@@ -254,9 +256,21 @@ func (a *AndroidMkEntries) fillInEntries(config Config, bpPath string, mod bluep
|
||||
|
||||
// Write to footer.
|
||||
fmt.Fprintln(&a.footer, "include "+a.Include)
|
||||
blueprintDir := filepath.Dir(bpPath)
|
||||
for _, footerFunc := range a.ExtraFooters {
|
||||
footerFunc(&a.footer, name, prefix, blueprintDir, a)
|
||||
}
|
||||
}
|
||||
|
||||
func (a *AndroidMkEntries) write(w io.Writer) {
|
||||
if a.Disabled {
|
||||
return
|
||||
}
|
||||
|
||||
if !a.OutputFile.Valid() {
|
||||
return
|
||||
}
|
||||
|
||||
w.Write(a.header.Bytes())
|
||||
for _, name := range a.entryOrder {
|
||||
fmt.Fprintln(w, name+" := "+strings.Join(a.EntryMap[name], " "))
|
||||
@@ -264,6 +278,10 @@ func (a *AndroidMkEntries) write(w io.Writer) {
|
||||
w.Write(a.footer.Bytes())
|
||||
}
|
||||
|
||||
func (a *AndroidMkEntries) FooterLinesForTests() []string {
|
||||
return strings.Split(string(a.footer.Bytes()), "\n")
|
||||
}
|
||||
|
||||
func AndroidMkSingleton() Singleton {
|
||||
return &androidMkSingleton{}
|
||||
}
|
||||
|
Reference in New Issue
Block a user