(CommandList children: [ (C {(Lit_Other ':')}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:Myname) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(basename)} {($ VSub_Number '$0')} {(.sh)})] ) left_token: <Left_Backtick '`'> spids: [167 173] ) } spids: [166] ) ] spids: [166] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:Mydir) op: Equal rhs: { (CommandSubPart command_list: (CommandList children:[(C {(dirname)} {($ VSub_Number '$0')})]) left_token: <Left_Backtick '`'> spids: [176 180] ) } spids: [175] ) ] spids: [175] ) (Case to_match: { (CommandSubPart command_list: (CommandList children:[(C {(echo)} {(-n)} {(.)})]) left_token: <Left_Backtick '`'> spids: [185 191] ) } arms: [ (case_arm pat_list: [{(-n) (Lit_Other '*')}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:N) op:Equal rhs:{(EmptyPart)} spids:[199])] spids: [199] ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:C) op: Equal rhs: {(DQ (Lit_Other '\\') (c))} spids: [202] ) ] spids: [202] ) ] spids: [195 197 207 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:N) op:Equal rhs:{(-n)} spids:[212])] spids: [212] ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:C) op:Equal rhs:{(EmptyPart)} spids:[216])] spids: [216] ) ] spids: [209 210 217 16777215] ) ] spids: [183 193 219] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:cc_include) op:Equal rhs:{(-I/usr/include)} spids:[222])] spids: [222] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:TF) op: Equal rhs: {(/tmp/dep.) ($ VSub_Dollar '$$')} spids: [226] ) ] spids: [226] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:EF) op: Equal rhs: {(/tmp/deperr.) ($ VSub_Dollar '$$')} spids: [230] ) ] spids: [230] ) (SimpleCommand redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{($ VSub_Name '$EF')} spids:[234])] ) (Case to_match: {(DQ ($ VSub_Star '$*'))} arms: [ (case_arm pat_list: [{(Lit_Other '*') (-n) (Lit_Other '*')}] action: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:rc) op:Equal rhs:{(/dev/null)} spids:[256])] spids: [256] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:norc) op:Equal rhs:{(yes)} spids:[260])] spids: [260] ) ] spids: [247 250 262 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:rc) op: Equal rhs: {($ VSub_Name '$Mydir') (/.) (${ VSub_Name Myname) (rc)} spids: [268] ) ] spids: [268] ) ] spids: [264 265 277 16777215] ) ] spids: [239 245 279] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:update) op:Equal rhs:{(EmptyPart)} spids:[282])] spids: [282] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:Include) op:Equal rhs:{(include)} spids:[284])] spids: [284] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(x) (DQ ($ VSub_Name '$norc'))} {(Lit_Other '=')} {(x)} {(-a)} {(-f)} {($ VSub_Name '$rc')} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [(C {(.)} {($ VSub_Name '$rc')})] spids: [16777215 310] ) ] else_action: [ (SimpleCommand words: [{(echo)} {(Lit_Other ':')}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {($ VSub_Name '$rc')} spids: [336] ) ] ) (SimpleCommand words: [{(echo)} {(DQ ('# pre-processor for .c files'))}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$rc')} spids: [347] ) ] ) (ForEach iter_name: d iter_words: [{(/usr/libexec)} {(/usr/lib)} {(/usr/bin)} {(/lib)} {(/usr/ccs/bin)}] do_arg_iter: F body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:cpp_c) op: Equal rhs: {($ VSub_Name '$d') (/cpp)} spids: [376] ) ] spids: [376] ) (AndOr ops: [Op_DAmp] children: [ (C {(Lit_Other '[')} {(-x)} {($ VSub_Name '$cpp_c')} {(Lit_Other ']')}) (ControlFlow token:<ControlFlow_Break break>) ] ) ] spids: [373 394] ) spids: [361 16777215] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-x)} {($ VSub_Name '$cpp_c')} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [{(echo)} {(Lit_VarLike 'cpp_c=') ($ VSub_Name '$cpp_c')}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$rc')} spids: [418] ) ] ) ] spids: [16777215 410] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:cpp_c) op:Equal rhs:{(EmptyPart)} spids:[426])] spids: [426] ) (SimpleCommand words: [{(echo)} {(DQ ('#include <stdio.h>'))}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(/tmp/f) ($ VSub_Dollar '$$') (.c)} spids: [439] ) ] ) (SimpleCommand words: [{(echo)} {(DQ ('main() { return 0; }'))}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {(/tmp/f) ($ VSub_Dollar '$$') (.c)} spids: [452] ) ] ) (ForEach iter_name: arg iter_words: [{(-E)} {(-P)} {(-M)}] do_arg_iter: F body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ok) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (SimpleCommand words: [ { (BracedVarSub token: <VSub_Name REALCC> suffix_op: (StringUnary op_id: VTest_ColonHyphen arg_word: { (BracedVarSub token: <VSub_Name CC> suffix_op: (StringUnary op_id: VTest_ColonHyphen arg_word: {(cc)} ) spids: [484 488] ) } ) spids: [481 489] ) } {($ VSub_Name '$arg')} {(/tmp/f) ($ VSub_Dollar '$$') (.c)} ] redirects: [ (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [497] ) ] ) (C {(grep)} {(SQ <'^#.*stdio.h'>)}) (C {(tail)} {(-1)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [480 513] ) } spids: [479] ) ] spids: [479] ) (Case to_match: {(DQ ($ VSub_Name '$ok'))} arms: [ (case_arm pat_list: [{(DQ )}] spids: [16777215 527 529 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:cpp_c) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Name REALCC> suffix_op: (StringUnary op_id: VTest_ColonHyphen arg_word: { (BracedVarSub token: <VSub_Name CC> suffix_op: (StringUnary op_id: VTest_ColonHyphen arg_word: {(cc)} ) spids: [541 545] ) } ) spids: [538 546] ) (' ') ($ VSub_Name '$arg') ) } spids: [536] ) ] spids: [536] ) (SimpleCommand words: [ {(echo)} {(Lit_VarLike 'cpp_c=') (DQ ("'") ($ VSub_Name '$cpp_c') ("'"))} ] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$rc')} spids: [561] ) ] ) (ControlFlow token:<ControlFlow_Break break>) ] spids: [532 533 567 16777215] ) ] spids: [516 522 570] ) ] spids: [476 573] ) spids: [468 16777215] ) (C {(rm)} {(-f)} {(/tmp/f) ($ VSub_Dollar '$$') (.c)}) ] spids: [423 585] ) ] spids: [317 587] ) (FuncDef name: clean_up body: (BraceGroup children: [ (C {(trap)} {(DQ )} {(2)} {(3)}) (C {(trap)} {(0)}) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-s)} {($ VSub_Name '$EF')} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [{(egrep)} {(-vi)} {(DQ ('included from|warning'))} {($ VSub_Name '$EF')}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(${ VSub_Name EF) (2)} spids: [636] ) ] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-s)} {(${ VSub_Name EF) (2)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [{(cat)} {($ VSub_Name '$EF')}] redirects: [ (Redir op_id: Redir_GreatAnd fd: 16777215 arg_word: {(2)} spids: [665] ) ] ) (C {(rm)} {(-f)} {(.depend)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ests) op: Equal rhs: {(1)} spids: [676] ) ] spids: [676] ) ] spids: [16777215 658] ) ] spids: [16777215 680] ) ] spids: [16777215 623] ) ] spids: [16777215 683] ) (C {(rm)} {(-f)} {($ VSub_Name '$TF')} {($ VSub_Name '$EF') (Lit_Other '*')}) (ControlFlow token: <ControlFlow_Exit exit> arg_word: { (BracedVarSub token: <VSub_Name ests> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(0)}) spids: [698 702] ) } ) ] spids: [594] ) spids: [590 593] ) (C {(trap)} {(clean_up)} {(0)}) (C {(trap)} {(ControlFlow_Exit exit)} {(2)} {(3)}) (FuncDef name: get_incs body: (BraceGroup children: [ (Case to_match: {(DQ ($ VSub_Name '$cpp'))} arms: [ (case_arm pat_list: [{(grep)}] action: [ (Pipeline children: [ (C {(egrep)} {(SQ <'^#[ \t]*include'>)} {($ VSub_Star '$*')}) (C {(egrep)} {(-v)} {(DQ ($ VSub_Name '$IGNORE'))}) (C {(sed)} {(-e)} {(SQ <'s/^.*include[^"<]*["<]//'>)} {(-e)} {(SQ <'s/[">].*//g'>)}) ] negated: F ) ] spids: [741 742 784 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (Pipeline children: [ (SimpleCommand words: [ {($ VSub_Name '$cpp')} {($ VSub_Name '$cpp_opts')} {($ VSub_Name '$cc_include')} {($ VSub_Star '$*')} ] redirects: [ (Redir op_id: Redir_DGreat fd: 2 arg_word: {($ VSub_Name '$EF')} spids: [811] ) ] ) (C {(egrep)} {(SQ <'^#.*\\.h"'>)}) (C {(sed)} {(SQ <'s,^#.*"\\(.*\\)".*,\\1,'>)}) (C {(egrep)} {(-v)} {(DQ ($ VSub_Name '$IGNORE'))}) (C {(sort)} {(-u)}) ] negated: F ) ] spids: [787 788 847 16777215] ) ] spids: [732 738 850] ) ] spids: [729] ) spids: [725 728] ) (FuncDef name: gen_deps body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:llen) op: Equal rhs: {($ VSub_Number '$1')} spids: [862] ) ] spids: [862] ) (C {(shift)}) (ForEach iter_name: ifile iter_words: [{($ VSub_Star '$*')}] do_arg_iter: F body: (DoGroup children: [ (Case to_match: {(DQ ($ VSub_Name '$cpp'))} arms: [ (case_arm pat_list: [{(grep)}] action: [ (ForEach iter_name: dir iter_words: [ {($ VSub_Name '$srcdir')} {($ VSub_Name '$dirlist')} {(/usr/include)} ] do_arg_iter: F body: (DoGroup children: [ (AndOr ops: [Op_DAmp] children: [ (C {(Lit_Other '[')} {(-f)} {(DQ ($ VSub_Name '$dir') (/) ($ VSub_Name '$ifile'))} {(Lit_Other ']')} ) (ControlFlow token: <ControlFlow_Break break> ) ] ) ] spids: [912 932] ) spids: [904 16777215] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(KW_Bang '!')} {(-f)} {(DQ ($ VSub_Name '$dir') (/) ($ VSub_Name '$ifile'))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:iline) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(grep)} {(-n)} { (DQ ('.*include.*[') (EscapedLiteralPart token: <Lit_EscapedChar '\\"'> ) ('<]') ($ VSub_Name '$ifile') ('[') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('>]') ) } {($ VSub_Name '$file')} ) (C {(cut)} {(-d) (Lit_Other ':')} {(-f1)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [961 986] ) } spids: [960] ) ] spids: [960] ) (SimpleCommand words: [ {(echo)} { (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ($ VSub_Name '$file') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (', line ') ($ VSub_Name '$iline') (': cannot find include file ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ($ VSub_Name '$ifile') (EscapedLiteralPart token: <Lit_EscapedChar '\\"'> ) ) } ] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$EF')} spids: [1003] ) ] ) (ControlFlow token: <ControlFlow_Continue continue> ) ] spids: [16777215 953] ) ] spids: [16777215 1019] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ifile) op: Equal rhs: {($ VSub_Name '$dir') (/) ($ VSub_Name '$ifile')} spids: [1022] ) ] spids: [1022] ) (Case to_match: { (CommandSubPart command_list: (CommandList children: [ (C {(grep)} {(DQ ($ VSub_Name '$ifile'))} {($ VSub_Name '$TF')} ) ] ) left_token: <Left_Backtick '`'> spids: [1036 1044] ) } arms: [ (case_arm pat_list: [{(DQ )}] action: [ (SimpleCommand words: [{(echo)} {(DQ ($ VSub_Name '$ifile'))}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$TF')} spids: [1059] ) ] ) ] spids: [16777215 1051 1062 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [(ControlFlow token:<ControlFlow_Continue continue>)] spids: [1065 1066 1069 16777215] ) ] spids: [1034 1046 1075] ) ] spids: [891 892 1078 16777215] ) ] spids: [882 888 1081] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:len) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(expr)} {(DQ ($ VSub_Name '$ifile') (' '))} {(Lit_Other ':')} {(SQ <'.*'>)} ) ] ) left_token: <Left_Backtick '`'> spids: [1087 1100] ) } spids: [1086] ) ] spids: [1086] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} { (DQ (CommandSubPart command_list: (CommandList children: [ (C {(expr)} {($ VSub_Name '$llen')} {(Lit_Other '+')} {($ VSub_Name '$len')} ) ] ) left_token: <Left_Backtick '`'> spids: [1108 1116] ) ) } {(-gt)} { (BracedVarSub token: <VSub_Name width> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(76)}) spids: [1121 1125] ) } {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [{(echo)} {(DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>))}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {(.depend)} spids: [1139] ) ] ) (SimpleCommand words: [{(echo)} {($ VSub_Name '$N')} {(DQ ('\t') ($ VSub_Name '$C'))}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {(.depend)} spids: [1153] ) ] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:llen) op: Equal rhs: {(8)} spids: [1158] ) ] spids: [1158] ) ] spids: [16777215 1130] ) ] spids: [16777215 1162] ) (SimpleCommand words: [ {(echo)} {($ VSub_Name '$N')} {(DQ ($ VSub_Name '$ifile') (' ') ($ VSub_Name '$C'))} ] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {(.depend)} spids: [1175] ) ] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:llen) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(expr)} {($ VSub_Name '$llen')} {(Lit_Other '+')} {($ VSub_Name '$len')} ) ] ) left_token: <Left_Backtick '`'> spids: [1181 1189] ) } spids: [1180] ) ] spids: [1180] ) (Case to_match: {(DQ ($ VSub_Name '$cpp'))} arms: [ (case_arm pat_list: [{(grep)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ilist) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(get_incs)} {($ VSub_Name '$ifile')})] ) left_token: <Left_Backtick '`'> spids: [1212 1216] ) } spids: [1211] ) ] spids: [1211] ) (AndOr ops: [Op_DAmp] children: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$ilist'))} {(Lit_Other ']')}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:llen) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(gen_deps)} {($ VSub_Name '$llen')} {($ VSub_Name '$ilist')} ) ] ) left_token: <Left_Backtick '`'> spids: [1233 1239] ) } spids: [1232] ) ] spids: [1232] ) ] ) ] spids: [1203 1204 1242 16777215] ) ] spids: [1194 1200 1245] ) ] spids: [879 1248] ) spids: [875 16777215] ) (C {(echo)} {($ VSub_Name '$llen')}) ] spids: [859] ) spids: [855 858] ) (ForEach iter_name: f iter_words: [{(makefile)} {(Makefile)}] do_arg_iter: F body: (DoGroup children: [ (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(-s)} {($ VSub_Name '$f')}) (BraceGroup children: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:MAKEFILE) op: Equal rhs: {($ VSub_Name '$f')} spids: [1281] ) ] spids: [1281] ) terminator: <Op_Semi ';'> ) (Sentence child: (ControlFlow token:<ControlFlow_Break break>) terminator: <Op_Semi ';'> ) ] spids: [1279] ) ] ) ] spids: [1268 1290] ) spids: [1263 16777215] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:MAKEFILE) op: Equal rhs: { (BracedVarSub token: <VSub_Name MAKEFILE> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(makefile)}) spids: [1294 1298] ) } spids: [1293] ) ] spids: [1293] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:IGNORE) op: Equal rhs: { (BracedVarSub token: <VSub_Name IGNORE> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(DQ ('^-'))}) spids: [1301 1307] ) } spids: [1300] ) ] spids: [1300] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:obj) op:Equal rhs:{(o)} spids:[1312])] spids: [1312] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:cpp_opts) op:Equal rhs:{(EmptyPart)} spids:[1315])] spids: [1315] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:vpath) op:Equal rhs:{(EmptyPart)} spids:[1320])] spids: [1320] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:append) op:Equal rhs:{(EmptyPart)} spids:[1322])] spids: [1322] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:progDep) op:Equal rhs:{(EmptyPart)} spids:[1324])] spids: [1324] ) (C {(set)} {(--)} { (CommandSubPart command_list: (CommandList children: [(C {(getopt)} {(DQ ('AanNV:s:w:o:I:D:b:f:i:p'))} {(DQ ($ VSub_At '$@'))})] ) left_token: <Left_Backtick '`'> spids: [1331 1341] ) } ) (ForEach iter_name: key iter_words: [{(DQ ($ VSub_At '$@'))}] do_arg_iter: F body: (DoGroup children: [ (Case to_match: {($ VSub_Name '$key')} arms: [ (case_arm pat_list: [{(--)}] action: [ (Sentence child:(C {(shift)}) terminator:<Op_Semi ';'>) (ControlFlow token:<ControlFlow_Break break>) ] spids: [1363 1364 1370 16777215] ) (case_arm pat_list: [{(-A)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:Include) op: Equal rhs: {(EmptyPart)} spids: [1376] ) ] spids: [1376] ) ] spids: [1373 1374 1377 16777215] ) (case_arm pat_list: [{(-a)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:append) op: Equal rhs: {(yes)} spids: [1386] ) ] spids: [1386] ) terminator: <Op_Semi ';'> ) (C {(shift)}) ] spids: [1383 1384 1391 16777215] ) (case_arm pat_list: [{(-n)}] action: [(C {(shift)})] spids: [1394 1395 1398 16777215] ) (case_arm pat_list: [{(-N)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:update) op: Equal rhs: {(no)} spids: [1407] ) ] spids: [1407] ) terminator: <Op_Semi ';'> ) (C {(shift)}) ] spids: [1404 1405 1412 16777215] ) (case_arm pat_list: [{(-I)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:cpp_opts) op: Equal rhs: { (DQ ($ VSub_Name '$cpp_opts') ($ VSub_Number '$1') ($ VSub_Number '$2') (' ') ) } spids: [1421] ) ] spids: [1421] ) terminator: <Op_Semi ';'> ) (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:dirlist) op: Equal rhs: {(DQ ($ VSub_Name '$dirlist') (' ') ($ VSub_Number '$2'))} spids: [1430] ) ] spids: [1430] ) terminator: <Op_Semi ';'> ) (C {(shift)} {(2)}) ] spids: [1418 1419 1441 16777215] ) (case_arm pat_list: [{(-o)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:obj) op: Equal rhs: {($ VSub_Number '$2')} spids: [1447] ) ] spids: [1447] ) terminator: <Op_Semi ';'> ) (C {(shift)} {(2)}) ] spids: [1444 1445 1454 16777215] ) (case_arm pat_list: [{(-s)}] action: [(C {(shift)} {(2)})] spids: [1457 1458 1463 16777215] ) (case_arm pat_list: [{(-w)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:width) op: Equal rhs: {($ VSub_Number '$2')} spids: [1472] ) ] spids: [1472] ) terminator: <Op_Semi ';'> ) (C {(shift)} {(2)}) ] spids: [1469 1470 1479 16777215] ) (case_arm pat_list: [{(-f)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:MAKEFILE) op: Equal rhs: {($ VSub_Number '$2')} spids: [1485] ) ] spids: [1485] ) terminator: <Op_Semi ';'> ) (C {(shift)} {(2)}) ] spids: [1482 1483 1492 16777215] ) (case_arm pat_list: [{(-b)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:BASEDIR) op: Equal rhs: {($ VSub_Number '$2')} spids: [1498] ) ] spids: [1498] ) terminator: <Op_Semi ';'> ) (C {(shift)} {(2)}) ] spids: [1495 1496 1505 16777215] ) (case_arm pat_list: [{(-i)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:IGNORE) op: Equal rhs: {(DQ ($ VSub_Number '$2'))} spids: [1511] ) ] spids: [1511] ) terminator: <Op_Semi ';'> ) (C {(shift)} {(2)}) ] spids: [1508 1509 1520 16777215] ) (case_arm pat_list: [{(-D)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:cpp_opts) op: Equal rhs: { (DQ ($ VSub_Name '$cpp_opts') ($ VSub_Number '$1') ($ VSub_Number '$2') (' ') ) } spids: [1529] ) ] spids: [1529] ) terminator: <Op_Semi ';'> ) (C {(shift)} {(2)}) ] spids: [1526 1527 1541 16777215] ) (case_arm pat_list: [{(-V)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:VPATH) op: Equal rhs: {(DQ ($ VSub_Number '$2'))} spids: [1547] ) ] spids: [1547] ) terminator: <Op_Semi ';'> ) (C {(shift)} {(2)}) ] spids: [1544 1545 1556 16777215] ) (case_arm pat_list: [{(-p)}] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:progDep) op: Equal rhs: {(yes)} spids: [1565] ) ] spids: [1565] ) terminator: <Op_Semi ';'> ) (C {(shift)}) ] spids: [1562 1563 1570 16777215] ) ] spids: [1356 1360 1573] ) ] spids: [1353 1575] ) spids: [1348 16777215] ) (AndOr ops: [Op_DAmp] children: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$VPATH'))} {(Lit_Other ']')}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vpath) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:IFS) op: Equal rhs: {(Lit_Other ':')} spids: [1590] ) ] spids: [1590] ) terminator: <Op_Semi ';'> ) (Sentence child: (C {(set)} {(--)} {($ VSub_Name '$VPATH')}) terminator: <Op_Semi ';'> ) (C {(echo)} {($ VSub_Star '$*')}) ] ) left_token: <Left_Backtick '`'> spids: [1589 1604] ) } spids: [1588] ) ] spids: [1588] ) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$append'))} {(Lit_Other ']')}) (SimpleCommand redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(.depend)} spids:[1617])] ) ] ) (ForEach iter_name: file iter_words: [{($ VSub_Star '$*')}] do_arg_iter: F body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:cpp) op:Equal rhs:{(EmptyPart)} spids:[1633])] spids: [1633] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:suffix) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(expr)} {($ VSub_Name '$file')} {(Lit_Other ':')} {(SQ <'.*\\.\\([^.]*\\)'>)} ) ] ) left_token: <Left_Backtick '`'> spids: [1637 1647] ) } spids: [1636] ) ] spids: [1636] ) (C {(eval)} {(Lit_VarLike 'cpp=') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (Lit_LBrace '{') (cpp_) (${ VSub_Name suffix) (Lit_Other ':') (-grep) (Lit_RBrace '}') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) } ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(KW_Bang '!')} {(-f)} {($ VSub_Name '$file')} {(-a)} {(DQ ($ VSub_Name '$vpath'))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (ForEach iter_name: d iter_words: [{(.)} {($ VSub_Name '$vpath')}] do_arg_iter: F body: (DoGroup children: [ (AndOr ops: [Op_DAmp] children: [ (C {(Lit_Other '[')} {(-f)} {($ VSub_Name '$d') (/) ($ VSub_Name '$file')} {(Lit_Other ']')} ) (BraceGroup children: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:file) op: Equal rhs: {($ VSub_Name '$d') (/) ($ VSub_Name '$file')} spids: [1719] ) ] spids: [1719] ) terminator: <Op_Semi ';'> ) (Sentence child: (ControlFlow token:<ControlFlow_Break break>) terminator: <Op_Semi ';'> ) ] spids: [1717] ) ] ) ] spids: [1702 1731] ) spids: [1696 16777215] ) ] spids: [16777215 1688] ) ] spids: [16777215 1734] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:srcdir) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(dirname)} {($ VSub_Name '$file')})] ) left_token: <Left_Backtick '`'> spids: [1738 1742] ) } spids: [1737] ) ] spids: [1737] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:base) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(basename)} {($ VSub_Name '$file')} {(.) ($ VSub_Name '$suffix')}) ] ) left_token: <Left_Backtick '`'> spids: [1746 1753] ) } spids: [1745] ) ] spids: [1745] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ilist) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(get_incs)} {($ VSub_Name '$file')})] ) left_token: <Left_Backtick '`'> spids: [1759 1763] ) } spids: [1758] ) ] spids: [1758] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$ilist'))} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {($ VSub_Name '$TF')} spids: [1781] ) ] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$progDep'))} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [ {(echo)} { (DQ ($ VSub_Name '$base') (':\t') ($ VSub_Name '$file') (' ') (EscapedLiteralPart token: <Lit_EscapedChar '\\\\'> ) ) } ] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {(.depend)} spids: [1810] ) ] ) ] spids: [16777215 1797] ) ] else_action: [ (SimpleCommand words: [ {(echo)} { (DQ ($ VSub_Name '$base') (.) ($ VSub_Name '$obj') (':\t') ($ VSub_Name '$file') (' ') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ) } ] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {(.depend)} spids: [1830] ) ] ) ] spids: [1815 1835] ) (SimpleCommand words: [{(echo)} {($ VSub_Name '$N')} {(DQ ('\t') ($ VSub_Name '$C'))}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {(.depend)} spids: [1847] ) ] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:llen) op:Equal rhs:{(8)} spids:[1852])] spids: [1852] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:llen) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(gen_deps)} {($ VSub_Name '$llen')} {($ VSub_Name '$ilist')}) ] ) left_token: <Left_Backtick '`'> spids: [1857 1863] ) } spids: [1856] ) ] spids: [1856] ) (SimpleCommand words: [{(echo)}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {(.depend)} spids: [1868] ) ] ) (SimpleCommand words: [{(echo)}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {(.depend)} spids: [1875] ) ] ) ] spids: [16777215 1778] ) (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$progDep'))} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [{(echo)} {(DQ ($ VSub_Name '$base') (':\t') ($ VSub_Name '$file'))}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {(.depend)} spids: [1902] ) ] ) (SimpleCommand words: [{(echo)}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {(.depend)} spids: [1909] ) ] ) ] spids: [1880 1891] ) ] spids: [16777215 1914] ) ] spids: [1630 1916] ) spids: [1627 16777215] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-s)} {(.depend)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (C {(mv)} {(.depend)} {($ VSub_Name '$TF')}) (Pipeline children: [ (BraceGroup children: [ (Sentence child: (AndOr ops: [Op_DAmp Op_DPipe] children: [ (C {(test)} {(DQ ($ VSub_Name '$BASEDIR'))}) (C {(sed)} {(-e)} { (DQ ('s;') ($ VSub_Name '$BASEDIR') (';') (EscapedLiteralPart token: <Lit_EscapedChar '\\$'> ) ('(BASEDIR);g') ) } {($ VSub_Name '$TF')} ) (C {(cat)} {($ VSub_Name '$TF')}) ] ) terminator: <Op_Semi ';'> ) ] spids: [1944] ) (SimpleCommand words: [{(sed)} {(SQ <'s;\\([^.]\\)\\./;\\1;g'>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(.depend)} spids:[1986])] ) ] negated: F ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(x) ($ VSub_Name '$update')} {(KW_Bang '!') (Lit_Other '=')} {(xno)} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (C {(trap)} {(DQ )} {(2)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:depended) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(grep)} {(SQ <'include.*\\.depend'>)} {($ VSub_Name '$MAKEFILE')} ) ] ) left_token: <Left_Backtick '`'> spids: [2040 2048] ) } spids: [2039] ) ] spids: [2039] ) (AndOr ops: [Op_DAmp] children: [(C {(test)} {(DQ ($ VSub_Name '$depended'))}) (C {(clean_up)})] ) (SimpleCommand words: [{(sed)} {(SQ <'/^# DO NOT DELETE.*depend.*$/,$d'>)}] redirects: [ (Redir op_id: Redir_Less fd: 16777215 arg_word: {($ VSub_Name '$MAKEFILE')} spids: [2070] ) (Redir op_id: Redir_Great fd: 16777215 arg_word: {($ VSub_Name '$TF')} spids: [2074] ) ] ) (C {(mv)} {($ VSub_Name '$TF')} {($ VSub_Name '$MAKEFILE')}) (SimpleCommand words: [{(cat)}] redirects: [ (HereDoc op_id: Redir_DLess fd: 16777215 body: { (DQ ('# DO NOT DELETE THIS LINE -- make depend depends on it\n') ('# Do not edit anything below, it was added automagically by ') ($ VSub_Name '$Myname') ('.\n') ('\n') ) } do_expansion: True here_end: '!' was_filled: T spids: [2088] ) (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$MAKEFILE')} spids: [2091] ) ] ) (Case to_match: {(DQ ($ VSub_Name '$Include'))} arms: [ (case_arm pat_list: [{(DQ )}] action: [ (SimpleCommand words: [{(cat)} {(.depend)}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$MAKEFILE')} spids: [2121] ) ] ) ] spids: [16777215 2115 2124 16777215] ) (case_arm pat_list: [{(.include)}] action: [ (SimpleCommand words: [{(echo)} {(SQ <'.include ".depend"'>)}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$MAKEFILE')} spids: [2136] ) ] ) ] spids: [2127 2128 2139 16777215] ) (case_arm pat_list: [{(include)}] action: [ (SimpleCommand words: [{(echo)} {(include)} {(.depend)}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$MAKEFILE')} spids: [2151] ) ] ) ] spids: [2142 2143 2154 16777215] ) ] spids: [2104 2110 2157] ) ] spids: [16777215 2020] ) ] spids: [16777215 2160] ) ] spids: [16777215 1930] ) ] spids: [16777215 2162] ) (C {(clean_up)}) ] )