(command.CommandList children: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(Lit_Other '[')} {(-z)} {(DQ ($ VSub_Number '$1'))} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} {(DQ ('Usage: ') ($ VSub_Number '$0') (' <libdir> <private_libdir>'))}) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [16777215 32] ) ] spids: [16777215 48] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:libdir spids:[51]) op: Equal rhs: {(DQ ($ VSub_Number '$1'))} spids: [51] ) ] spids: [51] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:private_libdir spids:[56]) op: Equal rhs: {(DQ ($ VSub_Number '$2'))} spids: [56] ) ] spids: [56] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(Lit_Other '[')} {(KW_Bang '!')} {(-f)} {(DQ ($ VSub_Name '$libdir') (/libjulia.so))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (command.SimpleCommand words: [{(echo)} {(DQ ('ERROR: Could not open ') ($ VSub_Name '$libdir') (/libjulia.so))}] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(2)}) ] spids: [16777215 78] ) ] spids: [16777215 97] ) (command.FuncDef name: find_shlib body: (command.BraceGroup children: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(Lit_Other '[')} {(-f)} {(DQ ($ VSub_Number '$1'))} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (command.Pipeline children: [ (C {(ldd)} {(DQ ($ VSub_Number '$1'))}) (C {(grep)} {($ VSub_Number '$2')}) (C {(cut)} {(-d) (SQ <' '>)} {(-f3)}) (C {(xargs)}) ] negated: F ) ] spids: [16777215 121] ) ] spids: [16777215 152] ) ] spids: [105] ) spids: [100 104] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:LIBSTD spids:[160]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(find_shlib)} {(DQ ($ VSub_Name '$libdir') (/libjulia.so))} {(DQ ('libstdc++.so'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [161 172] ) } spids: [160] ) ] spids: [160] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:LIBSTD_NAME spids:[174]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(basename)} {($ VSub_Name '$LIBSTD')})] ) left_token: <Left_CommandSub '$('> spids: [175 179] ) } spids: [174] ) ] spids: [174] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:LIBSTD_DIR spids:[181]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(dirname)} {($ VSub_Name '$LIBSTD')})] ) left_token: <Left_CommandSub '$('> spids: [182 186] ) } spids: [181] ) ] spids: [181] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.AndOr ops: [Op_DAmp] children: [ (C {(Lit_Other '[')} {(KW_Bang '!')} {(-f)} {(DQ ($ VSub_Name '$private_libdir') (/) ($ VSub_Name '$LIBSTD_NAME'))} {(Lit_Other ']')} ) (C {(Lit_Other '[')} {(-f)} {(DQ ($ VSub_Name '$LIBSTD_DIR') (/) ($ VSub_Name '$LIBSTD_NAME'))} {(Lit_Other ']')} ) ] ) terminator: <Op_Semi ';'> ) ] action: [ (C {(cp)} {(-v)} {(DQ ($ VSub_Name '$LIBSTD_DIR') (/) ($ VSub_Name '$LIBSTD_NAME'))} {(DQ ($ VSub_Name '$private_libdir'))} ) (C {(chmod)} {(755)} {(DQ ($ VSub_Name '$private_libdir') (/) ($ VSub_Name '$LIBSTD_NAME'))}) ] spids: [16777215 220] ) ] spids: [16777215 248] ) ] )