(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:ANTLR34_PREFIX) op: assign_op.Equal rhs: {<'/usr/local'>} spids: [86] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:STRINGTEMPLATE_PREFIX) op: assign_op.Equal rhs: {<'/usr'>} spids: [89] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:MAKE) op: assign_op.Equal rhs: { (braced_var_sub token: <Id.VSub_Name MAKE> suffix_op: (suffix_op.Unary tok:<Id.VTest_ColonHyphen ':-'> arg_word:{<make>}) ) } spids: [93] ) ] ) (command.ShFunction name: gen_makefile body: (BraceGroup children: [ (command.ForEach iter_name: basepath iter_words: [{(DQ ($ Id.VSub_At '$@'))}] do_arg_iter: F body: (command.DoGroup children: [ (C {<echo>} {(DQ <'CXXFLAGS += -I'> (${ Id.VSub_Name basepath) <'/include'>)}) ] ) ) (command.ForEach iter_name: basepath iter_words: [{(DQ ($ Id.VSub_At '$@'))}] do_arg_iter: F body: (command.DoGroup children: [ (C {<echo>} { (DQ <'LDFLAGS += -L'> (${ Id.VSub_Name basepath) <'/lib -Wl,-rpath,'> (${ Id.VSub_Name basepath) <'/lib'> ) } ) ] ) ) (C {<echo>} {(DQ <'include Makefile'>)}) ] ) ) (command.ShFunction name: checkout body: (BraceGroup children: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<hg>} {<clone>} {<git> <Id.Lit_Other '+'> <https> <Id.Lit_Colon ':'> <'//github.com/stephenrkell/'> ($ Id.VSub_Number '$1') <.git> } {($ Id.VSub_Number '$1')} ) (C {<git>} {<clone>} {<https> <Id.Lit_Colon ':'> <'//github.com/stephenrkell/'> ($ Id.VSub_Number '$1') <.git> } {($ Id.VSub_Number '$1')} ) ] ) ] ) ) (command.AndOr ops: [ Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp ] children: [ (command.Subshell child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<Id.Lit_LBracket '['>} {<-d>} {<libcxxfileno>} {<Id.Lit_RBracket ']'>}) (C {<checkout>} {<libcxxfileno>}) ] ) ) (C {(${ Id.VSub_Name MAKE)} {<-C>} {<libcxxfileno>}) (command.Subshell child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<Id.Lit_LBracket '['>} {<-d>} {<libsrk31cxx>} {<Id.Lit_RBracket ']'>}) (C {<checkout>} {<libsrk31cxx>}) ] ) ) (command.Simple words: [ {<gen_makefile>} { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<readlink>} {<-f>} {<libcxxfileno>}) ) ) } ] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<'libsrk31cxx/src/makefile'>} ) ] do_fork: T ) (C {(${ Id.VSub_Name MAKE)} {<-C>} {<libsrk31cxx>}) (command.Subshell child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<Id.Lit_LBracket '['>} {<-d>} {<libdwarfpp>} {<Id.Lit_RBracket ']'>}) (C {<checkout>} {<libdwarfpp>}) ] ) ) (command.Simple words: [ {<gen_makefile>} { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<readlink>} {<-f>} {<libcxxfileno>}) ) ) } { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<readlink>} {<-f>} {<libsrk31cxx>}) ) ) } ] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<'libdwarfpp/src/makefile'>} ) ] do_fork: T ) (command.Simple words: [ {<gen_makefile>} { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<readlink>} {<-f>} {<libcxxfileno>}) ) ) } { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<readlink>} {<-f>} {<libsrk31cxx>}) ) ) } ] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<'libdwarfpp/examples/makefile'>} ) ] do_fork: T ) (C {(${ Id.VSub_Name MAKE)} {<-C>} {<libdwarfpp>}) (command.Subshell child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<Id.Lit_LBracket '['>} {<-d>} {<libcxxgen>} {<Id.Lit_RBracket ']'>}) (C {<checkout>} {<libcxxgen>}) ] ) ) (command.Simple words: [ {<gen_makefile>} { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<readlink>} {<-f>} {<libcxxfileno>}) ) ) } { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<readlink>} {<-f>} {<libsrk31cxx>}) ) ) } { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<readlink>} {<-f>} {<libdwarfpp>}) ) ) } ] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<'libcxxgen/src/makefile'>} ) ] do_fork: T ) (C {(${ Id.VSub_Name MAKE)} {<-C>} {<libcxxgen>}) (command.Subshell child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<Id.Lit_LBracket '['>} {<-d>} {<libantlr3cxx>} {<Id.Lit_RBracket ']'>}) (C {<checkout>} {<libantlr3cxx>}) ] ) ) (command.Subshell child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<Id.Lit_LBracket '['>} {<-d>} {<m4ntlr>} {<Id.Lit_RBracket ']'>}) (C {<checkout>} {<m4ntlr>}) ] ) ) (command.Simple words: [ {<gen_makefile>} { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<readlink>} {<-f>} {<libcxxfileno>}) ) ) } { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<readlink>} {<-f>} {<libsrk31cxx>}) ) ) } { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<readlink>} {<-f>} {<libdwarfpp>}) ) ) } { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<readlink>} {<-f>} {<libcxxgen>}) ) ) } { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<readlink>} {<-f>} {<libantlr3cxx>}) ) ) } ] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: { (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<dirname>} {($ Id.VSub_Number '$0')}) ) <'/../src/makefile'> } ) ] do_fork: T ) (command.Simple words: [ {<echo>} { (DQ <'CLASSPATH=.:'> (${ Id.VSub_Name ANTLR34_PREFIX) <'/share/java/antlr-3.4-complete.jar:'> (${ Id.VSub_Name STRINGTEMPLATE_PREFIX) <'/share/java/stringtemplate.jar:\n'> <'ANTLR_M4_PATH := '> (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<readlink>} {<-f>} {<m4ntlr>}) ) <'\n'> <'\n'> <'CFLAGS += -I'> (${ Id.VSub_Name ANTLR34_PREFIX) <'\n'> <'LDFLAGS += -L'> (${ Id.VSub_Name ANTLR34_PREFIX) <'/lib -Wl,-rpath,'> (${ Id.VSub_Name ANTLR34_PREFIX) <'/lib\n'> <'\n'> <'include Makefile'> ) } ] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: { (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<dirname>} {($ Id.VSub_Number '$0')}) ) <'/../parser/makefile'> } ) ] do_fork: T ) (C {<cp>} { (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<dirname>} {($ Id.VSub_Number '$0')}) ) <'/../src/makefile'> } { (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<dirname>} {($ Id.VSub_Number '$0')}) ) <'/../printer/makefile'> } ) ] ) ] )