(CommandList children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:srcdir) op:Equal rhs:{($ VSub_Number '$1')} spids:[236])] spids: [236] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:libdir) op:Equal rhs:{($ VSub_Number '$2')} spids:[239])] spids: [239] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:prefix) op:Equal rhs:{($ VSub_Number '$3')} spids:[242])] spids: [242] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:exec_prefix) op: Equal rhs: {($ VSub_Number '$4')} spids: [245] ) ] spids: [245] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:host) op:Equal rhs:{($ VSub_Number '$5')} spids:[248])] spids: [248] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:target) op:Equal rhs:{($ VSub_Number '$6')} spids:[251])] spids: [251] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:target_alias) op: Equal rhs: {($ VSub_Number '$7')} spids: [254] ) ] spids: [254] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:EMULATION_LIBPATH) op: Equal rhs: {($ VSub_Number '$8')} spids: [257] ) ] spids: [257] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:NATIVE_LIB_DIRS) op: Equal rhs: {($ VSub_Number '$9')} spids: [260] ) ] spids: [260] ) (C {(shift)} {(9)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:use_sysroot) op: Equal rhs: {($ VSub_Number '$1')} spids: [267] ) ] spids: [267] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ENABLE_INITFINI_ARRAY) op: Equal rhs: {($ VSub_Number '$2')} spids: [270] ) ] spids: [270] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:EMULATION_NAME) op: Equal rhs: {($ VSub_Number '$3')} spids: [273] ) ] spids: [273] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:TOOL_LIB) op: Equal rhs: {($ VSub_Number '$4')} spids: [276] ) ] spids: [276] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CUSTOMIZER_SCRIPT) op: Equal rhs: {(DQ (${ VSub_Name srcdir) (/emulparams/) (${ VSub_Name EMULATION_NAME) (.sh))} spids: [283] ) ] spids: [283] ) (C {(.)} {(${ VSub_Name CUSTOMIZER_SCRIPT)}) (If arms: [ (if_arm cond: [(Sentence child:(C {(test)} {(-d)} {(ldscripts)}) terminator:<Op_Semi ';'>)] action: [(C {(true)})] spids: [-1 311] ) ] else_action: [(C {(mkdir)} {(ldscripts)})] spids: [316 323] ) (Case to_match: {(DQ (' ') ($ VSub_Name '$EMULATION_LIBPATH') (' '))} arms: [ (case_arm pat_list: [{(Lit_Other '*') (DQ (' ') (${ VSub_Name EMULATION_NAME) (' ')) (Lit_Other '*')}] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ (x) (${ VSub_Name host))} {(Lit_Other '=')} {(DQ (x) (${ VSub_Name target))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:NATIVE) op: Equal rhs: {(yes)} spids: [392] ) ] spids: [392] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:USE_LIBPATH) op: Equal rhs: {(yes)} spids: [396] ) ] spids: [396] ) ] spids: [-1 389] ) (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ (x) (${ VSub_Name use_sysroot))} {(Lit_Other '=')} {(DQ (xyes))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:USE_LIBPATH) op: Equal rhs: {(yes)} spids: [424] ) ] spids: [424] ) ] spids: [400 421] ) ] spids: [-1 428] ) ] spids: [353 362 431 -1] ) ] spids: [342 350 433] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(test)} {(DQ (x) ($ VSub_Name '$NATIVE'))} {(Lit_Other '=')} {(DQ (xyes))}) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:USE_LIBPATH) op:Equal rhs:{(yes)} spids:[459])] spids: [459] ) ] spids: [-1 456] ) ] spids: [-1 462] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:lib_path1) op:Equal rhs:{(SQ )} spids:[502])] spids: [502] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:lib_path2) op:Equal rhs:{(SQ )} spids:[507])] spids: [507] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ (${ VSub_Name LIB_PATH))} {(KW_Bang '!') (Lit_Other '=')} {(DQ (':'))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:lib_path2) op: Equal rhs: {(${ VSub_Name LIB_PATH)} spids: [533] ) ] spids: [533] ) ] spids: [-1 530] ) ] spids: [-1 538] ) (FuncDef name: append_to_lib_path body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_Pound '$#')} {(KW_Bang '!') (Lit_Other '=')} {(0)} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (ForEach iter_name: lib iter_words: [{(DQ ($ VSub_At '$@'))}] do_arg_iter: False body: (DoGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ (x) (${ VSub_Name use_sysroot))} {(Lit_Other '=')} {(DQ (xyes))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:lib) op: Equal rhs: {(DQ ('=') (${ VSub_Name lib))} spids: [610] ) ] spids: [610] ) ] spids: [-1 607] ) ] spids: [-1 619] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:skip_lib) op: Equal rhs: {(no)} spids: [622] ) ] spids: [622] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(test)} {(-n)} {(DQ (${ VSub_Name LIBPATH_SUFFIX))}) terminator: <Op_Semi ';'> ) ] action: [ (Case to_match: {(DQ (${ VSub_Name lib))} arms: [ (case_arm pat_list: [{(Lit_Other '*') (${ VSub_Name LIBPATH_SUFFIX)}] action: [ (Case to_match: {(Lit_Other ':') (${ VSub_Name lib_path1) (Lit_Other ':') } arms: [ (case_arm pat_list: [ {(Lit_Other '*') (Lit_Other ':') (${ VSub_Name lib) (Lit_Other ':') (Lit_Other '*') } ] spids: [671 678 680 -1] ) (case_arm pat_list: [{(Lit_Other ':') (Lit_Other ':')}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:lib_path1) op: Equal rhs: {(${ VSub_Name lib)} spids: [687] ) ] spids: [687] ) ] spids: [683 685 692 -1] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:lib_path1) op: Equal rhs: {(${ VSub_Name lib_path1) (Lit_Other ':') (${ VSub_Name lib) } spids: [698] ) ] spids: [698] ) ] spids: [695 696 707 -1] ) ] spids: [660 668 710] ) ] spids: [653 657 712 -1] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(test)} {(-n)} {(DQ (${ VSub_Name LIBPATH_SUFFIX_SKIP))} ) terminator: <Op_Semi ';'> ) ] action: [ (Case to_match: {(DQ (${ VSub_Name lib))} arms: [ (case_arm pat_list: [ {(Lit_Other '*') (${ VSub_Name LIBPATH_SUFFIX_SKIP) } ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:skip_lib) op: Equal rhs: {(yes)} spids: [752] ) ] spids: [752] ) ] spids: [746 750 755 -1] ) ] spids: [735 743 758] ) ] spids: [-1 732] ) ] spids: [-1 761] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(test)} {(DQ (${ VSub_Name skip_lib))} {(Lit_Other '=')} {(DQ (no))} ) terminator: <Op_Semi ';'> ) ] action: [ (Case to_match: {(Lit_Other ':') (${ VSub_Name lib_path1) (Lit_Other ':') } arms: [ (case_arm pat_list: [ {(Lit_Other '*') (Lit_Other ':') (${ VSub_Name lib) (${ VSub_Name LIBPATH_SUFFIX) (Lit_Other ':') (Lit_Other '*') } ] spids: [795 805 807 -1] ) (case_arm pat_list: [{(Lit_Other ':') (Lit_Other ':')}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:lib_path1) op: Equal rhs: {(${ VSub_Name lib) (${ VSub_Name LIBPATH_SUFFIX) } spids: [814] ) ] spids: [814] ) ] spids: [810 812 822 -1] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:lib_path1) op: Equal rhs: {(${ VSub_Name lib_path1) (Lit_Other ':') (${ VSub_Name lib) (${ VSub_Name LIBPATH_SUFFIX) } spids: [828] ) ] spids: [828] ) ] spids: [825 826 840 -1] ) ] spids: [784 792 843] ) ] spids: [-1 781] ) ] spids: [-1 846] ) ] spids: [715 716 848 -1] ) ] spids: [642 650 851] ) ] spids: [-1 639] ) ] spids: [-1 854] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(test)} {(DQ (${ VSub_Name skip_lib))} {(Lit_Other '=')} {(DQ (no))} ) terminator: <Op_Semi ';'> ) ] action: [ (Case to_match: {(Lit_Other ':') (${ VSub_Name lib_path1) (Lit_Other ':') (${ VSub_Name lib_path2) (Lit_Other ':') } arms: [ (case_arm pat_list: [ {(Lit_Other '*') (Lit_Other ':') (${ VSub_Name lib) (Lit_Other ':') (Lit_Other '*') } ] spids: [892 899 901 -1] ) (case_arm pat_list: [{(Lit_Other '*') (Lit_Other ':') (Lit_Other ':')}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:lib_path2) op: Equal rhs: {(${ VSub_Name lib)} spids: [909] ) ] spids: [909] ) ] spids: [904 907 914 -1] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:lib_path2) op: Equal rhs: {(${ VSub_Name lib_path2) (Lit_Other ':') (${ VSub_Name lib) } spids: [920] ) ] spids: [920] ) ] spids: [917 918 929 -1] ) ] spids: [877 889 932] ) ] spids: [-1 874] ) ] spids: [-1 935] ) ] spids: [579 938] ) spids: [573 577] ) ] spids: [-1 565] ) ] spids: [-1 941] ) ] spids: [548] ) spids: [544 547] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ (${ VSub_Name LIB_PATH))} {(KW_Bang '!') (Lit_Other '=')} {(DQ (':'))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:libs) op:Equal rhs:{(SQ )} spids:[976])] spids: [976] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ (x) (${ VSub_Name TOOL_LIB))} {(Lit_Other '=')} {(DQ (x))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ (x) (${ VSub_Name NATIVE))} {(Lit_Other '=')} {(DQ (xyes))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:libs) op: Equal rhs: { (DQ (${ VSub_Name exec_prefix) (/) (${ VSub_Name target_alias) (/lib) ) } spids: [1027] ) ] spids: [1027] ) ] spids: [-1 1024] ) ] spids: [-1 1040] ) ] spids: [-1 1000] ) ] else_action: [ (Case to_match: { (DQ (${ VSub_Name NATIVE) (':') (${ VSub_Name LIBPATH_SUFFIX) (':') (${ VSub_Name TOOL_LIB) ) } arms: [ (case_arm pat_list: [ {(Lit_Other ':') (Lit_Other '*')} {(Lit_Other '*') (Lit_Other ':') (Lit_Other ':') (Lit_Other '*')} {(Lit_Other '*') (Lit_Other ':') (Lit_Other '*') (Lit_Other ':') (Lit_Other '*') (${ VSub_Name LIBPATH_SUFFIX) } ] spids: [1085 1105 1107 -1] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:libs) op: Equal rhs: { (DQ (${ VSub_Name exec_prefix) (/) (${ VSub_Name target_alias) (/lib) (${ VSub_Name LIBPATH_SUFFIX) ) } spids: [1113] ) ] spids: [1113] ) ] spids: [1110 1111 1128 -1] ) ] spids: [1066 1082 1131] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:libs) op: Equal rhs: { (DQ (${ VSub_Name exec_prefix) (/) (${ VSub_Name TOOL_LIB) ('/lib ') (${ VSub_Name libs) ) } spids: [1134] ) ] spids: [1134] ) ] spids: [1043 1150] ) (C {(append_to_lib_path)} {(${ VSub_Name libs)}) ] spids: [-1 973] ) ] spids: [-1 1159] ) (If arms: [ (if_arm cond: [ (Sentence child: (AndOr children: [ (C {(Lit_Other '[')} {(DQ (x) (${ VSub_Name LIB_PATH))} {(Lit_Other '=')} {(DQ (x))} {(Lit_Other ']')} ) (C {(Lit_Other '[')} {(DQ (x) (${ VSub_Name USE_LIBPATH))} {(Lit_Other '=')} {(xyes)} {(Lit_Other ']')} ) ] op_id: Op_DAmp ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:libs) op: Equal rhs: {(${ VSub_Name NATIVE_LIB_DIRS)} spids: [1203] ) ] spids: [1203] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ (x) (${ VSub_Name NATIVE))} {(Lit_Other '=')} {(DQ (xyes))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Case to_match: {(DQ (' ') (${ VSub_Name libs) (' '))} arms: [ (case_arm pat_list: [ {(Lit_Other '*') (DQ (' ') (${ VSub_Name libdir) (' ')) (Lit_Other '*')} ] spids: [1246 1255 1257 -1] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:libs) op: Equal rhs: {(DQ (${ VSub_Name libdir) (' ') (${ VSub_Name libs))} spids: [1263] ) ] spids: [1263] ) ] spids: [1260 1261 1274 -1] ) ] spids: [1233 1243 1277] ) ] spids: [-1 1230] ) ] spids: [-1 1280] ) (C {(append_to_lib_path)} {(${ VSub_Name libs)}) ] spids: [-1 1200] ) ] spids: [-1 1289] ) (Case to_match: {(Lit_Other ':') (${ VSub_Name lib_path1) (Lit_Other ':') (${ VSub_Name lib_path2) (Lit_Other ':') } arms: [ (case_arm pat_list: [ {(Lit_Other '*') (Lit_Other ':') (Lit_Other ':')} {(Lit_Other ':') (Lit_Other ':') (Lit_Other '*')} ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:LIB_PATH) op: Equal rhs: {(${ VSub_Name lib_path1) (${ VSub_Name lib_path2)} spids: [1318] ) ] spids: [1318] ) ] spids: [1307 1316 1326 -1] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:LIB_PATH) op: Equal rhs: {(${ VSub_Name lib_path1) (Lit_Other ':') (${ VSub_Name lib_path2)} spids: [1332] ) ] spids: [1332] ) ] spids: [1329 1330 1341 -1] ) ] spids: [1292 1304 1343] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:LIB_SEARCH_DIRS) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {(${ VSub_Name LIB_PATH)}) (C {(sed)} {(-e)} {(SQ <'s/:/ /g'>)} {(-e)} {(SQ <'s/\\([^ ][^ ]*\\)/SEARCH_DIR(\\\\"\\1\\\\");/g'>)} ) ] negated: False ) ] ) left_token: <Left_Backtick '`'> spids: [1347 1369] ) } spids: [1346] ) ] spids: [1346] ) (C {(set)} {($ VSub_Name '$EMULATION_LIBPATH')}) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ (x) ($ VSub_Number '$1'))} {(Lit_Other '=')} {(DQ (x) ($ VSub_Name '$EMULATION_NAME'))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (AndOr children: [(C {(test)} {(-d)} {(tmpdir)}) (C {(mkdir)} {(tmpdir)})] op_id: Op_DPipe ) (C {(rm)} {(-f)} {(tmpdir/libpath.exp)}) (Pipeline children: [ (C {(echo)} { (DQ ('set libpath ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (${ VSub_Name LIB_PATH) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ) } ) (SimpleCommand words: [{(sed)} {(-e)} {(SQ <'s/:/ /g'>)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(tmpdir/libpath.exp)} spids: [1442] ) ] ) ] negated: False ) ] spids: [-1 1398] ) ] spids: [-1 1446] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ (x) ($ VSub_Name '$SCRIPT_NAME'))} {(Lit_Other '=')} {(DQ (xelf))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:GENERATE_COMBRELOC_SCRIPT) op: Equal rhs: {(yes)} spids: [1531] ) ] spids: [1531] ) ] spids: [-1 1528] ) ] spids: [-1 1534] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:SEGMENT_SIZE) op: Equal rhs: { (BracedVarSub token: <VSub_Name SEGMENT_SIZE> suffix_op: (StringUnary op_id: VTest_Hyphen arg_word: { (BracedVarSub token: <VSub_Name MAXPAGESIZE> suffix_op: (StringUnary op_id: VTest_Hyphen arg_word: {(${ VSub_Name TARGET_PAGE_SIZE)} ) spids: [1541 1547] ) } ) spids: [1538 1548] ) } spids: [1537] ) ] spids: [1537] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:DATA_ALIGNMENT_) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Name DATA_ALIGNMENT_> suffix_op: (StringUnary op_id: VTest_Hyphen arg_word: { (BracedVarSub token: <VSub_Name DATA_ALIGNMENT> suffix_op: (StringUnary op_id: VTest_Hyphen arg_word: {('ALIGN(') (${ VSub_Name SEGMENT_SIZE) (')')} ) spids: [1563 1571] ) } ) spids: [1560 1572] ) ) } spids: [1558] ) ] spids: [1558] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:DATA_ALIGNMENT_n) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Name DATA_ALIGNMENT_n> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(${ VSub_Name DATA_ALIGNMENT_)}) spids: [1577 1583] ) ) } spids: [1575] ) ] spids: [1575] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:DATA_ALIGNMENT_N) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Name DATA_ALIGNMENT_N> suffix_op: (StringUnary op_id: VTest_Hyphen arg_word: { (BracedVarSub token: <VSub_Name DATA_ALIGNMENT> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(.)}) spids: [1591 1595] ) } ) spids: [1588 1596] ) ) } spids: [1586] ) ] spids: [1586] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:DATA_ALIGNMENT_r) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Name DATA_ALIGNMENT_r> suffix_op: (StringUnary op_id: VTest_Hyphen arg_word: { (BracedVarSub token: <VSub_Name DATA_ALIGNMENT> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{}) spids: [1604 1607] ) } ) spids: [1601 1608] ) ) } spids: [1599] ) ] spids: [1599] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:DATA_ALIGNMENT_u) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Name DATA_ALIGNMENT_u> suffix_op: (StringUnary op_id: VTest_Hyphen arg_word: {(${ VSub_Name DATA_ALIGNMENT_r)} ) spids: [1613 1619] ) ) } spids: [1611] ) ] spids: [1611] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:LD_FLAG) op:Equal rhs:{(r)} spids:[1623])] spids: [1623] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:DATA_ALIGNMENT) op: Equal rhs: {(${ VSub_Name DATA_ALIGNMENT_r)} spids: [1626] ) ] spids: [1626] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:DEFAULT_DATA_ALIGNMENT) op: Equal rhs: {(DQ ('ALIGN(') (${ VSub_Name SEGMENT_SIZE) (')'))} spids: [1631] ) ] spids: [1631] ) (Pipeline children: [ (Subshell child: (CommandList children: [ (C {(echo)} {(DQ ('/* Script for ld -r: link without relocation */'))}) (C {(.)} {(${ VSub_Name CUSTOMIZER_SCRIPT)}) (C {(.)} {(${ VSub_Name srcdir) (/scripttempl/) (${ VSub_Name SCRIPT_NAME) (.sc)}) ] ) spids: [1640 1667] ) (SimpleCommand words: [{(sed)} {(-e)} {(SQ <'/^ *$/d;s/[ \t]*$//'>)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(ldscripts/) (${ VSub_Name EMULATION_NAME) (.xr)} spids: [1679] ) ] ) ] negated: False ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:LD_FLAG) op:Equal rhs:{(u)} spids:[1688])] spids: [1688] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:DATA_ALIGNMENT) op: Equal rhs: {(${ VSub_Name DATA_ALIGNMENT_u)} spids: [1691] ) ] spids: [1691] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:CONSTRUCTING) op:Equal rhs:{(DQ (' '))} spids:[1696])] spids: [1696] ) (Pipeline children: [ (Subshell child: (CommandList children: [ (C {(echo)} {(DQ ('/* Script for ld -Ur: link w/out relocation, do create constructors */'))} ) (C {(.)} {(${ VSub_Name CUSTOMIZER_SCRIPT)}) (C {(.)} {(${ VSub_Name srcdir) (/scripttempl/) (${ VSub_Name SCRIPT_NAME) (.sc)}) ] ) spids: [1701 1728] ) (SimpleCommand words: [{(sed)} {(-e)} {(SQ <'/^ *$/d;s/[ \t]*$//'>)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(ldscripts/) (${ VSub_Name EMULATION_NAME) (.xu)} spids: [1740] ) ] ) ] negated: False ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:LD_FLAG) op:Equal rhs:{(SQ )} spids:[1749])] spids: [1749] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:DATA_ALIGNMENT) op: Equal rhs: {(${ VSub_Name DATA_ALIGNMENT_)} spids: [1751] ) ] spids: [1751] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:RELOCATING) op:Equal rhs:{(DQ (' '))} spids:[1756])] spids: [1756] ) (Pipeline children: [ (Subshell child: (CommandList children: [ (C {(echo)} {(DQ ('/* Default linker script, for normal executables */'))}) (C {(.)} {(${ VSub_Name CUSTOMIZER_SCRIPT)}) (C {(.)} {(${ VSub_Name srcdir) (/scripttempl/) (${ VSub_Name SCRIPT_NAME) (.sc)}) ] ) spids: [1761 1788] ) (SimpleCommand words: [{(sed)} {(-e)} {(SQ <'/^ *$/d;s/[ \t]*$//'>)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(ldscripts/) (${ VSub_Name EMULATION_NAME) (.x)} spids: [1800] ) ] ) ] negated: False ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:LD_FLAG) op:Equal rhs:{(n)} spids:[1809])] spids: [1809] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:DATA_ALIGNMENT) op: Equal rhs: {(${ VSub_Name DATA_ALIGNMENT_n)} spids: [1812] ) ] spids: [1812] ) (Pipeline children: [ (Subshell child: (CommandList children: [ (C {(echo)} {(DQ ('/* Script for -n: mix text and data on same page */'))}) (C {(.)} {(${ VSub_Name CUSTOMIZER_SCRIPT)}) (C {(.)} {(${ VSub_Name srcdir) (/scripttempl/) (${ VSub_Name SCRIPT_NAME) (.sc)}) ] ) spids: [1817 1844] ) (SimpleCommand words: [{(sed)} {(-e)} {(SQ <'/^ *$/d;s/[ \t]*$//'>)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(ldscripts/) (${ VSub_Name EMULATION_NAME) (.xn)} spids: [1856] ) ] ) ] negated: False ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:LD_FLAG) op:Equal rhs:{(N)} spids:[1865])] spids: [1865] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:DATA_ALIGNMENT) op: Equal rhs: {(${ VSub_Name DATA_ALIGNMENT_N)} spids: [1868] ) ] spids: [1868] ) (Pipeline children: [ (Subshell child: (CommandList children: [ (C {(echo)} {(DQ ("/* Script for -N: mix text and data on same page; don't align data */"))} ) (C {(.)} {(${ VSub_Name CUSTOMIZER_SCRIPT)}) (C {(.)} {(${ VSub_Name srcdir) (/scripttempl/) (${ VSub_Name SCRIPT_NAME) (.sc)}) ] ) spids: [1873 1900] ) (SimpleCommand words: [{(sed)} {(-e)} {(SQ <'/^ *$/d;s/[ \t]*$//'>)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(ldscripts/) (${ VSub_Name EMULATION_NAME) (.xbn)} spids: [1912] ) ] ) ] negated: False ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$GENERATE_COMBRELOC_SCRIPT'))}) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:DATA_ALIGNMENT) op: Equal rhs: { (BracedVarSub token: <VSub_Name DATA_ALIGNMENT_c> suffix_op: (StringUnary op_id: VTest_Hyphen arg_word: {(${ VSub_Name DATA_ALIGNMENT_)} ) spids: [1936 1942] ) } spids: [1935] ) ] spids: [1935] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:LD_FLAG) op:Equal rhs:{(c)} spids:[1945])] spids: [1945] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMBRELOC) op: Equal rhs: {(ldscripts/) (${ VSub_Name EMULATION_NAME) (.xc.tmp)} spids: [1949] ) ] spids: [1949] ) (Pipeline children: [ (Subshell child: (CommandList children: [ (C {(echo)} {(DQ ('/* Script for -z combreloc: combine and sort reloc sections */'))} ) (C {(.)} {(${ VSub_Name CUSTOMIZER_SCRIPT)}) (C {(.)} {(${ VSub_Name srcdir) (/scripttempl/) (${ VSub_Name SCRIPT_NAME) (.sc)} ) ] ) spids: [1957 1985] ) (SimpleCommand words: [{(sed)} {(-e)} {(SQ <'/^ *$/d;s/[ \t]*$//'>)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(ldscripts/) (${ VSub_Name EMULATION_NAME) (.xc)} spids: [1997] ) ] ) ] negated: False ) (C {(rm)} {(-f)} {(${ VSub_Name COMBRELOC)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:LD_FLAG) op:Equal rhs:{(w)} spids:[2015])] spids: [2015] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RELRO_NOW) op: Equal rhs: {(DQ (' '))} spids: [2019] ) ] spids: [2019] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMBRELOC) op: Equal rhs: {(ldscripts/) (${ VSub_Name EMULATION_NAME) (.xw.tmp)} spids: [2025] ) ] spids: [2025] ) (Pipeline children: [ (Subshell child: (CommandList children: [ (C {(echo)} { (DQ ( '/* Script for -z combreloc -z now -z relro: combine and sort reloc sections */' ) ) } ) (C {(.)} {(${ VSub_Name CUSTOMIZER_SCRIPT)}) (C {(.)} {(${ VSub_Name srcdir) (/scripttempl/) (${ VSub_Name SCRIPT_NAME) (.sc)} ) ] ) spids: [2033 2061] ) (SimpleCommand words: [{(sed)} {(-e)} {(SQ <'/^ *$/d;s/[ \t]*$//'>)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(ldscripts/) (${ VSub_Name EMULATION_NAME) (.xw)} spids: [2073] ) ] ) ] negated: False ) (C {(rm)} {(-f)} {(${ VSub_Name COMBRELOC)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:COMBRELOC) op:Equal rhs:{(SQ )} spids:[2091])] spids: [2091] ) (C {(unset)} {(RELRO_NOW)}) ] spids: [-1 1932] ) ] spids: [-1 2098] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$GENERATE_SHLIB_SCRIPT'))}) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:LD_FLAG) op:Equal rhs:{(shared)} spids:[2115])] spids: [2115] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:DATA_ALIGNMENT) op: Equal rhs: { (BracedVarSub token: <VSub_Name DATA_ALIGNMENT_s> suffix_op: (StringUnary op_id: VTest_Hyphen arg_word: {(${ VSub_Name DATA_ALIGNMENT_)} ) spids: [2120 2126] ) } spids: [2119] ) ] spids: [2119] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CREATE_SHLIB) op: Equal rhs: {(DQ (' '))} spids: [2129] ) ] spids: [2129] ) (Pipeline children: [ (Subshell child: (CommandList children: [ (C {(echo)} {(DQ ('/* Script for ld --shared: link shared library */'))}) (C {(.)} {(${ VSub_Name CUSTOMIZER_SCRIPT)}) (C {(.)} {(${ VSub_Name srcdir) (/scripttempl/) (${ VSub_Name SCRIPT_NAME) (.sc)} ) ] ) spids: [2135 2164] ) (SimpleCommand words: [{(sed)} {(-e)} {(SQ <'/^ *$/d;s/[ \t]*$//'>)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(ldscripts/) (${ VSub_Name EMULATION_NAME) (.xs)} spids: [2176] ) ] ) ] negated: False ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$GENERATE_COMBRELOC_SCRIPT'))}) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:LD_FLAG) op: Equal rhs: {(cshared)} spids: [2199] ) ] spids: [2199] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:DATA_ALIGNMENT) op: Equal rhs: { (BracedVarSub token: <VSub_Name DATA_ALIGNMENT_sc> suffix_op: (StringUnary op_id: VTest_Hyphen arg_word: {(${ VSub_Name DATA_ALIGNMENT)} ) spids: [2204 2210] ) } spids: [2203] ) ] spids: [2203] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMBRELOC) op: Equal rhs: {(ldscripts/) (${ VSub_Name EMULATION_NAME) (.xsc.tmp)} spids: [2213] ) ] spids: [2213] ) (Pipeline children: [ (Subshell child: (CommandList children: [ (C {(echo)} { (DQ ( '/* Script for --shared -z combreloc: shared library, combine & sort relocs */' ) ) } ) (C {(.)} {(${ VSub_Name CUSTOMIZER_SCRIPT)}) (C {(.)} {(${ VSub_Name srcdir) (/scripttempl/) (${ VSub_Name SCRIPT_NAME) (.sc) } ) ] ) spids: [2221 2249] ) (SimpleCommand words: [{(sed)} {(-e)} {(SQ <'/^ *$/d;s/[ \t]*$//'>)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(ldscripts/) (${ VSub_Name EMULATION_NAME) (.xsc)} spids: [2261] ) ] ) ] negated: False ) (C {(rm)} {(-f)} {(${ VSub_Name COMBRELOC)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:LD_FLAG) op: Equal rhs: {(wshared)} spids: [2279] ) ] spids: [2279] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RELRO_NOW) op: Equal rhs: {(DQ (' '))} spids: [2283] ) ] spids: [2283] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMBRELOC) op: Equal rhs: {(ldscripts/) (${ VSub_Name EMULATION_NAME) (.xsw.tmp)} spids: [2289] ) ] spids: [2289] ) (Pipeline children: [ (Subshell child: (CommandList children: [ (C {(echo)} { (DQ ( '/* Script for --shared -z combreloc -z now -z relro: shared library, combine & sort relocs */' ) ) } ) (C {(.)} {(${ VSub_Name CUSTOMIZER_SCRIPT)}) (C {(.)} {(${ VSub_Name srcdir) (/scripttempl/) (${ VSub_Name SCRIPT_NAME) (.sc) } ) ] ) spids: [2297 2325] ) (SimpleCommand words: [{(sed)} {(-e)} {(SQ <'/^ *$/d;s/[ \t]*$//'>)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(ldscripts/) (${ VSub_Name EMULATION_NAME) (.xsw)} spids: [2337] ) ] ) ] negated: False ) (C {(rm)} {(-f)} {(${ VSub_Name COMBRELOC)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMBRELOC) op: Equal rhs: {(SQ )} spids: [2355] ) ] spids: [2355] ) (C {(unset)} {(RELRO_NOW)}) ] spids: [-1 2196] ) ] spids: [-1 2363] ) (C {(unset)} {(CREATE_SHLIB)}) ] spids: [-1 2112] ) ] spids: [-1 2370] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$GENERATE_PIE_SCRIPT'))}) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:LD_FLAG) op:Equal rhs:{(pie)} spids:[2387])] spids: [2387] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:DATA_ALIGNMENT) op: Equal rhs: { (BracedVarSub token: <VSub_Name DATA_ALIGNMENT_s> suffix_op: (StringUnary op_id: VTest_Hyphen arg_word: {(${ VSub_Name DATA_ALIGNMENT_)} ) spids: [2392 2398] ) } spids: [2391] ) ] spids: [2391] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CREATE_PIE) op: Equal rhs: {(DQ (' '))} spids: [2401] ) ] spids: [2401] ) (Pipeline children: [ (Subshell child: (CommandList children: [ (C {(echo)} {(DQ ('/* Script for ld -pie: link position independent executable */'))} ) (C {(.)} {(${ VSub_Name CUSTOMIZER_SCRIPT)}) (C {(.)} {(${ VSub_Name srcdir) (/scripttempl/) (${ VSub_Name SCRIPT_NAME) (.sc)} ) ] ) spids: [2407 2436] ) (SimpleCommand words: [{(sed)} {(-e)} {(SQ <'/^ *$/d;s/[ \t]*$//'>)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(ldscripts/) (${ VSub_Name EMULATION_NAME) (.xd)} spids: [2448] ) ] ) ] negated: False ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$GENERATE_COMBRELOC_SCRIPT'))}) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:LD_FLAG) op: Equal rhs: {(cpie)} spids: [2471] ) ] spids: [2471] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:DATA_ALIGNMENT) op: Equal rhs: { (BracedVarSub token: <VSub_Name DATA_ALIGNMENT_sc> suffix_op: (StringUnary op_id: VTest_Hyphen arg_word: {(${ VSub_Name DATA_ALIGNMENT)} ) spids: [2476 2482] ) } spids: [2475] ) ] spids: [2475] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMBRELOC) op: Equal rhs: {(ldscripts/) (${ VSub_Name EMULATION_NAME) (.xdc.tmp)} spids: [2485] ) ] spids: [2485] ) (Pipeline children: [ (Subshell child: (CommandList children: [ (C {(echo)} { (DQ ( '/* Script for -pie -z combreloc: position independent executable, combine & sort relocs */' ) ) } ) (C {(.)} {(${ VSub_Name CUSTOMIZER_SCRIPT)}) (C {(.)} {(${ VSub_Name srcdir) (/scripttempl/) (${ VSub_Name SCRIPT_NAME) (.sc) } ) ] ) spids: [2493 2521] ) (SimpleCommand words: [{(sed)} {(-e)} {(SQ <'/^ *$/d;s/[ \t]*$//'>)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(ldscripts/) (${ VSub_Name EMULATION_NAME) (.xdc)} spids: [2533] ) ] ) ] negated: False ) (C {(rm)} {(-f)} {(${ VSub_Name COMBRELOC)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:LD_FLAG) op: Equal rhs: {(wpie)} spids: [2551] ) ] spids: [2551] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RELRO_NOW) op: Equal rhs: {(DQ (' '))} spids: [2555] ) ] spids: [2555] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMBRELOC) op: Equal rhs: {(ldscripts/) (${ VSub_Name EMULATION_NAME) (.xdw.tmp)} spids: [2561] ) ] spids: [2561] ) (Pipeline children: [ (Subshell child: (CommandList children: [ (C {(echo)} { (DQ ( '/* Script for -pie -z combreloc -z now -z relro: position independent executable, combine & sort relocs */' ) ) } ) (C {(.)} {(${ VSub_Name CUSTOMIZER_SCRIPT)}) (C {(.)} {(${ VSub_Name srcdir) (/scripttempl/) (${ VSub_Name SCRIPT_NAME) (.sc) } ) ] ) spids: [2569 2597] ) (SimpleCommand words: [{(sed)} {(-e)} {(SQ <'/^ *$/d;s/[ \t]*$//'>)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(ldscripts/) (${ VSub_Name EMULATION_NAME) (.xdw)} spids: [2609] ) ] ) ] negated: False ) (C {(rm)} {(-f)} {(${ VSub_Name COMBRELOC)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMBRELOC) op: Equal rhs: {(SQ )} spids: [2627] ) ] spids: [2627] ) (C {(unset)} {(RELRO_NOW)}) ] spids: [-1 2468] ) ] spids: [-1 2635] ) (C {(unset)} {(CREATE_PIE)}) ] spids: [-1 2384] ) ] spids: [-1 2642] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$GENERATE_AUTO_IMPORT_SCRIPT'))}) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:LD_FLAG) op: Equal rhs: {(auto_import)} spids: [2659] ) ] spids: [2659] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:DATA_ALIGNMENT) op: Equal rhs: {(${ VSub_Name DATA_ALIGNMENT_)} spids: [2663] ) ] spids: [2663] ) (Pipeline children: [ (Subshell child: (CommandList children: [ (C {(echo)} { (DQ ( '/* Script for ld --enable-auto-import: Like the default script except read only data is placed into .data */' ) ) } ) (C {(.)} {(${ VSub_Name CUSTOMIZER_SCRIPT)}) (C {(.)} {(${ VSub_Name srcdir) (/scripttempl/) (${ VSub_Name SCRIPT_NAME) (.sc)} ) ] ) spids: [2669 2698] ) (SimpleCommand words: [{(sed)} {(-e)} {(SQ <'/^ *$/d;s/[ \t]*$//'>)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(ldscripts/) (${ VSub_Name EMULATION_NAME) (.xa)} spids: [2710] ) ] ) ] negated: False ) ] spids: [-1 2656] ) ] spids: [-1 2718] ) (Case to_match: {(DQ ($ VSub_Name '$COMPILE_IN') (': ') ($ VSub_Name '$EMULATION_LIBPATH') (' '))} arms: [ (case_arm pat_list: [ {(Lit_Other ':') (Lit_Other '*') (DQ (' ') (${ VSub_Name EMULATION_NAME) (' ')) (Lit_Other '*') } ] action: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:COMPILE_IN) op:Equal rhs:{(yes)} spids:[2745])] spids: [2745] ) ] spids: [2733 2743 2747 -1] ) ] spids: [2721 2730 2749] ) (FuncDef name: has_lineno body: (BraceGroup children: [ (C {(test)} {(DQ (x) ($ VSub_Name '$BASH_LINENO'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ (x))}) ] spids: [2765] ) spids: [2761 2764] ) (If arms: [ (if_arm cond: [(Sentence child:(C {(has_lineno)}) terminator:<Op_Semi ';'>)] action: [(C {(.)} {(${ VSub_Name srcdir) (/genscrba.sh)})] spids: [-1 2793] ) ] else_action: [ (FuncDef name: source_em body: (BraceGroup children:[(C {(.)} {($ VSub_Number '$1')})] spids:[2811]) spids: [2806 2809] ) (FuncDef name: fragment body: (BraceGroup children: [ (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_DGreat fd: -1 arg_word: {(e) (${ VSub_Name EMULATION_NAME) (.c)} spids: [2832] ) ] ) ] spids: [2827] ) spids: [2822 2825] ) ] spids: [2803 2843] ) (SimpleCommand redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(e) (${ VSub_Name EMULATION_NAME) (.c)} spids: [2855] ) ] ) (C {(source_em)} {(${ VSub_Name srcdir) (/emultempl/) (BracedVarSub token: <VSub_Name TEMPLATE_NAME> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(generic)}) spids: [2869 2873] ) (.em) } ) ] )