(command.CommandList children: [ (command.ShAssignment left: <Id.Lit_VarLike 'ok='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'ok='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'ok='> name:ok) op: assign_op.Equal rhs: {<0>} ) ] redirects: [] ) (command.ForEach keyword: <Id.KW_For for> iter_names: [i] iterable: (for_iter.Words words: [ {<-x>} {<'/lib/ld.so'>} {<'/lib/ld-'> <Id.Lit_Star '*'> <.so>} {<'/usr/lib/ld.so'>} {<'/lib/rld'>} {<-f>} {<'/usr/shlib/libc.so'>} {<'/shlib/libc.so'>} {<'/usr/lib/libc.so'>} {<-r>} {<'/usr/shlib/libc.so'>} {<'/shlib/libc.so'>} ] ) body: (command.DoGroup left: <Id.KW_Do do> children: [ (command.Case case_kw: <Id.KW_Case case> to_match: (case_arg.Word w:{($ Id.VSub_DollarName i)}) arms_start: <Id.KW_In in> arms: [ (CaseArm left: <-> pattern: (pat.Words words:[{<-> <Id.Lit_Star '*'>}]) middle: <Id.Right_CasePat _> action: [ (command.Sentence child: (command.ShAssignment left: <Id.Lit_VarLike 'op='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'op='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'op='> name:op) op: assign_op.Equal rhs: {($ Id.VSub_DollarName i)} ) ] redirects: [] ) terminator: <Id.Op_Semi _> ) (command.ControlFlow keyword: <Id.ControlFlow_Continue continue> ) ] right: <Id.Op_DSemi _> ) ] arms_end: <Id.KW_Esac esac> redirects: [] ) (command.If if_kw: <Id.KW_If if> arms: [ (IfArm keyword: <Id.KW_If if> cond: (condition.Shell commands: [ (command.Simple blame_tok: <test> more_env: [] words: [{<test>} {($ Id.VSub_DollarName op)} {($ Id.VSub_DollarName i)}] redirects: [] do_fork: T ) ] ) then_kw: <Id.KW_Then then> action: [ (command.ShAssignment left: <Id.Lit_VarLike 'ok='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'ok='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'ok='> name:ok) op: assign_op.Equal rhs: {<1>} ) ] redirects: [] ) (command.ControlFlow keyword:<Id.ControlFlow_Break break>) ] spids: [129 138] ) ] else_action: [] fi_kw: <Id.KW_Fi fi> redirects: [] ) (command.Simple blame_tok: <set> more_env: [] words: [ {<set>} {<x>} {($ Id.VSub_DollarName i) <.> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> <Id.Lit_Star '*'> } ] redirects: [] do_fork: T ) (command.If if_kw: <Id.KW_If if> arms: [ (IfArm keyword: <Id.KW_If if> cond: (condition.Shell commands: [ (command.Simple blame_tok: <test> more_env: [] words: [{<test>} {($ Id.VSub_DollarName op)} {($ Id.VSub_Number 2)}] redirects: [] do_fork: T ) ] ) then_kw: <Id.KW_Then then> action: [ (command.ShAssignment left: <Id.Lit_VarLike 'ok='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'ok='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'ok='> name:ok) op: assign_op.Equal rhs: {<1>} ) ] redirects: [] ) (command.ControlFlow keyword:<Id.ControlFlow_Break break>) ] spids: [162 171] ) ] else_action: [] fi_kw: <Id.KW_Fi fi> redirects: [] ) ] right: <Id.KW_Done done> ) redirects: [] ) (command.If if_kw: <Id.KW_If if> arms: [ (IfArm keyword: <Id.KW_If if> cond: (condition.Shell commands: [ (command.Simple blame_tok: <test> more_env: [] words: [ {<test>} {(DQ <0>)} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ ($ Id.VSub_DollarName ok))} ] redirects: [] do_fork: T ) ] ) then_kw: <Id.KW_Then then> action: [ (command.ShAssignment left: <Id.Lit_VarLike 'libpath='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'libpath='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'libpath='> name:libpath) op: assign_op.Equal rhs: {<lib> <Id.Lit_Colon ':'> <LD_LIBRARY_PATH>} ) ] redirects: [] ) (command.Case case_kw: <Id.KW_Case case> to_match: (case_arg.Word w: { (CommandSub left_token: <Id.Left_Backtick '`'> child: (command.Simple blame_tok: <package> more_env: [] words: [{<package>}] redirects: [] do_fork: T ) right: <Id.Backtick_Right '`'> ) } ) arms_start: <Id.KW_In in> arms: [ (CaseArm left: <sgi.> pattern: (pat.Words words:[{<sgi.> <Id.Lit_Star '*'>}]) middle: <Id.Right_CasePat _> action: [ (command.If if_kw: <Id.KW_If if> arms: [ (IfArm keyword: <Id.KW_If if> cond: (condition.Shell commands: [ (command.Simple blame_tok: <test> more_env: [] words: [{<test>} {<-d>} {<'/lib32'>}] redirects: [] do_fork: T ) ] ) then_kw: <Id.KW_Then then> action: [ (command.ShAssignment left: <Id.Lit_VarLike 'libpath='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'libpath='> lhs: (sh_lhs_expr.Name left: <Id.Lit_VarLike 'libpath='> name: libpath ) op: assign_op.Equal rhs: { (DQ <'lib32:LD_LIBRARYN32_PATH:sgi.mips3|sgi.*-n32,'> ($ Id.VSub_DollarName libpath) ) } ) ] redirects: [] ) ] spids: [222 231] ) ] else_action: [] fi_kw: <Id.KW_Fi fi> redirects: [] ) (command.If if_kw: <Id.KW_If if> arms: [ (IfArm keyword: <Id.KW_If if> cond: (condition.Shell commands: [ (command.Simple blame_tok: <test> more_env: [] words: [{<test>} {<-d>} {<'/lib64'>}] redirects: [] do_fork: T ) ] ) then_kw: <Id.KW_Then then> action: [ (command.ShAssignment left: <Id.Lit_VarLike 'libpath='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'libpath='> lhs: (sh_lhs_expr.Name left: <Id.Lit_VarLike 'libpath='> name: libpath ) op: assign_op.Equal rhs: { (DQ <'lib64:LD_LIBRARY64_PATH:sgi.mips[4-9]|sgi.*-64,'> ($ Id.VSub_DollarName libpath) ) } ) ] redirects: [] ) ] spids: [243 252] ) ] else_action: [] fi_kw: <Id.KW_Fi fi> redirects: [] ) ] right: <Id.Op_DSemi _> ) (CaseArm left: <sol> pattern: (pat.Words words:[{<sol> <Id.Lit_Star '*'> <.> <Id.Lit_Star '*'>}]) middle: <Id.Right_CasePat _> action: [ (command.If if_kw: <Id.KW_If if> arms: [ (IfArm keyword: <Id.KW_If if> cond: (condition.Shell commands: [ (command.Simple blame_tok: <test> more_env: [] words: [{<test>} {<-d>} {<'/lib/32'>}] redirects: [] do_fork: T ) ] ) then_kw: <Id.KW_Then then> action: [ (command.ShAssignment left: <Id.Lit_VarLike 'libpath='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'libpath='> lhs: (sh_lhs_expr.Name left: <Id.Lit_VarLike 'libpath='> name: libpath ) op: assign_op.Equal rhs: { (DQ <'lib/32:LD_LIBRARY_PATH_32,'> ($ Id.VSub_DollarName libpath) ) } ) ] redirects: [] ) ] spids: [273 282] ) ] else_action: [] fi_kw: <Id.KW_Fi fi> redirects: [] ) (command.If if_kw: <Id.KW_If if> arms: [ (IfArm keyword: <Id.KW_If if> cond: (condition.Shell commands: [ (command.Simple blame_tok: <test> more_env: [] words: [{<test>} {<-d>} {<'/lib/64'>}] redirects: [] do_fork: T ) ] ) then_kw: <Id.KW_Then then> action: [ (command.ShAssignment left: <Id.Lit_VarLike 'libpath='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'libpath='> lhs: (sh_lhs_expr.Name left: <Id.Lit_VarLike 'libpath='> name: libpath ) op: assign_op.Equal rhs: { (DQ <'lib/64:LD_LIBRARY_PATH_64:sol.*64*,'> ($ Id.VSub_DollarName libpath) ) } ) ] redirects: [] ) ] spids: [294 303] ) ] else_action: [] fi_kw: <Id.KW_Fi fi> redirects: [] ) ] right: <Id.Op_DSemi _> ) ] arms_end: <Id.KW_Esac esac> redirects: [] ) ] spids: [184 199] ) (IfArm keyword: <Id.KW_Elif elif> cond: (condition.Shell commands: [ (command.Simple blame_tok: <test> more_env: [] words: [{<test>} {<-x>} {<'/lib/dld.sl'>}] redirects: [] do_fork: T ) ] ) then_kw: <Id.KW_Then then> action: [ (command.ShAssignment left: <Id.Lit_VarLike 'libpath='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'libpath='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'libpath='> name:libpath) op: assign_op.Equal rhs: {<lib> <Id.Lit_Colon ':'> <SHLIB_PATH>} ) ] redirects: [] ) ] spids: [320 328] ) (IfArm keyword: <Id.KW_Elif elif> cond: (condition.Shell commands: [ (command.Simple blame_tok: <test> more_env: [] words: [{<test>} {<-x>} {<'/usr/lib/dyld'>}] redirects: [] do_fork: T ) ] ) then_kw: <Id.KW_Then then> action: [ (command.ShAssignment left: <Id.Lit_VarLike 'libpath='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'libpath='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'libpath='> name:libpath) op: assign_op.Equal rhs: {<lib> <Id.Lit_Colon ':'> <DYLD_LIBRARY_PATH>} ) ] redirects: [] ) ] spids: [335 343] ) ] else_kw: <Id.KW_Else else> else_action: [ (command.Case case_kw: <Id.KW_Case case> to_match: (case_arg.Word w: { (CommandSub left_token: <Id.Left_Backtick '`'> child: (command.Simple blame_tok: <package> more_env: [] words: [{<package>}] redirects: [] do_fork: T ) right: <Id.Backtick_Right '`'> ) } ) arms_start: <Id.KW_In in> arms: [ (CaseArm left: <ibm.> pattern: (pat.Words words:[{<ibm.> <Id.Lit_Star '*'>} {<mvs.> <Id.Lit_Star '*'>}]) middle: <Id.Right_CasePat _> action: [ (command.ShAssignment left: <Id.Lit_VarLike 'libpath='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'libpath='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'libpath='> name:libpath) op: assign_op.Equal rhs: {<lib> <Id.Lit_Colon ':'> <LIBPATH>} ) ] redirects: [] ) ] right: <Id.Op_DSemi _> ) (CaseArm left: <Id.Lit_Star '*'> pattern: (pat.Words words:[{<Id.Lit_Star '*'>}]) middle: <Id.Right_CasePat _> action: [ (command.ShAssignment left: <Id.Lit_VarLike 'libpath='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'libpath='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'libpath='> name:libpath) op: assign_op.Equal rhs: (rhs_word__Empty) ) ] redirects: [] ) ] right: <Id.Op_DSemi _> ) ] arms_end: <Id.KW_Esac esac> redirects: [] ) ] fi_kw: <Id.KW_Fi fi> redirects: [] ) (command.Case case_kw: <Id.KW_Case case> to_match: (case_arg.Word w:{($ Id.VSub_DollarName libpath)}) arms_start: <Id.KW_In in> arms: [ (CaseArm left: <Id.Left_SingleQuote '\''> pattern: (pat.Words words:[{(SQ )}]) middle: <Id.Right_CasePat _> action: [ (command.ShAssignment left: <Id.Lit_VarLike 'libpath='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'libpath='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'libpath='> name:libpath) op: assign_op.Equal rhs: {<bin>} ) ] redirects: [] ) ] right: <Id.Op_DSemi _> ) ] arms_end: <Id.KW_Esac esac> redirects: [] ) (command.Simple blame_tok: <echo> more_env: [] words: [ {<echo>} { (DQ <'#define CONF_LIBPATH\t'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'> ch:'"') ($ Id.VSub_DollarName libpath) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'> ch:'"') ) } ] redirects: [] do_fork: T ) ] )