androidbp: Defer local path printing
This will defer printing the local path until the first module or definition. Usually, there's a copyright comment at the top of the file that will be now be printed first, then the LOCAL_PATH. Change-Id: I349f7e30eaa99dcfdc73e96248774927a13be8cb
This commit is contained in:
@@ -21,6 +21,8 @@ type androidMkWriter struct {
|
|||||||
blueprint *bpparser.File
|
blueprint *bpparser.File
|
||||||
path string
|
path string
|
||||||
|
|
||||||
|
printedLocalPath bool
|
||||||
|
|
||||||
mapScope map[string][]*bpparser.Property
|
mapScope map[string][]*bpparser.Property
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -286,6 +288,11 @@ func (w *androidMkWriter) iter() <-chan interface{} {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (w *androidMkWriter) handleLocalPath() error {
|
func (w *androidMkWriter) handleLocalPath() error {
|
||||||
|
if w.printedLocalPath {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
w.printedLocalPath = true
|
||||||
|
|
||||||
localPath, err := filepath.Abs(w.path)
|
localPath, err := filepath.Abs(w.path)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
@@ -317,15 +324,17 @@ func (w *androidMkWriter) write(androidMk string) error {
|
|||||||
|
|
||||||
w.Writer = bufio.NewWriter(f)
|
w.Writer = bufio.NewWriter(f)
|
||||||
|
|
||||||
if err := w.handleLocalPath(); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
for block := range w.iter() {
|
for block := range w.iter() {
|
||||||
switch block := block.(type) {
|
switch block := block.(type) {
|
||||||
case *bpparser.Module:
|
case *bpparser.Module:
|
||||||
|
if err := w.handleLocalPath(); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
w.handleModule(block)
|
w.handleModule(block)
|
||||||
case *bpparser.Assignment:
|
case *bpparser.Assignment:
|
||||||
|
if err := w.handleLocalPath(); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
w.handleAssignment(block)
|
w.handleAssignment(block)
|
||||||
case bpparser.Comment:
|
case bpparser.Comment:
|
||||||
w.handleComment(&block)
|
w.handleComment(&block)
|
||||||
|
Reference in New Issue
Block a user