(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:PROGRAM) op: assign_op.Equal rhs: {<libtool>} spids: [227] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:PACKAGE) op: assign_op.Equal rhs: {<libtool>} spids: [230] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:VERSION) op: assign_op.Equal rhs: {<2.2.7a>} spids: [233] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:TIMESTAMP) op: assign_op.Equal rhs: {(DQ <' 1.3134 2009-11-29'>)} spids: [236] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:package_revision) op: assign_op.Equal rhs: {<1.3134>} spids: [241] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} { (DQ (braced_var_sub token: <Id.VSub_Name ZSH_VERSION> suffix_op: (suffix_op.Unary tok:<Id.VTest_Plus '+'> arg_word:{<set>}) ) ) } ) (command.Subshell child: (C {<emulate>} {<sh>}) redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<'/dev/null'>} ) (redir op: <Id.Redir_GreatAnd '2>&'> loc: (redir_loc.Fd fd:2) arg: {<1>} ) ] ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<emulate>} {<sh>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:NULLCMD) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [285] ) ] ) (C {<alias>} {<-g>} {(SQ <'${1+"$@"}'>) <Id.Lit_Equals '='> (SQ <'"$@"'>)}) (C {<setopt>} {<NO_GLOB_SUBST>}) ] spids: [248 277] ) ] else_action: [ (command.Case to_match: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Subshell child: (C {<set>} {<-o>}) redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] ) ) } arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <posix> <Id.Lit_Star '*'>}] action: [(C {<set>} {<-o>} {<posix>})] spids: [334 337 344 -1] ) ] ) ] ) (command.CommandList children: [ (command.Sentence child: (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:BIN_SH) op: assign_op.Equal rhs: {<xpg4>} spids: [350] ) ] ) terminator: <Id.Op_Semi _> ) (C {<export>} {<BIN_SH>}) ] ) (command.CommandList children: [ (command.Sentence child: (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:DUALCASE) op: assign_op.Equal rhs: {<1>} spids: [361] ) ] ) terminator: <Id.Op_Semi _> ) (C {<export>} {<DUALCASE>}) ] ) (command.ShFunction name: func_fallback_echo body: (BraceGroup children: [(C {<eval>} {(SQ <'cat <<_LTECHO_EOF\n'> <'$1\n'> <_LTECHO_EOF>)})] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lt_user_locale) op: assign_op.Equal rhs: (word.Empty) spids: [407] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lt_safe_locale) op: assign_op.Equal rhs: (word.Empty) spids: [409] ) ] ) (command.ForEach iter_name: lt_var iter_words: [{<LANG>} {<LANGUAGE>} {<LC_ALL>} {<LC_CTYPE>} {<LC_COLLATE>} {<LC_MESSAGES>}] do_arg_iter: F body: (command.DoGroup children: [ (C {<eval>} { (DQ <'if test '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'{'> ($ Id.VSub_DollarName '$lt_var') <'+set}'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' = set; then\n'> <' save_'> ($ Id.VSub_DollarName '$lt_var') <'='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) ($ Id.VSub_DollarName '$lt_var') <'\n'> <' '> ($ Id.VSub_DollarName '$lt_var') <'=C\n'> <'\t export '> ($ Id.VSub_DollarName '$lt_var') <'\n'> <'\t lt_user_locale='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ($ Id.VSub_DollarName '$lt_var') <'='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <save_> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'lt_var; '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <lt_user_locale> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'\n'> <'\t lt_safe_locale='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ($ Id.VSub_DollarName '$lt_var') <'=C; '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <lt_safe_locale> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'\n'> <'\tfi'> ) } ) ] ) ) (C {($ Id.VSub_DollarName '$lt_unset')} {<CDPATH>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:progpath) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$0'))} spids: [508] ) ] ) (C {<Id.Lit_Colon ':'>} { (braced_var_sub token: <Id.VSub_Name CP> suffix_op: (suffix_op.Unary tok:<Id.VTest_Equals '='> arg_word:{(DQ <'cp -f'>)}) ) } ) (C {<Id.Lit_Colon ':'>} { (braced_var_sub token: <Id.VSub_Name ECHO> suffix_op: (suffix_op.Unary tok: <Id.VTest_Equals '='> arg_word: {($ Id.VSub_DollarName '$as_echo')} ) ) } ) (C {<Id.Lit_Colon ':'>} { (braced_var_sub token: <Id.VSub_Name EGREP> suffix_op: (suffix_op.Unary tok:<Id.VTest_Equals '='> arg_word:{(DQ <'/bin/grep -E'>)}) ) } ) (C {<Id.Lit_Colon ':'>} { (braced_var_sub token: <Id.VSub_Name FGREP> suffix_op: (suffix_op.Unary tok:<Id.VTest_Equals '='> arg_word:{(DQ <'/bin/grep -F'>)}) ) } ) (C {<Id.Lit_Colon ':'>} { (braced_var_sub token: <Id.VSub_Name GREP> suffix_op: (suffix_op.Unary tok:<Id.VTest_Equals '='> arg_word:{(DQ <'/bin/grep'>)}) ) } ) (C {<Id.Lit_Colon ':'>} { (braced_var_sub token: <Id.VSub_Name LN_S> suffix_op: (suffix_op.Unary tok:<Id.VTest_Equals '='> arg_word:{(DQ <'ln -s'>)}) ) } ) (C {<Id.Lit_Colon ':'>} { (braced_var_sub token: <Id.VSub_Name MAKE> suffix_op: (suffix_op.Unary tok:<Id.VTest_Equals '='> arg_word:{(DQ <make>)}) ) } ) (C {<Id.Lit_Colon ':'>} { (braced_var_sub token: <Id.VSub_Name MKDIR> suffix_op: (suffix_op.Unary tok:<Id.VTest_Equals '='> arg_word:{(DQ <mkdir>)}) ) } ) (C {<Id.Lit_Colon ':'>} { (braced_var_sub token: <Id.VSub_Name MV> suffix_op: (suffix_op.Unary tok:<Id.VTest_Equals '='> arg_word:{(DQ <'mv -f'>)}) ) } ) (C {<Id.Lit_Colon ':'>} { (braced_var_sub token: <Id.VSub_Name RM> suffix_op: (suffix_op.Unary tok:<Id.VTest_Equals '='> arg_word:{(DQ <'rm -f'>)}) ) } ) (C {<Id.Lit_Colon ':'>} { (braced_var_sub token: <Id.VSub_Name SED> suffix_op: (suffix_op.Unary tok: <Id.VTest_Equals '='> arg_word: {(DQ <'/mount/endor/wildenhu/local-x86_64/bin/sed'>)} ) ) } ) (C {<Id.Lit_Colon ':'>} { (braced_var_sub token: <Id.VSub_Name SHELL> suffix_op: (suffix_op.Unary tok: <Id.VTest_Equals '='> arg_word: { (DQ (braced_var_sub token: <Id.VSub_Name CONFIG_SHELL> suffix_op: (suffix_op.Unary tok: <Id.VTest_Hyphen -> arg_word: {<Id.Lit_Slash '/'> <bin> <Id.Lit_Slash '/'> <sh>} ) ) ) } ) ) } ) (C {<Id.Lit_Colon ':'>} { (braced_var_sub token: <Id.VSub_Name Xsed> suffix_op: (suffix_op.Unary tok: <Id.VTest_Equals '='> arg_word: {(DQ ($ Id.VSub_DollarName '$SED') <' -e 1s/^X//'>)} ) ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:EXIT_SUCCESS) op: assign_op.Equal rhs: {<0>} spids: [656] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:EXIT_FAILURE) op: assign_op.Equal rhs: {<1>} spids: [659] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:EXIT_MISMATCH) op: assign_op.Equal rhs: {<63>} spids: [662] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:EXIT_SKIP) op: assign_op.Equal rhs: {<77>} spids: [668] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:exit_status) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$EXIT_SUCCESS')} spids: [675] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lt_nl) op: assign_op.Equal rhs: {(SQ <'\n'>)} spids: [682] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(DQ <' \t'> ($ Id.VSub_DollarName '$lt_nl'))} spids: [687] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dirname) op: assign_op.Equal rhs: {(DQ <'s,/[^/]*'> <Id.Lit_Dollar '$'> <',,'>)} spids: [694] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:basename) op: assign_op.Equal rhs: {(DQ <'s,^.*/,,'>)} spids: [701] ) ] ) (command.ShFunction name: func_dirname_and_basename body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_dirname_result) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ (${ Id.VSub_Number 1))}) (C {($ Id.VSub_DollarName '$SED')} {<-e>} {(DQ ($ Id.VSub_DollarName '$dirname'))} ) ] negated: F ) ) } spids: [755] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$func_dirname_result'))} {<Id.Lit_Equals '='>} {(DQ <X> (${ Id.VSub_Number 1))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_dirname_result) op: assign_op.Equal rhs: {(DQ (${ Id.VSub_Number 3))} spids: [801] ) ] ) ] spids: [779 798] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_dirname_result) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_dirname_result') (${ Id.VSub_Number 2))} spids: [812] ) ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_basename_result) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ (${ Id.VSub_Number 1))}) (C {($ Id.VSub_DollarName '$SED')} {<-e>} {(DQ ($ Id.VSub_DollarName '$basename'))} ) ] negated: F ) ) } spids: [824] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pathcar) op: assign_op.Equal rhs: {(SQ <'s,^/\\([^/]*\\).*$,\\1,'>)} spids: [857] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pathcdr) op: assign_op.Equal rhs: {(SQ <'s,^/[^/]*,,'>)} spids: [862] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:removedotparts) op: assign_op.Equal rhs: {(SQ <':dotsl\n'> <'\t\ts@/\\./@/@g\n'> <'\t\tt dotsl\n'> <'\t\ts,/\\.$,/,'>)} spids: [867] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:collapseslashes) op: assign_op.Equal rhs: {(SQ <'s@/\\{1,\\}@/@g'>)} spids: [875] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalslash) op: assign_op.Equal rhs: {(SQ <'s,/*$,/,'>)} spids: [880] ) ] ) (command.ShFunction name: func_normal_abspath body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_normal_abspath_result) op: assign_op.Equal rhs: (word.Empty) spids: [913] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_normal_abspath_tpath) op: assign_op.Equal rhs: {($ Id.VSub_Number '$1')} spids: [916] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_normal_abspath_altnamespace) op: assign_op.Equal rhs: (word.Empty) spids: [920] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$func_normal_abspath_tpath')} arms: [ (case_arm pat_list: [{(DQ )}] action: [ (C {<func_stripname>} {(SQ )} {(SQ <'/'>)} {(DQ (command_sub left_token:<Id.Left_Backtick '`'> child:(C {<pwd>})))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_normal_abspath_result) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [957] ) ] ) (command.ControlFlow token:<Id.ControlFlow_Return return>) ] spids: [930 932 964 -1] ) (case_arm pat_list: [{<'///'> <Id.Lit_Star '*'>}] spids: [979 981 988 -1] ) (case_arm pat_list: [{<'//'> <Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_normal_abspath_altnamespace) op: assign_op.Equal rhs: {<'/'>} spids: [1008] ) ] ) ] spids: [991 993 1012 -1] ) (case_arm pat_list: [{<'/'> <Id.Lit_Star '*'>}] spids: [1015 1017 1024 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_normal_abspath_tpath) op: assign_op.Equal rhs: {(command_sub left_token:<Id.Left_Backtick '`'> child:(C {<pwd>})) <'/'> ($ Id.VSub_DollarName '$func_normal_abspath_tpath') } spids: [1035] ) ] ) ] spids: [1027 1028 1045 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_normal_abspath_tpath) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_DollarName '$func_normal_abspath_tpath'))} ) (C {($ Id.VSub_DollarName '$SED')} {<-e>} {(DQ ($ Id.VSub_DollarName '$removedotparts'))} {<-e>} {(DQ ($ Id.VSub_DollarName '$collapseslashes'))} {<-e>} {(DQ ($ Id.VSub_DollarName '$finalslash'))} ) ] negated: F ) ) } spids: [1063] ) ] ) (command.WhileUntil keyword: <Id.KW_While while> cond: (condition.Shell commands: [ (command.Sentence child: (C {<Id.Lit_Colon ':'>}) terminator: <Id.Op_Semi _> ) ] ) body: (command.DoGroup children: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$func_normal_abspath_tpath'))} {<Id.Lit_Equals '='>} {<'/'>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$func_normal_abspath_result') ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_normal_abspath_result) op: assign_op.Equal rhs: {<'/'>} spids: [1150] ) ] ) ] spids: [1135 1147] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Break break> ) ] spids: [1114 1128] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_normal_abspath_tcomponent) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_DollarName '$func_normal_abspath_tpath'))} ) (C {($ Id.VSub_DollarName '$SED')} {<-e>} {(DQ ($ Id.VSub_DollarName '$pathcar'))} ) ] negated: F ) ) } spids: [1163] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_normal_abspath_tpath) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_DollarName '$func_normal_abspath_tpath'))} ) (C {($ Id.VSub_DollarName '$SED')} {<-e>} {(DQ ($ Id.VSub_DollarName '$pathcdr'))} ) ] negated: F ) ) } spids: [1190] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$func_normal_abspath_tcomponent')} arms: [ (case_arm pat_list: [{(DQ )}] spids: [1228 1230 1237 -1] ) (case_arm pat_list: [{<..>}] action: [ (C {<func_dirname>} {(DQ ($ Id.VSub_DollarName '$func_normal_abspath_result'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_normal_abspath_result) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_dirname_result')} spids: [1255] ) ] ) ] spids: [1240 1241 1259 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_normal_abspath_result) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_normal_abspath_result') <'/'> ($ Id.VSub_DollarName '$func_normal_abspath_tcomponent') } spids: [1270] ) ] ) ] spids: [1262 1263 1276 -1] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_normal_abspath_result) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_normal_abspath_altnamespace') ($ Id.VSub_DollarName '$func_normal_abspath_result') } spids: [1289] ) ] ) ] ) ) (command.ShFunction name: func_relative_path body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_relative_path_result) op: assign_op.Equal rhs: (word.Empty) spids: [1319] ) ] ) (C {<func_normal_abspath>} {(DQ ($ Id.VSub_Number '$1'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_relative_path_tlibdir) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_normal_abspath_result')} spids: [1329] ) ] ) (C {<func_normal_abspath>} {(DQ ($ Id.VSub_Number '$2'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_relative_path_tbindir) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_normal_abspath_result')} spids: [1340] ) ] ) (command.WhileUntil keyword: <Id.KW_While while> cond: (condition.Shell commands: [ (command.Sentence child: (C {<Id.Lit_Colon ':'>}) terminator: <Id.Op_Semi _> ) ] ) body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$func_relative_path_tbindir')} arms: [ (case_arm pat_list: [{($ Id.VSub_DollarName '$func_relative_path_tlibdir')}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_relative_path_tcancelled) op: assign_op.Equal rhs: (word.Empty) spids: [1376] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Break break> ) ] spids: [1368 1369 1382 -1] ) (case_arm pat_list: [ {($ Id.VSub_DollarName '$func_relative_path_tlibdir') <Id.Lit_Star '*'>} ] action: [ (C {<func_stripname>} {(DQ ($ Id.VSub_DollarName '$func_relative_path_tlibdir'))} {(SQ )} {(DQ ($ Id.VSub_DollarName '$func_relative_path_tbindir'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_relative_path_tcancelled) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [1408] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$func_relative_path_result') ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_relative_path_result) op: assign_op.Equal rhs: {<.>} spids: [1426] ) ] ) ] spids: [1412 1423] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Break break> ) ] spids: [1385 1387 1436 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<func_dirname>} {($ Id.VSub_DollarName '$func_relative_path_tlibdir')}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_relative_path_tlibdir) op: assign_op.Equal rhs: {(${ Id.VSub_Name func_dirname_result)} spids: [1448] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ <x> ($ Id.VSub_DollarName '$func_relative_path_tlibdir') ) } {<Id.Lit_Equals '='>} {<x>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_relative_path_result) op: assign_op.Equal rhs: {<'../'> ($ Id.VSub_DollarName '$func_relative_path_result') } spids: [1476] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_relative_path_tcancelled) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_relative_path_tbindir')} spids: [1481] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Break break> ) ] spids: [1454 1469] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_relative_path_result) op: assign_op.Equal rhs: {<'../'> ($ Id.VSub_DollarName '$func_relative_path_result')} spids: [1491] ) ] ) ] spids: [1439 1440 1496 -1] ) ] ) ] ) ) (C {<func_stripname>} {(SQ )} {(SQ <'/'>)} {(DQ ($ Id.VSub_DollarName '$func_relative_path_result'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_relative_path_result) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [1524] ) ] ) (C {<func_stripname>} {(SQ <'/'>)} {(SQ <'/'>)} {(DQ ($ Id.VSub_DollarName '$func_relative_path_tcancelled'))} ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ <x> ($ Id.VSub_DollarName '$func_stripname_result'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<x>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_relative_path_result) op: assign_op.Equal rhs: {(${ Id.VSub_Name func_relative_path_result) <'/'> (${ Id.VSub_Name func_stripname_result) } spids: [1562] ) ] ) ] spids: [1543 1559] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<Id.KW_Bang '!'>} {<-z>} {(DQ ($ Id.VSub_DollarName '$func_relative_path_result'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_stripname>} {(SQ <'./'>)} {(SQ )} {(DQ ($ Id.VSub_DollarName '$func_relative_path_result') <'/'>)} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_relative_path_result) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [1619] ) ] ) ] spids: [1588 1601] ) ] ) ] ) ) (C {<func_dirname_and_basename>} {(DQ ($ Id.VSub_DollarName '$progpath'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:progname) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_basename_result')} spids: [1637] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$progpath')} arms: [ (case_arm pat_list: [ {<Id.Lit_LBracket '['> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) <'/'> <Id.Lit_RBracket ']'> <Id.Lit_Star '*'> } {<Id.Lit_LBracket '['> <A-Za-z> <Id.Lit_RBracket ']'> <Id.Lit_Colon ':'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) <Id.Lit_Star '*'> } ] spids: [1651 1663 1665 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'> <Id.Lit_LBracket '['> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) <'/'> <Id.Lit_RBracket ']'> <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:progdir) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_dirname_result')} spids: [1677] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:progdir) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.AndOr ops: [Id.Op_DAmp] children: [(C {<cd>} {(DQ ($ Id.VSub_DollarName '$progdir'))}) (C {<pwd>})] ) ) } spids: [1681] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:progpath) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$progdir') <'/'> ($ Id.VSub_DollarName '$progname'))} spids: [1697] ) ] ) ] spids: [1668 1674 1705 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:save_IFS) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$IFS'))} spids: [1712] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [1718] ) ] ) (command.ForEach iter_name: progdir iter_words: [{($ Id.VSub_DollarName '$PATH')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$save_IFS'))} spids: [1734] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-x>} { (DQ ($ Id.VSub_DollarName '$progdir') <'/'> ($ Id.VSub_DollarName '$progname') ) } ) (command.ControlFlow token: <Id.ControlFlow_Break break> ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$save_IFS'))} spids: [1758] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$progdir'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:progdir) op: assign_op.Equal rhs: {(command_sub left_token:<Id.Left_Backtick '`'> child:(C {<pwd>}))} spids: [1774] ) ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:progpath) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$progdir') <'/'> ($ Id.VSub_DollarName '$progname'))} spids: [1782] ) ] ) ] spids: [1708 1709 1790 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:Xsed) op: assign_op.Equal rhs: {(DQ (${ Id.VSub_Name SED)) (SQ <' -e 1s/^X//'>)} spids: [1801] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:sed_quote_subst) op: assign_op.Equal rhs: {(SQ <'s/\\([`"$\\\\]\\)/\\\\\\1/g'>)} spids: [1811] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:double_quote_subst) op: assign_op.Equal rhs: {(SQ <'s/\\(["`\\\\]\\)/\\\\\\1/g'>)} spids: [1820] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:bs) op: assign_op.Equal rhs: {(SQ <'\\\\'>)} spids: [1841] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:bs2) op: assign_op.Equal rhs: {(SQ <'\\\\\\\\'>)} spids: [1846] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:bs4) op: assign_op.Equal rhs: {(SQ <'\\\\\\\\\\\\\\\\'>)} spids: [1851] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dollar) op: assign_op.Equal rhs: {(SQ <'\\$'>)} spids: [1856] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:sed_double_backslash) op: assign_op.Equal rhs: { (DQ <' s/'> ($ Id.VSub_DollarName '$bs4') <'/&'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) <'\n'> <'/g\n'> <' s/^'> ($ Id.VSub_DollarName '$bs2') ($ Id.VSub_DollarName '$dollar') <'/'> ($ Id.VSub_DollarName '$bs') <'&/\n'> <' s/'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) <'([^'> ($ Id.VSub_DollarName '$bs') <']'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) <')'> ($ Id.VSub_DollarName '$bs2') ($ Id.VSub_DollarName '$dollar') <'/'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) <1> ($ Id.VSub_DollarName '$bs2') ($ Id.VSub_DollarName '$bs') ($ Id.VSub_DollarName '$dollar') <'/g\n'> <' s/'> <Id.Lit_BadBackslash '\\'> <'n//g'> ) } spids: [1861] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_dry_run) op: assign_op.Equal rhs: {<false>} spids: [1901] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_help) op: assign_op.Equal rhs: {<false>} spids: [1904] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_quiet) op: assign_op.Equal rhs: {<false>} spids: [1907] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_verbose) op: assign_op.Equal rhs: {<false>} spids: [1910] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_warning) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [1913] ) ] ) (command.ShFunction name: func_echo body: (BraceGroup children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ ($ Id.VSub_DollarName '$progname') (braced_var_sub token: <Id.VSub_Name mode> suffix_op: (suffix_op.Unary tok:<Id.VTest_Plus '+'> arg_word:{<': '>}) ) ($ Id.VSub_DollarName '$mode') <': '> ($ Id.VSub_Star '$*') ) } ) ] ) ) (command.ShFunction name: func_verbose body: (BraceGroup children: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {($ Id.VSub_DollarName '$opt_verbose')}) (C {<func_echo>} { (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_Plus '+'> arg_word: {(DQ ($ Id.VSub_At '$@'))} ) ) } ) ] ) (C {<Id.Lit_Colon ':'>}) ] ) ) (command.ShFunction name: func_echo_all body: (BraceGroup children:[(C {($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_Star '$*'))})]) ) (command.ShFunction name: func_error body: (BraceGroup children: [ (command.Simple words: [ {($ Id.VSub_DollarName '$ECHO')} { (DQ ($ Id.VSub_DollarName '$progname') (braced_var_sub token: <Id.VSub_Name mode> suffix_op: (suffix_op.Unary tok:<Id.VTest_Plus '+'> arg_word:{<': '>}) ) ($ Id.VSub_DollarName '$mode') <': '> ) (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_Plus '+'> arg_word: {(DQ ($ Id.VSub_At '$@'))} ) ) } ] redirects: [(redir op:<Id.Redir_GreatAnd '1>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})] do_fork: T ) ] ) ) (command.ShFunction name: func_warning body: (BraceGroup children: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {($ Id.VSub_DollarName '$opt_warning')}) (command.Simple words: [ {($ Id.VSub_DollarName '$ECHO')} { (DQ ($ Id.VSub_DollarName '$progname') (braced_var_sub token: <Id.VSub_Name mode> suffix_op: (suffix_op.Unary tok:<Id.VTest_Plus '+'> arg_word:{<': '>}) ) ($ Id.VSub_DollarName '$mode') <': warning: '> ) (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_Plus '+'> arg_word: {(DQ ($ Id.VSub_At '$@'))} ) ) } ] redirects: [(redir op:<Id.Redir_GreatAnd '1>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})] do_fork: T ) ] ) (C {<Id.Lit_Colon ':'>}) ] ) ) (command.ShFunction name: func_fatal_error body: (BraceGroup children: [ (C {<func_error>} { (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_Plus '+'> arg_word: {(DQ ($ Id.VSub_At '$@'))} ) ) } ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_FAILURE')} ) ] ) ) (command.ShFunction name: func_fatal_help body: (BraceGroup children: [ (C {<func_error>} { (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_Plus '+'> arg_word: {(DQ ($ Id.VSub_At '$@'))} ) ) } ) (C {<func_fatal_error>} {(DQ ($ Id.VSub_DollarName '$help'))}) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:help) op: assign_op.Equal rhs: { (DQ <'Try '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$progname') <' --help\' for more information.'> ) } spids: [2181] ) ] ) (command.ShFunction name: func_grep body: (BraceGroup children: [ (command.Simple words: [ {($ Id.VSub_DollarName '$GREP')} {(DQ ($ Id.VSub_Number '$1'))} {(DQ ($ Id.VSub_Number '$2'))} ] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<'/dev/null'>} ) (redir op:<Id.Redir_GreatAnd '2>&'> loc:(redir_loc.Fd fd:2) arg:{<1>}) ] do_fork: T ) ] ) ) (command.ShFunction name: func_mkdir_p body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_directory_path) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [2242] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_dir_list) op: assign_op.Equal rhs: (word.Empty) spids: [2248] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$my_directory_path'))}) (C {<test>} {(DQ ($ Id.VSub_DollarName '$opt_dry_run'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ <':'>)} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: {($ Id.VSub_DollarName '$my_directory_path')} arms: [ (case_arm pat_list: [{<-> <Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_directory_path) op: assign_op.Equal rhs: {(DQ <'./'> ($ Id.VSub_DollarName '$my_directory_path'))} spids: [2297] ) ] ) ] spids: [2293 2295 2303 -1] ) ] ) (command.WhileUntil keyword: <Id.KW_While while> cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<Id.KW_Bang '!'>} {<-d>} {(DQ ($ Id.VSub_DollarName '$my_directory_path'))} ) terminator: <Id.Op_Semi _> ) ] ) body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_dir_list) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$my_directory_path') <':'> ($ Id.VSub_DollarName '$my_dir_list') ) } spids: [2338] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$my_directory_path')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <'/'> <Id.Lit_Star '*'>}] spids: [2357 2360 2362 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [(command.ControlFlow token:<Id.ControlFlow_Break break>)] spids: [2364 2365 2369 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_directory_path) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_DollarName '$my_directory_path'))} ) (C {($ Id.VSub_DollarName '$SED')} {<-e>} {(DQ ($ Id.VSub_DollarName '$dirname'))} ) ] negated: F ) ) } spids: [2379] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_dir_list) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_DollarName '$my_dir_list'))} ) (C {($ Id.VSub_DollarName '$SED')} {(SQ <'s,:*$,,'>)}) ] negated: F ) ) } spids: [2404] ) ] ) (command.Sentence child: (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:save_mkdir_p_IFS) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$IFS'))} spids: [2425] ) ] ) terminator: <Id.Op_Semi _> ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(SQ <':'>)} spids: [2431] ) ] ) (command.ForEach iter_name: my_dir iter_words: [{($ Id.VSub_DollarName '$my_dir_list')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$save_mkdir_p_IFS'))} spids: [2449] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (command.Simple words: [ {($ Id.VSub_DollarName '$MKDIR')} {(DQ ($ Id.VSub_DollarName '$my_dir'))} ] redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) (C {<Id.Lit_Colon ':'>}) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$save_mkdir_p_IFS'))} spids: [2484] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {<-d>} {(DQ ($ Id.VSub_DollarName '$my_directory_path'))}) (C {<func_fatal_error>} { (DQ <'Failed to create '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_Number '$1') <'\''> ) } ) ] ) ] spids: [2252 2278] ) ] ) ] ) ) (command.ShFunction name: func_mktempdir body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_template) op: assign_op.Equal rhs: { (DQ (braced_var_sub token: <Id.VSub_Name TMPDIR> suffix_op: (suffix_op.Unary tok: <Id.VTest_Hyphen -> arg_word: {<Id.Lit_Slash '/'> <tmp>} ) ) <'/'> (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_Hyphen -> arg_word: {($ Id.VSub_DollarName '$progname')} ) ) ) } spids: [2543] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$opt_dry_run'))} {<Id.Lit_Equals '='>} {(DQ <':'>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_tmpdir) op: assign_op.Equal rhs: {(DQ (${ Id.VSub_Name my_template) <-> ($ Id.VSub_Dollar '$$'))} spids: [2583] ) ] ) ] spids: [2561 2576] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_tmpdir) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Simple words: [ {<mktemp>} {<-d>} {(DQ (${ Id.VSub_Name my_template) <-XXXXXXXX>)} ] redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) ) } spids: [2601] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<Id.KW_Bang '!'>} {<-d>} {(DQ ($ Id.VSub_DollarName '$my_tmpdir'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_tmpdir) op: assign_op.Equal rhs: { (DQ (${ Id.VSub_Name my_template) <-> (braced_var_sub token: <Id.VSub_Name RANDOM> suffix_op: (suffix_op.Unary tok: <Id.VTest_Hyphen -> arg_word: {<0>} ) ) ($ Id.VSub_Dollar '$$') ) } spids: [2642] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:save_mktempdir_umask) op: assign_op.Equal rhs: {(command_sub left_token:<Id.Left_Backtick '`'> child:(C {<umask>}))} spids: [2658] ) ] ) (C {<umask>} {<0077>}) (C {($ Id.VSub_DollarName '$MKDIR')} {(DQ ($ Id.VSub_DollarName '$my_tmpdir'))}) (C {<umask>} {($ Id.VSub_DollarName '$save_mktempdir_umask')}) ] spids: [2622 2635] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {<-d>} {(DQ ($ Id.VSub_DollarName '$my_tmpdir'))}) (C {<func_fatal_error>} { (DQ <'cannot create temporary directory '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$my_tmpdir') <'\''> ) } ) ] ) ] ) (C {($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_DollarName '$my_tmpdir'))}) ] ) ) (command.ShFunction name: func_quote_for_eval body: (BraceGroup children: [ (command.Case to_match: {($ Id.VSub_Number '$1')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <Id.Lit_LBracket '['> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\\\'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <Id.Lit_RBracket ']'> <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_quote_for_eval_unquoted_result) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_Number '$1'))}) (C {($ Id.VSub_DollarName '$SED')} {(DQ ($ Id.VSub_DollarName '$sed_quote_subst'))} ) ] negated: F ) ) } spids: [2771] ) ] ) ] spids: [2760 2768 2790 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_quote_for_eval_unquoted_result) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [2797] ) ] ) ] spids: [2793 2794 2802 -1] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$func_quote_for_eval_unquoted_result')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <Id.Lit_LBracket '['> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\['> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\~'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\#'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\^'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\&'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\*'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\('> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\)'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\{'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\}'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\|'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\;'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\<'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\>'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\?'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\''>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\ '> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\t'>) <Id.Lit_RBracket ']'> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <Id.Lit_RBracket ']'> <Id.Lit_Star '*'>} {(DQ )} ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_quote_for_eval_result) op: assign_op.Equal rhs: { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ($ Id.VSub_DollarName '$func_quote_for_eval_unquoted_result') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ) } spids: [2868] ) ] ) ] spids: [2836 2865 2876 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_quote_for_eval_result) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_quote_for_eval_unquoted_result'))} spids: [2883] ) ] ) ] spids: [2879 2880 -1 2889] ) ] ) ] ) ) (command.ShFunction name: func_quote_for_expand body: (BraceGroup children: [ (command.Case to_match: {($ Id.VSub_Number '$1')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <Id.Lit_LBracket '['> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\\\'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) <Id.Lit_RBracket ']'> <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_arg) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_Number '$1'))}) (C {($ Id.VSub_DollarName '$SED')} {<-e>} {(DQ ($ Id.VSub_DollarName '$double_quote_subst'))} {<-e>} {(DQ ($ Id.VSub_DollarName '$sed_double_backslash'))} ) ] negated: F ) ) } spids: [2929] ) ] ) ] spids: [2919 2926 2961 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_arg) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [2968] ) ] ) ] spids: [2964 2965 2973 -1] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$my_arg')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <Id.Lit_LBracket '['> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\['> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\~'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\#'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\^'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\&'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\*'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\('> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\)'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\{'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\}'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\|'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\;'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\<'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\>'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\?'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\''>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\ '> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\t'>) <Id.Lit_RBracket ']'> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <Id.Lit_RBracket ']'> <Id.Lit_Star '*'>} {(DQ )} ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_arg) op: assign_op.Equal rhs: { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ($ Id.VSub_DollarName '$my_arg') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ) } spids: [3035] ) ] ) ] spids: [3003 3032 3043 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_quote_for_expand_result) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$my_arg'))} spids: [3050] ) ] ) ] ) ) (command.ShFunction name: func_show_eval body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_cmd) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [3079] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_fail_exp) op: assign_op.Equal rhs: { (DQ (braced_var_sub token: <Id.VSub_Number 2> suffix_op: (suffix_op.Unary tok:<Id.VTest_Hyphen -> arg_word:{<':'>}) ) ) } spids: [3085] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C { (braced_var_sub token: <Id.VSub_Name opt_silent> suffix_op: (suffix_op.Unary tok:<Id.VTest_Hyphen -> arg_word:{<false>}) ) } ) (BraceGroup children: [ (C {<func_quote_for_expand>} {(DQ ($ Id.VSub_DollarName '$my_cmd'))}) (C {<eval>} {(DQ <'func_echo '> ($ Id.VSub_DollarName '$func_quote_for_expand_result'))} ) ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C { (braced_var_sub token: <Id.VSub_Name opt_dry_run> suffix_op: (suffix_op.Unary tok: <Id.VTest_Hyphen -> arg_word: {<false>} ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [3126 3135] ) ] else_action: [ (C {<eval>} {(DQ ($ Id.VSub_DollarName '$my_cmd'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_status) op: assign_op.Equal rhs: {($ Id.VSub_QMark '$?')} spids: [3150] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$my_status'))} {<-eq>} {<0>}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<Id.Lit_Colon ':'>}) terminator: <Id.Op_Semi _> ) ] spids: [3154 3167] ) ] else_action: [ (C {<eval>} { (DQ <'(exit '> ($ Id.VSub_DollarName '$my_status') <'); '> ($ Id.VSub_DollarName '$my_fail_exp') ) } ) ] ) ] ) ] ) ) (command.ShFunction name: func_show_eval_locale body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_cmd) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [3214] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_fail_exp) op: assign_op.Equal rhs: { (DQ (braced_var_sub token: <Id.VSub_Number 2> suffix_op: (suffix_op.Unary tok:<Id.VTest_Hyphen -> arg_word:{<':'>}) ) ) } spids: [3220] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C { (braced_var_sub token: <Id.VSub_Name opt_silent> suffix_op: (suffix_op.Unary tok:<Id.VTest_Hyphen -> arg_word:{<false>}) ) } ) (BraceGroup children: [ (C {<func_quote_for_expand>} {(DQ ($ Id.VSub_DollarName '$my_cmd'))}) (C {<eval>} {(DQ <'func_echo '> ($ Id.VSub_DollarName '$func_quote_for_expand_result'))} ) ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C { (braced_var_sub token: <Id.VSub_Name opt_dry_run> suffix_op: (suffix_op.Unary tok: <Id.VTest_Hyphen -> arg_word: {<false>} ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [(command.Sentence child:(C {<Id.Lit_Colon ':'>}) terminator:<Id.Op_Semi _>)] spids: [3261 3270] ) ] else_action: [ (C {<eval>} { (DQ ($ Id.VSub_DollarName '$lt_user_locale') <'\n'> <'\t '> ($ Id.VSub_DollarName '$my_cmd') ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_status) op: assign_op.Equal rhs: {($ Id.VSub_QMark '$?')} spids: [3288] ) ] ) (C {<eval>} {(DQ ($ Id.VSub_DollarName '$lt_safe_locale'))}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$my_status'))} {<-eq>} {<0>}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<Id.Lit_Colon ':'>}) terminator: <Id.Op_Semi _> ) ] spids: [3299 3312] ) ] else_action: [ (C {<eval>} { (DQ <'(exit '> ($ Id.VSub_DollarName '$my_status') <'); '> ($ Id.VSub_DollarName '$my_fail_exp') ) } ) ] ) ] ) ] ) ) (command.ShFunction name: func_version body: (BraceGroup children: [ (command.Simple words: [ {($ Id.VSub_DollarName '$SED')} {<-n>} { (SQ <'/(C)/!b go\n'> <'\t:more\n'> <'\t/\\./!{\n'> <'\t N\n'> <'\t s/\\n# //\n'> <'\t b more\n'> <'\t}\n'> <'\t:go\n'> <'\t/^# '> ) ($ Id.VSub_DollarName '$PROGRAM') (SQ <' (GNU /,/# warranty; / {\n'> <' s/^# //\n'> <'\ts/^# *$//\n'> <' s/\\((C)\\)[ 0-9,-]*\\( [1-9][0-9]*\\)/\\1\\2/\n'> <' p\n'> <' }'> ) } ] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {(DQ ($ Id.VSub_DollarName '$progpath'))} ) ] do_fork: T ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_QMark '$?')} ) ] ) ) (command.ShFunction name: func_usage body: (BraceGroup children: [ (command.Simple words: [ {($ Id.VSub_DollarName '$SED')} {<-n>} { (SQ <'/^# Usage:/,/^# *-h/ {\n'> <' s/^# //\n'> <'\ts/^# *$//\n'> <'\ts/\\$progname/'> ) ($ Id.VSub_DollarName '$progname') (SQ <'/\n'> <'\tp\n'> <' }'>) } ] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {(DQ ($ Id.VSub_DollarName '$progpath'))} ) ] do_fork: T ) (C {<echo>}) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'run '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$progname') <' --help | more\' for full usage'> ) } ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_QMark '$?')} ) ] ) ) (command.ShFunction name: func_help body: (BraceGroup children: [ (command.Simple words: [ {($ Id.VSub_DollarName '$SED')} {<-n>} { (SQ <'/^# Usage:/,/# Report bugs to/ {\n'> <' s/^# //\n'> <'\ts/^# *$//\n'> <'\ts*\\$progname*'> ) ($ Id.VSub_DollarName '$progname') (SQ <'*\n'> <'\ts*\\$host*'>) (DQ ($ Id.VSub_DollarName '$host')) (SQ <'*\n'> <'\ts*\\$SHELL*'>) (DQ ($ Id.VSub_DollarName '$SHELL')) (SQ <'*\n'> <'\ts*\\$LTCC*'>) (DQ ($ Id.VSub_DollarName '$LTCC')) (SQ <'*\n'> <'\ts*\\$LTCFLAGS*'>) (DQ ($ Id.VSub_DollarName '$LTCFLAGS')) (SQ <'*\n'> <'\ts*\\$LD*'>) (DQ ($ Id.VSub_DollarName '$LD')) (SQ <'*\n'> <'\ts/\\$with_gnu_ld/'>) (DQ ($ Id.VSub_DollarName '$with_gnu_ld')) (SQ <'/\n'> <'\ts/\\$automake_version/'>) (DQ (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (command.Subshell child: (C {<automake>} {<--version>}) redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] ) (C {($ Id.VSub_DollarName '$SED')} {<1q>}) ] negated: F ) ) ) (SQ <'/\n'> <'\ts/\\$autoconf_version/'>) (DQ (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (command.Subshell child: (C {<autoconf>} {<--version>}) redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] ) (C {($ Id.VSub_DollarName '$SED')} {<1q>}) ] negated: F ) ) ) (SQ <'/\n'> <'\tp\n'> <' }'>) } ] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {(DQ ($ Id.VSub_DollarName '$progpath'))} ) ] do_fork: T ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:ret) op: assign_op.Equal rhs: {($ Id.VSub_QMark '$?')} spids: [3582] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} {(DQ ($ Id.VSub_Number '$1'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$ret')} ) ] spids: [3586 3597] ) ] ) ] ) ) (command.ShFunction name: func_missing_arg body: (BraceGroup children: [ (C {<func_error>} {(DQ <'missing argument for '> ($ Id.VSub_Number '$1'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:exit_cmd) op: assign_op.Equal rhs: {<Id.ControlFlow_Exit exit>} spids: [3635] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:exit_cmd) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [3641] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:magic) op: assign_op.Equal rhs: {(DQ <'%%%MAGIC variable%%%'>)} spids: [3650] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:magic_exe) op: assign_op.Equal rhs: {(DQ <'%%%MAGIC EXE variable%%%'>)} spids: [3655] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:nonopt) op: assign_op.Equal rhs: (word.Empty) spids: [3667] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:execute_dlfiles) op: assign_op.Equal rhs: (word.Empty) spids: [3669] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:preserve_args) op: assign_op.Equal rhs: (word.Empty) spids: [3671] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lo2o) op: assign_op.Equal rhs: { (DQ <'s/'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) <.lo> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'/.'> (${ Id.VSub_Name objext) <'/'> ) } spids: [3673] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:o2lo) op: assign_op.Equal rhs: { (DQ <'s/'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) <.> (${ Id.VSub_Name objext) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'/.lo/'> ) } spids: [3686] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:extracted_archives) op: assign_op.Equal rhs: (word.Empty) spids: [3698] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:extracted_serial) op: assign_op.Equal rhs: {<0>} spids: [3700] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_dry_run) op: assign_op.Equal rhs: {<false>} spids: [3704] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_finish) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [3707] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_duplicate_deps) op: assign_op.Equal rhs: {<false>} spids: [3710] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_silent) op: assign_op.Equal rhs: {<false>} spids: [3713] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_debug) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [3716] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:exec_cmd) op: assign_op.Equal rhs: (word.Empty) spids: [3729] ) ] ) (command.ShFunction name: func_fatal_configuration body: (BraceGroup children: [ (C {<func_error>} { (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_Plus '+'> arg_word: {(DQ ($ Id.VSub_At '$@'))} ) ) } ) (C {<func_error>} { (DQ <'See the '> ($ Id.VSub_DollarName '$PACKAGE') <' documentation for more information.'> ) } ) (C {<func_fatal_error>} {(DQ <'Fatal configuration error.'>)}) ] ) ) (command.ShFunction name: func_config body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:re_begincf) op: assign_op.Equal rhs: {(SQ <'^# ### BEGIN LIBTOOL'>)} spids: [3793] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:re_endcf) op: assign_op.Equal rhs: {(SQ <'^# ### END LIBTOOL'>)} spids: [3799] ) ] ) (command.Simple words: [ {($ Id.VSub_DollarName '$SED')} { (DQ <'1,/'> ($ Id.VSub_DollarName '$re_begincf') <' CONFIG/d;/'> ($ Id.VSub_DollarName '$re_endcf') <' CONFIG/,'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <d> ) } ] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {(DQ ($ Id.VSub_DollarName '$progpath'))} ) ] do_fork: T ) (command.ForEach iter_name: tagname iter_words: [{($ Id.VSub_DollarName '$taglist')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Simple words: [ {($ Id.VSub_DollarName '$SED')} {<-n>} { (DQ <'/'> ($ Id.VSub_DollarName '$re_begincf') <' TAG CONFIG: '> ($ Id.VSub_DollarName '$tagname') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'/,/'> ($ Id.VSub_DollarName '$re_endcf') <' TAG CONFIG: '> ($ Id.VSub_DollarName '$tagname') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'/p'> ) } ] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {(DQ ($ Id.VSub_DollarName '$progpath'))} ) ] do_fork: T ) ] ) ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_QMark '$?')} ) ] ) ) (command.ShFunction name: func_features body: (BraceGroup children: [ (C {<echo>} {(DQ <'host: '> ($ Id.VSub_DollarName '$host'))}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$build_libtool_libs'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<echo>} {(DQ <'enable shared libraries'>)})] spids: [3904 3917] ) ] else_action: [(C {<echo>} {(DQ <'disable shared libraries'>)})] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$build_old_libs'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<echo>} {(DQ <'enable static libraries'>)})] spids: [3940 3953] ) ] else_action: [(C {<echo>} {(DQ <'disable static libraries'>)})] ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_QMark '$?')} ) ] ) ) (command.ShFunction name: func_enable_tag body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tagname) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [4008] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:re_begincf) op: assign_op.Equal rhs: { (DQ <'^# ### BEGIN LIBTOOL TAG CONFIG: '> ($ Id.VSub_DollarName '$tagname') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) ) } spids: [4015] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:re_endcf) op: assign_op.Equal rhs: { (DQ <'^# ### END LIBTOOL TAG CONFIG: '> ($ Id.VSub_DollarName '$tagname') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) ) } spids: [4023] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:sed_extractcf) op: assign_op.Equal rhs: { (DQ <'/'> ($ Id.VSub_DollarName '$re_begincf') <'/,/'> ($ Id.VSub_DollarName '$re_endcf') <'/p'> ) } spids: [4031] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$tagname')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <Id.Lit_LBracket '['> <Id.KW_Bang '!'> <-_A-Za-z0-9> <Id.Lit_Comma ','> <'/'> <Id.Lit_RBracket ']'> <Id.Lit_Star '*'> } ] action: [ (C {<func_fatal_error>} {(DQ <'invalid tag name: '> ($ Id.VSub_DollarName '$tagname'))} ) ] spids: [4053 4061 4072 -1] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$tagname')} arms: [ (case_arm pat_list:[{<CC>}] spids:[4094 4095 4097 -1]) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Simple words: [ {($ Id.VSub_DollarName '$GREP')} {(DQ ($ Id.VSub_DollarName '$re_begincf'))} {(DQ ($ Id.VSub_DollarName '$progpath'))} ] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<'/dev/null'>} ) (redir op: <Id.Redir_GreatAnd '2>&'> loc: (redir_loc.Fd fd:2) arg: {<1>} ) ] do_fork: T ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:taglist) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$taglist') <' '> ($ Id.VSub_DollarName '$tagname') ) } spids: [4126] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:extractedcf) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Simple words: [ {($ Id.VSub_DollarName '$SED')} {<-n>} {<-e>} {(DQ ($ Id.VSub_DollarName '$sed_extractcf'))} ] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {(DQ ($ Id.VSub_DollarName '$progpath'))} ) ] do_fork: T ) ) } spids: [4151] ) ] ) (C {<eval>} {(DQ ($ Id.VSub_DollarName '$extractedcf'))}) ] spids: [4104 4123] ) ] else_action: [ (C {<func_error>} {(DQ <'ignoring unknown tag '> ($ Id.VSub_DollarName '$tagname'))} ) ] ) ] spids: [4100 4101 4194 -1] ) ] ) ] ) ) (BraceGroup children: [ (command.Case to_match: {($ Id.VSub_Number '$1')} arms: [ (case_arm pat_list: [{<clean>} {<clea>} {<cle>} {<cl>}] action: [ (command.Sentence child:(C {<shift>}) terminator:<Id.Op_Semi _>) (command.Sentence child: (C {<set>} {<dummy>} {<--mode>} {<clean>} { (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_Plus '+'> arg_word: {(DQ ($ Id.VSub_At '$@'))} ) ) } ) terminator: <Id.Op_Semi _> ) (C {<shift>}) ] spids: [4223 4230 4256 -1] ) (case_arm pat_list: [{<compile>} {<compil>} {<compi>} {<comp>} {<com>} {<co>} {<c>}] action: [ (command.Sentence child:(C {<shift>}) terminator:<Id.Op_Semi _>) (command.Sentence child: (C {<set>} {<dummy>} {<--mode>} {<compile>} { (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_Plus '+'> arg_word: {(DQ ($ Id.VSub_At '$@'))} ) ) } ) terminator: <Id.Op_Semi _> ) (C {<shift>}) ] spids: [4259 4272 4298 -1] ) (case_arm pat_list: [{<execute>} {<execut>} {<execu>} {<exec>} {<exe>} {<ex>} {<e>}] action: [ (command.Sentence child:(C {<shift>}) terminator:<Id.Op_Semi _>) (command.Sentence child: (C {<set>} {<dummy>} {<--mode>} {<execute>} { (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_Plus '+'> arg_word: {(DQ ($ Id.VSub_At '$@'))} ) ) } ) terminator: <Id.Op_Semi _> ) (C {<shift>}) ] spids: [4301 4314 4340 -1] ) (case_arm pat_list: [{<finish>} {<finis>} {<fini>} {<fin>} {<Id.KW_Fi fi>} {<f>}] action: [ (command.Sentence child:(C {<shift>}) terminator:<Id.Op_Semi _>) (command.Sentence child: (C {<set>} {<dummy>} {<--mode>} {<finish>} { (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_Plus '+'> arg_word: {(DQ ($ Id.VSub_At '$@'))} ) ) } ) terminator: <Id.Op_Semi _> ) (C {<shift>}) ] spids: [4343 4354 4380 -1] ) (case_arm pat_list: [{<install>} {<instal>} {<insta>} {<inst>} {<ins>} {<Id.KW_In in>} {<i>}] action: [ (command.Sentence child:(C {<shift>}) terminator:<Id.Op_Semi _>) (command.Sentence child: (C {<set>} {<dummy>} {<--mode>} {<install>} { (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_Plus '+'> arg_word: {(DQ ($ Id.VSub_At '$@'))} ) ) } ) terminator: <Id.Op_Semi _> ) (C {<shift>}) ] spids: [4383 4396 4422 -1] ) (case_arm pat_list: [{<link>} {<lin>} {<li>} {<l>}] action: [ (command.Sentence child:(C {<shift>}) terminator:<Id.Op_Semi _>) (command.Sentence child: (C {<set>} {<dummy>} {<--mode>} {<link>} { (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_Plus '+'> arg_word: {(DQ ($ Id.VSub_At '$@'))} ) ) } ) terminator: <Id.Op_Semi _> ) (C {<shift>}) ] spids: [4425 4432 4458 -1] ) (case_arm pat_list: [ {<uninstall>} {<uninstal>} {<uninsta>} {<uninst>} {<unins>} {<unin>} {<uni>} {<un>} {<u>} ] action: [ (command.Sentence child:(C {<shift>}) terminator:<Id.Op_Semi _>) (command.Sentence child: (C {<set>} {<dummy>} {<--mode>} {<uninstall>} { (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_Plus '+'> arg_word: {(DQ ($ Id.VSub_At '$@'))} ) ) } ) terminator: <Id.Op_Semi _> ) (C {<shift>}) ] spids: [4461 4478 4504 -1] ) ] ) (command.WhileUntil keyword: <Id.KW_While while> cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_Pound '$#'))} {<-gt>} {<0>}) terminator: <Id.Op_Semi _> ) ] ) body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [4531] ) ] ) (C {<shift>}) (command.Case to_match: {($ Id.VSub_DollarName '$opt')} arms: [ (case_arm pat_list: [{<--config>}] action: [(C {<func_config>})] spids: [4548 4549 4553 -1] ) (case_arm pat_list: [{<--debug>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:preserve_args) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$preserve_args') <' '> ($ Id.VSub_DollarName '$opt') ) } spids: [4560] ) ] ) (C {<func_echo>} {(DQ <'enabling shell trace mode'>)}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_debug) op: assign_op.Equal rhs: {(SQ <'set -x'>)} spids: [4575] ) ] ) (C {($ Id.VSub_DollarName '$opt_debug')}) ] spids: [4557 4558 4584 -1] ) (case_arm pat_list: [{<-dlopen>}] action: [ (command.AndOr ops: [Id.Op_DAmp Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_Pound '$#'))} {<-eq>} {<0>}) (C {<func_missing_arg>} {(DQ ($ Id.VSub_DollarName '$opt'))}) (command.ControlFlow token: <Id.ControlFlow_Break break> ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:execute_dlfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$execute_dlfiles') <' '> ($ Id.VSub_Number '$1') ) } spids: [4614] ) ] ) (C {<shift>}) ] spids: [4588 4589 4625 -1] ) (case_arm pat_list: [{<--dry-run>} {<-n>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_dry_run) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [4636] ) ] ) ] spids: [4629 4634 4639 -1] ) (case_arm pat_list: [{<--features>}] action: [(C {<func_features>})] spids: [4642 4643 4647 -1] ) (case_arm pat_list: [{<--finish>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:mode) op: assign_op.Equal rhs: {(DQ <finish>)} spids: [4653] ) ] ) ] spids: [4650 4651 4658 -1] ) (case_arm pat_list: [{<--no-finish>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_finish) op: assign_op.Equal rhs: {<false>} spids: [4664] ) ] ) ] spids: [4661 4662 4667 -1] ) (case_arm pat_list: [{<--mode>}] action: [ (command.AndOr ops: [Id.Op_DAmp Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_Pound '$#'))} {<-eq>} {<0>}) (C {<func_missing_arg>} {(DQ ($ Id.VSub_DollarName '$opt'))}) (command.ControlFlow token: <Id.ControlFlow_Break break> ) ] ) (command.Case to_match: {($ Id.VSub_Number '$1')} arms: [ (case_arm pat_list: [{<clean>}] spids: [4708 4709 4711 -1] ) (case_arm pat_list: [{<compile>}] spids: [4714 4715 4717 -1] ) (case_arm pat_list: [{<execute>}] spids: [4720 4721 4723 -1] ) (case_arm pat_list: [{<finish>}] spids: [4726 4727 4729 -1] ) (case_arm pat_list: [{<install>}] spids: [4732 4733 4735 -1] ) (case_arm pat_list: [{<link>}] spids: [4738 4739 4741 -1] ) (case_arm pat_list: [{<relink>}] spids: [4744 4745 4747 -1] ) (case_arm pat_list: [{<uninstall>}] spids: [4750 4751 4753 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<func_error>} {(DQ <'invalid argument for '> ($ Id.VSub_DollarName '$opt'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:exit_cmd) op: assign_op.Equal rhs: {<Id.ControlFlow_Exit exit>} spids: [4772] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Break break> ) ] spids: [4761 4762 4779 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:mode) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [4786] ) ] ) (C {<shift>}) ] spids: [4671 4672 4795 -1] ) (case_arm pat_list: [{<--preserve-dup-deps>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_duplicate_deps) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [4803] ) ] ) ] spids: [4799 4800 4806 -1] ) (case_arm pat_list: [{<--quiet>} {<--silent>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:preserve_args) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$preserve_args') <' '> ($ Id.VSub_DollarName '$opt') ) } spids: [4815] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_silent) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [4823] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_verbose) op: assign_op.Equal rhs: {<false>} spids: [4827] ) ] ) ] spids: [4810 4813 4831 -1] ) (case_arm pat_list: [{<--no-quiet>} {<--no-silent>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:preserve_args) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$preserve_args') <' '> ($ Id.VSub_DollarName '$opt') ) } spids: [4841] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_silent) op: assign_op.Equal rhs: {<false>} spids: [4849] ) ] ) ] spids: [4835 4838 4853 -1] ) (case_arm pat_list: [{<--verbose>} {<-v>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:preserve_args) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$preserve_args') <' '> ($ Id.VSub_DollarName '$opt') ) } spids: [4863] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_silent) op: assign_op.Equal rhs: {<false>} spids: [4871] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_verbose) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [4875] ) ] ) ] spids: [4857 4861 4879 -1] ) (case_arm pat_list: [{<--no-verbose>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:preserve_args) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$preserve_args') <' '> ($ Id.VSub_DollarName '$opt') ) } spids: [4886] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_verbose) op: assign_op.Equal rhs: {<false>} spids: [4894] ) ] ) ] spids: [4883 4884 4898 -1] ) (case_arm pat_list: [{<--tag>}] action: [ (command.AndOr ops: [Id.Op_DAmp Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_Pound '$#'))} {<-eq>} {<0>}) (C {<func_missing_arg>} {(DQ ($ Id.VSub_DollarName '$opt'))}) (command.ControlFlow token: <Id.ControlFlow_Break break> ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:preserve_args) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$preserve_args') <' '> ($ Id.VSub_DollarName '$opt') <' '> ($ Id.VSub_Number '$1') ) } spids: [4928] ) ] ) (C {<func_enable_tag>} {(DQ ($ Id.VSub_Number '$1'))}) (C {<shift>}) ] spids: [4902 4903 4951 -1] ) (case_arm pat_list: [ {<-dlopen> <Id.Lit_Equals '='> <Id.Lit_Star '*'>} {<--mode> <Id.Lit_Equals '='> <Id.Lit_Star '*'>} {<--tag> <Id.Lit_Equals '='> <Id.Lit_Star '*'>} ] action: [ (C {<func_opt_split>} {(DQ ($ Id.VSub_DollarName '$opt'))}) (C {<set>} {<dummy>} {(DQ ($ Id.VSub_DollarName '$func_opt_split_opt'))} {(DQ ($ Id.VSub_DollarName '$func_opt_split_arg'))} { (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_Plus '+'> arg_word: {(DQ ($ Id.VSub_At '$@'))} ) ) } ) (C {<shift>}) ] spids: [4959 4970 5004 -1] ) (case_arm pat_list: [ {<-> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\?'>)} {<-h>} ] action: [(C {<func_usage>})] spids: [5008 5012 5016 -1] ) (case_arm pat_list: [{<--help>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_help) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [5022] ) ] ) ] spids: [5019 5020 5025 -1] ) (case_arm pat_list: [{<--help-all>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_help) op: assign_op.Equal rhs: {(SQ <': help-all'>)} spids: [5031] ) ] ) ] spids: [5028 5029 5036 -1] ) (case_arm pat_list: [{<--version>}] action: [(C {<func_version>})] spids: [5039 5040 5044 -1] ) (case_arm pat_list: [{<-> <Id.Lit_Star '*'>}] action: [ (C {<func_fatal_help>} { (DQ <'unrecognized option '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$opt') <'\''> ) } ) ] spids: [5048 5050 5061 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:nonopt) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$opt'))} spids: [5068] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Break break> ) ] spids: [5065 5066 5077 -1] ) ] ) ] ) ) (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <cygwin> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <mingw> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <pw32> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <cegcc> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <solaris2> <Id.Lit_Star '*'>} ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_duplicate_compiler_generated_deps) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [5130] ) ] ) ] spids: [5095 5123 5134 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_duplicate_compiler_generated_deps) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$opt_duplicate_deps')} spids: [5141] ) ] ) ] spids: [5137 5138 5145 -1] ) ] ) (C {($ Id.VSub_DollarName '$exit_cmd')} {($ Id.VSub_DollarName '$EXIT_FAILURE')}) ] ) (command.ShFunction name: func_check_version_match body: (BraceGroup children: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$package_revision'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ ($ Id.VSub_DollarName '$macro_revision'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$VERSION'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ ($ Id.VSub_DollarName '$macro_version'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$macro_version'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_GreatAnd '>&'> loc: (redir_loc.Fd fd:1) arg: {<2>} ) (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<_LT_EOF>} here_end_span_id: 5261 stdin_parts: [ ($ Id.VSub_DollarName '$progname') <': Version mismatch error. This is '> ($ Id.VSub_DollarName '$PACKAGE') <' '> ($ Id.VSub_DollarName '$VERSION') <', but the\n'> ($ Id.VSub_DollarName '$progname') < ': definition of this LT_INIT comes from an older release.\n' > ($ Id.VSub_DollarName '$progname') < ': You should recreate aclocal.m4 with macros from ' > ($ Id.VSub_DollarName '$PACKAGE') <' '> ($ Id.VSub_DollarName '$VERSION') <'\n'> ($ Id.VSub_DollarName '$progname') <': and run autoconf again.\n'> ] ) ) ] do_fork: T ) ] spids: [5222 5233] ) ] else_action: [ (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_GreatAnd '>&'> loc: (redir_loc.Fd fd:1) arg: {<2>} ) (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<_LT_EOF>} here_end_span_id: 5295 stdin_parts: [ ($ Id.VSub_DollarName '$progname') <': Version mismatch error. This is '> ($ Id.VSub_DollarName '$PACKAGE') <' '> ($ Id.VSub_DollarName '$VERSION') <', but the\n'> ($ Id.VSub_DollarName '$progname') <': definition of this LT_INIT comes from '> ($ Id.VSub_DollarName '$PACKAGE') <' '> ($ Id.VSub_DollarName '$macro_version') <'.\n'> ($ Id.VSub_DollarName '$progname') <': You should recreate aclocal.m4 with macros from '> ($ Id.VSub_DollarName '$PACKAGE') <' '> ($ Id.VSub_DollarName '$VERSION') <'\n'> ($ Id.VSub_DollarName '$progname') <': and run autoconf again.\n'> ] ) ) ] do_fork: T ) ] ) ] spids: [5203 5219] ) ] else_action: [ (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_GreatAnd '>&'> loc: (redir_loc.Fd fd:1) arg: {<2>} ) (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<_LT_EOF>} here_end_span_id: 5334 stdin_parts: [ ($ Id.VSub_DollarName '$progname') <': Version mismatch error. This is '> ($ Id.VSub_DollarName '$PACKAGE') <' '> ($ Id.VSub_DollarName '$VERSION') <', revision '> ($ Id.VSub_DollarName '$package_revision') <',\n'> ($ Id.VSub_DollarName '$progname') <': but the definition of this LT_INIT comes from revision '> ($ Id.VSub_DollarName '$macro_revision') <'.\n'> ($ Id.VSub_DollarName '$progname') <': You should recreate aclocal.m4 with macros from revision '> ($ Id.VSub_DollarName '$package_revision') <'\n'> ($ Id.VSub_DollarName '$progname') <': of '> ($ Id.VSub_DollarName '$PACKAGE') <' '> ($ Id.VSub_DollarName '$VERSION') <' and run autoconf again.\n'> ] ) ) ] do_fork: T ) ] ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_MISMATCH')} ) ] spids: [5184 5200] ) ] ) ] ) ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_help')}) (BraceGroup children: [ (C {<func_check_version_match>}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$build_libtool_libs'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<yes>} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$build_old_libs'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<yes>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_fatal_configuration>} {(DQ <'not configured to build any kind of library'>)} ) ] spids: [5376 5403] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$mode'))}) (C {<func_fatal_error>} {(DQ <'error: you must specify a MODE.'>)}) ] ) (C {<eval>} { (DQ <'std_shrext='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ($ Id.VSub_DollarName '$shrext_cmds') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ) } ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$execute_dlfiles'))}) (C {<test>} {(DQ ($ Id.VSub_DollarName '$mode'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<execute>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_error>} { (DQ <'unrecognized option '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'-dlopen\''> ) } ) (command.Simple words: [{($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_DollarName '$help'))}] redirects: [ (redir op: <Id.Redir_GreatAnd '1>&'> loc: (redir_loc.Fd fd:1) arg: {<2>} ) ] do_fork: T ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_FAILURE')} ) ] spids: [5456 5480] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:generic_help) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$help'))} spids: [5515] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:help) op: assign_op.Equal rhs: { (DQ <'Try '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$progname') <' --help --mode='> ($ Id.VSub_DollarName '$mode') <'\' for more information.'> ) } spids: [5521] ) ] ) ] ) ] ) (command.ShFunction name: func_lalib_p body: (BraceGroup children: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-f>} {(DQ ($ Id.VSub_Number '$1'))}) (command.Pipeline children: [ (command.Simple words: [{($ Id.VSub_DollarName '$SED')} {<-e>} {<4q>} {(DQ ($ Id.VSub_Number '$1'))}] redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) (command.Simple words: [ {($ Id.VSub_DollarName '$GREP')} {(DQ <'^# Generated by .*'> ($ Id.VSub_DollarName '$PACKAGE'))} ] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<'/dev/null'>} ) (redir op: <Id.Redir_GreatAnd '2>&'> loc: (redir_loc.Fd fd:2) arg: {<1>} ) ] do_fork: T ) ] negated: F ) ] ) ] ) ) (command.ShFunction name: func_lalib_unsafe_p body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lalib_p) op: assign_op.Equal rhs: {<no>} spids: [5629] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp Id.Op_DAmp] children: [ (C {<test>} {<-f>} {(DQ ($ Id.VSub_Number '$1'))}) (C {<test>} {<-r>} {(DQ ($ Id.VSub_Number '$1'))}) (command.Simple words: [{<exec>}] redirects: [ (redir op: <Id.Redir_LessAnd '5<&'> loc: (redir_loc.Fd fd:5) arg: {<0>} ) (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {(DQ ($ Id.VSub_Number '$1'))} ) ] do_fork: T ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ForEach iter_name: lalib_p_l iter_words: [{<1>} {<2>} {<3>} {<4>}] do_arg_iter: F body: (command.DoGroup children: [ (C {<read>} {<lalib_p_line>}) (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$lalib_p_line'))} arms: [ (case_arm pat_list: [ {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\#'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\ '> ) <Generated> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\ '>) <by> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\ '> ) <Id.Lit_Star '*'> ($ Id.VSub_DollarName '$PACKAGE') <Id.Lit_Star '*'> } ] action: [ (command.Sentence child: (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lalib_p) op: assign_op.Equal rhs: {<yes>} spids: [5713] ) ] ) terminator: <Id.Op_Semi _> ) (command.ControlFlow token: <Id.ControlFlow_Break break> ) ] spids: [5701 5711 5718 -1] ) ] ) ] ) ) (command.Simple words: [{<exec>}] redirects: [ (redir op: <Id.Redir_LessAnd '0<&'> loc: (redir_loc.Fd fd:0) arg: {<5>} ) (redir op: <Id.Redir_LessAnd '5<&'> loc: (redir_loc.Fd fd:5) arg: {<->} ) ] do_fork: T ) ] spids: [5633 5666] ) ] ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$lalib_p'))} {<Id.Lit_Equals '='>} {<yes>}) ] ) ) (command.ShFunction name: func_ltwrapper_script_p body: (BraceGroup children:[(C {<func_lalib_p>} {(DQ ($ Id.VSub_Number '$1'))})]) ) (command.ShFunction name: func_ltwrapper_executable_p body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_ltwrapper_exec_suffix) op: assign_op.Equal rhs: (word.Empty) spids: [5801] ) ] ) (command.Case to_match: {($ Id.VSub_Number '$1')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <.exe>}] spids: [5811 5813 5815 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_ltwrapper_exec_suffix) op: assign_op.Equal rhs: {<.exe>} spids: [5821] ) ] ) ] spids: [5818 5819 5824 -1] ) ] ) (command.Simple words: [ {($ Id.VSub_DollarName '$GREP')} {(DQ ($ Id.VSub_DollarName '$magic_exe'))} {(DQ ($ Id.VSub_Number '$1') ($ Id.VSub_DollarName '$func_ltwrapper_exec_suffix'))} ] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<'/dev/null'>} ) (redir op:<Id.Redir_GreatAnd '2>&'> loc:(redir_loc.Fd fd:2) arg:{<1>}) ] do_fork: T ) ] ) ) (command.ShFunction name: func_ltwrapper_scriptname body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_ltwrapper_scriptname_result) op: assign_op.Equal rhs: {(DQ )} spids: [5870] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<func_ltwrapper_executable_p>} {(DQ ($ Id.VSub_Number '$1'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_dirname_and_basename>} {(DQ ($ Id.VSub_Number '$1'))} {(DQ )} {(DQ <.>)}) (C {<func_stripname>} {(SQ )} {(SQ <.exe>)} {(DQ ($ Id.VSub_DollarName '$func_basename_result'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_ltwrapper_scriptname_result) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$func_dirname_result') <'/'> ($ Id.VSub_DollarName '$objdir') <'/'> (${ Id.VSub_Name func_stripname_result) <_ltshwrapper> ) } spids: [5915] ) ] ) ] spids: [5875 5884] ) ] ) ] ) ) (command.ShFunction name: func_ltwrapper_p body: (BraceGroup children: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<func_ltwrapper_script_p>} {(DQ ($ Id.VSub_Number '$1'))}) (C {<func_ltwrapper_executable_p>} {(DQ ($ Id.VSub_Number '$1'))}) ] ) ] ) ) (command.ShFunction name: func_execute_cmds body: (BraceGroup children: [ (C {($ Id.VSub_DollarName '$opt_debug')}) (command.Sentence child: (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:save_ifs) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$IFS')} spids: [5994] ) ] ) terminator: <Id.Op_Semi _> ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(SQ <'~'>)} spids: [5998] ) ] ) (command.ForEach iter_name: cmd iter_words: [{($ Id.VSub_Number '$1')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$save_ifs')} spids: [6016] ) ] ) (C {<eval>} { (DQ <'cmd='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ($ Id.VSub_DollarName '$cmd') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ) } ) (C {<func_show_eval>} {(DQ ($ Id.VSub_DollarName '$cmd'))} { (DQ (braced_var_sub token: <Id.VSub_Number 2> suffix_op: (suffix_op.Unary tok:<Id.VTest_Hyphen -> arg_word:{<':'>}) ) ) } ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$save_ifs')} spids: [6048] ) ] ) ] ) ) (command.ShFunction name: func_source body: (BraceGroup children: [ (C {($ Id.VSub_DollarName '$opt_debug')}) (command.Case to_match: {($ Id.VSub_Number '$1')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <'/'> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) <Id.Lit_Star '*'> } ] action: [(C {<.>} {(DQ ($ Id.VSub_Number '$1'))})] spids: [6091 6100 6108 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [(C {<.>} {(DQ <'./'> ($ Id.VSub_Number '$1'))})] spids: [6111 6112 6121 -1] ) ] ) ] ) ) (command.ShFunction name: func_infer_tag body: (BraceGroup children: [ (C {($ Id.VSub_DollarName '$opt_debug')}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$available_tags'))}) (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$tagname'))}) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:CC_quoted) op: assign_op.Equal rhs: (word.Empty) spids: [6183] ) ] ) (command.ForEach iter_name: arg iter_words: [{($ Id.VSub_DollarName '$CC')}] do_arg_iter: F body: (command.DoGroup children: [ (C {<func_quote_for_eval>} {(DQ ($ Id.VSub_DollarName '$arg'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:CC_quoted) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$CC_quoted') <' '> ($ Id.VSub_DollarName '$func_quote_for_eval_result') ) } spids: [6205] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:CC_expanded) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<func_echo_all>} {($ Id.VSub_DollarName '$CC')}) ) } spids: [6216] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:CC_quoted_expanded) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<func_echo_all>} {($ Id.VSub_DollarName '$CC_quoted')}) ) } spids: [6226] ) ] ) (command.Case to_match: {($ Id.VSub_At '$@')} arms: [ (case_arm pat_list: [ {(DQ <' '> ($ Id.VSub_DollarName '$CC') <' '>) <Id.Lit_Star '*'>} {(DQ ($ Id.VSub_DollarName '$CC') <' '>) <Id.Lit_Star '*'>} {(DQ <' '> ($ Id.VSub_DollarName '$CC_expanded') <' '>) <Id.Lit_Star '*'>} {(DQ ($ Id.VSub_DollarName '$CC_expanded') <' '>) <Id.Lit_Star '*'>} {(DQ <' '> ($ Id.VSub_DollarName '$CC_quoted')) <Id.Lit_Star '*'>} {(DQ ($ Id.VSub_DollarName '$CC_quoted') <' '>) <Id.Lit_Star '*'>} {(DQ <' '> ($ Id.VSub_DollarName '$CC_quoted_expanded') <' '>) <Id.Lit_Star '*'> } {(DQ ($ Id.VSub_DollarName '$CC_quoted_expanded') <' '>) <Id.Lit_Star '*'> } ] spids: [6251 6317 6319 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ForEach iter_name: z iter_words: [{($ Id.VSub_DollarName '$available_tags')}] do_arg_iter: F body: (command.DoGroup children: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Simple words: [ {($ Id.VSub_DollarName '$GREP')} { (DQ <'^# ### BEGIN LIBTOOL TAG CONFIG: '> ($ Id.VSub_DollarName '$z') <Id.Lit_Dollar '$'> ) } ] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {(DQ ($ Id.VSub_DollarName '$progpath'))} ) (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<'/dev/null'>} ) ] do_fork: T ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} { (DQ (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Simple words: [ {(${ Id.VSub_Name SED)} {<-n>} {<-e>} { (SQ <'/^# ### BEGIN LIBTOOL TAG CONFIG: '> ) ($ Id.VSub_DollarName '$z') (SQ <'$/,/^# ### END LIBTOOL TAG CONFIG: '>) ($ Id.VSub_DollarName '$z') (SQ <'$/p'>) } ] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {($ Id.VSub_DollarName '$progpath')} ) ] do_fork: T ) ) ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:CC_quoted) op: assign_op.Equal rhs: (word.Empty) spids: [6407] ) ] ) (command.ForEach iter_name: arg iter_words: [{($ Id.VSub_DollarName '$CC')}] do_arg_iter: F body: (command.DoGroup children: [ (C {<func_quote_for_eval>} {(DQ ($ Id.VSub_DollarName '$arg'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:CC_quoted) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$CC_quoted') <' '> ($ Id.VSub_DollarName '$func_quote_for_eval_result') ) } spids: [6433] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:CC_expanded) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<func_echo_all>} {($ Id.VSub_DollarName '$CC')} ) ) } spids: [6444] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:CC_quoted_expanded) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<func_echo_all>} {($ Id.VSub_DollarName '$CC_quoted')} ) ) } spids: [6454] ) ] ) (command.Case to_match: {(DQ ($ Id.VSub_At '$@') <' '>)} arms: [ (case_arm pat_list: [ {(DQ <' '> ($ Id.VSub_DollarName '$CC') <' '>) <Id.Lit_Star '*'> } {(DQ ($ Id.VSub_DollarName '$CC') <' '>) <Id.Lit_Star '*'> } { (DQ <' '> ($ Id.VSub_DollarName '$CC_expanded') <' '> ) <Id.Lit_Star '*'> } {(DQ ($ Id.VSub_DollarName '$CC_expanded') <' '>) <Id.Lit_Star '*'> } {(DQ <' '> ($ Id.VSub_DollarName '$CC_quoted')) <Id.Lit_Star '*'> } {(DQ ($ Id.VSub_DollarName '$CC_quoted') <' '>) <Id.Lit_Star '*'> } { (DQ <' '> ($ Id.VSub_DollarName '$CC_quoted_expanded') <' '> ) <Id.Lit_Star '*'> } { (DQ ($ Id.VSub_DollarName '$CC_quoted_expanded') <' '> ) <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tagname) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$z')} spids: [6555] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Break break> ) ] spids: [6474 6540 6562 -1] ) ] ) ] spids: [6346 6367] ) ] ) ] ) ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$tagname'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_echo>} {(DQ <'unable to infer tagged configuration'>)}) (C {<func_fatal_error>} { (DQ <'specify a tag with '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'--tag\''> ) } ) ] spids: [6586 6597] ) ] ) ] spids: [6330 6331 6625 -1] ) ] ) ] spids: [6159 6180] ) ] ) ] ) ) (command.ShFunction name: func_write_libtool_object body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:write_libobj) op: assign_op.Equal rhs: {(${ Id.VSub_Number 1)} spids: [6655] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$build_libtool_libs'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:write_lobj) op: assign_op.Equal rhs: {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\''>) (${ Id.VSub_Number 2) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\''>) } spids: [6677] ) ] ) ] spids: [6661 6674] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:write_lobj) op: assign_op.Equal rhs: {<none>} spids: [6688] ) ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$build_old_libs'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:write_oldobj) op: assign_op.Equal rhs: {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\''>) (${ Id.VSub_Number 3) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\''>) } spids: [6712] ) ] ) ] spids: [6696 6709] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:write_oldobj) op: assign_op.Equal rhs: {<none>} spids: [6723] ) ] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (BraceGroup children: [ (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {(${ Id.VSub_Name write_libobj) <T>} ) (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 6775 stdin_parts: [ <'# '> ($ Id.VSub_DollarName '$write_libobj') <' - a libtool object file\n'> <'# Generated by '> ($ Id.VSub_DollarName '$PROGRAM') <' (GNU '> ($ Id.VSub_DollarName '$PACKAGE') ($ Id.VSub_DollarName '$TIMESTAMP') <') '> ($ Id.VSub_DollarName '$VERSION') <'\n'> <'#\n'> <'# Please DO NOT delete this file!\n'> <'# It is necessary for linking the library.\n'> <'\n'> <'# Name of the PIC object.\n'> <'pic_object='> ($ Id.VSub_DollarName '$write_lobj') <'\n'> <'\n'> <'# Name of the non-PIC object\n'> <'non_pic_object='> ($ Id.VSub_DollarName '$write_oldobj') <'\n'> <'\n'> ] ) ) ] do_fork: T ) (C {($ Id.VSub_DollarName '$MV')} {(DQ (${ Id.VSub_Name write_libobj) <T>)} {(DQ (${ Id.VSub_Name write_libobj))} ) ] ) ] ) ] ) ) (command.ShFunction name: func_mode_compile body: (BraceGroup children: [ (C {($ Id.VSub_DollarName '$opt_debug')}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:base_compile) op: assign_op.Equal rhs: (word.Empty) spids: [6816] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:srcfile) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$nonopt'))} spids: [6819] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:suppress_opt) op: assign_op.Equal rhs: {<yes>} spids: [6828] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:suppress_output) op: assign_op.Equal rhs: (word.Empty) spids: [6832] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg_mode) op: assign_op.Equal rhs: {<normal>} spids: [6835] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobj) op: assign_op.Equal rhs: (word.Empty) spids: [6839] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:later) op: assign_op.Equal rhs: (word.Empty) spids: [6842] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pie_flag) op: assign_op.Equal rhs: (word.Empty) spids: [6845] ) ] ) (command.ForEach iter_name: arg do_arg_iter: T body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$arg_mode')} arms: [ (case_arm pat_list: [{<arg>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lastarg) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$arg'))} spids: [6873] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg_mode) op: assign_op.Equal rhs: {<normal>} spids: [6879] ) ] ) ] spids: [6864 6866 6883 -1] ) (case_arm pat_list: [{<target>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobj) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$arg'))} spids: [6892] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg_mode) op: assign_op.Equal rhs: {<normal>} spids: [6898] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [6887 6889 6905 -1] ) (case_arm pat_list: [{<normal>}] action: [ (command.Case to_match: {($ Id.VSub_DollarName '$arg')} arms: [ (case_arm pat_list: [{<-o>}] action: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$libobj'))}) (C {<func_fatal_error>} { (DQ <'you cannot specify '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'-o\' more than once'> ) } ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg_mode) op: assign_op.Equal rhs: {<target>} spids: [6950] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [6925 6926 6957 -1] ) (case_arm pat_list: [{<-pie>} {<-fpie>} {<-fPIE>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pie_flag) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$pie_flag') <' '> ($ Id.VSub_DollarName '$arg') ) } spids: [6973] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [6961 6970 6984 -1] ) (case_arm pat_list: [{<-shared>} {<-static>} {<-prefer-pic>} {<-prefer-non-pic>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:later) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$later') <' '> ($ Id.VSub_DollarName '$arg') ) } spids: [7004] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [6988 7001 7015 -1] ) (case_arm pat_list: [{<-no-suppress>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:suppress_opt) op: assign_op.Equal rhs: {<no>} spids: [7023] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [7019 7020 7030 -1] ) (case_arm pat_list: [{<-Xcompiler>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg_mode) op: assign_op.Equal rhs: {<arg>} spids: [7038] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [7034 7035 7051 -1] ) (case_arm pat_list: [{<-Wc> <Id.Lit_Comma ','> <Id.Lit_Star '*'>}] action: [ (C {<func_stripname>} {(SQ <'-Wc,'>)} {(SQ )} {(DQ ($ Id.VSub_DollarName '$arg'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:args) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [7078] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lastarg) op: assign_op.Equal rhs: (word.Empty) spids: [7082] ) ] ) (command.Sentence child: (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:save_ifs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$IFS'))} spids: [7085] ) ] ) terminator: <Id.Op_Semi _> ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(SQ <','>)} spids: [7091] ) ] ) (command.ForEach iter_name: arg iter_words: [{($ Id.VSub_DollarName '$args')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$save_ifs'))} spids: [7109] ) ] ) (C {<func_quote_for_eval>} {(DQ ($ Id.VSub_DollarName '$arg'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lastarg) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$lastarg') <' '> ($ Id.VSub_DollarName '$func_quote_for_eval_result' ) ) } spids: [7122] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$save_ifs'))} spids: [7133] ) ] ) (C {<func_stripname>} {(SQ <' '>)} {(SQ )} {(DQ ($ Id.VSub_DollarName '$lastarg'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lastarg) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [7153] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:base_compile) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$base_compile') <' '> ($ Id.VSub_DollarName '$lastarg') ) } spids: [7162] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [7058 7061 7173 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lastarg) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$srcfile'))} spids: [7193] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:srcfile) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$arg'))} spids: [7199] ) ] ) ] spids: [7177 7178 7205 -1] ) ] ) ] spids: [6909 6911 7214 -1] ) ] ) (C {<func_quote_for_eval>} {(DQ ($ Id.VSub_DollarName '$lastarg'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:base_compile) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$base_compile') <' '> ($ Id.VSub_DollarName '$func_quote_for_eval_result') ) } spids: [7235] ) ] ) ] ) ) (command.Case to_match: {($ Id.VSub_DollarName '$arg_mode')} arms: [ (case_arm pat_list: [{<arg>}] action: [ (C {<func_fatal_error>} {(DQ <'you must specify an argument for -Xcompile'>)}) ] spids: [7257 7258 7268 -1] ) (case_arm pat_list: [{<target>}] action: [ (C {<func_fatal_error>} { (DQ <'you must specify a target with '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'-o\''> ) } ) ] spids: [7271 7272 7284 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$libobj'))}) (BraceGroup children: [ (C {<func_basename>} {(DQ ($ Id.VSub_DollarName '$srcfile'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobj) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_basename_result'))} spids: [7315] ) ] ) ] ) ] ) ] spids: [7287 7288 7324 -1] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$libobj')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <.> <Id.Lit_LBracket '['> <cCFSifmso> <Id.Lit_RBracket ']'>} {<Id.Lit_Star '*'> <.ada>} {<Id.Lit_Star '*'> <.adb>} {<Id.Lit_Star '*'> <.ads>} {<Id.Lit_Star '*'> <.asm>} {<Id.Lit_Star '*'> <.c> <Id.Lit_Other '+'> <Id.Lit_Other '+'>} {<Id.Lit_Star '*'> <.cc>} {<Id.Lit_Star '*'> <.ii>} {<Id.Lit_Star '*'> <.class>} {<Id.Lit_Star '*'> <.cpp>} {<Id.Lit_Star '*'> <.cxx>} {<Id.Lit_Star '*'> <.> <Id.Lit_LBracket '['> <fF> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <09> <Id.Lit_RBracket ']'> <Id.Lit_QMark '?'> } {<Id.Lit_Star '*'> <.for>} {<Id.Lit_Star '*'> <.java>} {<Id.Lit_Star '*'> <.obj>} {<Id.Lit_Star '*'> <.sx>} {<Id.Lit_Star '*'> <.cu>} {<Id.Lit_Star '*'> <.cup>} ] action: [ (C {<func_xform>} {(DQ ($ Id.VSub_DollarName '$libobj'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobj) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_xform_result')} spids: [7461] ) ] ) ] spids: [7346 7451 7465 -1] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$libobj')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <.lo>}] action: [ (command.Sentence child: (C {<func_lo2o>} {(DQ ($ Id.VSub_DollarName '$libobj'))}) terminator: <Id.Op_Semi _> ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:obj) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_lo2o_result')} spids: [7490] ) ] ) ] spids: [7479 7481 7493 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<func_fatal_error>} { (DQ <'cannot determine name of library object from '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$libobj') <'\''> ) } ) ] spids: [7496 7497 7510 -1] ) ] ) (C {<func_infer_tag>} {($ Id.VSub_DollarName '$base_compile')}) (command.ForEach iter_name: arg iter_words: [{($ Id.VSub_DollarName '$later')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$arg')} arms: [ (case_arm pat_list: [{<-shared>}] action: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$build_libtool_libs'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<yes>} ) (C {<func_fatal_configuration>} {(DQ <'can not build a shared library'>)} ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:build_old_libs) op: assign_op.Equal rhs: {<no>} spids: [7568] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [7542 7543 7575 -1] ) (case_arm pat_list: [{<-static>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:build_libtool_libs) op: assign_op.Equal rhs: {<no>} spids: [7583] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:build_old_libs) op: assign_op.Equal rhs: {<yes>} spids: [7587] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [7579 7580 7594 -1] ) (case_arm pat_list: [{<-prefer-pic>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pic_mode) op: assign_op.Equal rhs: {<yes>} spids: [7602] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [7598 7599 7609 -1] ) (case_arm pat_list: [{<-prefer-non-pic>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pic_mode) op: assign_op.Equal rhs: {<no>} spids: [7617] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [7613 7614 7624 -1] ) ] ) ] ) ) (C {<func_quote_for_eval>} {(DQ ($ Id.VSub_DollarName '$libobj'))}) (command.AndOr ops: [Id.Op_DAmp Id.Op_DAmp] children: [ (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$libobj'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ <X> ($ Id.VSub_DollarName '$func_quote_for_eval_result'))} ) (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <X> ($ Id.VSub_DollarName '$libobj'))}) (C {($ Id.VSub_DollarName '$GREP')} {(SQ <'[]~#^*{};<>?"'>) (DQ <'\''>) (SQ <'\t &()|`$[]'>)} ) ] negated: F ) (C {<func_warning>} { (DQ <'libobj name '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$libobj') <'\' may not contain shell special characters.'> ) } ) ] ) (C {<func_dirname_and_basename>} {(DQ ($ Id.VSub_DollarName '$obj'))} {(DQ <'/'>)} {(DQ )}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:objname) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_basename_result'))} spids: [7709] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:xdir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_dirname_result'))} spids: [7715] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lobj) op: assign_op.Equal rhs: {(${ Id.VSub_Name xdir) ($ Id.VSub_DollarName '$objdir') <'/'> ($ Id.VSub_DollarName '$objname') } spids: [7721] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$base_compile'))}) (C {<func_fatal_help>} {(DQ <'you must specify a compilation command'>)}) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$build_old_libs'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:removelist) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$obj') <' '> ($ Id.VSub_DollarName '$lobj') <' '> ($ Id.VSub_DollarName '$libobj') <' '> (${ Id.VSub_Name libobj) <T> ) } spids: [7771] ) ] ) ] spids: [7755 7768] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:removelist) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$lobj') <' '> ($ Id.VSub_DollarName '$libobj') <' '> (${ Id.VSub_Name libobj) <T> ) } spids: [7789] ) ] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$host_os')} arms: [ (case_arm pat_list: [ {<cygwin> <Id.Lit_Star '*'>} {<mingw> <Id.Lit_Star '*'>} {<pw32> <Id.Lit_Star '*'>} {<os2> <Id.Lit_Star '*'>} {<cegcc> <Id.Lit_Star '*'>} ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pic_mode) op: assign_op.Equal rhs: {<default>} spids: [7842] ) ] ) ] spids: [7817 7839 7846 -1] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$pic_mode'))} {<Id.Lit_Equals '='>} {<no>} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$deplibs_check_method'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<pass_all>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pic_mode) op: assign_op.Equal rhs: {<default>} spids: [7885] ) ] ) ] spids: [7852 7878] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$compiler_c_o'))} {<Id.Lit_Equals '='>} {<no>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:output_obj) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_DollarName '$srcfile'))} ) (C {($ Id.VSub_DollarName '$SED')} {(SQ <'s%^.*/%%; s%\\.[^.]*$%%'>)} ) ] negated: F ) ) <.> (${ Id.VSub_Name objext) } spids: [7917] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lockfile) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$output_obj') <.lock>)} spids: [7943] ) ] ) ] spids: [7901 7914] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:output_obj) op: assign_op.Equal rhs: (word.Empty) spids: [7953] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:need_locks) op: assign_op.Equal rhs: {<no>} spids: [7956] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lockfile) op: assign_op.Equal rhs: (word.Empty) spids: [7960] ) ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$need_locks'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.WhileUntil keyword: <Id.KW_Until until> cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (command.Simple words: [ {<ln>} {(DQ ($ Id.VSub_DollarName '$progpath'))} {(DQ ($ Id.VSub_DollarName '$lockfile'))} ] redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) ] ) terminator: <Id.Op_Semi _> ) ] ) body: (command.DoGroup children: [ (C {<func_echo>} { (DQ <'Waiting for '> ($ Id.VSub_DollarName '$lockfile') <' to be removed'> ) } ) (C {<sleep>} {<2>}) ] ) ) ] spids: [7975 7988] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$need_locks'))} {<Id.Lit_Equals '='>} {<warn>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-f>} {(DQ ($ Id.VSub_DollarName '$lockfile'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'*** ERROR, '> ($ Id.VSub_DollarName '$lockfile') <' exists and contains:\n'> (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Simple words: [{<cat>} {($ Id.VSub_DollarName '$lockfile')}] redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) ) <'\n'> <'\n'> <'This indicates that another process is trying to use the same\n'> < 'temporary object file, and libtool could not work around it because\n' > <'your compiler does not support '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-c\' and '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-o\' together. If you\n'> < 'repeat this compilation, it may succeed, by chance, but you had better\n' > <'avoid parallel builds (make -j) in this platform, or get a better\n'> <compiler.> ) } ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {($ Id.VSub_DollarName '$RM')} {($ Id.VSub_DollarName '$removelist')} ) ] ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_FAILURE')} ) ] spids: [8047 8058] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:removelist) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$removelist') <' '> ($ Id.VSub_DollarName '$output_obj') ) } spids: [8111] ) ] ) (command.Simple words: [{($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_DollarName '$srcfile'))}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {(DQ ($ Id.VSub_DollarName '$lockfile'))} ) ] do_fork: T ) ] spids: [8031 8044] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {($ Id.VSub_DollarName '$RM')} {($ Id.VSub_DollarName '$removelist')}) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:removelist) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$removelist') <' '> ($ Id.VSub_DollarName '$lockfile')) } spids: [8145] ) ] ) (C {<trap>} {(SQ <'$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE'>)} {<1>} {<2>} {<15>}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$fix_srcfile_path'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} { (DQ <'srcfile='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ($ Id.VSub_DollarName '$fix_srcfile_path') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ) } ) ] spids: [8167 8178] ) ] ) (C {<func_quote_for_eval>} {(DQ ($ Id.VSub_DollarName '$srcfile'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:qsrcfile) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_quote_for_eval_result')} spids: [8201] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$build_libtool_libs'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:fbsd_hideous_sh_bug) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$base_compile')} spids: [8230] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$pic_mode'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<no>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$base_compile') <' '> ($ Id.VSub_DollarName '$qsrcfile') <' '> ($ Id.VSub_DollarName '$pic_flag') ) } spids: [8252] ) ] ) ] spids: [8235 8249] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$base_compile') <' '> ($ Id.VSub_DollarName '$qsrcfile') ) } spids: [8269] ) ] ) ] ) (C {<func_mkdir_p>} {(DQ ($ Id.VSub_DollarName '$xdir') ($ Id.VSub_DollarName '$objdir'))} ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$output_obj'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$command') <' -o '> ($ Id.VSub_DollarName '$lobj') ) } spids: [8308] ) ] ) ] spids: [8290 8301] ) ] ) (C {<func_show_eval_locale>} {(DQ ($ Id.VSub_DollarName '$command'))} {(SQ <'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE'>)} ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$need_locks'))} {<Id.Lit_Equals '='>} {<warn>} ) (C {<test>} { (DQ <X> (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Simple words: [ {<cat>} {($ Id.VSub_DollarName '$lockfile')} ] redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) ) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ <X> ($ Id.VSub_DollarName '$srcfile'))} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'*** ERROR, '> ($ Id.VSub_DollarName '$lockfile') <' contains:\n'> (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Simple words: [{<cat>} {($ Id.VSub_DollarName '$lockfile')}] redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) ) <'\n'> <'\n'> <'but it should contain:\n'> ($ Id.VSub_DollarName '$srcfile') <'\n'> <'\n'> < 'This indicates that another process is trying to use the same\n' > <'temporary object file, and libtool could not work around it because\n'> <'your compiler does not support '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-c\' and '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'-o\' together. If you\n'> < 'repeat this compilation, it may succeed, by chance, but you had better\n' > <'avoid parallel builds (make -j) in this platform, or get a better\n'> <compiler.> ) } ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {($ Id.VSub_DollarName '$RM')} {($ Id.VSub_DollarName '$removelist')} ) ] ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_FAILURE')} ) ] spids: [8334 8374] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$output_obj'))}) (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$output_obj'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ <X> ($ Id.VSub_DollarName '$lobj'))} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_show_eval>} {(SQ <'$MV "$output_obj" "$lobj"'>)} {(SQ <'error=$?; $opt_dry_run || $RM $removelist; exit $error'>)} ) ] spids: [8436 8464] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$suppress_opt'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:suppress_output) op: assign_op.Equal rhs: {(SQ <' >/dev/null 2>&1'>)} spids: [8504] ) ] ) ] spids: [8488 8501] ) ] ) ] spids: [8210 8223] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$build_old_libs'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$pic_mode'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$base_compile') <' '> ($ Id.VSub_DollarName '$qsrcfile') ($ Id.VSub_DollarName '$pie_flag') ) } spids: [8558] ) ] ) ] spids: [8537 8551] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$base_compile') <' '> ($ Id.VSub_DollarName '$qsrcfile') <' '> ($ Id.VSub_DollarName '$pic_flag') ) } spids: [8570] ) ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$compiler_c_o'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$command') <' -o '> ($ Id.VSub_DollarName '$obj') ) } spids: [8599] ) ] ) ] spids: [8583 8596] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$command') ($ Id.VSub_DollarName '$suppress_output') ) } spids: [8615] ) ] ) (C {<func_show_eval_locale>} {(DQ ($ Id.VSub_DollarName '$command'))} {(SQ <'$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE'>)} ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$need_locks'))} {<Id.Lit_Equals '='>} {<warn>} ) (C {<test>} { (DQ <X> (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Simple words: [ {<cat>} {($ Id.VSub_DollarName '$lockfile')} ] redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) ) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ <X> ($ Id.VSub_DollarName '$srcfile'))} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'*** ERROR, '> ($ Id.VSub_DollarName '$lockfile') <' contains:\n'> (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Simple words: [{<cat>} {($ Id.VSub_DollarName '$lockfile')}] redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) ) <'\n'> <'\n'> <'but it should contain:\n'> ($ Id.VSub_DollarName '$srcfile') <'\n'> <'\n'> < 'This indicates that another process is trying to use the same\n' > <'temporary object file, and libtool could not work around it because\n'> <'your compiler does not support '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-c\' and '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'-o\' together. If you\n'> < 'repeat this compilation, it may succeed, by chance, but you had better\n' > <'avoid parallel builds (make -j) in this platform, or get a better\n'> <compiler.> ) } ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {($ Id.VSub_DollarName '$RM')} {($ Id.VSub_DollarName '$removelist')} ) ] ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_FAILURE')} ) ] spids: [8636 8676] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$output_obj'))}) (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$output_obj'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ <X> ($ Id.VSub_DollarName '$obj'))} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_show_eval>} {(SQ <'$MV "$output_obj" "$obj"'>)} {(SQ <'error=$?; $opt_dry_run || $RM $removelist; exit $error'>)} ) ] spids: [8738 8766] ) ] ) ] spids: [8521 8534] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (BraceGroup children: [ (C {<func_write_libtool_object>} {(DQ ($ Id.VSub_DollarName '$libobj'))} {(DQ ($ Id.VSub_DollarName '$objdir') <'/'> ($ Id.VSub_DollarName '$objname'))} {(DQ ($ Id.VSub_DollarName '$objname'))} ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$need_locks'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<no>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:removelist) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$lockfile')} spids: [8835] ) ] ) (C {($ Id.VSub_DollarName '$RM')} {(DQ ($ Id.VSub_DollarName '$lockfile'))}) ] spids: [8818 8832] ) ] ) ] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_SUCCESS')} ) ] ) ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_help')}) (BraceGroup children: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$mode'))} {<Id.Lit_Equals '='>} {<compile>}) (C {<func_mode_compile>} { (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_Plus '+'> arg_word: {(DQ ($ Id.VSub_At '$@'))} ) ) } ) ] ) ] ) ] ) (command.ShFunction name: func_mode_help body: (BraceGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$mode')} arms: [ (case_arm pat_list: [{(DQ )}] action: [(C {<func_help>})] spids: [8911 8913 8927 -1] ) (case_arm pat_list: [{<clean>}] action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'Usage: '> ($ Id.VSub_DollarName '$progname') <' [OPTION]... --mode=clean RM [RM-OPTION]... FILE...\n'> <'\n'> <'Remove files from the build directory.\n'> <'\n'> < 'RM is the name of the program to use to delete files associated with each FILE\n' > <'(typically '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'/bin/rm\'). RM-OPTIONS are options (such as '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-f\') to be passed\n'> <'to RM.\n'> <'\n'> < 'If FILE is a libtool library, object or program, all the files associated\n' > <'with it are deleted. Otherwise, only FILE itself is deleted using RM.'> ) } ) ] spids: [8931 8932 8958 -1] ) (case_arm pat_list: [{<compile>}] action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'Usage: '> ($ Id.VSub_DollarName '$progname') <' [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE\n'> <'\n'> <'Compile a source file into a libtool library object.\n'> <'\n'> <'This mode accepts the following additional options:\n'> <'\n'> <' -o OUTPUT-FILE set the output file name to OUTPUT-FILE\n'> < ' -no-suppress do not suppress compiler output for multiple passes\n' > <' -prefer-pic try to building PIC objects only\n'> <' -prefer-non-pic try to building non-PIC objects only\n'> <' -shared do not build a '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'.o\' file suitable for static linking\n'> <' -static only build a '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'.o\' file suitable for static linking\n'> <' -Wc,FLAG pass FLAG directly to the compiler\n'> <'\n'> <'COMPILE-COMMAND is a command to be used in creating a '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'standard\' object file\n'> <'from the given SOURCEFILE.\n'> <'\n'> <'The output file name is determined by removing the directory component from\n'> <'SOURCEFILE, then substituting the C source code suffix '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'.c\' with the\n'> <'library object suffix, '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'.lo\'.'> ) } ) ] spids: [8962 8963 9005 -1] ) (case_arm pat_list: [{<execute>}] action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'Usage: '> ($ Id.VSub_DollarName '$progname') <' [OPTION]... --mode=execute COMMAND [ARGS]...\n'> <'\n'> <'Automatically set library path, then run a program.\n'> <'\n'> <'This mode accepts the following additional options:\n'> <'\n'> <' -dlopen FILE add the directory containing FILE to the library path\n'> <'\n'> <'This mode sets the library path environment variable according to '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-dlopen\'\n'> <'flags.\n'> <'\n'> < 'If any of the ARGS are libtool executable wrappers, then they are translated\n' > <'into their corresponding uninstalled binary, and any of their required library\n'> <'directories are added to the library path.\n'> <'\n'> <'Then, COMMAND is executed, with ARGS as arguments.'> ) } ) ] spids: [9009 9010 9040 -1] ) (case_arm pat_list: [{<finish>}] action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'Usage: '> ($ Id.VSub_DollarName '$progname') <' [OPTION]... --mode=finish [LIBDIR]...\n'> <'\n'> <'Complete the installation of libtool libraries.\n'> <'\n'> <'Each LIBDIR is a directory that contains libtool libraries.\n'> <'\n'> <'The commands that this mode executes may require superuser privileges. Use\n'> <'the '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'--dry-run\' option if you just want to see what would be executed.'> ) } ) ] spids: [9044 9045 9067 -1] ) (case_arm pat_list: [{<install>}] action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'Usage: '> ($ Id.VSub_DollarName '$progname') <' [OPTION]... --mode=install INSTALL-COMMAND...\n'> <'\n'> <'Install executables or libraries.\n'> <'\n'> < 'INSTALL-COMMAND is the installation command. The first component should be\n' > <'either the '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'install\' or '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'cp\' program.\n'> <'\n'> <'The following components of INSTALL-COMMAND are treated specially:\n'> <'\n'> <' -inst-prefix-dir PREFIX-DIR Use PREFIX-DIR as a staging area for installation\n'> <'\n'> < 'The rest of the components are interpreted as arguments to that command (only\n' > <'BSD-compatible install options are recognized).'> ) } ) ] spids: [9071 9072 9101 -1] ) (case_arm pat_list: [{<link>}] action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'Usage: '> ($ Id.VSub_DollarName '$progname') <' [OPTION]... --mode=link LINK-COMMAND...\n'> <'\n'> <'Link object files or libraries together to form another library, or to\n'> <'create an executable program.\n'> <'\n'> <'LINK-COMMAND is a command using the C compiler that you would use to create\n'> <'a program from several object files.\n'> <'\n'> <'The following components of LINK-COMMAND are treated specially:\n'> <'\n'> <' -all-static do not do any dynamic linking at all\n'> <' -avoid-version do not add a version suffix if possible\n'> < ' -bindir BINDIR specify path to binaries directory (for systems where\n' > <' libraries must be found in the PATH setting at runtime)\n'> <' -dlopen FILE '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-dlpreopen\' FILE if it cannot be dlopened at runtime\n'> <' -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols\n'> < ' -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3)\n' > <' -export-symbols SYMFILE\n'> <' try to export only the symbols listed in SYMFILE\n'> <' -export-symbols-regex REGEX\n'> <' try to export only the symbols matching REGEX\n'> <' -LLIBDIR search LIBDIR for required installed libraries\n'> < ' -lNAME OUTPUT-FILE requires the installed library libNAME\n' > <' -module build a library that can dlopened\n'> <' -no-fast-install disable the fast-install mode\n'> <' -no-install link a not-installable executable\n'> < ' -no-undefined declare that a library does not refer to external symbols\n' > <' -o OUTPUT-FILE create OUTPUT-FILE from the specified objects\n'> < ' -objectlist FILE Use a list of object files found in FILE to specify objects\n' > <' -precious-files-regex REGEX\n'> <' don\'t remove output files matching REGEX\n'> <' -release RELEASE specify package release information\n'> < ' -rpath LIBDIR the created library will eventually be installed in LIBDIR\n' > <' -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries\n'> <' -shared only do dynamic linking of libtool libraries\n'> <' -shrext SUFFIX override the standard shared library file extension\n'> < ' -static do not do any dynamic linking of uninstalled libtool libraries\n' > <' -static-libtool-libs\n'> < ' do not do any dynamic linking of libtool libraries\n' > <' -version-info CURRENT[:REVISION[:AGE]]\n'> < ' specify library version info [each variable defaults to 0]\n' > <' -weak LIBNAME declare that the target provides the LIBNAME interface\n'> <' -Wc,FLAG\n'> < ' -Xcompiler FLAG pass linker-specific FLAG directly to the compiler\n' > <' -Wl,FLAG\n'> <' -Xlinker FLAG pass linker-specific FLAG directly to the linker\n'> < ' -XCClinker FLAG pass link-specific FLAG to the compiler driver (CC)\n' > <'\n'> <'All other options (arguments beginning with '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'-\') are ignored.\n'> <'\n'> <'Every other argument is treated as a filename. Files ending in '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'.la\' are\n'> <'treated as uninstalled libtool libraries, other files are standard or library\n'> <'object files.\n'> <'\n'> <'If the OUTPUT-FILE ends in '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'.la\', then a libtool library is created,\n'> <'only library objects ('> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'.lo\' files) may be specified, and '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-rpath\' is\n'> <'required, except when creating a convenience library.\n'> <'\n'> <'If OUTPUT-FILE ends in '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'.a\' or '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'.lib\', then a standard library is created\n'> <'using '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'ar\' and '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'ranlib\', or on Windows using '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'lib\'.\n'> <'\n'> <'If OUTPUT-FILE ends in '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'.lo\' or '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <.> (${ Id.VSub_Name objext) <'\', then a reloadable object file\n'> <'is created, otherwise an executable program is created.'> ) } ) ] spids: [9105 9106 9211 -1] ) (case_arm pat_list: [{<uninstall>}] action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'Usage: '> ($ Id.VSub_DollarName '$progname') <' [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE...\n'> <'\n'> <'Remove libraries from an installation directory.\n'> <'\n'> < 'RM is the name of the program to use to delete files associated with each FILE\n' > <'(typically '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'/bin/rm\'). RM-OPTIONS are options (such as '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-f\') to be passed\n'> <'to RM.\n'> <'\n'> < 'If FILE is a libtool library, all the files associated with it are deleted.\n' > <'Otherwise, only FILE itself is deleted using RM.'> ) } ) ] spids: [9215 9216 9242 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<func_fatal_help>} { (DQ <'invalid operation mode '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$mode') <'\''> ) } ) ] spids: [9246 9247 9260 -1] ) ] ) (C {<echo>}) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'Try '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$progname') <' --help\' for more information about other modes.'> ) } ) ] ) ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {($ Id.VSub_DollarName '$opt_help')}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$opt_help'))} {<Id.Lit_Equals '='>} {<Id.Lit_Colon ':'>} ) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<func_mode_help>})] spids: [9293 9306] ) ] else_action: [ (command.Pipeline children: [ (BraceGroup children: [ (C {<func_help>} {<noexit>}) (command.ForEach iter_name: mode iter_words: [ {<compile>} {<link>} {<execute>} {<install>} {<finish>} {<uninstall>} {<clean>} ] do_arg_iter: F body: (command.DoGroup children:[(C {<func_mode_help>})]) ) ] ) (C {<sed>} {<-n>} {(SQ <'1p; 2,$s/^Usage:/ or: /p'>)}) ] negated: F ) (command.Pipeline children: [ (BraceGroup children: [ (C {<func_help>} {<noexit>}) (command.ForEach iter_name: mode iter_words: [ {<compile>} {<link>} {<execute>} {<install>} {<finish>} {<uninstall>} {<clean>} ] do_arg_iter: F body: (command.DoGroup children:[(C {<echo>}) (C {<func_mode_help>})]) ) ] ) (C {<sed>} { (SQ <'1d\n'> <' /^When reporting/,/^Report/{\n'> <'\tH\n'> <'\td\n'> <' }\n'> <' $x\n'> <' /information about other modes/d\n'> <' /more detailed .*MODE/d\n'> <' s/^Usage:.*--mode=\\([^ ]*\\) .*/Description of \\1 mode:/'> ) } ) ] negated: F ) ] ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_QMark '$?')} ) ] spids: [9285 9290] ) ] ) (command.ShFunction name: func_mode_execute body: (BraceGroup children: [ (C {($ Id.VSub_DollarName '$opt_debug')}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:cmd) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$nonopt'))} spids: [9456] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$cmd'))}) (C {<func_fatal_help>} {(DQ <'you must specify a COMMAND'>)}) ] ) (command.ForEach iter_name: file iter_words: [{($ Id.VSub_DollarName '$execute_dlfiles')}] do_arg_iter: F body: (command.DoGroup children: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {<-f>} {(DQ ($ Id.VSub_DollarName '$file'))}) (C {<func_fatal_help>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$file') <'\' is not a file'> ) } ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dir) op: assign_op.Equal rhs: (word.Empty) spids: [9520] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$file')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <.la>}] action: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<func_lalib_unsafe_p>} {(DQ ($ Id.VSub_DollarName '$file'))}) (C {<func_fatal_help>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$lib') <'\' is not a valid libtool archive'> ) } ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlname) op: assign_op.Equal rhs: (word.Empty) spids: [9563] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:library_names) op: assign_op.Equal rhs: (word.Empty) spids: [9566] ) ] ) (C {<func_source>} {(DQ ($ Id.VSub_DollarName '$file'))}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$dlname'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$library_names'))}) (C {<func_warning>} { (DQ (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$file') <'\' was not linked with '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'-export-dynamic\''> ) } ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [9581 9592] ) ] ) (C {<func_dirname>} {(DQ ($ Id.VSub_DollarName '$file'))} {(DQ )} {(DQ <.>)}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_dirname_result'))} spids: [9643] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-f>} { (DQ ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$objdir') <'/'> ($ Id.VSub_DollarName '$dlname') ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dir) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$objdir') ) } spids: [9668] ) ] ) ] spids: [9650 9665] ) ] else_action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<Id.KW_Bang '!'>} {<-f>} { (DQ ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$dlname') ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_fatal_error>} { (DQ <'cannot find '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$dlname') <'\' in '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$dir') <'\' or '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$objdir') <'\''> ) } ) ] spids: [9679 9694] ) ] ) ] ) ] spids: [9530 9532 9721 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <.lo>}] action: [ (C {<func_dirname>} {(DQ ($ Id.VSub_DollarName '$file'))} {(DQ )} {(DQ <.>)}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_dirname_result'))} spids: [9748] ) ] ) ] spids: [9725 9727 9754 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<func_warning>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-dlopen\' is ignored for non-libtool libraries and objects'> ) } ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [9758 9759 9773 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:absdir) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<cd>} {(DQ ($ Id.VSub_DollarName '$dir'))}) (C {<pwd>}) ] ) ) } spids: [9784] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$absdir'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$absdir'))} spids: [9810] ) ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<eval>} {<test>} {<-z>} {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) ($ Id.VSub_DollarName '$shlibpath_var') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} {($ Id.VSub_DollarName '$shlibpath_var') <Id.Lit_Equals '='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <dir> } ) ] spids: [9821 9835] ) ] else_action: [ (C {<eval>} {($ Id.VSub_DollarName '$shlibpath_var') <Id.Lit_Equals '='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <dir> <Id.Lit_Colon ':'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) ($ Id.VSub_DollarName '$shlibpath_var') } ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libtool_execute_magic) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$magic'))} spids: [9875] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:args) op: assign_op.Equal rhs: (word.Empty) spids: [9886] ) ] ) (command.ForEach iter_name: file do_arg_iter: T body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$file')} arms: [ (case_arm pat_list: [ {<-> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <.la>} {<Id.Lit_Star '*'> <.lo>} ] spids: [9904 9917 9919 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<func_ltwrapper_script_p>} {(DQ ($ Id.VSub_DollarName '$file'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_source>} {(DQ ($ Id.VSub_DollarName '$file'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:file) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$progdir') <'/'> ($ Id.VSub_DollarName '$program') ) } spids: [9953] ) ] ) ] spids: [9930 9939] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<func_ltwrapper_executable_p>} {(DQ ($ Id.VSub_DollarName '$file'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_ltwrapper_scriptname>} {(DQ ($ Id.VSub_DollarName '$file'))} ) (C {<func_source>} { (DQ ($ Id.VSub_DollarName '$func_ltwrapper_scriptname_result') ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:file) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$progdir') <'/'> ($ Id.VSub_DollarName '$program') ) } spids: [9991] ) ] ) ] spids: [9961 9970] ) ] ) ] spids: [9922 9923 10002 -1] ) ] ) (C {<func_quote_for_eval>} {(DQ ($ Id.VSub_DollarName '$file'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:args) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$args') <' '> ($ Id.VSub_DollarName '$func_quote_for_eval_result') ) } spids: [10019] ) ] ) ] ) ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$opt_dry_run'))} {<Id.Lit_Equals '='>} {<Xfalse>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$shlibpath_var'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} {(DQ <'export '> ($ Id.VSub_DollarName '$shlibpath_var'))}) ] spids: [10048 10059] ) ] ) (command.ForEach iter_name: lt_var iter_words: [ {<LANG>} {<LANGUAGE>} {<LC_ALL>} {<LC_CTYPE>} {<LC_COLLATE>} {<LC_MESSAGES>} ] do_arg_iter: F body: (command.DoGroup children: [ (C {<eval>} { (DQ <'if test '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'{save_'> ($ Id.VSub_DollarName '$lt_var') <'+set}'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' = set; then\n'> <' '> ($ Id.VSub_DollarName '$lt_var') <'='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <save_> ($ Id.VSub_DollarName '$lt_var') <'; export '> ($ Id.VSub_DollarName '$lt_var') <'\n'> <'\t else\n'> <'\t\t'> ($ Id.VSub_DollarName '$lt_unset') <' '> ($ Id.VSub_DollarName '$lt_var') <'\n'> <'\t fi'> ) } ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:exec_cmd) op: assign_op.Equal rhs: { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <cmd> ($ Id.VSub_DollarName '$args') ) } spids: [10142] ) ] ) ] spids: [10031 10045] ) ] else_action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$shlibpath_var'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'ECHO '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'shlibpath_var='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) ($ Id.VSub_DollarName '$shlibpath_var') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ) } ) (C {<echo>} {(DQ <'export '> ($ Id.VSub_DollarName '$shlibpath_var'))}) ] spids: [10157 10168] ) ] ) (C {($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_DollarName '$cmd') ($ Id.VSub_DollarName '$args'))} ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_SUCCESS')} ) ] ) ] ) ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$mode'))} {<Id.Lit_Equals '='>} {<execute>}) (C {<func_mode_execute>} { (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok:<Id.VTest_Plus '+'> arg_word:{(DQ ($ Id.VSub_At '$@'))}) ) } ) ] ) (command.ShFunction name: func_mode_finish body: (BraceGroup children: [ (C {($ Id.VSub_DollarName '$opt_debug')}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libdirs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$nonopt'))} spids: [10252] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:admincmds) op: assign_op.Equal rhs: (word.Empty) spids: [10258] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$finish_cmds') ($ Id.VSub_DollarName '$finish_eval') ) } ) (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$libdirs'))}) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ForEach iter_name: dir do_arg_iter: T body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libdirs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$libdirs') <' '> ($ Id.VSub_DollarName '$dir') ) } spids: [10295] ) ] ) ] ) ) (command.ForEach iter_name: libdir iter_words: [{($ Id.VSub_DollarName '$libdirs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$finish_cmds'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_execute_cmds>} {(DQ ($ Id.VSub_DollarName '$finish_cmds'))} {(SQ <'admincmds="$admincmds\n'>) (DQ ($ Id.VSub_DollarName '$cmd')) (SQ <'"'>)} ) ] spids: [10319 10330] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$finish_eval'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} {<Id.Lit_VarLike 'cmds='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$finish_eval') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) (command.AndOr ops: [Id.Op_DPipe Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {<eval>} {(DQ ($ Id.VSub_DollarName '$cmds'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:admincmds) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$admincmds') <'\n'> <' '> ($ Id.VSub_DollarName '$cmds') ) } spids: [10395] ) ] ) ] ) ] spids: [10357 10368] ) ] ) ] ) ) ] spids: [10262 10284] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {($ Id.VSub_DollarName '$opt_silent')}) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_SUCCESS')} ) ] ) (C {<echo>} {(DQ <---------------------------------------------------------------------->)}) (C {<echo>} {(DQ <'Libraries have been installed in:'>)}) (command.ForEach iter_name: libdir iter_words: [{($ Id.VSub_DollarName '$libdirs')}] do_arg_iter: F body: (command.DoGroup children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <' '> ($ Id.VSub_DollarName '$libdir'))}) ] ) ) (C {<echo>}) (C {<echo>} {(DQ <'If you ever happen to want to link against installed libraries'>)}) (C {<echo>} {(DQ <'in a given directory, LIBDIR, you must either use libtool, and'>)}) (C {<echo>} { (DQ <'specify the full pathname of the library, or use the '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-LLIBDIR\''> ) } ) (C {<echo>} {(DQ <'flag during linking and do at least one of the following:'>)}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$shlibpath_var'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<echo>} { (DQ <' - add LIBDIR to the '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$shlibpath_var') <'\' environment variable'> ) } ) (C {<echo>} {(DQ <' during execution'>)}) ] spids: [10498 10509] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$runpath_var'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<echo>} { (DQ <' - add LIBDIR to the '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$runpath_var') <'\' environment variable'> ) } ) (C {<echo>} {(DQ <' during linking'>)}) ] spids: [10532 10543] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$hardcode_libdir_flag_spec'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libdir) op: assign_op.Equal rhs: {<LIBDIR>} spids: [10580] ) ] ) (C {<eval>} { (DQ <'flag='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ($ Id.VSub_DollarName '$hardcode_libdir_flag_spec') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <' - use the '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$flag') <'\' linker flag'> ) } ) ] spids: [10566 10577] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$admincmds'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <' - have your system administrator run these commands:'> ($ Id.VSub_DollarName '$admincmds') ) } ) ] spids: [10608 10619] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-f>} {<'/etc/ld.so.conf'>}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<echo>} { (DQ <' - have your system administrator add LIBDIR to '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'/etc/ld.so.conf\''> ) } ) ] spids: [10633 10642] ) ] ) (C {<echo>}) (C {<echo>} {(DQ <'See any operating system documentation about shared libraries for'>)}) (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<solaris2.> <Id.Lit_LBracket '['> <6789> <Id.Lit_RBracket ']'>} {<solaris2.1> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'>} ] action: [ (C {<echo>} {(DQ <'more information, such as the ld(1), crle(1) and ld.so(8) manual'>)} ) (C {<echo>} {(DQ <pages.>)}) ] spids: [10675 10684 10701 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<echo>} {(DQ <'more information, such as the ld(1) and ld.so(8) manual pages.'>)} ) ] spids: [10704 10705 10715 -1] ) ] ) (C {<echo>} {(DQ <---------------------------------------------------------------------->)}) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_SUCCESS')} ) ] ) ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$mode'))} {<Id.Lit_Equals '='>} {<finish>}) (C {<func_mode_finish>} { (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok:<Id.VTest_Plus '+'> arg_word:{(DQ ($ Id.VSub_At '$@'))}) ) } ) ] ) (command.ShFunction name: func_mode_install body: (BraceGroup children: [ (C {($ Id.VSub_DollarName '$opt_debug')}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe Id.Op_DPipe] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$nonopt'))} {<Id.Lit_Equals '='>} {(DQ ($ Id.VSub_DollarName '$SHELL'))} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$nonopt'))} {<Id.Lit_Equals '='>} {<'/bin/sh'>} ) (command.Case to_match: {($ Id.VSub_DollarName '$nonopt')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <shtool> <Id.Lit_Star '*'>}] action: [(C {<Id.Lit_Colon ':'>})] spids: [10820 10823 10826 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [(C {<false>})] spids: [10828 10829 10832 -1] ) ] ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_quote_for_eval>} {(DQ ($ Id.VSub_DollarName '$nonopt'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:install_prog) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_quote_for_eval_result') <' '>)} spids: [10851] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg) op: assign_op.Equal rhs: {($ Id.VSub_Number '$1')} spids: [10858] ) ] ) (C {<shift>}) ] spids: [10781 10837] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:install_prog) op: assign_op.Equal rhs: (word.Empty) spids: [10868] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$nonopt')} spids: [10871] ) ] ) ] ) (C {<func_quote_for_eval>} {(DQ ($ Id.VSub_DollarName '$arg'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:install_prog) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$install_prog') ($ Id.VSub_DollarName '$func_quote_for_eval_result') ) } spids: [10894] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:install_shared_prog) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$install_prog')} spids: [10901] ) ] ) (command.Case to_match: {(DQ <' '> ($ Id.VSub_DollarName '$install_prog') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <Id.Lit_LBracket '['> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\\\'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\ '>) <'/'> <Id.Lit_RBracket ']'> <cp> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\ '> ) <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:install_cp) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [10927] ) ] ) ] spids: [10916 10925 10930 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:install_cp) op: assign_op.Equal rhs: {<false>} spids: [10936] ) ] ) ] spids: [10933 10934 10939 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dest) op: assign_op.Equal rhs: (word.Empty) spids: [10950] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:files) op: assign_op.Equal rhs: (word.Empty) spids: [10953] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opts) op: assign_op.Equal rhs: (word.Empty) spids: [10956] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [10959] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:install_type) op: assign_op.Equal rhs: (word.Empty) spids: [10962] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:isdir) op: assign_op.Equal rhs: {<no>} spids: [10965] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:stripme) op: assign_op.Equal rhs: (word.Empty) spids: [10969] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:no_mode) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [10972] ) ] ) (command.ForEach iter_name: arg do_arg_iter: T body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg2) op: assign_op.Equal rhs: (word.Empty) spids: [10984] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$dest'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:files) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$files') <' '> ($ Id.VSub_DollarName '$dest') ) } spids: [11001] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dest) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$arg')} spids: [11009] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [10987 10998] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$arg')} arms: [ (case_arm pat_list: [{<-d>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:isdir) op: assign_op.Equal rhs: {<yes>} spids: [11030] ) ] ) ] spids: [11027 11028 11033 -1] ) (case_arm pat_list: [{<-f>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {($ Id.VSub_DollarName '$install_cp')}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<Id.Lit_Colon ':'>}) terminator: <Id.Op_Semi _> ) ] spids: [11040 11045] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$arg')} spids: [11053] ) ] ) ] ) ] spids: [11036 11037 11060 -1] ) (case_arm pat_list: [{<-g>} {<-m>} {<-o>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$arg')} spids: [11075] ) ] ) ] spids: [11063 11072 11079 -1] ) (case_arm pat_list: [{<-s>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:stripme) op: assign_op.Equal rhs: {(DQ <' -s'>)} spids: [11086] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [11082 11083 11095 -1] ) (case_arm pat_list: [{<-> <Id.Lit_Star '*'>}] spids: [11098 11100 11103 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$prev'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ <x> ($ Id.VSub_DollarName '$prev'))} {<Id.Lit_Equals '='>} {<x-m>} ) (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$install_override_mode' ) ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg2) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$install_override_mode')} spids: [11155] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:no_mode) op: assign_op.Equal rhs: {<false>} spids: [11159] ) ] ) ] spids: [11128 11152] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [11166] ) ] ) ] spids: [11114 11125] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dest) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$arg')} spids: [11172] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] ) ] spids: [11106 11107 11182 -1] ) ] ) (C {<func_quote_for_eval>} {(DQ ($ Id.VSub_DollarName '$arg'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:install_prog) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$install_prog') <' '> ($ Id.VSub_DollarName '$func_quote_for_eval_result') ) } spids: [11200] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$arg2'))}) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<func_quote_for_eval>} {(DQ ($ Id.VSub_DollarName '$arg2'))})] spids: [11208 11219] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:install_shared_prog) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$install_shared_prog') <' '> ($ Id.VSub_DollarName '$func_quote_for_eval_result') ) } spids: [11232] ) ] ) ] ) ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$install_prog'))}) (C {<func_fatal_help>} {(DQ <'you must specify an install program'>)}) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$prev'))}) (C {<func_fatal_help>} { (DQ <'the '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$prev') <'\' option requires an argument'> ) } ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$install_override_mode'))}) (C {($ Id.VSub_DollarName '$no_mode')}) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {($ Id.VSub_DollarName '$install_cp')}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<Id.Lit_Colon ':'>}) terminator: <Id.Op_Semi _> ) ] spids: [11305 11310] ) ] else_action: [ (C {<func_quote_for_eval>} {(DQ ($ Id.VSub_DollarName '$install_override_mode'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:install_shared_prog) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$install_shared_prog') <' -m '> ($ Id.VSub_DollarName '$func_quote_for_eval_result') ) } spids: [11325] ) ] ) ] ) ] spids: [11287 11302] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$files'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$dest'))}) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<func_fatal_help>} {(DQ <'no file or destination specified'>)})] spids: [11354 11365] ) ] else_action: [(C {<func_fatal_help>} {(DQ <'you must specify a destination'>)})] ) ] spids: [11340 11351] ) ] ) (C {<func_stripname>} {(SQ )} {(SQ <'/'>)} {(DQ ($ Id.VSub_DollarName '$dest'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dest) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [11410] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-d>} {(DQ ($ Id.VSub_DollarName '$dest'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:isdir) op: assign_op.Equal rhs: {<yes>} spids: [11429] ) ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$isdir'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:destdir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$dest'))} spids: [11449] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:destname) op: assign_op.Equal rhs: (word.Empty) spids: [11455] ) ] ) ] spids: [11433 11446] ) ] else_action: [ (C {<func_dirname_and_basename>} {(DQ ($ Id.VSub_DollarName '$dest'))} {(DQ )} {(DQ <.>)}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:destdir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_dirname_result'))} spids: [11475] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:destname) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_basename_result'))} spids: [11481] ) ] ) (command.Sentence child: (C {<set>} {<dummy>} {($ Id.VSub_DollarName '$files')}) terminator: <Id.Op_Semi _> ) (C {<shift>}) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_Pound '$#'))} {<-gt>} {<1>}) (C {<func_fatal_help>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$dest') <'\' is not a directory'> ) } ) ] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$destdir')} arms: [ (case_arm pat_list: [ {<Id.Lit_LBracket '['> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\\\'> ) <'/'> <Id.Lit_RBracket ']'> <Id.Lit_Star '*'> } {<Id.Lit_LBracket '['> <A-Za-z> <Id.Lit_RBracket ']'> <Id.Lit_Colon ':'> <Id.Lit_LBracket '['> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) <'/'> <Id.Lit_RBracket ']'> <Id.Lit_Star '*'> } ] spids: [11535 11552 11554 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ForEach iter_name: file iter_words: [{($ Id.VSub_DollarName '$files')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$file')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <.lo>}] spids: [11580 11582 11584 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<func_fatal_help>} { (DQ (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$destdir') <'\' must be an absolute directory name'> ) } ) ] spids: [11587 11588 11600 -1] ) ] ) ] ) ) ] spids: [11557 11558 11609 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libtool_install_magic) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$magic'))} spids: [11624] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:staticlibs) op: assign_op.Equal rhs: (word.Empty) spids: [11631] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:future_libdirs) op: assign_op.Equal rhs: (word.Empty) spids: [11634] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:current_libdirs) op: assign_op.Equal rhs: (word.Empty) spids: [11637] ) ] ) (command.ForEach iter_name: file iter_words: [{($ Id.VSub_DollarName '$files')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$file')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <.> ($ Id.VSub_DollarName '$libext')}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:staticlibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$staticlibs') <' '> ($ Id.VSub_DollarName '$file') ) } spids: [11674] ) ] ) ] spids: [11664 11667 11682 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <.la>}] action: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<func_lalib_unsafe_p>} {(DQ ($ Id.VSub_DollarName '$file'))}) (C {<func_fatal_help>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$file') <'\' is not a valid libtool archive'> ) } ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:library_names) op: assign_op.Equal rhs: (word.Empty) spids: [11715] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:old_library) op: assign_op.Equal rhs: (word.Empty) spids: [11718] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:relink_command) op: assign_op.Equal rhs: (word.Empty) spids: [11721] ) ] ) (C {<func_source>} {(DQ ($ Id.VSub_DollarName '$file'))}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$destdir'))} {<Id.Lit_Equals '='>} {(DQ <X> ($ Id.VSub_DollarName '$libdir'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$current_libdirs') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$libdir') <' '>) <Id.Lit_Star '*'> } ] spids: [11766 11773 11775 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:current_libdirs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$current_libdirs') <' '> ($ Id.VSub_DollarName '$libdir') ) } spids: [11781] ) ] ) ] spids: [11778 11779 11788 -1] ) ] ) ] spids: [11736 11753] ) ] else_action: [ (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$future_libdirs') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$libdir') <' '>) <Id.Lit_Star '*'> } ] spids: [11811 11818 11820 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:future_libdirs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$future_libdirs') <' '> ($ Id.VSub_DollarName '$libdir') ) } spids: [11826] ) ] ) ] spids: [11823 11824 11833 -1] ) ] ) ] ) (C {<func_dirname>} {(DQ ($ Id.VSub_DollarName '$file'))} {(DQ <'/'>)} {(DQ )}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_dirname_result'))} spids: [11857] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dir) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dir') ($ Id.VSub_DollarName '$objdir') ) } spids: [11863] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$relink_command'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:inst_prefix_dir) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_DollarName '$destdir'))} ) (C {($ Id.VSub_DollarName '$SED')} {<-e>} { (DQ <'s%'> ($ Id.VSub_DollarName '$libdir') <Id.Lit_Dollar '$'> <'%%'> ) } ) ] negated: F ) ) } spids: [11889] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$inst_prefix_dir'))} {<Id.Lit_Equals '='>} {(DQ ($ Id.VSub_DollarName '$destdir'))} ) (C {<func_fatal_error>} { (DQ <'error: cannot install '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$file') <'\' to a directory not ending in '> ($ Id.VSub_DollarName '$libdir') ) } ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$inst_prefix_dir'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:relink_command) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ ($ Id.VSub_DollarName '$relink_command' ) ) } ) (C {($ Id.VSub_DollarName '$SED')} { (DQ < 's%@inst_prefix_dir@%-inst-prefix-dir ' > ($ Id.VSub_DollarName '$inst_prefix_dir') <'%'> ) } ) ] negated: F ) ) } spids: [11987] ) ] ) ] spids: [11969 11980] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:relink_command) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ ($ Id.VSub_DollarName '$relink_command' ) ) } ) (C {($ Id.VSub_DollarName '$SED')} {(DQ <'s%@inst_prefix_dir@%%'>)} ) ] negated: F ) ) } spids: [12012] ) ] ) ] ) (C {<func_warning>} { (DQ <'relinking '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$file') <'\''> ) } ) (C {<func_show_eval>} {(DQ ($ Id.VSub_DollarName '$relink_command'))} {(SQ <'func_fatal_error "error: relink \\`$file'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\\''> ) (SQ <' with the above command before installing it"'>) } ) ] spids: [11871 11882] ) ] ) (command.Sentence child: (C {<set>} {<dummy>} {($ Id.VSub_DollarName '$library_names')}) terminator: <Id.Op_Semi _> ) (C {<shift>}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_Number '$1'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:realname) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [12095] ) ] ) (C {<shift>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:srcname) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$realname'))} spids: [12105] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$relink_command'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:srcname) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$realname')) <T>} spids: [12121] ) ] ) ] ) (C {<func_show_eval>} { (DQ ($ Id.VSub_DollarName '$install_shared_prog') <' '> ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$srcname') <' '> ($ Id.VSub_DollarName '$destdir') <'/'> ($ Id.VSub_DollarName '$realname') ) } {(SQ <'exit $?'>)} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tstripme) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$stripme'))} spids: [12154] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$host_os')} arms: [ (case_arm pat_list: [ {<cygwin> <Id.Lit_Star '*'>} {<mingw> <Id.Lit_Star '*'>} {<pw32> <Id.Lit_Star '*'>} {<cegcc> <Id.Lit_Star '*'>} ] action: [ (command.Case to_match: {($ Id.VSub_DollarName '$realname')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <.dll.a>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tstripme) op: assign_op.Equal rhs: {(DQ )} spids: [12199] ) ] ) ] spids: [12194 12196 12204 -1] ) ] ) ] spids: [12167 12184 12210 -1] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$tstripme'))} ) (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$striplib'))} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_show_eval>} { (DQ ($ Id.VSub_DollarName '$striplib') <' '> ($ Id.VSub_DollarName '$destdir') <'/'> ($ Id.VSub_DollarName '$realname') ) } {(SQ <'exit $?'>)} ) ] spids: [12216 12237] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_Pound '$#'))} {<-gt>} {<0>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ForEach iter_name: linkname do_arg_iter: T body: (command.DoGroup children: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$linkname'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ ($ Id.VSub_DollarName '$realname'))} ) (C {<func_show_eval>} { (DQ <'(cd '> ($ Id.VSub_DollarName '$destdir') <' && { '> ($ Id.VSub_DollarName '$LN_S') <' -f '> ($ Id.VSub_DollarName '$realname') <' '> ($ Id.VSub_DollarName '$linkname') <' || { '> ($ Id.VSub_DollarName '$RM') <' '> ($ Id.VSub_DollarName '$linkname') <' && '> ($ Id.VSub_DollarName '$LN_S') <' '> ($ Id.VSub_DollarName '$realname') <' '> ($ Id.VSub_DollarName '$linkname') <'; }; })'> ) } ) ] ) ] ) ) ] spids: [12259 12272] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lib) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$destdir') <'/'> ($ Id.VSub_DollarName '$realname') ) } spids: [12352] ) ] ) (C {<func_execute_cmds>} {(DQ ($ Id.VSub_DollarName '$postinstall_cmds'))} {(SQ <'exit $?'>)} ) ] spids: [12081 12092] ) ] ) (C {<func_basename>} {(DQ ($ Id.VSub_DollarName '$file'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:name) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_basename_result'))} spids: [12386] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:instname) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$name') ) <i> } spids: [12392] ) ] ) (C {<func_show_eval>} { (DQ ($ Id.VSub_DollarName '$install_prog') <' '> ($ Id.VSub_DollarName '$instname') <' '> ($ Id.VSub_DollarName '$destdir') <'/'> ($ Id.VSub_DollarName '$name') ) } {(SQ <'exit $?'>)} ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$old_library'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:staticlibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$staticlibs') <' '> ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$old_library') ) } spids: [12433] ) ] ) ] ) ] spids: [11686 11688 12443 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <.lo>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$destname'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:destfile) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$destdir') <'/'> ($ Id.VSub_DollarName '$destname') ) } spids: [12475] ) ] ) ] spids: [12461 12472] ) ] else_action: [ (C {<func_basename>} {(DQ ($ Id.VSub_DollarName '$file'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:destfile) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_basename_result'))} spids: [12493] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:destfile) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$destdir') <'/'> ($ Id.VSub_DollarName '$destfile') ) } spids: [12499] ) ] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$destfile')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <.lo>}] action: [ (C {<func_lo2o>} {(DQ ($ Id.VSub_DollarName '$destfile'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:staticdest) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_lo2o_result')} spids: [12534] ) ] ) ] spids: [12522 12524 12538 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <.> ($ Id.VSub_DollarName '$objext')}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:staticdest) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$destfile'))} spids: [12547] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:destfile) op: assign_op.Equal rhs: (word.Empty) spids: [12553] ) ] ) ] spids: [12541 12544 12556 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<func_fatal_help>} { (DQ <'cannot copy a libtool object to '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$destfile') <'\''> ) } ) ] spids: [12559 12560 12573 -1] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$destfile'))}) (C {<func_show_eval>} { (DQ ($ Id.VSub_DollarName '$install_prog') <' '> ($ Id.VSub_DollarName '$file') <' '> ($ Id.VSub_DollarName '$destfile') ) } {(SQ <'exit $?'>)} ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$build_old_libs'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_lo2o>} {(DQ ($ Id.VSub_DollarName '$file'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:staticobj) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_lo2o_result')} spids: [12643] ) ] ) (C {<func_show_eval>} { (DQ ($ Id.VSub_DollarName '$install_prog') <' '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <'staticobj '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <staticdest> ) } {(SQ <'exit $?'>)} ) ] spids: [12616 12629] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_SUCCESS')} ) ] spids: [12447 12449 12671 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$destname'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:destfile) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$destdir') <'/'> ($ Id.VSub_DollarName '$destname') ) } spids: [12697] ) ] ) ] spids: [12683 12694] ) ] else_action: [ (C {<func_basename>} {(DQ ($ Id.VSub_DollarName '$file'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:destfile) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_basename_result'))} spids: [12715] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:destfile) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$destdir') <'/'> ($ Id.VSub_DollarName '$destfile') ) } spids: [12721] ) ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:stripped_ext) op: assign_op.Equal rhs: {(DQ )} spids: [12745] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$file')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <.exe>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<Id.KW_Bang '!'>} {<-f>} {(DQ ($ Id.VSub_DollarName '$file'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_stripname>} {(SQ )} {(SQ <.exe>)} {(DQ ($ Id.VSub_DollarName '$file'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:file) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [12792] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:stripped_ext) op: assign_op.Equal rhs: {(DQ <.exe>)} spids: [12796] ) ] ) ] spids: [12762 12775] ) ] ) ] spids: [12757 12759 12805 -1] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <cygwin> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <mingw> <Id.Lit_Star '*'>} ] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<func_ltwrapper_executable_p>} {(DQ ($ Id.VSub_DollarName '$file'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_ltwrapper_scriptname>} {(DQ ($ Id.VSub_DollarName '$file'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:wrapper) op: assign_op.Equal rhs: { ($ Id.VSub_DollarName '$func_ltwrapper_scriptname_result' ) } spids: [12854] ) ] ) ] spids: [12835 12844] ) ] else_action: [ (C {<func_stripname>} {(SQ )} {(SQ <.exe>)} {(DQ ($ Id.VSub_DollarName '$file'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:wrapper) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [12875] ) ] ) ] ) ] spids: [12823 12832 12882 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:wrapper) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$file')} spids: [12889] ) ] ) ] spids: [12885 12886 12893 -1] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<func_ltwrapper_script_p>} {(DQ ($ Id.VSub_DollarName '$wrapper'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:notinst_deplibs) op: assign_op.Equal rhs: (word.Empty) spids: [12911] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:relink_command) op: assign_op.Equal rhs: (word.Empty) spids: [12914] ) ] ) (C {<func_source>} {(DQ ($ Id.VSub_DollarName '$wrapper'))}) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$generated_by_libtool_version') ) } ) (C {<func_fatal_error>} { (DQ <'invalid libtool wrapper script '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$wrapper') <'\''> ) } ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize) op: assign_op.Equal rhs: {<yes>} spids: [12953] ) ] ) (command.ForEach iter_name: lib iter_words: [{($ Id.VSub_DollarName '$notinst_deplibs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libdir) op: assign_op.Equal rhs: (word.Empty) spids: [12973] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-f>} {(DQ ($ Id.VSub_DollarName '$lib'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_source>} {(DQ ($ Id.VSub_DollarName '$lib'))} ) ] spids: [12976 12987] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libfile) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$libdir') <'/'>) (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_DollarName '$lib'))} ) (C {($ Id.VSub_DollarName '$SED')} {(SQ <'s%^.*/%%g'>)} ) ] negated: F ) ) } spids: [13000] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$libdir') ) } ) (C {<test>} {<Id.KW_Bang '!'>} {<-f>} { (DQ ($ Id.VSub_DollarName '$libfile' ) ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_warning>} { (DQ (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$lib') <'\' has not been installed in '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$libdir') <'\''> ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize) op: assign_op.Equal rhs: {<no>} spids: [13065] ) ] ) ] spids: [13027 13050] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:relink_command) op: assign_op.Equal rhs: (word.Empty) spids: [13076] ) ] ) (C {<func_source>} {(DQ ($ Id.VSub_DollarName '$wrapper'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:outputname) op: assign_op.Equal rhs: (word.Empty) spids: [13087] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} { (DQ ($ Id.VSub_DollarName '$fast_install') ) } {<Id.Lit_Equals '='>} {<no>} ) (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$relink_command') ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (BraceGroup children: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$finalize' ) ) } {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmpdir) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<func_mktempdir>}) ) } spids: [13139] ) ] ) (C {<func_basename>} { (DQ ($ Id.VSub_DollarName '$file') ($ Id.VSub_DollarName '$stripped_ext' ) ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:file) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$func_basename_result' ) ) } spids: [13155] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: outputname ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$tmpdir' ) <'/'> ($ Id.VSub_DollarName '$file') ) } spids: [13161] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: relink_command ) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C { ($ Id.VSub_DollarName '$ECHO' ) } {(DQ ($ Id.VSub_DollarName '$relink_command'))} ) (C { ($ Id.VSub_DollarName '$SED' ) } {(SQ <'s%@OUTPUT@%'>) (DQ ($ Id.VSub_DollarName '$outputname')) (SQ <'%g'>)} ) ] negated: F ) ) } spids: [13173] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C { ($ Id.VSub_DollarName '$opt_silent' ) } ) (BraceGroup children: [ (C {<func_quote_for_expand>} { (DQ ($ Id.VSub_DollarName '$relink_command' ) ) } ) (C {<eval>} { (DQ <'func_echo '> ($ Id.VSub_DollarName '$func_quote_for_expand_result' ) ) } ) ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<eval>} { (DQ ($ Id.VSub_DollarName '$relink_command' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<Id.Lit_Colon ':'>})] spids: [13225 13234] ) ] else_action: [ (C {<func_error>} { (DQ <'error: relink '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$file') <'\' with the above command before installing it'> ) } ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C { ($ Id.VSub_DollarName '$opt_dry_run' ) } ) (C {(${ Id.VSub_Name RM) <r>} { (DQ ($ Id.VSub_DollarName '$tmpdir' ) ) } ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue > ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:file) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$outputname' ) ) } spids: [13272] ) ] ) ] spids: [13123 13136] ) ] else_action: [ (C {<func_warning>} { (DQ <'cannot relink '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$file') <'\''> ) } ) ] ) ] ) ] ) ] spids: [13090 13113] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:file) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ ($ Id.VSub_DollarName '$file') ($ Id.VSub_DollarName '$stripped_ext') ) } ) (C {($ Id.VSub_DollarName '$SED')} { (DQ <'s%'> <Id.Lit_BadBackslash '\\'> <'([^/]*'> <Id.Lit_BadBackslash '\\'> <')'> <Id.Lit_Dollar '$'> <'%'> ($ Id.VSub_DollarName '$objdir') <'/'> <Id.Lit_BadBackslash '\\'> <'1%'> ) } ) ] negated: F ) ) } spids: [13304] ) ] ) ] ) ] spids: [12899 12908] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$install_prog') <Id.Lit_Comma ','> ($ Id.VSub_DollarName '$host') } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <'/usr/bin/install'> <Id.Lit_Star '*'> <Id.Lit_Comma ','> <Id.Lit_Star '*'> <cygwin> <Id.Lit_Star '*'> } ] action: [ (command.Case to_match: {($ Id.VSub_DollarName '$file') <Id.Lit_Colon ':'> ($ Id.VSub_DollarName '$destfile') } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <.exe> <Id.Lit_Colon ':'> <Id.Lit_Star '*'> <.exe> } ] spids: [13384 13389 13396 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'> <.exe> <Id.Lit_Colon ':'> <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:destfile) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$destfile') <.exe>} spids: [13406] ) ] ) ] spids: [13399 13403 13411 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'> <Id.Lit_Colon ':'> <Id.Lit_Star '*'> <.exe> } ] action: [ (C {<func_stripname>} {(SQ )} {(SQ <.exe>)} {(DQ ($ Id.VSub_DollarName '$destfile'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:destfile) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [13435] ) ] ) ] spids: [13414 13418 13439 -1] ) ] ) ] spids: [13365 13372 13445 -1] ) ] ) (C {<func_show_eval>} { (DQ ($ Id.VSub_DollarName '$install_prog') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <'stripme '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'file '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <destfile> ) } {(SQ <'exit $?'>)} ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$outputname'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {(${ Id.VSub_Name RM) <r>} {(DQ ($ Id.VSub_DollarName '$tmpdir'))} ) ] spids: [13472 13483] ) ] ) ] ) ] spids: [12675 12676 13499 -1] ) ] ) ] ) ) (command.ForEach iter_name: file iter_words: [{($ Id.VSub_DollarName '$staticlibs')}] do_arg_iter: F body: (command.DoGroup children: [ (C {<func_basename>} {(DQ ($ Id.VSub_DollarName '$file'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:name) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_basename_result'))} spids: [13528] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:oldlib) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$destdir') <'/'> ($ Id.VSub_DollarName '$name') ) } spids: [13539] ) ] ) (C {<func_show_eval>} { (DQ ($ Id.VSub_DollarName '$install_prog') <' '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <'file '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <oldlib> ) } {(SQ <'exit $?'>)} ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$stripme'))}) (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$old_striplib'))}) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_show_eval>} { (DQ ($ Id.VSub_DollarName '$old_striplib') <' '> ($ Id.VSub_DollarName '$oldlib') ) } {(SQ <'exit $?'>)} ) ] spids: [13565 13586] ) ] ) (C {<func_execute_cmds>} {(DQ ($ Id.VSub_DollarName '$old_postinstall_cmds'))} {(SQ <'exit $?'>)} ) ] ) ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$future_libdirs'))}) (C {<func_warning>} { (DQ <'remember to run '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$progname') <' --finish'> ($ Id.VSub_DollarName '$future_libdirs') <'\''> ) } ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$current_libdirs'))}) (C {($ Id.VSub_DollarName '$opt_finish')}) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:current_libdirs) op: assign_op.Equal rhs: {(DQ <' -n'> ($ Id.VSub_DollarName '$current_libdirs'))} spids: [13676] ) ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:exec_cmd) op: assign_op.Equal rhs: {(SQ <'$SHELL $progpath $preserve_args --finish$current_libdirs'>)} spids: [13683] ) ] ) ] spids: [13650 13665] ) ] else_action: [ (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_SUCCESS')} ) ] ) ] ) ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$mode'))} {<Id.Lit_Equals '='>} {<install>}) (C {<func_mode_install>} { (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok:<Id.VTest_Plus '+'> arg_word:{(DQ ($ Id.VSub_At '$@'))}) ) } ) ] ) (command.ShFunction name: func_generate_dlsyms body: (BraceGroup children: [ (C {($ Id.VSub_DollarName '$opt_debug')}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_outputname) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [13746] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_originator) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$2'))} spids: [13752] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_pic_p) op: assign_op.Equal rhs: { (DQ (braced_var_sub token: <Id.VSub_Number 3> suffix_op: (suffix_op.Unary tok:<Id.VTest_Hyphen -> arg_word:{<no>}) ) ) } spids: [13758] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_prefix) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_DollarName '$my_originator'))} ) (C {<sed>} {(SQ <'s%[^a-zA-Z0-9]%_%g'>)}) ] negated: F ) ) } spids: [13768] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_dlsyms) op: assign_op.Equal rhs: (word.Empty) spids: [13788] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$dlfiles') ($ Id.VSub_DollarName '$dlprefiles') ) } ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$dlself'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<no>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$NM'))}) (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$global_symbol_pipe'))} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_dlsyms) op: assign_op.Equal rhs: {(DQ (${ Id.VSub_Name my_outputname) <S.c>)} spids: [13844] ) ] ) ] spids: [13820 13841] ) ] else_action: [ (C {<func_error>} {(DQ <'not configured to extract global symbols from dlpreopened files'>)} ) ] ) ] spids: [13792 13817] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$my_dlsyms'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: {($ Id.VSub_DollarName '$my_dlsyms')} arms: [ (case_arm pat_list: [{(DQ )}] spids: [13891 13893 13895 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <.c>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:nlist) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> (${ Id.VSub_Name my_outputname) <.nm> ) } spids: [13907] ) ] ) (C {<func_show_eval>} { (DQ ($ Id.VSub_DollarName '$RM') <' '> ($ Id.VSub_DollarName '$nlist') <' '> (${ Id.VSub_Name nlist) <'S '> (${ Id.VSub_Name nlist) <T> ) } ) (C {<func_verbose>} { (DQ <'creating '> ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$my_dlsyms') ) } ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (command.Simple words: [ {($ Id.VSub_DollarName '$ECHO')} { (DQ <'/* '> ($ Id.VSub_DollarName '$my_dlsyms') <' - symbol resolution table for '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$my_outputname') <'\' dlsym emulation. */\n'> <'/* Generated by '> ($ Id.VSub_DollarName '$PROGRAM') <' (GNU '> ($ Id.VSub_DollarName '$PACKAGE') ($ Id.VSub_DollarName '$TIMESTAMP') <') '> ($ Id.VSub_DollarName '$VERSION') <' */\n'> <'\n'> <'#ifdef __cplusplus\n'> <'extern '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) <C> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' {\n'> <'#endif\n'> <'\n'> < '#if defined(__GNUC__) && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4))\n' > <'#pragma GCC diagnostic ignored '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <-Wstrict-prototypes> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'\n'> <'#endif\n'> <'\n'> <'/* External symbol declarations for the compiler. */'> ) } ] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$my_dlsyms') ) } ) ] do_fork: T ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$dlself'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_verbose>} { (DQ <'generating symbol list for '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$output') <'\''> ) } ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (command.Simple words: [{<echo>} {(SQ <': @PROGRAM@ '>)}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {(DQ ($ Id.VSub_DollarName '$nlist'))} ) ] do_fork: T ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:progfiles) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ ($ Id.VSub_DollarName '$objs') ($ Id.VSub_DollarName '$old_deplibs') ) } ) (C {($ Id.VSub_DollarName '$SP2NL')}) (C {($ Id.VSub_DollarName '$SED')} {(DQ ($ Id.VSub_DollarName '$lo2o'))} ) (C {($ Id.VSub_DollarName '$NL2SP')}) ] negated: F ) ) } spids: [14055] ) ] ) (command.ForEach iter_name: progfile iter_words: [{($ Id.VSub_DollarName '$progfiles')}] do_arg_iter: F body: (command.DoGroup children: [ (C {<func_verbose>} { (DQ <'extracting global C symbols from '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$progfile') <'\''> ) } ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {<eval>} { (DQ ($ Id.VSub_DollarName '$NM') <' '> ($ Id.VSub_DollarName '$progfile') <' | '> ($ Id.VSub_DollarName '$global_symbol_pipe') <' >> \''> ($ Id.VSub_DollarName '$nlist') <'\''> ) } ) ] ) ] ) ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$exclude_expsyms'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (BraceGroup children: [ (command.Simple words: [ {($ Id.VSub_DollarName '$EGREP')} {<-v>} { (DQ <' ('> ($ Id.VSub_DollarName '$exclude_expsyms') <')'> <Id.Lit_Dollar '$'> ) } {(DQ ($ Id.VSub_DollarName '$nlist'))} ] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {(DQ ($ Id.VSub_DollarName '$nlist')) <T>} ) ] do_fork: T ) (C {($ Id.VSub_DollarName '$MV')} {(DQ ($ Id.VSub_DollarName '$nlist')) <T>} {(DQ ($ Id.VSub_DollarName '$nlist'))} ) ] ) ] ) ] spids: [14128 14139] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$export_symbols_regex' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (BraceGroup children: [ (command.Simple words: [ {($ Id.VSub_DollarName '$EGREP')} {<-e>} { (DQ ($ Id.VSub_DollarName '$export_symbols_regex' ) ) } {(DQ ($ Id.VSub_DollarName '$nlist'))} ] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {(DQ ($ Id.VSub_DollarName '$nlist')) <T>} ) ] do_fork: T ) (C {($ Id.VSub_DollarName '$MV')} {(DQ ($ Id.VSub_DollarName '$nlist')) <T>} {(DQ ($ Id.VSub_DollarName '$nlist'))} ) ] ) ] ) ] spids: [14191 14202] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$export_symbols'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:export_symbols) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$outputname') <.exp> ) } spids: [14269] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (BraceGroup children: [ (C {($ Id.VSub_DollarName '$RM')} {($ Id.VSub_DollarName '$export_symbols')} ) (command.Simple words: [ {(${ Id.VSub_Name SED)} {<-n>} {<-e>} {(SQ <'/^: @PROGRAM@ $/d'>)} {<-e>} {(SQ <'s/^.* \\(.*\\)$/\\1/p'>)} ] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {(DQ ($ Id.VSub_DollarName '$nlist'))} ) (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: { (DQ ($ Id.VSub_DollarName '$export_symbols' ) ) } ) ] do_fork: T ) (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <cygwin> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <mingw> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <cegcc> <Id.Lit_Star '*'> } ] action: [ (command.Simple words: [{<echo>} {<EXPORTS>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: { (DQ ($ Id.VSub_DollarName '$output_objdir' ) <'/'> ($ Id.VSub_DollarName '$outputname') <.def> ) } ) ] do_fork: T ) (command.Simple words: [ {<cat>} { (DQ ($ Id.VSub_DollarName '$export_symbols' ) ) } ] redirects: [ (redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: { (DQ ($ Id.VSub_DollarName '$output_objdir' ) <'/'> ($ Id.VSub_DollarName '$outputname') <.def> ) } ) ] do_fork: T ) ] spids: [14328 14344 14377 -1] ) ] ) ] ) ] ) ] spids: [14255 14266] ) ] else_action: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (BraceGroup children: [ (command.Simple words: [ {(${ Id.VSub_Name SED)} {<-e>} {(SQ <'s/\\([].[*^$]\\)/\\\\\\1/g'>)} {<-e>} {(SQ <'s/^/ /'>)} {<-e>} {(SQ <'s/$/$/'>)} ] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: { (DQ ($ Id.VSub_DollarName '$export_symbols') ) } ) (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$outputname') <.exp> ) } ) ] do_fork: T ) (command.Simple words: [ {($ Id.VSub_DollarName '$GREP')} {<-f>} { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$outputname') <.exp> ) } ] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {(DQ ($ Id.VSub_DollarName '$nlist'))} ) (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {(DQ ($ Id.VSub_DollarName '$nlist')) <T>} ) ] do_fork: T ) (C {($ Id.VSub_DollarName '$MV')} {(DQ ($ Id.VSub_DollarName '$nlist')) <T>} {(DQ ($ Id.VSub_DollarName '$nlist'))} ) (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <cygwin> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <mingw> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <cegcc> <Id.Lit_Star '*'>} ] action: [ (command.Simple words: [{<echo>} {<EXPORTS>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: { (DQ ($ Id.VSub_DollarName '$output_objdir' ) <'/'> ($ Id.VSub_DollarName '$outputname') <.def> ) } ) ] do_fork: T ) (command.Simple words: [ {<cat>} {(DQ ($ Id.VSub_DollarName '$nlist'))} ] redirects: [ (redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: { (DQ ($ Id.VSub_DollarName '$output_objdir' ) <'/'> ($ Id.VSub_DollarName '$outputname') <.def> ) } ) ] do_fork: T ) ] spids: [14478 14494 14527 -1] ) ] ) ] ) ] ) ] ) ] spids: [14006 14019] ) ] ) (command.ForEach iter_name: dlprefile iter_words: [{($ Id.VSub_DollarName '$dlprefiles')}] do_arg_iter: F body: (command.DoGroup children: [ (C {<func_verbose>} { (DQ <'extracting global C symbols from '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$dlprefile') <'\''> ) } ) (C {<func_basename>} {(DQ ($ Id.VSub_DollarName '$dlprefile'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:name) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_basename_result'))} spids: [14572] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (BraceGroup children: [ (command.Simple words: [ {($ Id.VSub_DollarName '$ECHO')} {(DQ <': '> ($ Id.VSub_DollarName '$name') <' '>)} ] redirects: [ (redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: {(DQ ($ Id.VSub_DollarName '$nlist'))} ) ] do_fork: T ) (C {<eval>} { (DQ ($ Id.VSub_DollarName '$NM') <' '> ($ Id.VSub_DollarName '$dlprefile') <' 2>/dev/null | '> ($ Id.VSub_DollarName '$global_symbol_pipe') <' >> \''> ($ Id.VSub_DollarName '$nlist') <'\''> ) } ) ] ) ] ) ] ) ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (BraceGroup children: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {<-f>} {(DQ ($ Id.VSub_DollarName '$nlist'))}) (command.Simple words: [{<Id.Lit_Colon ':'>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {(DQ ($ Id.VSub_DollarName '$nlist'))} ) ] do_fork: T ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$exclude_expsyms'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Simple words: [ {($ Id.VSub_DollarName '$EGREP')} {<-v>} { (DQ <' ('> ($ Id.VSub_DollarName '$exclude_expsyms') <')'> <Id.Lit_Dollar '$'> ) } {(DQ ($ Id.VSub_DollarName '$nlist'))} ] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {(DQ ($ Id.VSub_DollarName '$nlist')) <T>} ) ] do_fork: T ) (C {($ Id.VSub_DollarName '$MV')} {(DQ ($ Id.VSub_DollarName '$nlist')) <T>} {(DQ ($ Id.VSub_DollarName '$nlist'))} ) ] spids: [14652 14663] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Pipeline children: [ (command.Simple words: [ {($ Id.VSub_DollarName '$GREP')} {<-v>} {(DQ <'^: '>)} ] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {(DQ ($ Id.VSub_DollarName '$nlist'))} ) ] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Simple words: [{<sort>} {<-k>} {<3>}] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd: 0 ) arg: {<'/dev/null'>} ) (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd: 1 ) arg: {<'/dev/null'>} ) (redir op: <Id.Redir_GreatAnd '2>&' > loc: (redir_loc.Fd fd: 2 ) arg: {<1>} ) ] do_fork: T ) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<sort>} {<-k>} {<3>})] spids: [14728 14746] ) ] else_action: [ (C {<sort>} {<Id.Lit_Other '+'> <2>}) ] ) (command.Simple words: [{<uniq>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {(DQ ($ Id.VSub_DollarName '$nlist')) <S> } ) ] do_fork: T ) ] negated: F ) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<Id.Lit_Colon ':'>})] spids: [14709 14780] ) ] else_action: [ (command.Simple words: [{($ Id.VSub_DollarName '$GREP')} {<-v>} {(DQ <'^: '>)}] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {(DQ ($ Id.VSub_DollarName '$nlist'))} ) (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {(DQ ($ Id.VSub_DollarName '$nlist')) <S>} ) ] do_fork: T ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-f>} {(DQ ($ Id.VSub_DollarName '$nlist')) <S>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} {(DQ ($ Id.VSub_DollarName '$global_symbol_to_cdecl')) (SQ <' < "$nlist"S >> "$output_objdir/$my_dlsyms"'>) } ) ] spids: [14815 14827] ) ] else_action: [ (command.Simple words: [{<echo>} {(SQ <'/* NONE */'>)}] redirects: [ (redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$my_dlsyms') ) } ) ] do_fork: T ) ] ) (command.Simple words: [ {<echo>} { (DQ <'\n'> < '/* The mapping between symbol names and symbols. */\n' > <'typedef struct {\n'> <' const char *name;\n'> <' void *address;\n'> <'} lt_dlsymlist;\n'> ) } ] redirects: [ (redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$my_dlsyms') ) } ) ] do_fork: T ) (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <cygwin> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <mingw> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <cegcc> <Id.Lit_Star '*'>} ] action: [ (command.Simple words: [ {<echo>} { (DQ < '/* DATA imports from DLLs on WIN32 con\'t be const, because\n' > <' runtime relocations are performed -- see ld\'s documentation\n'> <' on pseudo-relocs. */'> ) } ] redirects: [ (redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$my_dlsyms') ) } ) ] do_fork: T ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lt_dlsym_const) op: assign_op.Equal rhs: (word.Empty) spids: [14927] ) ] ) ] spids: [14890 14906 14929 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <osf5> <Id.Lit_Star '*'>}] action: [ (command.Simple words: [ {<echo>} { (DQ < '/* This system does not cope well with relocations in const data */' > ) } ] redirects: [ (redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$my_dlsyms') ) } ) ] do_fork: T ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lt_dlsym_const) op: assign_op.Equal rhs: (word.Empty) spids: [14954] ) ] ) ] spids: [14932 14935 14956 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lt_dlsym_const) op: assign_op.Equal rhs: {<Id.KW_Const const>} spids: [14963] ) ] ) ] spids: [14959 14960 14966 -1] ) ] ) (command.Simple words: [ {<echo>} { (DQ <'extern '> ($ Id.VSub_DollarName '$lt_dlsym_const') <' lt_dlsymlist\n'> <lt_> (${ Id.VSub_Name my_prefix) <'_LTX_preloaded_symbols[];\n'> ($ Id.VSub_DollarName '$lt_dlsym_const') <' lt_dlsymlist\n'> <lt_> (${ Id.VSub_Name my_prefix) <'_LTX_preloaded_symbols[] =\n'> <'{'> <' { '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$my_originator') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <', (void *) 0 },'> ) } ] redirects: [ (redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$my_dlsyms') ) } ) ] do_fork: T ) (command.Case to_match: {($ Id.VSub_DollarName '$need_lib_prefix')} arms: [ (case_arm pat_list: [{<no>}] action: [ (command.Simple words: [ {<eval>} { (DQ ($ Id.VSub_DollarName '$global_symbol_to_c_name_address' ) ) } ] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {(DQ ($ Id.VSub_DollarName '$nlist'))} ) (redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$my_dlsyms') ) } ) ] do_fork: T ) ] spids: [15018 15019 15043 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.Simple words: [ {<eval>} { (DQ ($ Id.VSub_DollarName '$global_symbol_to_c_name_address_lib_prefix' ) ) } ] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {(DQ ($ Id.VSub_DollarName '$nlist'))} ) (redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$my_dlsyms') ) } ) ] do_fork: T ) ] spids: [15046 15047 15071 -1] ) ] ) (command.Simple words: [ {<echo>} { (DQ <' {0, (void *) 0}\n'> <'};\n'> <'\n'> < '/* This works around a problem in FreeBSD linker */\n' > <'#ifdef FREEBSD_WORKAROUND\n'> <'static const void *lt_preloaded_setup() {\n'> <' return lt_'> (${ Id.VSub_Name my_prefix) <'_LTX_preloaded_symbols;\n'> <'}\n'> <'#endif\n'> <'\n'> <'#ifdef __cplusplus\n'> <'}\n'> <'#endif'> ) } ] redirects: [ (redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$my_dlsyms') ) } ) ] do_fork: T ) ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pic_flag_for_symtable) op: assign_op.Equal rhs: (word.Empty) spids: [15117] ) ] ) (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$compile_command') <' '>)} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> (DQ <' -static '>) <Id.Lit_Star '*'>}] spids: [15130 15135 15137 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-freebsd2> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-freebsd3.0> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-freebsdelf3.0> <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pic_flag_for_symtable) op: assign_op.Equal rhs: { (DQ <' '> ($ Id.VSub_DollarName '$pic_flag') <' -DFREEBSD_WORKAROUND'> ) } spids: [15191] ) ] ) ] spids: [15171 15188 15198 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-hpux> <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pic_flag_for_symtable) op: assign_op.Equal rhs: {(DQ <' '> ($ Id.VSub_DollarName '$pic_flag'))} spids: [15209] ) ] ) ] spids: [15201 15206 15215 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ <X> ($ Id.VSub_DollarName '$my_pic_p') ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<Xno>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: pic_flag_for_symtable ) op: assign_op.Equal rhs: { (DQ <' '> ($ Id.VSub_DollarName '$pic_flag') ) } spids: [15240] ) ] ) ] spids: [15222 15237] ) ] ) ] spids: [15218 15219 15250 -1] ) ] ) ] spids: [15140 15141 15256 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:symtab_cflags) op: assign_op.Equal rhs: (word.Empty) spids: [15262] ) ] ) (command.ForEach iter_name: arg iter_words: [{($ Id.VSub_DollarName '$LTCFLAGS')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$arg')} arms: [ (case_arm pat_list: [{<-pie>} {<-fpie>} {<-fPIE>}] spids: [15284 15293 15295 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:symtab_cflags) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$symtab_cflags') <' '> ($ Id.VSub_DollarName '$arg') ) } spids: [15301] ) ] ) ] spids: [15298 15299 15308 -1] ) ] ) ] ) ) (C {<func_show_eval>} { (SQ < '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' > ) } {(SQ <'exit $?'>)} ) (C {<func_show_eval>} { (SQ < '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T"' > ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:symfileobj) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> (${ Id.VSub_Name my_outputname) <S.> ($ Id.VSub_DollarName '$objext') ) } spids: [15350] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <cygwin> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <mingw> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <cegcc> <Id.Lit_Star '*'>} ] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-f>} { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$my_outputname') <.def> ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_command) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ ($ Id.VSub_DollarName '$compile_command' ) ) } ) (C {($ Id.VSub_DollarName '$SED')} { (DQ <'s%@SYMFILE@%'> ($ Id.VSub_DollarName '$output_objdir' ) <'/'> ($ Id.VSub_DollarName '$my_outputname') <'.def '> ($ Id.VSub_DollarName '$symfileobj') <'%'> ) } ) ] negated: F ) ) } spids: [15405] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_command) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ ($ Id.VSub_DollarName '$finalize_command' ) ) } ) (C {($ Id.VSub_DollarName '$SED')} { (DQ <'s%@SYMFILE@%'> ($ Id.VSub_DollarName '$output_objdir' ) <'/'> ($ Id.VSub_DollarName '$my_outputname') <'.def '> ($ Id.VSub_DollarName '$symfileobj') <'%'> ) } ) ] negated: F ) ) } spids: [15431] ) ] ) ] spids: [15388 15402] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_command) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ ($ Id.VSub_DollarName '$compile_command' ) ) } ) (C {($ Id.VSub_DollarName '$SED')} { (DQ <'s%@SYMFILE@%'> ($ Id.VSub_DollarName '$symfileobj') <'%'> ) } ) ] negated: F ) ) } spids: [15460] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_command) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ ($ Id.VSub_DollarName '$finalize_command' ) ) } ) (C {($ Id.VSub_DollarName '$SED')} { (DQ <'s%@SYMFILE@%'> ($ Id.VSub_DollarName '$symfileobj') <'%'> ) } ) ] negated: F ) ) } spids: [15482] ) ] ) ] ) ] spids: [15369 15385 15507 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_command) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ ($ Id.VSub_DollarName '$compile_command') ) } ) (C {($ Id.VSub_DollarName '$SED')} { (DQ <'s%@SYMFILE@%'> ($ Id.VSub_DollarName '$symfileobj') <'%'> ) } ) ] negated: F ) ) } spids: [15514] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_command) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ ($ Id.VSub_DollarName '$finalize_command') ) } ) (C {($ Id.VSub_DollarName '$SED')} { (DQ <'s%@SYMFILE@%'> ($ Id.VSub_DollarName '$symfileobj') <'%'> ) } ) ] negated: F ) ) } spids: [15536] ) ] ) ] spids: [15510 15511 15558 -1] ) ] ) ] spids: [13898 13900 15564 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<func_fatal_error>} { (DQ <'unknown suffix for '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$my_dlsyms') <'\''> ) } ) ] spids: [15567 15568 15581 -1] ) ] ) ] spids: [13870 13881] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_command) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_DollarName '$compile_command'))} ) (C {($ Id.VSub_DollarName '$SED')} {(DQ <'s% @SYMFILE@%%'>)}) ] negated: F ) ) } spids: [15607] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_command) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_DollarName '$finalize_command'))} ) (C {($ Id.VSub_DollarName '$SED')} {(DQ <'s% @SYMFILE@%%'>)}) ] negated: F ) ) } spids: [15627] ) ] ) ] ) ] ) ) (command.ShFunction name: func_win32_libid body: (BraceGroup children: [ (C {($ Id.VSub_DollarName '$opt_debug')}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:win32_libid_type) op: assign_op.Equal rhs: {(DQ <unknown>)} spids: [15684] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:win32_fileres) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Simple words: [{<file>} {<-L>} {($ Id.VSub_Number '$1')}] redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) ) } spids: [15690] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$win32_fileres')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <ar> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\ '>) <archive> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\ '>) <Id.KW_Import import> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\ '> ) <library> <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:win32_libid_type) op: assign_op.Equal rhs: {(DQ <'x86 archive import'>)} spids: [15727] ) ] ) ] spids: [15712 15721 15733 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'> <ar> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\ '>) <archive> <Id.Lit_Star '*'> } ] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$OBJDUMP')} {<-f>} {(DQ ($ Id.VSub_Number '$1'))} ) (command.Simple words: [{($ Id.VSub_DollarName '$SED')} {<-e>} {(SQ <10q>)}] redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) (command.Simple words: [ {($ Id.VSub_DollarName '$EGREP')} { (SQ < 'file format (pe-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' > ) } ] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<'/dev/null'>} ) ] do_fork: T ) ] negated: F ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:win32_nmres) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$NM')} {<-f>} {<posix>} {<-A>} {(DQ ($ Id.VSub_Number '$1'))} ) (C {($ Id.VSub_DollarName '$SED')} {<-n>} {<-e>} { (SQ <'\n'> <'\t 1,100{\n'> <'\t\t/ I /{\n'> <'\t\t s,.*,import,\n'> <'\t\t p\n'> <'\t\t q\n'> <'\t\t}\n'> <'\t }'> ) } ) ] negated: F ) ) } spids: [15786] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$win32_nmres')} arms: [ (case_arm pat_list: [{<Id.KW_Import import> <Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:win32_libid_type) op: assign_op.Equal rhs: {(DQ <'x86 archive import'>)} spids: [15843] ) ] ) ] spids: [15839 15841 15847 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:win32_libid_type) op: assign_op.Equal rhs: {(DQ <'x86 archive static'>)} spids: [15853] ) ] ) ] spids: [15850 15851 15857 -1] ) ] ) ] spids: [15747 15783] ) ] ) ] spids: [15736 15741 15866 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <DLL> <Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:win32_libid_type) op: assign_op.Equal rhs: {(DQ <'x86 DLL'>)} spids: [15875] ) ] ) ] spids: [15869 15872 15881 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <executable> <Id.Lit_Star '*'>}] action: [ (command.Case to_match: {($ Id.VSub_DollarName '$win32_fileres')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <MS> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\ '> ) <Windows> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\ '>) <PE> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\ '> ) <Intel> <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:win32_libid_type) op: assign_op.Equal rhs: {(DQ <'x86 DLL'>)} spids: [15912] ) ] ) ] spids: [15900 15909 15918 -1] ) ] ) ] spids: [15884 15887 15924 -1] ) ] ) (C {($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_DollarName '$win32_libid_type'))}) ] ) ) (command.ShFunction name: func_extract_an_archive body: (BraceGroup children: [ (C {($ Id.VSub_DollarName '$opt_debug')}) (command.Sentence child: (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:f_ex_an_ar_dir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [15955] ) ] ) terminator: <Id.Op_Semi _> ) (C {<shift>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:f_ex_an_ar_oldlib) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [15964] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$lock_old_archive_extraction'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lockfile) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$f_ex_an_ar_oldlib') <.lock>} spids: [15986] ) ] ) (command.WhileUntil keyword: <Id.KW_Until until> cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (command.Simple words: [ {<ln>} {(DQ ($ Id.VSub_DollarName '$progpath'))} {(DQ ($ Id.VSub_DollarName '$lockfile'))} ] redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) ] ) terminator: <Id.Op_Semi _> ) ] ) body: (command.DoGroup children: [ (C {<func_echo>} { (DQ <'Waiting for '> ($ Id.VSub_DollarName '$lockfile') <' to be removed'> ) } ) (C {<sleep>} {<2>}) ] ) ) ] spids: [15970 15983] ) ] ) (C {<func_show_eval>} { (DQ <'(cd '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'f_ex_an_ar_dir && '> ($ Id.VSub_DollarName '$AR') <' x '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <f_ex_an_ar_oldlib> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <')'> ) } {(SQ <'stat=$?; rm -f "$lockfile"; exit $stat'>)} ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$lock_old_archive_extraction'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {<rm>} {<-f>} {(DQ ($ Id.VSub_DollarName '$lockfile'))}) ] ) ] spids: [16056 16069] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Subshell child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$AR')} {<t>} {(DQ ($ Id.VSub_DollarName '$f_ex_an_ar_oldlib'))} ) (C {<sort>}) (command.Simple words: [{<sort>} {<-uc>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<'/dev/null'>} ) (redir op: <Id.Redir_GreatAnd '2>&'> loc: (redir_loc.Fd fd:2) arg: {<1>} ) ] do_fork: T ) ] negated: F ) ) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<Id.Lit_Colon ':'>})] spids: [16088 16117] ) ] else_action: [ (C {<func_fatal_error>} { (DQ <'object name conflicts in archive: '> ($ Id.VSub_DollarName '$f_ex_an_ar_dir') <'/'> ($ Id.VSub_DollarName '$f_ex_an_ar_oldlib') ) } ) ] ) ] ) ) (command.ShFunction name: func_extract_archives body: (BraceGroup children: [ (C {($ Id.VSub_DollarName '$opt_debug')}) (command.Sentence child: (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_gentop) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [16156] ) ] ) terminator: <Id.Op_Semi _> ) (C {<shift>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_oldlibs) op: assign_op.Equal rhs: { (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok: <Id.VTest_Plus '+'> arg_word: {(DQ ($ Id.VSub_At '$@'))} ) ) } spids: [16165] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_oldobjs) op: assign_op.Equal rhs: {(DQ )} spids: [16175] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_xlib) op: assign_op.Equal rhs: {(DQ )} spids: [16180] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_xabs) op: assign_op.Equal rhs: {(DQ )} spids: [16185] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_xdir) op: assign_op.Equal rhs: {(DQ )} spids: [16190] ) ] ) (command.ForEach iter_name: my_xlib iter_words: [{($ Id.VSub_DollarName '$my_oldlibs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$my_xlib')} arms: [ (case_arm pat_list: [ {<Id.Lit_LBracket '['> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\\\'> ) <'/'> <Id.Lit_RBracket ']'> <Id.Lit_Star '*'> } {<Id.Lit_LBracket '['> <A-Za-z> <Id.Lit_RBracket ']'> <Id.Lit_Colon ':'> <Id.Lit_LBracket '['> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) <'/'> <Id.Lit_RBracket ']'> <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_xabs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$my_xlib'))} spids: [16238] ) ] ) ] spids: [16219 16236 16243 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_xabs) op: assign_op.Equal rhs: {(command_sub left_token:<Id.Left_Backtick '`'> child:(C {<pwd>})) (DQ <'/'> ($ Id.VSub_DollarName '$my_xlib')) } spids: [16249] ) ] ) ] spids: [16246 16247 16260 -1] ) ] ) (C {<func_basename>} {(DQ ($ Id.VSub_DollarName '$my_xlib'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_xlib) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_basename_result'))} spids: [16273] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_xlib_u) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$my_xlib')} spids: [16279] ) ] ) (command.WhileUntil keyword: <Id.KW_While while> cond: (condition.Shell commands: [ (command.Sentence child: (C {<Id.Lit_Colon ':'>}) terminator: <Id.Op_Semi _> ) ] ) body: (command.DoGroup children: [ (command.Case to_match: {(DQ <' '> ($ Id.VSub_DollarName '$extracted_archives') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$my_xlib_u') <' '>) <Id.Lit_Star '*'> } ] action: [ (C {<func_arith>} {($ Id.VSub_DollarName '$extracted_serial')} {<Id.Lit_Other '+'>} {<1>} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:extracted_serial) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_arith_result')} spids: [16321] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_xlib_u) op: assign_op.Equal rhs: {<lt> ($ Id.VSub_DollarName '$extracted_serial') <-> ($ Id.VSub_DollarName '$my_xlib') } spids: [16325] ) ] ) ] spids: [16302 16309 16331 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [(command.ControlFlow token:<Id.ControlFlow_Break break>)] spids: [16334 16335 16339 -1] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:extracted_archives) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$extracted_archives') <' '> ($ Id.VSub_DollarName '$my_xlib_u') ) } spids: [16348] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_xdir) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$my_gentop') <'/'> ($ Id.VSub_DollarName '$my_xlib_u') ) } spids: [16356] ) ] ) (C {<func_mkdir_p>} {(DQ ($ Id.VSub_DollarName '$my_xdir'))}) (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <-darwin> <Id.Lit_Star '*'>}] action: [ (C {<func_verbose>} {(DQ <'Extracting '> ($ Id.VSub_DollarName '$my_xabs'))}) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:darwin_orig_dir) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<pwd>}) ) } spids: [16405] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<cd>} {($ Id.VSub_DollarName '$my_xdir')}) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_QMark '$?')} ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:darwin_archive) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$my_xabs')} spids: [16424] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:darwin_curdir) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<pwd>}) ) } spids: [16428] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:darwin_base_archive) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<basename>} {(DQ ($ Id.VSub_DollarName '$darwin_archive'))} ) ) } spids: [16436] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:darwin_arches) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.AndOr ops: [Id.Op_DPipe] children: [ (command.Pipeline children: [ (command.Simple words: [ {($ Id.VSub_DollarName '$LIPO')} {<-info>} { (DQ ($ Id.VSub_DollarName '$darwin_archive' ) ) } ] redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) (command.Simple words: [ {($ Id.VSub_DollarName '$GREP')} {<Architectures>} ] redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) ] negated: F ) (C {<true>}) ] ) ) } spids: [16448] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$darwin_arches'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:darwin_arches) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ ($ Id.VSub_DollarName '$darwin_arches' ) ) } ) (C {($ Id.VSub_DollarName '$SED')} {<-e>} {(SQ <'s/.*are://'>)} ) ] negated: F ) ) } spids: [16492] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:darwin_arch) op: assign_op.Equal rhs: (word.Empty) spids: [16514] ) ] ) (C {<func_verbose>} { (DQ ($ Id.VSub_DollarName '$darwin_base_archive') <' has multiple architectures '> ($ Id.VSub_DollarName '$darwin_arches') ) } ) (command.ForEach iter_name: darwin_arch iter_words: [{($ Id.VSub_DollarName '$darwin_arches')}] do_arg_iter: F body: (command.DoGroup children: [ (C {<func_mkdir_p>} { (DQ <unfat-> ($ Id.VSub_Dollar '$$') <'/'> (${ Id.VSub_Name darwin_base_archive) <-> (${ Id.VSub_Name darwin_arch) ) } ) (C {($ Id.VSub_DollarName '$LIPO')} {<-thin>} {($ Id.VSub_DollarName '$darwin_arch')} {<-output>} { (DQ <unfat-> ($ Id.VSub_Dollar '$$') <'/'> (${ Id.VSub_Name darwin_base_archive) <-> (${ Id.VSub_Name darwin_arch) <'/'> (${ Id.VSub_Name darwin_base_archive) ) } {(DQ (${ Id.VSub_Name darwin_archive))} ) (C {<cd>} { (DQ <unfat-> ($ Id.VSub_Dollar '$$') <'/'> (${ Id.VSub_Name darwin_base_archive) <-> (${ Id.VSub_Name darwin_arch) ) } ) (C {<func_extract_an_archive>} { (DQ (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<pwd>}) ) ) } {(DQ (${ Id.VSub_Name darwin_base_archive))} ) (C {<cd>} {(DQ ($ Id.VSub_DollarName '$darwin_curdir'))} ) (C {($ Id.VSub_DollarName '$RM')} { (DQ <unfat-> ($ Id.VSub_Dollar '$$') <'/'> (${ Id.VSub_Name darwin_base_archive) <-> (${ Id.VSub_Name darwin_arch) <'/'> (${ Id.VSub_Name darwin_base_archive) ) } ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:darwin_filelist) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {<find>} {<unfat-> ($ Id.VSub_Dollar '$$')} {<-type>} {<f>} {<-name>} {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\*'>) <.o