(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:PROGRAM) op: assign_op.Equal rhs: {<ltmain.sh>} spids: [209] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:PACKAGE) op: assign_op.Equal rhs: {<libtool>} spids: [212] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:VERSION) op: assign_op.Equal rhs: {(DQ <'2.2.6b Debian-2.2.6b-2'>)} spids: [215] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:TIMESTAMP) op: assign_op.Equal rhs: {(DQ )} spids: [220] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:package_revision) op: assign_op.Equal rhs: {<1.3017>} spids: [224] ) ] ) (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: [268] ) ] ) (C {<alias>} {<-g>} {(SQ <'${1+"$@"}'>) <Id.Lit_Equals '='> (SQ <'"$@"'>)}) (C {<setopt>} {<NO_GLOB_SUBST>}) ] spids: [231 260] ) ] 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: [317 320 327 -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: [333] ) ] ) 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: [344] ) ] ) terminator: <Id.Op_Semi _> ) (C {<export>} {<DUALCASE>}) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lt_user_locale) op: assign_op.Equal rhs: (word.Empty) spids: [368] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lt_safe_locale) op: assign_op.Equal rhs: (word.Empty) spids: [370] ) ] ) (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>}) (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:{(DQ <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 <'/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: [594] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:EXIT_FAILURE) op: assign_op.Equal rhs: {<1>} spids: [597] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:EXIT_MISMATCH) op: assign_op.Equal rhs: {<63>} spids: [600] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:EXIT_SKIP) op: assign_op.Equal rhs: {<77>} spids: [606] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:exit_status) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$EXIT_SUCCESS')} spids: [613] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lt_nl) op: assign_op.Equal rhs: {(SQ <'\n'>)} spids: [620] ) ] ) (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: [625] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dirname) op: assign_op.Equal rhs: {(DQ <'s,/[^/]*'> <Id.Lit_Dollar '$'> <',,'>)} spids: [632] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:basename) op: assign_op.Equal rhs: {(DQ <'s,^.*/,,'>)} spids: [639] ) ] ) (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 <X> (${ Id.VSub_Number 1))}) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(DQ ($ Id.VSub_DollarName '$dirname'))} ) ] negated: F ) ) } spids: [693] ) ] ) (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: [740] ) ] ) ] spids: [718 737] ) ] 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: [751] ) ] ) ] ) (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 <X> (${ Id.VSub_Number 1))}) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(DQ ($ Id.VSub_DollarName '$basename'))} ) ] negated: F ) ) } spids: [763] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:progpath) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$0'))} spids: [809] ) ] ) (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: [830] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$progname')} arms: [ (case_arm pat_list: [{<-> <Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:progname) op: assign_op.Equal rhs: {<'./'> ($ Id.VSub_DollarName '$progname')} spids: [844] ) ] ) ] spids: [840 842 848 -1] ) ] ) (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: [863 875 877 -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: [889] ) ] ) (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: [893] ) ] ) (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: [909] ) ] ) ] spids: [880 886 917 -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: [924] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [930] ) ] ) (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: [946] ) ] ) (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: [970] ) ] ) (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: [986] ) ] ) ] ) (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: [994] ) ] ) ] spids: [920 921 1002 -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: [1013] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:sed_quote_subst) op: assign_op.Equal rhs: {(SQ <'s/\\([`"$\\\\]\\)/\\\\\\1/g'>)} spids: [1023] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:double_quote_subst) op: assign_op.Equal rhs: {(SQ <'s/\\(["`\\\\]\\)/\\\\\\1/g'>)} spids: [1032] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:bs) op: assign_op.Equal rhs: {(SQ <'\\\\'>)} spids: [1053] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:bs2) op: assign_op.Equal rhs: {(SQ <'\\\\\\\\'>)} spids: [1058] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:bs4) op: assign_op.Equal rhs: {(SQ <'\\\\\\\\\\\\\\\\'>)} spids: [1063] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dollar) op: assign_op.Equal rhs: {(SQ <'\\$'>)} spids: [1068] ) ] ) (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: [1073] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_dry_run) op: assign_op.Equal rhs: {<false>} spids: [1113] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_help) op: assign_op.Equal rhs: {<false>} spids: [1116] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_quiet) op: assign_op.Equal rhs: {<false>} spids: [1119] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_verbose) op: assign_op.Equal rhs: {<false>} spids: [1122] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_warning) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [1125] ) ] ) (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_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: [1370] ) ] ) (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: [1431] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_dir_list) op: assign_op.Equal rhs: (word.Empty) spids: [1437] ) ] ) (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: [1486] ) ] ) ] spids: [1482 1484 1492 -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: [1527] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$my_directory_path')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <'/'> <Id.Lit_Star '*'>}] spids: [1546 1549 1551 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [(command.ControlFlow token:<Id.ControlFlow_Break break>)] spids: [1553 1554 1558 -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 <X> ($ Id.VSub_DollarName '$my_directory_path'))} ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(DQ ($ Id.VSub_DollarName '$dirname'))} ) ] negated: F ) ) } spids: [1568] ) ] ) ] ) ) (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 <X> ($ Id.VSub_DollarName '$my_dir_list'))} ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(SQ <'s,:*$,,'>)}) ] negated: F ) ) } spids: [1594] ) ] ) (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: [1618] ) ] ) terminator: <Id.Op_Semi _> ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(SQ <':'>)} spids: [1624] ) ] ) (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: [1642] ) ] ) (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: [1677] ) ] ) (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: [1441 1467] ) ] ) ] ) ) (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: [1736] ) ] ) (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: [1776] ) ] ) ] spids: [1754 1769] ) ] 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: [1794] ) ] ) (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: [1835] ) ] ) (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: [1851] ) ] ) (C {<umask>} {<0077>}) (C {($ Id.VSub_DollarName '$MKDIR')} {(DQ ($ Id.VSub_DollarName '$my_tmpdir'))}) (C {<umask>} {($ Id.VSub_DollarName '$save_mktempdir_umask')}) ] spids: [1815 1828] ) ] ) (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') <'\''> ) } ) ] ) ] ) (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <X> ($ Id.VSub_DollarName '$my_tmpdir'))}) (C {($ Id.VSub_DollarName '$Xsed')}) ] negated: F ) ] ) ) (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 <X> ($ Id.VSub_Number '$1'))} ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(DQ ($ Id.VSub_DollarName '$sed_quote_subst'))} ) ] negated: F ) ) } spids: [1969] ) ] ) ] spids: [1958 1966 1991 -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: [1998] ) ] ) ] spids: [1994 1995 2003 -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: [2069] ) ] ) ] spids: [2037 2066 2077 -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: [2084] ) ] ) ] spids: [2080 2081 -1 2090] ) ] ) ] ) ) (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 <X> ($ Id.VSub_Number '$1'))} ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(DQ ($ Id.VSub_DollarName '$double_quote_subst'))} {<-e>} {(DQ ($ Id.VSub_DollarName '$sed_double_backslash'))} ) ] negated: F ) ) } spids: [2130] ) ] ) ] spids: [2120 2127 2163 -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: [2170] ) ] ) ] spids: [2166 2167 2175 -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: [2237] ) ] ) ] spids: [2205 2234 2245 -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: [2252] ) ] ) ] ) ) (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: [2281] ) ] ) (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: [2287] ) ] ) (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: [2328 2337] ) ] 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: [2352] ) ] ) (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: [2356 2369] ) ] 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: [2416] ) ] ) (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: [2422] ) ] ) (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: [2463 2472] ) ] 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: [2490] ) ] ) (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: [2501 2514] ) ] 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 <'/^# '>) ($ 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 {($ Id.VSub_DollarName '$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.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_QMark '$?')} ) ] ) ) (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: [2805] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:exit_cmd) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [2811] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ <X> ($ Id.VSub_Number '$1'))} {<Id.Lit_Equals '='>} {<X--no-reexec>}) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<shift>})] spids: [2822 2836] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ <X> ($ Id.VSub_Number '$1'))} {<Id.Lit_Equals '='>} {<X--fallback-echo>} ) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<Id.Lit_Colon ':'>})] spids: [2845 2859] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ <X> (command_sub left_token: <Id.Left_Backtick '`'> child: (BraceGroup children: [ (command.Sentence child: (C {($ Id.VSub_DollarName '$ECHO')} {(SQ <'\\t'>)}) terminator: <Id.Op_Semi _> ) ] redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] ) ) ) } {<Id.Lit_Equals '='>} {(SQ <'X\\t'>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<Id.Lit_Colon ':'>})] spids: [2868 2902] ) ] else_action: [ (C {<exec>} {($ Id.VSub_DollarName '$SHELL')} {(DQ ($ Id.VSub_DollarName '$progpath'))} {<--no-reexec>} { (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok:<Id.VTest_Plus '+'> arg_word:{(DQ ($ Id.VSub_At '$@'))}) ) } ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ <X> ($ Id.VSub_Number '$1'))} {<Id.Lit_Equals '='>} {<X--fallback-echo>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<shift>}) (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 2971 stdin_parts: [($ Id.VSub_Star '$*') <'\n'>] ) ) ] do_fork: T ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_SUCCESS')} ) ] spids: [2939 2953] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:magic) op: assign_op.Equal rhs: {(DQ <'%%%MAGIC variable%%%'>)} spids: [2980] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:magic_exe) op: assign_op.Equal rhs: {(DQ <'%%%MAGIC EXE variable%%%'>)} spids: [2985] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:nonopt) op: assign_op.Equal rhs: (word.Empty) spids: [2997] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:execute_dlfiles) op: assign_op.Equal rhs: (word.Empty) spids: [2999] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:preserve_args) op: assign_op.Equal rhs: (word.Empty) spids: [3001] ) ] ) (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: [3003] ) ] ) (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: [3016] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:extracted_archives) op: assign_op.Equal rhs: (word.Empty) spids: [3028] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:extracted_serial) op: assign_op.Equal rhs: {<0>} spids: [3030] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_dry_run) op: assign_op.Equal rhs: {<false>} spids: [3034] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_duplicate_deps) op: assign_op.Equal rhs: {<false>} spids: [3037] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_silent) op: assign_op.Equal rhs: {<false>} spids: [3040] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_debug) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [3043] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:exec_cmd) op: assign_op.Equal rhs: (word.Empty) spids: [3056] ) ] ) (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: [3120] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:re_endcf) op: assign_op.Equal rhs: {(SQ <'^# ### END LIBTOOL'>)} spids: [3126] ) ] ) (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 {($ Id.VSub_DollarName '$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 {($ Id.VSub_DollarName '$ECHO')} {(DQ <'enable shared libraries'>)})] spids: [3231 3244] ) ] else_action: [(C {($ Id.VSub_DollarName '$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 {($ Id.VSub_DollarName '$ECHO')} {(DQ <'enable static libraries'>)})] spids: [3267 3280] ) ] else_action: [(C {($ Id.VSub_DollarName '$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: [3335] ) ] ) (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: [3342] ) ] ) (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: [3350] ) ] ) (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: [3358] ) ] ) (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: [3380 3388 3399 -1] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$tagname')} arms: [ (case_arm pat_list:[{<CC>}] spids:[3421 3422 3424 -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: [3453] ) ] ) (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: [3478] ) ] ) (C {<eval>} {(DQ ($ Id.VSub_DollarName '$extractedcf'))}) ] spids: [3431 3450] ) ] else_action: [ (C {<func_error>} {(DQ <'ignoring unknown tag '> ($ Id.VSub_DollarName '$tagname'))} ) ] ) ] spids: [3427 3428 3521 -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: [3550 3557 3583 -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: [3586 3599 3625 -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: [3628 3641 3667 -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: [3670 3681 3707 -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: [3710 3723 3749 -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: [3752 3759 3785 -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: [3788 3805 3831 -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: [3858] ) ] ) (C {<shift>}) (command.Case to_match: {($ Id.VSub_DollarName '$opt')} arms: [ (case_arm pat_list: [{<--config>}] action: [(C {<func_config>})] spids: [3875 3876 3880 -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: [3887] ) ] ) (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: [3902] ) ] ) (C {($ Id.VSub_DollarName '$opt_debug')}) ] spids: [3884 3885 3911 -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: [3941] ) ] ) (C {<shift>}) ] spids: [3915 3916 3952 -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: [3963] ) ] ) ] spids: [3956 3961 3966 -1] ) (case_arm pat_list: [{<--features>}] action: [(C {<func_features>})] spids: [3969 3970 3974 -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: [3980] ) ] ) ] spids: [3977 3978 3985 -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: [4026 4027 4029 -1] ) (case_arm pat_list: [{<compile>}] spids: [4032 4033 4035 -1] ) (case_arm pat_list: [{<execute>}] spids: [4038 4039 4041 -1] ) (case_arm pat_list: [{<finish>}] spids: [4044 4045 4047 -1] ) (case_arm pat_list: [{<install>}] spids: [4050 4051 4053 -1] ) (case_arm pat_list: [{<link>}] spids: [4056 4057 4059 -1] ) (case_arm pat_list: [{<relink>}] spids: [4062 4063 4065 -1] ) (case_arm pat_list: [{<uninstall>}] spids: [4068 4069 4071 -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: [4090] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Break break> ) ] spids: [4079 4080 4097 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:mode) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [4104] ) ] ) (C {<shift>}) ] spids: [3989 3990 4113 -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: [4121] ) ] ) ] spids: [4117 4118 4124 -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: [4133] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_silent) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [4141] ) ] ) ] spids: [4128 4131 4145 -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: [4155] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opt_silent) op: assign_op.Equal rhs: {<false>} spids: [4163] ) ] ) ] spids: [4149 4153 4167 -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: [4197] ) ] ) (C {<func_enable_tag>} {(DQ ($ Id.VSub_Number '$1'))}) (C {<shift>}) ] spids: [4171 4172 4220 -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: [4228 4239 4273 -1] ) (case_arm pat_list: [ {<-> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\?'>)} {<-h>} ] action: [(C {<func_usage>})] spids: [4277 4281 4285 -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: [4291] ) ] ) ] spids: [4288 4289 4294 -1] ) (case_arm pat_list: [{<--version>}] action: [(C {<func_version>})] spids: [4297 4298 4302 -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: [4306 4308 4319 -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: [4326] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Break break> ) ] spids: [4323 4324 4335 -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 '*'>} ] 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: [4381] ) ] ) ] spids: [4353 4374 4385 -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: [4392] ) ] ) ] spids: [4388 4389 4396 -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: 4512 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: [4473 4484] ) ] 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: 4546 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: [4454 4470] ) ] 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: 4585 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: [4435 4451] ) ] ) ] ) ) (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: [4627 4654] ) ] ) (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>} {<Id.Lit_VarLike '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: [4705 4729] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:generic_help) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$help'))} spids: [4764] ) ] ) (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: [4770] ) ] ) ] ) ] ) (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: [4878] ) ] ) (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: [4962] ) ] ) terminator: <Id.Op_Semi _> ) (command.ControlFlow token: <Id.ControlFlow_Break break> ) ] spids: [4950 4960 4967 -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: [4882 4915] ) ] ) (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: [5050] ) ] ) (command.Case to_match: {($ Id.VSub_Number '$1')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <.exe>}] spids: [5060 5062 5064 -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: [5070] ) ] ) ] spids: [5067 5068 5073 -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: [5119] ) ] ) (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: [5164] ) ] ) ] spids: [5124 5133] ) ] ) ] ) ) (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: [5243] ) ] ) terminator: <Id.Op_Semi _> ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(SQ <'~'>)} spids: [5247] ) ] ) (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: [5265] ) ] ) (C {<eval>} {<Id.Lit_VarLike '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: [5295] ) ] ) ] ) ) (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: [5338 5347 5355 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [(C {<.>} {(DQ <'./'> ($ Id.VSub_Number '$1'))})] spids: [5358 5359 5368 -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: [5430] ) ] ) (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: [5452] ) ] ) ] ) ) (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 <' '> (command_sub left_token: <Id.Left_Backtick '`'> child: (C {($ Id.VSub_DollarName '$ECHO')} {($ Id.VSub_DollarName '$CC')}) ) <' '> ) <Id.Lit_Star '*'> } { (DQ (command_sub left_token: <Id.Left_Backtick '`'> child: (C {($ Id.VSub_DollarName '$ECHO')} {($ Id.VSub_DollarName '$CC')}) ) <' '> ) <Id.Lit_Star '*'> } {(DQ <' '> ($ Id.VSub_DollarName '$CC_quoted')) <Id.Lit_Star '*'>} {(DQ ($ Id.VSub_DollarName '$CC_quoted') <' '>) <Id.Lit_Star '*'>} { (DQ <' '> (command_sub left_token: <Id.Left_Backtick '`'> child: (C {($ Id.VSub_DollarName '$ECHO')} {($ Id.VSub_DollarName '$CC_quoted')} ) ) <' '> ) <Id.Lit_Star '*'> } { (DQ (command_sub left_token: <Id.Left_Backtick '`'> child: (C {($ Id.VSub_DollarName '$ECHO')} {($ Id.VSub_DollarName '$CC_quoted')} ) ) <' '> ) <Id.Lit_Star '*'> } ] spids: [5478 5566 5568 -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: [5656] ) ] ) (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: [5682] ) ] ) ] ) ) (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 <' '> (command_sub left_token: <Id.Left_Backtick '`'> child: (C {($ Id.VSub_DollarName '$ECHO')} {($ Id.VSub_DollarName '$CC')} ) ) <' '> ) <Id.Lit_Star '*'> } { (DQ (command_sub left_token: <Id.Left_Backtick '`'> child: (C {($ Id.VSub_DollarName '$ECHO')} {($ Id.VSub_DollarName '$CC')} ) ) <' '> ) <Id.Lit_Star '*'> } {(DQ <' '> ($ Id.VSub_DollarName '$CC_quoted')) <Id.Lit_Star '*'> } {(DQ ($ Id.VSub_DollarName '$CC_quoted') <' '>) <Id.Lit_Star '*'> } { (DQ <' '> (command_sub left_token: <Id.Left_Backtick '`'> child: (C {($ Id.VSub_DollarName '$ECHO')} {($ Id.VSub_DollarName '$CC_quoted')} ) ) <' '> ) <Id.Lit_Star '*'> } { (DQ (command_sub left_token: <Id.Left_Backtick '`'> child: (C {($ Id.VSub_DollarName '$ECHO')} {($ Id.VSub_DollarName '$CC_quoted')} ) ) <' '> ) <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: [5806] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Break break> ) ] spids: [5703 5791 5813 -1] ) ] ) ] spids: [5595 5616] ) ] ) ] ) ) (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: [5837 5848] ) ] ) ] spids: [5579 5580 5876 -1] ) ] ) ] spids: [5406 5427] ) ] ) ] ) ) (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: [5906] ) ] ) (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: [5928] ) ] ) ] spids: [5912 5925] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:write_lobj) op: assign_op.Equal rhs: {<none>} spids: [5939] ) ] ) ] ) (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: [5963] ) ] ) ] spids: [5947 5960] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:write_oldobj) op: assign_op.Equal rhs: {<none>} spids: [5974] ) ] ) ] ) (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: 6026 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: [6067] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:srcfile) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$nonopt'))} spids: [6070] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:suppress_opt) op: assign_op.Equal rhs: {<yes>} spids: [6079] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:suppress_output) op: assign_op.Equal rhs: (word.Empty) spids: [6083] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg_mode) op: assign_op.Equal rhs: {<normal>} spids: [6086] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobj) op: assign_op.Equal rhs: (word.Empty) spids: [6090] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:later) op: assign_op.Equal rhs: (word.Empty) spids: [6093] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pie_flag) op: assign_op.Equal rhs: (word.Empty) spids: [6096] ) ] ) (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: [6124] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg_mode) op: assign_op.Equal rhs: {<normal>} spids: [6130] ) ] ) ] spids: [6115 6117 6134 -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: [6143] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg_mode) op: assign_op.Equal rhs: {<normal>} spids: [6149] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [6138 6140 6156 -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: [6201] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [6176 6177 6208 -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: [6224] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [6212 6221 6235 -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: [6255] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [6239 6252 6266 -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: [6274] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [6270 6271 6281 -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: [6289] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [6285 6286 6302 -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: [6329] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lastarg) op: assign_op.Equal rhs: (word.Empty) spids: [6333] ) ] ) (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: [6336] ) ] ) terminator: <Id.Op_Semi _> ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(SQ <','>)} spids: [6342] ) ] ) (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: [6360] ) ] ) (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: [6373] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$save_ifs'))} spids: [6384] ) ] ) (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: [6404] ) ] ) (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: [6413] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [6309 6312 6424 -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: [6444] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:srcfile) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$arg'))} spids: [6450] ) ] ) ] spids: [6428 6429 6456 -1] ) ] ) ] spids: [6160 6162 6465 -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: [6486] ) ] ) ] ) ) (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: [6508 6509 6519 -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: [6522 6523 6535 -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: [6566] ) ] ) ] ) ] ) ] spids: [6538 6539 6575 -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>} ] 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: [6702] ) ] ) ] spids: [6597 6692 6706 -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: [6731] ) ] ) ] spids: [6720 6722 6734 -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: [6737 6738 6751 -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: [6809] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [6783 6784 6816 -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: [6824] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:build_old_libs) op: assign_op.Equal rhs: {<yes>} spids: [6828] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [6820 6821 6835 -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: [6843] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [6839 6840 6850 -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: [6858] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [6854 6855 6865 -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: [6950] ) ] ) (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: [6956] ) ] ) (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: [6962] ) ] ) (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: [7012] ) ] ) ] spids: [6996 7009] ) ] 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: [7030] ) ] ) ] ) (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: [7083] ) ] ) ] spids: [7058 7080 7087 -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: [7126] ) ] ) ] spids: [7093 7119] ) ] ) (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 <X> ($ Id.VSub_DollarName '$srcfile'))} ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(SQ <'s%^.*/%%'>)} {<-e>} {(SQ <'s%\\.[^.]*$%%'>)} ) ] negated: F ) ) <.> (${ Id.VSub_Name objext) } spids: [7158] ) ] ) (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: [7193] ) ] ) ] spids: [7142 7155] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:output_obj) op: assign_op.Equal rhs: (word.Empty) spids: [7203] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:need_locks) op: assign_op.Equal rhs: {<no>} spids: [7206] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lockfile) op: assign_op.Equal rhs: (word.Empty) spids: [7210] ) ] ) ] ) (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: [7225 7238] ) (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: [7297 7308] ) ] ) (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: [7361] ) ] ) (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: [7281 7294] ) ] ) (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: [7395] ) ] ) (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>} {<Id.Lit_VarLike 'srcfile='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$fix_srcfile_path') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) ] spids: [7417 7428] ) ] ) (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: [7449] ) ] ) (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: [7478] ) ] ) (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: [7500] ) ] ) ] spids: [7483 7497] ) ] 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: [7517] ) ] ) ] ) (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: [7556] ) ] ) ] spids: [7538 7549] ) ] ) (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: [7582 7622] ) ] ) (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: [7684 7712] ) ] ) (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: [7752] ) ] ) ] spids: [7736 7749] ) ] ) ] spids: [7458 7471] ) ] ) (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: [7806] ) ] ) ] spids: [7785 7799] ) ] 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: [7818] ) ] ) ] ) (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: [7847] ) ] ) ] spids: [7831 7844] ) ] ) (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: [7863] ) ] ) (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: [7884 7924] ) ] ) (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: [7986 8014] ) ] ) ] spids: [7769 7782] ) ] ) (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: [8083] ) ] ) (C {($ Id.VSub_DollarName '$RM')} {(DQ ($ Id.VSub_DollarName '$lockfile'))}) ] spids: [8066 8080] ) ] ) ] ) ] ) (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: [8158 8160 8174 -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: [8178 8179 8205 -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'> <'\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: [8209 8210 8251 -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: [8255 8256 8286 -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: [8290 8291 8313 -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 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: [8317 8318 8347 -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'> <' -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' > <'\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: [8351 8352 8450 -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: [8454 8455 8481 -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: [8485 8486 8499 -1] ) ] ) (C {($ Id.VSub_DollarName '$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.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_QMark '$?')} ) ] ) ) (command.AndOr ops: [Id.Op_DAmp] children: [(C {($ Id.VSub_DollarName '$opt_help')}) (C {<func_mode_help>})] ) (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: [8558] ) ] ) (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: [8622] ) ] ) (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: [8665] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:library_names) op: assign_op.Equal rhs: (word.Empty) spids: [8668] ) ] ) (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: [8683 8694] ) ] ) (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: [8745] ) ] ) (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: [8770] ) ] ) ] spids: [8752 8767] ) ] 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: [8781 8796] ) ] ) ] ) ] spids: [8632 8634 8823 -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: [8850] ) ] ) ] spids: [8827 8829 8856 -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: [8860 8861 8875 -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: [8886] ) ] ) (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: [8912] ) ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<eval>} { (DQ <'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>} { (DQ ($ Id.VSub_DollarName '$shlibpath_var') <'='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <dir> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ) } ) ] spids: [8923 8936] ) ] else_action: [ (C {<eval>} { (DQ ($ Id.VSub_DollarName '$shlibpath_var') <'='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'dir:'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) ($ Id.VSub_DollarName '$shlibpath_var') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ) } ) ] ) ] ) ) (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: [8983] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:args) op: assign_op.Equal rhs: (word.Empty) spids: [8994] ) ] ) (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 '*'>}] spids: [9012 9014 9016 -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: [9050] ) ] ) ] spids: [9027 9036] ) (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: [9088] ) ] ) ] spids: [9058 9067] ) ] ) ] spids: [9019 9020 9099 -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: [9116] ) ] ) ] ) ) (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: [9145 9156] ) ] ) (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: [9239] ) ] ) ] spids: [9128 9142] ) ] 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 {($ Id.VSub_DollarName '$ECHO')} {(DQ <'export '> ($ Id.VSub_DollarName '$shlibpath_var'))} ) ] spids: [9254 9265] ) ] ) (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: [9349] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:admincmds) op: assign_op.Equal rhs: (word.Empty) spids: [9355] ) ] ) (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: [9392] ) ] ) ] ) ) (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: [9416 9427] ) ] ) (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: [9492] ) ] ) ] ) ] spids: [9454 9465] ) ] ) ] ) ) ] spids: [9359 9381] ) ] ) (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')} ) ] ) (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <X---------------------------------------------------------------------->)} ) (C {($ Id.VSub_DollarName '$Xsed')}) ] negated: F ) (C {($ Id.VSub_DollarName '$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 {($ Id.VSub_DollarName '$ECHO')}) (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <'If you ever happen to want to link against installed libraries'>)} ) (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <'in a given directory, LIBDIR, you must either use libtool, and'>)} ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'specify the full pathname of the library, or use the '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-LLIBDIR\''> ) } ) (C {($ Id.VSub_DollarName '$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 {($ Id.VSub_DollarName '$ECHO')} { (DQ <' - add LIBDIR to the '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$shlibpath_var') <'\' environment variable'> ) } ) (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <' during execution'>)}) ] spids: [9599 9610] ) ] ) (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 {($ Id.VSub_DollarName '$ECHO')} { (DQ <' - add LIBDIR to the '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$runpath_var') <'\' environment variable'> ) } ) (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <' during linking'>)}) ] spids: [9633 9644] ) ] ) (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: [9681] ) ] ) (C {<eval>} {<Id.Lit_VarLike '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: [9667 9678] ) ] ) (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: [9707 9718] ) ] ) (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 {($ Id.VSub_DollarName '$ECHO')} { (DQ <' - have your system administrator add LIBDIR to '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'/etc/ld.so.conf\''> ) } ) ] spids: [9732 9741] ) ] ) (C {($ Id.VSub_DollarName '$ECHO')}) (C {($ Id.VSub_DollarName '$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 {($ Id.VSub_DollarName '$ECHO')} {(DQ <'more information, such as the ld(1), crle(1) and ld.so(8) manual'>)} ) (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <pages.>)}) ] spids: [9774 9783 9800 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <'more information, such as the ld(1) and ld.so(8) manual pages.'>)} ) ] spids: [9803 9804 9814 -1] ) ] ) (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <X---------------------------------------------------------------------->)} ) (C {($ Id.VSub_DollarName '$Xsed')}) ] negated: F ) (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.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <X> ($ Id.VSub_DollarName '$nonopt'))} ) (command.Simple words: [{($ Id.VSub_DollarName '$GREP')} {<shtool>}] 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: [ (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: [9948] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg) op: assign_op.Equal rhs: {($ Id.VSub_Number '$1')} spids: [9955] ) ] ) (C {<shift>}) ] spids: [9884 9934] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:install_prog) op: assign_op.Equal rhs: (word.Empty) spids: [9965] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$nonopt')} spids: [9968] ) ] ) ] ) (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: [9991] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dest) op: assign_op.Equal rhs: (word.Empty) spids: [10003] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:files) op: assign_op.Equal rhs: (word.Empty) spids: [10006] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opts) op: assign_op.Equal rhs: (word.Empty) spids: [10009] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [10012] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:install_type) op: assign_op.Equal rhs: (word.Empty) spids: [10015] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:isdir) op: assign_op.Equal rhs: {<no>} spids: [10018] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:stripme) op: assign_op.Equal rhs: (word.Empty) spids: [10022] ) ] ) (command.ForEach iter_name: arg do_arg_iter: T body: (command.DoGroup children: [ (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: [10047] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dest) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$arg')} spids: [10055] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [10033 10044] ) ] ) (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: [10076] ) ] ) ] spids: [10073 10074 10079 -1] ) (case_arm pat_list: [{<-f>}] action: [ (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 '*'> } ] spids: [10097 10106 10108 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$arg')} spids: [10114] ) ] ) ] spids: [10111 10112 10117 -1] ) ] ) ] spids: [10082 10083 10123 -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: [10138] ) ] ) ] spids: [10126 10135 10142 -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: [10149] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [10145 10146 10158 -1] ) (case_arm pat_list: [{<-> <Id.Lit_Star '*'>}] spids: [10161 10163 10166 -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.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [10191] ) ] ) ] spids: [10177 10188] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dest) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$arg')} spids: [10197] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] ) ] spids: [10169 10170 10207 -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: [10225] ) ] ) ] ) ) (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: (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: [10294 10305] ) ] else_action: [(C {<func_fatal_help>} {(DQ <'you must specify a destination'>)})] ) ] spids: [10280 10291] ) ] ) (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: [10350] ) ] ) (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: [10369] ) ] ) ] ) (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: [10389] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:destname) op: assign_op.Equal rhs: (word.Empty) spids: [10395] ) ] ) ] spids: [10373 10386] ) ] 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: [10415] ) ] ) (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: [10421] ) ] ) (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: [10475 10492 10494 -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: [10520 10522 10524 -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: [10527 10528 10540 -1] ) ] ) ] ) ) ] spids: [10497 10498 10549 -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: [10564] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:staticlibs) op: assign_op.Equal rhs: (word.Empty) spids: [10571] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:future_libdirs) op: assign_op.Equal rhs: (word.Empty) spids: [10574] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:current_libdirs) op: assign_op.Equal rhs: (word.Empty) spids: [10577] ) ] ) (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: [10614] ) ] ) ] spids: [10604 10607 10622 -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: [10655] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:old_library) op: assign_op.Equal rhs: (word.Empty) spids: [10658] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:relink_command) op: assign_op.Equal rhs: (word.Empty) spids: [10661] ) ] ) (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: [10706 10713 10715 -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: [10721] ) ] ) ] spids: [10718 10719 10728 -1] ) ] ) ] spids: [10676 10693] ) ] 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: [10751 10758 10760 -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: [10766] ) ] ) ] spids: [10763 10764 10773 -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: [10797] ) ] ) (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: [10803] ) ] ) (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 <X> ($ Id.VSub_DollarName '$destdir'))} ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} { (DQ <'s%'> ($ Id.VSub_DollarName '$libdir') <Id.Lit_Dollar '$'> <'%%'> ) } ) ] negated: F ) ) } spids: [10829] ) ] ) (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 <X> ($ Id.VSub_DollarName '$relink_command' ) ) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(DQ <'s%@inst_prefix_dir@%-inst-prefix-dir '> ($ Id.VSub_DollarName '$inst_prefix_dir') <'%'>)} ) ] negated: F ) ) } spids: [10928] ) ] ) ] spids: [10910 10921] ) ] 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 <X> ($ Id.VSub_DollarName '$relink_command' ) ) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(DQ <'s%@inst_prefix_dir@%%'>)} ) ] negated: F ) ) } spids: [10956] ) ] ) ] ) (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: [10811 10822] ) ] ) (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: [11042] ) ] ) (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: [11052] ) ] ) (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: [11068] ) ] ) ] ) (C {<func_show_eval>} { (DQ ($ Id.VSub_DollarName '$install_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: [11101] ) ] ) (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: [11146] ) ] ) ] spids: [11141 11143 11151 -1] ) ] ) ] spids: [11114 11131 11157 -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: [11163 11184] ) ] ) (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: [11206 11219] ) ] ) (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: [11299] ) ] ) (C {<func_execute_cmds>} {(DQ ($ Id.VSub_DollarName '$postinstall_cmds'))} {(SQ <'exit $?'>)} ) ] spids: [11028 11039] ) ] ) (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: [11333] ) ] ) (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: [11339] ) ] ) (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: [11380] ) ] ) ] ) ] spids: [10626 10628 11390 -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: [11422] ) ] ) ] spids: [11408 11419] ) ] 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: [11440] ) ] ) (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: [11446] ) ] ) ] ) (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: [11481] ) ] ) ] spids: [11469 11471 11485 -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: [11494] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:destfile) op: assign_op.Equal rhs: (word.Empty) spids: [11500] ) ] ) ] spids: [11488 11491 11503 -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: [11506 11507 11520 -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: [11590] ) ] ) (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: [11563 11576] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_SUCCESS')} ) ] spids: [11394 11396 11618 -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: [11644] ) ] ) ] spids: [11630 11641] ) ] 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: [11662] ) ] ) (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: [11668] ) ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:stripped_ext) op: assign_op.Equal rhs: {(DQ )} spids: [11692] ) ] ) (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: [11739] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:stripped_ext) op: assign_op.Equal rhs: {(DQ <.exe>)} spids: [11743] ) ] ) ] spids: [11709 11722] ) ] ) ] spids: [11704 11706 11752 -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: [11801] ) ] ) ] spids: [11782 11791] ) ] 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: [11822] ) ] ) ] ) ] spids: [11770 11779 11829 -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: [11836] ) ] ) ] spids: [11832 11833 11840 -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: [11858] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:relink_command) op: assign_op.Equal rhs: (word.Empty) spids: [11861] ) ] ) (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: [11900] ) ] ) (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: [11920] ) ] ) (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: [11923 11934] ) ] ) (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 <X> ($ Id.VSub_DollarName '$lib') ) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(SQ <'s%^.*/%%g'>)} ) ] negated: F ) ) } spids: [11947] ) ] ) (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: [12015] ) ] ) ] spids: [11977 12000] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:relink_command) op: assign_op.Equal rhs: (word.Empty) spids: [12026] ) ] ) (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: [12037] ) ] ) (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: [12089] ) ] ) (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: [12105] ) ] ) (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: [12111] ) ] ) (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 <X> ($ Id.VSub_DollarName '$relink_command'))} ) (C { ($ Id.VSub_DollarName '$Xsed' ) } {<-e>} {(SQ <'s%@OUTPUT@%'>) (DQ ($ Id.VSub_DollarName '$outputname')) (SQ <'%g'>)} ) ] negated: F ) ) } spids: [12123] ) ] ) (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: [12178 12187] ) ] 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: [12225] ) ] ) ] spids: [12073 12086] ) ] else_action: [ (C {<func_warning>} { (DQ <'cannot relink '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$file') <'\''> ) } ) ] ) ] ) ] ) ] spids: [12040 12063] ) ] 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 <X> ($ Id.VSub_DollarName '$file') ($ Id.VSub_DollarName '$stripped_ext') ) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} { (DQ <'s%'> <Id.Lit_BadBackslash '\\'> <'([^/]*'> <Id.Lit_BadBackslash '\\'> <')'> <Id.Lit_Dollar '$'> <'%'> ($ Id.VSub_DollarName '$objdir') <'/'> <Id.Lit_BadBackslash '\\'> <'1%'> ) } ) ] negated: F ) ) } spids: [12257] ) ] ) ] ) ] spids: [11846 11855] ) ] ) (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: [12340 12345 12352 -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: [12362] ) ] ) ] spids: [12355 12359 12367 -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: [12391] ) ] ) ] spids: [12370 12374 12395 -1] ) ] ) ] spids: [12321 12328 12401 -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: [12428 12439] ) ] ) ] ) ] spids: [11622 11623 12455 -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: [12484] ) ] ) (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: [12495] ) ] ) (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: [12521 12542] ) ] ) (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: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$current_libdirs'))}) 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: [12628] ) ] ) ] ) (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: [12635] ) ] ) ] spids: [12606 12617] ) ] 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: [12698] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_originator) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$2'))} spids: [12704] ) ] ) (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: [12710] ) ] ) (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: [12720] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_dlsyms) op: assign_op.Equal rhs: (word.Empty) spids: [12740] ) ] ) (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: [12796] ) ] ) ] spids: [12772 12793] ) ] else_action: [ (C {<func_error>} {(DQ <'not configured to extract global symbols from dlpreopened files'>)} ) ] ) ] spids: [12744 12769] ) ] ) (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: [12843 12845 12847 -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: [12859] ) ] ) (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'> <'/* 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 <X> ($ Id.VSub_DollarName '$objs') ($ Id.VSub_DollarName '$old_deplibs') ) } ) (C {($ Id.VSub_DollarName '$SP2NL')}) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(DQ ($ Id.VSub_DollarName '$lo2o'))} ) (C {($ Id.VSub_DollarName '$NL2SP')}) ] negated: F ) ) } spids: [12999] ) ] ) (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: [ (C {<eval>} { (SQ < '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' > ) } ) (C {<eval>} {(SQ <'$MV "$nlist"T "$nlist"'>)}) ] ) ] ) ] spids: [13075 13086] ) ] ) (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: [ (C {<eval>} { (SQ < '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T' > ) } ) (C {<eval>} {(SQ <'$MV "$nlist"T "$nlist"'>)}) ] ) ] ) ] spids: [13117 13128] ) ] ) (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: [13177] ) ] ) (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')} ) (C {<eval>} { (DQ (${ Id.VSub_Name SED) <' -n -e \'/^: @PROGRAM@ '> <Id.Lit_Dollar '$'> <'/d\' -e \'s/^.* '> <Id.Lit_BadBackslash '\\'> <'(.*'> <Id.Lit_BadBackslash '\\'> <')'> <Id.Lit_Dollar '$'> <'/'> <Id.Lit_BadBackslash '\\'> <'1/p\' '> ) (SQ <'< "$nlist" > "$export_symbols"'>) } ) (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: [ (C {<eval>} {(DQ <'echo EXPORTS '>) (SQ < '> "$output_objdir/$outputname.def"' > ) } ) (C {<eval>} { (SQ < 'cat "$export_symbols" >> "$output_objdir/$outputname.def"' > ) } ) ] spids: [13228 13244 13264 -1] ) ] ) ] ) ] ) ] spids: [13163 13174] ) ] else_action: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (BraceGroup children: [ (C {<eval>} { (DQ (${ Id.VSub_Name SED) <' -e \'s/'> <Id.Lit_BadBackslash '\\'> <'([].[*^'> <Id.Lit_Dollar '$'> <']'> <Id.Lit_BadBackslash '\\'> <')/'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\\\'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) <Id.Lit_BadBackslash '\\'> <'1/g\' -e \'s/^/ /\' -e \'s/'> <Id.Lit_Dollar '$'> <'/'> <Id.Lit_Dollar '$'> <'/\''> ) (SQ <' < "$export_symbols" > "$output_objdir/$outputname.exp"'>) } ) (C {<eval>} { (SQ < '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T' > ) } ) (C {<eval>} {(SQ <'$MV "$nlist"T "$nlist"'>)}) (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <cygwin>} {<Id.Lit_Star '*'> <mingw> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <cegcc> <Id.Lit_Star '*'>} ] action: [ (C {<eval>} {(DQ <'echo EXPORTS '>) (SQ <'> "$output_objdir/$outputname.def"'> ) } ) (C {<eval>} { (SQ < 'cat "$nlist" >> "$output_objdir/$outputname.def"' > ) } ) ] spids: [13331 13346 13366 -1] ) ] ) ] ) ] ) ] ) ] spids: [12950 12963] ) ] ) (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: [13411] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (BraceGroup children: [ (C {<eval>} {(SQ <'$ECHO ": $name " >> "$nlist"'>)}) (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: [13483 13494] ) ] ) (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: [13559 13577] ) ] 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: [13540 13611] ) ] 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: [13646 13658] ) ] else_action: [ (command.Simple words: [{($ Id.VSub_DollarName '$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: [ {($ Id.VSub_DollarName '$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: [ {($ Id.VSub_DollarName '$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: [13758] ) ] ) ] spids: [13721 13737 13760 -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: [13785] ) ] ) ] spids: [13763 13766 13787 -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: [13794] ) ] ) ] spids: [13790 13791 13797 -1] ) ] ) (command.Simple words: [ {($ Id.VSub_DollarName '$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: [13849 13850 13874 -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: [13877 13878 13902 -1] ) ] ) (command.Simple words: [ {($ Id.VSub_DollarName '$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: [13948] ) ] ) (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$compile_command') <' '>)} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> (DQ <' -static '>) <Id.Lit_Star '*'>}] spids: [13961 13966 13968 -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: [14022] ) ] ) ] spids: [14002 14019 14029 -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: [14040] ) ] ) ] spids: [14032 14037 14046 -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: [14071] ) ] ) ] spids: [14053 14068] ) ] ) ] spids: [14049 14050 14081 -1] ) ] ) ] spids: [13971 13972 14087 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:symtab_cflags) op: assign_op.Equal rhs: (word.Empty) spids: [14093] ) ] ) (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: [14115 14124 14126 -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: [14132] ) ] ) ] spids: [14129 14130 14139 -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: [14181] ) ] ) (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 <X> ($ Id.VSub_DollarName '$compile_command' ) ) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} { (DQ <'s%@SYMFILE@%'> ($ Id.VSub_DollarName '$output_objdir' ) <'/'> ($ Id.VSub_DollarName '$my_outputname') <'.def '> ($ Id.VSub_DollarName '$symfileobj') <'%'> ) } ) ] negated: F ) ) } spids: [14236] ) ] ) (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 <X> ($ Id.VSub_DollarName '$finalize_command' ) ) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} { (DQ <'s%@SYMFILE@%'> ($ Id.VSub_DollarName '$output_objdir' ) <'/'> ($ Id.VSub_DollarName '$my_outputname') <'.def '> ($ Id.VSub_DollarName '$symfileobj') <'%'> ) } ) ] negated: F ) ) } spids: [14265] ) ] ) ] spids: [14219 14233] ) ] 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 <X> ($ Id.VSub_DollarName '$compile_command' ) ) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} { (DQ <'s%@SYMFILE@%'> ($ Id.VSub_DollarName '$symfileobj') <'%'> ) } ) ] negated: F ) ) } spids: [14297] ) ] ) (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 <X> ($ Id.VSub_DollarName '$finalize_command' ) ) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} { (DQ <'s%@SYMFILE@%'> ($ Id.VSub_DollarName '$symfileobj') <'%'> ) } ) ] negated: F ) ) } spids: [14322] ) ] ) ] ) ] spids: [14200 14216 14350 -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 <X> ($ Id.VSub_DollarName '$compile_command') ) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} { (DQ <'s%@SYMFILE@%'> ($ Id.VSub_DollarName '$symfileobj') <'%'> ) } ) ] negated: F ) ) } spids: [14357] ) ] ) (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 <X> ($ Id.VSub_DollarName '$finalize_command') ) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} { (DQ <'s%@SYMFILE@%'> ($ Id.VSub_DollarName '$symfileobj') <'%'> ) } ) ] negated: F ) ) } spids: [14382] ) ] ) ] spids: [14353 14354 14407 -1] ) ] ) ] spids: [12850 12852 14413 -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: [14416 14417 14430 -1] ) ] ) ] spids: [12822 12833] ) ] 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 <X> ($ Id.VSub_DollarName '$compile_command'))} ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(DQ <'s% @SYMFILE@%%'>)}) ] negated: F ) ) } spids: [14456] ) ] ) (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 <X> ($ Id.VSub_DollarName '$finalize_command'))} ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(DQ <'s% @SYMFILE@%%'>)}) ] negated: F ) ) } spids: [14479] ) ] ) ] ) ] ) ) (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: [14536] ) ] ) (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: [14542] ) ] ) (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: [14579] ) ] ) ] spids: [14564 14573 14585 -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 {<eval>} {($ Id.VSub_DollarName '$OBJDUMP')} {<-f>} {($ 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)?'>)} ] 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 {<eval>} {($ Id.VSub_DollarName '$NM')} {<-f>} {<posix>} {<-A>} {($ 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: [14639] ) ] ) (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: [14696] ) ] ) ] spids: [14692 14694 14700 -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: [14706] ) ] ) ] spids: [14703 14704 14710 -1] ) ] ) ] spids: [14599 14636] ) ] ) ] spids: [14588 14593 14719 -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: [14728] ) ] ) ] spids: [14722 14725 14734 -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: [14765] ) ] ) ] spids: [14753 14762 14771 -1] ) ] ) ] spids: [14737 14740 14777 -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: [14808] ) ] ) 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: [14817] ) ] ) (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 <'exit $?'>)} ) (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: [14843 14872] ) ] 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: [14911] ) ] ) 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: [14920] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_oldobjs) op: assign_op.Equal rhs: {(DQ )} spids: [14930] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_xlib) op: assign_op.Equal rhs: {(DQ )} spids: [14935] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_xabs) op: assign_op.Equal rhs: {(DQ )} spids: [14940] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_xdir) op: assign_op.Equal rhs: {(DQ )} spids: [14945] ) ] ) (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: [14993] ) ] ) ] spids: [14974 14991 14998 -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: [15004] ) ] ) ] spids: [15001 15002 15015 -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: [15028] ) ] ) (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: [15034] ) ] ) (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: [15076] ) ] ) (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: [15080] ) ] ) ] spids: [15057 15064 15086 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [(command.ControlFlow token:<Id.ControlFlow_Break break>)] spids: [15089 15090 15094 -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: [15103] ) ] ) (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: [15111] ) ] ) (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: [15160] ) ] ) (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: [15179] ) ] ) (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: [15183] ) ] ) (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: [15191] ) ] ) (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: [15203] ) ] ) (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: [15247] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:darwin_arch) op: assign_op.Equal rhs: (word.Empty) spids: [15269] ) ] ) (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>} {<-print>} {<-o>} {<-name>} {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\*'>) <.lo>} {<-print>} ) (C {($ Id.VSub_DollarName '$SED')} {<-e>} { (DQ ($ Id.VSub_DollarName '$basename') ) } ) (C {<sort>} {<-u>}) ] negated: F ) ) } spids: [15412] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:darwin_file) op: assign_op.Equal rhs: (word.Empty) spids: [15463] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:darwin_files) op: assign_op.Equal rhs: (word.Empty) spids: [15466] ) ] ) (command.ForEach iter_name: darwin_file iter_words: [{($ Id.VSub_DollarName '$darwin_filelist')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:darwin_files) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {<find>} {<unfat-> ($ Id.VSub_Dollar '$$') } {<-name>} {($ Id.VSub_DollarName '$darwin_file')} {<-print>} ) (C { ($ Id.VSub_DollarName '$NL2SP' ) } ) ] negated: F ) ) } spids: [15481] ) ] ) (C {($ Id.VSub_DollarName '$LIPO')} {<-create>} {<-output>} {(DQ ($ Id.VSub_DollarName '$darwin_file'))} {($ Id.VSub_DollarName '$darwin_files')} ) ] ) ) (C {($ Id.VSub_DollarName '$RM')} {<-rf>} {<unfat-> ($ Id.VSub_Dollar '$$')} ) (C {<cd>} {(DQ ($ Id.VSub_DollarName '$darwin_orig_dir'))}) ] spids: [15233 15244] ) ] else_action: [ (C {<cd>} {($ Id.VSub_DollarName '$darwin_orig_dir')}) (C {<func_extract_an_archive>} {(DQ ($ Id.VSub_DollarName '$my_xdir'))} {(DQ ($ Id.VSub_DollarName '$my_xabs'))} ) ] ) ] ) ] ) ] spids: [15135 15138 15567 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<func_extract_an_archive>} {(DQ ($ Id.VSub_DollarName '$my_xdir'))} {(DQ ($ Id.VSub_DollarName '$my_xabs'))} ) ] spids: [15570 15571 15585 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:my_oldobjs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$my_oldobjs') <' '>) (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {<find>} {($ Id.VSub_DollarName '$my_xdir')} {<-name>} {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\*'>) <.> ($ Id.VSub_DollarName '$objext') } {<-print>} {<-o>} {<-name>} {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\*'>) <.lo>} {<-print>} ) (C {($ Id.VSub_DollarName '$NL2SP')}) ] negated: F ) ) } spids: [15591] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_extract_archives_result) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$my_oldobjs'))} spids: [15634] ) ] ) ] ) ) (command.ShFunction name: func_emit_wrapper_part1 body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_emit_wrapper_part1_arg1) op: assign_op.Equal rhs: {<no>} spids: [15667] ) ] ) (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:func_emit_wrapper_part1_arg1) op: assign_op.Equal rhs: {($ Id.VSub_Number '$1')} spids: [15686] ) ] ) ] spids: [15671 15683] ) ] ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'#! '> ($ Id.VSub_DollarName '$SHELL') <'\n'> <'\n'> <'# '> ($ Id.VSub_DollarName '$output') <' - temporary wrapper script for '> ($ Id.VSub_DollarName '$objdir') <'/'> ($ Id.VSub_DollarName '$outputname') <'\n'> <'# Generated by '> ($ Id.VSub_DollarName '$PROGRAM') <' (GNU '> ($ Id.VSub_DollarName '$PACKAGE') ($ Id.VSub_DollarName '$TIMESTAMP') <') '> ($ Id.VSub_DollarName '$VERSION') <'\n'> <'#\n'> <'# The '> ($ Id.VSub_DollarName '$output') <' program cannot be directly executed until all the libtool\n'> <'# libraries that it depends on are installed.\n'> <'#\n'> <'# This wrapper script should never be moved out of the build directory.\n'> <'# If it is, it will not operate correctly.\n'> <'\n'> <'# Sed substitution that helps us do robust quoting. It backslashifies\n'> <'# metacharacters that are still active within double-quoted strings.\n'> <'Xsed=\''> (${ Id.VSub_Name SED) <' -e 1s/^X//\'\n'> <'sed_quote_subst=\''> ($ Id.VSub_DollarName '$sed_quote_subst') <'\'\n'> <'\n'> <'# Be Bourne compatible\n'> <'if test -n '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'{ZSH_VERSION+set}'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' && (emulate sh) >/dev/null 2>&1; then\n'> <' emulate sh\n'> <' NULLCMD=:\n'> <' # Zsh 3.x and 4.x performs word splitting on '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'{1+'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'@'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'}, which\n'> <' # is contrary to our usage. Disable this feature.\n'> <' alias -g \''> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'{1+'> (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 '\\"'>) <'\'\n'> <' setopt NO_GLOB_SUBST\n'> <'else\n'> <' case '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'(set -o) 2>/dev/null'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <' in *posix*) set -o posix;; esac\n'> <'fi\n'> <'BIN_SH=xpg4; export BIN_SH # for Tru64\n'> <'DUALCASE=1; export DUALCASE # for MKS sh\n'> <'\n'> <'# The HP-UX ksh and POSIX shell print the target directory to stdout\n'> <'# if CDPATH is set.\n'> <'(unset CDPATH) >/dev/null 2>&1 && unset CDPATH\n'> <'\n'> <'relink_command='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ($ Id.VSub_DollarName '$relink_command') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'\n'> <'\n'> <'# This environment variable determines our operation mode.\n'> <'if test '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <libtool_install_magic> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' = '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ($ Id.VSub_DollarName '$magic') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'; then\n'> <' # install mode needs the following variables:\n'> <' generated_by_libtool_version=\''> ($ Id.VSub_DollarName '$macro_version') <'\'\n'> <' notinst_deplibs=\''> ($ Id.VSub_DollarName '$notinst_deplibs') <'\'\n'> <'else\n'> <' # When we are sourced in execute mode, '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'file and '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'ECHO are already set.\n'> <' if test '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <libtool_execute_magic> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' != '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ($ Id.VSub_DollarName '$magic') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'; then\n'> <' ECHO='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ($ Id.VSub_DollarName '$qecho') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'\n'> <' file='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <0> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'\n'> <' # Make sure echo works.\n'> <' if test '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <X> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <1> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' = X--no-reexec; then\n'> <' # Discard the --no-reexec flag, and continue.\n'> <' shift\n'> <' elif test '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <X> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'{ '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'ECHO \''> <Id.Lit_BadBackslash '\\'> <'t\'; } 2>/dev/null'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' = \'X'> <Id.Lit_BadBackslash '\\'> <'t\'; then\n'> <' # Yippee, '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'ECHO works!\n'> <' :\n'> <' else\n'> <' # Restart under the correct shell, and then maybe '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'ECHO will work.\n'> <' exec '> ($ Id.VSub_DollarName '$SHELL') <' '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <0> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' --no-reexec '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'{1+'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'@'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'}\n'> <' fi\n'> <' fi'> ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'\n'> <' # Find the directory that this script lives in.\n'> <' thisdir='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'ECHO '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <X> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <file> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' | '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'Xsed -e \'s%/[^/]*'> <Id.Lit_Dollar '$'> <'%%\''> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'\n'> <' test '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <x> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <thisdir> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' = '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <x> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <file> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' && thisdir=.\n'> <'\n'> <' # Follow symbolic links until we get to the real thisdir.\n'> <' file='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'ls -ld '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <file> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' | '> (${ Id.VSub_Name SED) <' -n \'s/.*-> //p\''> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'\n'> <' while test -n '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <file> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'; do\n'> <' destdir='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'ECHO '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <X> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <file> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' | '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'Xsed -e \'s%/[^/]*'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'%%\''> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'\n'> <'\n'> <' # If there was a directory component, then change thisdir.\n'> <' if test '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <x> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <destdir> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' != '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <x> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <file> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'; then\n'> <' case '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <destdir> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' in\n'> <' ['> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) <'/]* | [A-Za-z]:['> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) <'/]*) thisdir='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <destdir> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' ;;\n'> <' *) thisdir='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'thisdir/'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <destdir> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' ;;\n'> <' esac\n'> <' fi\n'> <'\n'> <' file='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'ECHO '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <X> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <file> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' | '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'Xsed -e \'s%^.*/%%\''> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'\n'> <' file='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'ls -ld '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'thisdir/'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <file> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' | '> (${ Id.VSub_Name SED) <' -n \'s/.*-> //p\''> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'\n'> <' done\n'> ) } ) ] ) ) (command.ShFunction name: func_emit_wrapper_part2 body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_emit_wrapper_part2_arg1) op: assign_op.Equal rhs: {<no>} spids: [16066] ) ] ) (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:func_emit_wrapper_part2_arg1) op: assign_op.Equal rhs: {($ Id.VSub_Number '$1')} spids: [16085] ) ] ) ] spids: [16070 16082] ) ] ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'\n'> <' # Usually \'no\', except on cygwin/mingw when embedded into\n'> <' # the cwrapper.\n'> <' WRAPPER_SCRIPT_BELONGS_IN_OBJDIR='> ($ Id.VSub_DollarName '$func_emit_wrapper_part2_arg1') <'\n'> <' if test '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <WRAPPER_SCRIPT_BELONGS_IN_OBJDIR> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' = '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <yes> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'; then\n'> <' # special case for \'.\'\n'> <' if test '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <thisdir> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' = '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <.> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'; then\n'> <' thisdir='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <pwd> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'\n'> <' fi\n'> <' # remove .libs from thisdir\n'> <' case '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <thisdir> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' in\n'> <' *['> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) <'/]'> ($ Id.VSub_DollarName '$objdir') <' ) thisdir='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'ECHO '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <X> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <thisdir> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' | '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'Xsed -e \'s%['> (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_Dollar '$'> <'%%\''> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <' ;;\n'> <' '> ($ Id.VSub_DollarName '$objdir') <' ) thisdir=. ;;\n'> <' esac\n'> <' fi\n'> <'\n'> <' # Try to get the absolute directory name.\n'> <' absdir='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'cd '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <thisdir> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' && pwd'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'\n'> <' test -n '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <absdir> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' && thisdir='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <absdir> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'\n'> ) } ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$fast_install'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <' program=lt-\''> ($ Id.VSub_DollarName '$outputname') <'\''> ($ Id.VSub_DollarName '$exeext') <'\n'> <' progdir='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <'thisdir/'> ($ Id.VSub_DollarName '$objdir') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) <'\n'> <'\n'> <' if test ! -f '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <'progdir/'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <program> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) <' ||\n'> <' { file='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'ls -1dt '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'progdir/'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <program> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'progdir/../'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <program> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' 2>/dev/null | '> (${ Id.VSub_Name SED) <' 1q'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'; '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\\\'> ) <'\n'> <' test '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <X> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <file> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' != '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) <X> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'progdir/'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <program> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'; }; then\n'> <'\n'> <' file='> (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 '\\$'> ) <program> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'\n'> <'\n'> <' if test ! -d '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <progdir> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) <'; then\n'> <' '> ($ Id.VSub_DollarName '$MKDIR') <' '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <progdir> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) <'\n'> <' else\n'> <' '> ($ Id.VSub_DollarName '$RM') <' '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'progdir/'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <file> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'\n'> <' fi'> ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'\n'> <' # relink executable if necessary\n'> <' if test -n '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <relink_command> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) <'; then\n'> <' if relink_command_output='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'eval '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'relink_command 2>&1'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'; then :\n'> <' else\n'> <'\t'> ($ Id.VSub_DollarName '$ECHO') <' '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <relink_command_output> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) <' >&2\n'> <'\t'> ($ Id.VSub_DollarName '$RM') <' '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'progdir/'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <file> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'\n'> <'\texit 1\n'> <' fi\n'> <' fi\n'> <'\n'> <' '> ($ Id.VSub_DollarName '$MV') <' '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'progdir/'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <file> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'progdir/'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <program> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' 2>/dev/null ||\n'> <' { '> ($ Id.VSub_DollarName '$RM') <' '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <'progdir/'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <program> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) <';\n'> <' '> ($ Id.VSub_DollarName '$MV') <' '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'progdir/'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <file> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'progdir/'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <program> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'; }\n'> <' '> ($ Id.VSub_DollarName '$RM') <' '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <'progdir/'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <file> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) <'\n'> <' fi'> ) } ) ] spids: [16196 16209] ) ] else_action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <' program=\''> ($ Id.VSub_DollarName '$outputname') <'\'\n'> <' progdir='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'thisdir/'> ($ Id.VSub_DollarName '$objdir') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'\n'> ) } ) ] ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'\n'> <' if test -f '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'progdir/'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <program> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'; then'> ) } ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$shlibpath_overrides_runpath'))} {<Id.Lit_Equals '='>} {<yes>} ) (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$shlibpath_var'))}) (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$temp_rpath'))}) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <' # Add our own library path to '> ($ Id.VSub_DollarName '$shlibpath_var') <'\n'> <' '> ($ Id.VSub_DollarName '$shlibpath_var') <'='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$temp_rpath') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) ($ Id.VSub_DollarName '$shlibpath_var') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'\n'> <'\n'> <' # Some systems cannot cope with colon-terminated '> ($ Id.VSub_DollarName '$shlibpath_var') <'\n'> <' # The second colon is a workaround for a bug in BeOS R4 sed\n'> <' '> ($ Id.VSub_DollarName '$shlibpath_var') <'='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'ECHO '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) <X> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) ($ Id.VSub_DollarName '$shlibpath_var') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) <' | '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'Xsed -e \'s/::*'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <'//\''> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'\n'> <'\n'> <' export '> ($ Id.VSub_DollarName '$shlibpath_var') <'\n'> ) } ) ] spids: [16463 16496] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$dllsearchpath'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <' # Add the dll search path components to the executable PATH\n'> <' PATH='> ($ Id.VSub_DollarName '$dllsearchpath') <':'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <'PATH\n'> ) } ) ] spids: [16553 16564] ) ] ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <' if test '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <libtool_execute_magic> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' != '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ($ Id.VSub_DollarName '$magic') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'; then\n'> <' # Run the actual program with our arguments.\n'> ) } ) (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-mingw>} {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-os2> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <-cegcc> <Id.Lit_Star '*'>} ] action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <' exec '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <progdir> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\\\'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <program> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) <' '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'{1+'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'@'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) <'}\n'> ) } ) ] spids: [16613 16631 16658 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <' exec '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <'progdir/'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <program> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) <' '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'{1+'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'@'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) <'}\n'> ) } ) ] spids: [16662 16663 16688 -1] ) ] ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <' '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'ECHO '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'0: cannot exec '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'program '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'*'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' 1>&2\n'> <' exit 1\n'> <' fi\n'> <' else\n'> <' # The program doesn\'t exist.\n'> <' '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'ECHO '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'0: error: '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\\'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'progdir/'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'program\' does not exist'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' 1>&2\n'> <' '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'ECHO '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'This script is just a wrapper for '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <program.> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' 1>&2\n'> <' '> ($ Id.VSub_DollarName '$ECHO') <' '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <'See the '> ($ Id.VSub_DollarName '$PACKAGE') <' documentation for more information.'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' 1>&2\n'> <' exit 1\n'> <' fi\n'> <fi> ) } ) ] ) ) (command.ShFunction name: func_emit_wrapper body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_emit_wrapper_arg1) op: assign_op.Equal rhs: {<no>} spids: [16809] ) ] ) (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:func_emit_wrapper_arg1) op: assign_op.Equal rhs: {($ Id.VSub_Number '$1')} spids: [16828] ) ] ) ] spids: [16813 16825] ) ] ) (C {<func_emit_wrapper_part1>} {(DQ (${ Id.VSub_Name func_emit_wrapper_arg1))}) (C {<func_emit_wrapper_part2>} {(DQ (${ Id.VSub_Name func_emit_wrapper_arg1))}) ] ) ) (command.ShFunction name: func_to_host_path body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_to_host_path_result) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [16936] ) ] ) (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.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <mingw> <Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lt_sed_naive_backslashify) op: assign_op.Equal rhs: {(SQ <'s|\\\\\\\\*|\\\\|g;s|/|\\\\|g;s|\\\\|\\\\\\\\|g'>)} spids: [16971] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$build')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <mingw> <Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lt_sed_strip_trailing_spaces) op: assign_op.Equal rhs: { (DQ <'s/[ ]*'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <'//'> ) } spids: [16998] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_to_host_path_tmp1) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.AndOr ops: [Id.Op_DPipe] children: [ (command.Subshell child: (command.Pipeline children: [ (C {<cmd>} {<'//c'>} {<echo>} {(DQ ($ Id.VSub_Number '$1'))} ) (C {($ Id.VSub_DollarName '$SED')} {<-e>} { (DQ ($ Id.VSub_DollarName '$lt_sed_strip_trailing_spaces' ) ) } ) ] negated: F ) redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] ) (C {<echo>} {(DQ )}) ] ) ) } spids: [17006] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_to_host_path_result) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {<echo>} { (DQ ($ Id.VSub_DollarName '$func_to_host_path_tmp1' ) ) } ) (C {($ Id.VSub_DollarName '$SED')} {<-e>} { (DQ ($ Id.VSub_DollarName '$lt_sed_naive_backslashify' ) ) } ) ] negated: F ) ) } spids: [17050] ) ] ) ] spids: [16984 16988 17076 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <cygwin> <Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_to_host_path_tmp1) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<cygpath>} {<-w>} {(DQ ($ Id.VSub_Number '$1'))}) ) } spids: [17086] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_to_host_path_result) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {<echo>} { (DQ ($ Id.VSub_DollarName '$func_to_host_path_tmp1' ) ) } ) (C {($ Id.VSub_DollarName '$SED')} {<-e>} { (DQ ($ Id.VSub_DollarName '$lt_sed_naive_backslashify' ) ) } ) ] negated: F ) ) } spids: [17100] ) ] ) ] spids: [17079 17083 17126 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_to_host_path_tmp1) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Simple words: [ {<winepath>} {<-w>} {(DQ ($ Id.VSub_Number '$1'))} ] redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) ) } spids: [17162] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_QMark '$?'))} {<-eq>} {<0>} ) (C {<test>} {<-n>} { (DQ (${ Id.VSub_Name func_to_host_path_tmp1) ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: func_to_host_path_result ) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {<echo>} { (DQ ($ Id.VSub_DollarName '$func_to_host_path_tmp1' ) ) } ) (C {($ Id.VSub_DollarName '$SED')} {<-e>} { (DQ ($ Id.VSub_DollarName '$lt_sed_naive_backslashify' ) ) } ) ] negated: F ) ) } spids: [17207] ) ] ) ] spids: [17179 17204] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_to_host_path_result) op: assign_op.Equal rhs: {(DQ )} spids: [17240] ) ] ) ] ) ] spids: [17129 17131 17248 -1] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$func_to_host_path_result') ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_error>} {(DQ <'Could not determine host path corresponding to'>)} ) (C {<func_error>} {(DQ <' \''> ($ Id.VSub_Number '$1') <'\''>)}) (C {<func_error>} {(DQ <'Continuing, but uninstalled executables may not work.'>)} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_to_host_path_result) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [17296] ) ] ) ] spids: [17254 17266] ) ] ) ] spids: [16964 16968 17305 -1] ) ] ) ] spids: [16942 16954] ) ] ) ] ) ) (command.ShFunction name: func_to_host_pathlist body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_to_host_pathlist_result) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [17384] ) ] ) (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.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <mingw> <Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lt_sed_naive_backslashify) op: assign_op.Equal rhs: {(SQ <'s|\\\\\\\\*|\\\\|g;s|/|\\\\|g;s|\\\\|\\\\\\\\|g'>)} spids: [17419] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_to_host_pathlist_tmp2) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [17437] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_to_host_pathlist_tmp1) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {<echo>} { (DQ ($ Id.VSub_DollarName '$func_to_host_pathlist_tmp2' ) ) } ) (C {($ Id.VSub_DollarName '$SED')} {<-e>} {(SQ <'s|^:*||'>)} {<-e>} {(SQ <'s|:*$||'>)} ) ] negated: F ) ) } spids: [17451] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$build')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <mingw> <Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lt_sed_strip_trailing_spaces) op: assign_op.Equal rhs: { (DQ <'s/[ ]*'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <'//'> ) } spids: [17504] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_to_host_pathlist_tmp2) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.AndOr ops: [Id.Op_DPipe] children: [ (command.Subshell child: (command.Pipeline children: [ (C {<cmd>} {<'//c'>} {<echo>} { (DQ ($ Id.VSub_DollarName '$func_to_host_pathlist_tmp1' ) ) } ) (C {($ Id.VSub_DollarName '$SED')} {<-e>} { (DQ ($ Id.VSub_DollarName '$lt_sed_strip_trailing_spaces' ) ) } ) ] negated: F ) redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] ) (C {<echo>} {(DQ )}) ] ) ) } spids: [17512] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_to_host_pathlist_result) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {<echo>} { (DQ ($ Id.VSub_DollarName '$func_to_host_pathlist_tmp2' ) ) } ) (C {($ Id.VSub_DollarName '$SED')} {<-e>} { (DQ ($ Id.VSub_DollarName '$lt_sed_naive_backslashify' ) ) } ) ] negated: F ) ) } spids: [17556] ) ] ) ] spids: [17490 17494 17582 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <cygwin> <Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_to_host_pathlist_tmp2) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<cygpath>} {<-w>} {<-p>} { (DQ ($ Id.VSub_DollarName '$func_to_host_pathlist_tmp1' ) ) } ) ) } spids: [17592] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_to_host_pathlist_result) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {<echo>} { (DQ ($ Id.VSub_DollarName '$func_to_host_pathlist_tmp2' ) ) } ) (C {($ Id.VSub_DollarName '$SED')} {<-e>} { (DQ ($ Id.VSub_DollarName '$lt_sed_naive_backslashify' ) ) } ) ] negated: F ) ) } spids: [17608] ) ] ) ] spids: [17585 17589 17634 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_to_host_pathlist_result) op: assign_op.Equal rhs: {(DQ )} spids: [17646] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_to_host_pathlist_oldIFS) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$IFS')} spids: [17651] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [17655] ) ] ) (command.ForEach iter_name: func_to_host_pathlist_f iter_words: [ {($ Id.VSub_DollarName '$func_to_host_pathlist_tmp1')} ] 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 '$func_to_host_pathlist_oldIFS' ) } spids: [17672] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$func_to_host_pathlist_f' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_to_host_path>} { (DQ ($ Id.VSub_DollarName '$func_to_host_pathlist_f' ) ) } ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$func_to_host_path_result' ) ) } ) 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_to_host_pathlist_result' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: func_to_host_pathlist_result ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$func_to_host_path_result' ) ) } spids: [17728] ) ] ) ] spids: [17713 17725] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: func_to_host_pathlist_result ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$func_to_host_pathlist_result' ) <';'> ($ Id.VSub_DollarName '$func_to_host_path_result') ) } spids: [17737] ) ] ) ] ) ] spids: [17698 17710] ) ] ) ] spids: [17676 17688] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [17754] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_to_host_pathlist_oldIFS')} spids: [17761] ) ] ) ] spids: [17637 17639 17765 -1] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$func_to_host_pathlist_result' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_error>} {(DQ <'Could not determine the host path(s) corresponding to'>)} ) (C {<func_error>} {(DQ <' \''> ($ Id.VSub_Number '$1') <'\''>)}) (C {<func_error>} {(DQ <'Continuing, but uninstalled executables may not work.'>)} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lt_replace_pathsep_nix_to_dos) op: assign_op.Equal rhs: {(DQ <'s|:|;|g'>)} spids: [17829] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_to_host_pathlist_result) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {<echo>} { (DQ ($ Id.VSub_DollarName '$func_to_host_pathlist_tmp1' ) ) } ) (C {($ Id.VSub_DollarName '$SED')} {<-e>} { (DQ ($ Id.VSub_DollarName '$lt_replace_pathsep_nix_to_dos' ) ) } ) ] negated: F ) ) } spids: [17835] ) ] ) ] spids: [17771 17783] ) ] ) (command.Case to_match: {(DQ ($ Id.VSub_Number '$1'))} arms: [ (case_arm pat_list: [{<Id.Lit_Colon ':'> <Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_to_host_pathlist_result) op: assign_op.Equal rhs: { (DQ <';'> ($ Id.VSub_DollarName '$func_to_host_pathlist_result') ) } spids: [17882] ) ] ) ] spids: [17877 17880 17889 -1] ) ] ) (command.Case to_match: {(DQ ($ Id.VSub_Number '$1'))} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <Id.Lit_Colon ':'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:func_to_host_pathlist_result) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$func_to_host_pathlist_result') <';'> ) } spids: [17909] ) ] ) ] spids: [17904 17907 17916 -1] ) ] ) ] spids: [17412 17416 17922 -1] ) ] ) ] spids: [17390 17402] ) ] ) ] ) ) (command.ShFunction name: func_emit_cwrapperexe_src body: (BraceGroup children: [ (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 18001 stdin_parts: [ <'\n'> <'/* '> ($ Id.VSub_DollarName '$cwrappersource') <' - temporary wrapper executable for '> ($ Id.VSub_DollarName '$objdir') <'/'> ($ Id.VSub_DollarName '$outputname') <'\n'> <' Generated by '> ($ Id.VSub_DollarName '$PROGRAM') <' (GNU '> ($ Id.VSub_DollarName '$PACKAGE') ($ Id.VSub_DollarName '$TIMESTAMP') <') '> ($ Id.VSub_DollarName '$VERSION') <'\n'> <'\n'> <' The '> ($ Id.VSub_DollarName '$output') <' program cannot be directly executed until all the libtool\n'> <' libraries that it depends on are installed.\n'> <'\n'> < ' This wrapper executable should never be moved out of the build directory.\n' > <' If it is, it will not operate correctly.\n'> <'\n'> <' Currently, it simply execs the wrapper *script* '> <Id.Right_DoubleQuote '"'> ($ Id.VSub_DollarName '$SHELL') <' '> ($ Id.VSub_DollarName '$output') <Id.Right_DoubleQuote '"'> <',\n'> <' but could eventually absorb all of the scripts functionality and\n'> <' exec '> ($ Id.VSub_DollarName '$objdir') <'/'> ($ Id.VSub_DollarName '$outputname') <' directly.\n'> <'*/\n'> ] ) ) ] do_fork: T ) (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {(DQ <EOF>)} here_end_span_id: 18144 stdin_parts: [ <'#include <stdio.h>\n'> <'#include <stdlib.h>\n'> <'#ifdef _MSC_VER\n'> <'# include <direct.h>\n'> <'# include <process.h>\n'> <'# include <io.h>\n'> <'# define setmode _setmode\n'> <'#else\n'> <'# include <unistd.h>\n'> <'# include <stdint.h>\n'> <'# ifdef __CYGWIN__\n'> <'# include <io.h>\n'> <'# define HAVE_SETENV\n'> <'# ifdef __STRICT_ANSI__\n'> <'char *realpath (const char *, char *);\n'> <'int putenv (char *);\n'> <'int setenv (const char *, const char *, int);\n'> <'# endif\n'> <'# endif\n'> <'#endif\n'> <'#include <malloc.h>\n'> <'#include <stdarg.h>\n'> <'#include <assert.h>\n'> <'#include <string.h>\n'> <'#include <ctype.h>\n'> <'#include <errno.h>\n'> <'#include <fcntl.h>\n'> <'#include <sys/stat.h>\n'> <'\n'> <'#if defined(PATH_MAX)\n'> <'# define LT_PATHMAX PATH_MAX\n'> <'#elif defined(MAXPATHLEN)\n'> <'# define LT_PATHMAX MAXPATHLEN\n'> <'#else\n'> <'# define LT_PATHMAX 1024\n'> <'#endif\n'> <'\n'> <'#ifndef S_IXOTH\n'> <'# define S_IXOTH 0\n'> <'#endif\n'> <'#ifndef S_IXGRP\n'> <'# define S_IXGRP 0\n'> <'#endif\n'> <'\n'> <'#ifdef _MSC_VER\n'> <'# define S_IXUSR _S_IEXEC\n'> <'# define stat _stat\n'> <'# ifndef _INTPTR_T_DEFINED\n'> <'# define intptr_t int\n'> <'# endif\n'> <'#endif\n'> <'\n'> <'#ifndef DIR_SEPARATOR\n'> <'# define DIR_SEPARATOR \'/\'\n'> <'# define PATH_SEPARATOR \':\'\n'> <'#endif\n'> <'\n'> < '#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \\\n' > <' defined (__OS2__)\n'> <'# define HAVE_DOS_BASED_FILE_SYSTEM\n'> <'# define FOPEN_WB "wb"\n'> <'# ifndef DIR_SEPARATOR_2\n'> <'# define DIR_SEPARATOR_2 \'\\\\\'\n'> <'# endif\n'> <'# ifndef PATH_SEPARATOR_2\n'> <'# define PATH_SEPARATOR_2 \';\'\n'> <'# endif\n'> <'#endif\n'> <'\n'> <'#ifndef DIR_SEPARATOR_2\n'> <'# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR)\n'> <'#else /* DIR_SEPARATOR_2 */\n'> <'# define IS_DIR_SEPARATOR(ch) \\\n'> <'\t(((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2))\n'> <'#endif /* DIR_SEPARATOR_2 */\n'> <'\n'> <'#ifndef PATH_SEPARATOR_2\n'> <'# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR)\n'> <'#else /* PATH_SEPARATOR_2 */\n'> <'# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2)\n'> <'#endif /* PATH_SEPARATOR_2 */\n'> <'\n'> <'#ifdef __CYGWIN__\n'> <'# define FOPEN_WB "wb"\n'> <'#endif\n'> <'\n'> <'#ifndef FOPEN_WB\n'> <'# define FOPEN_WB "w"\n'> <'#endif\n'> <'#ifndef _O_BINARY\n'> <'# define _O_BINARY 0\n'> <'#endif\n'> <'\n'> < '#define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type)))\n' > <'#define XFREE(stale) do { \\\n'> <' if (stale) { free ((void *) stale); stale = 0; } \\\n'> <'} while (0)\n'> <'\n'> <'#undef LTWRAPPER_DEBUGPRINTF\n'> <'#if defined DEBUGWRAPPER\n'> <'# define LTWRAPPER_DEBUGPRINTF(args) ltwrapper_debugprintf args\n'> <'static void\n'> <'ltwrapper_debugprintf (const char *fmt, ...)\n'> <'{\n'> <' va_list args;\n'> <' va_start (args, fmt);\n'> <' (void) vfprintf (stderr, fmt, args);\n'> <' va_end (args);\n'> <'}\n'> <'#else\n'> <'# define LTWRAPPER_DEBUGPRINTF(args)\n'> <'#endif\n'> <'\n'> <'const char *program_name = NULL;\n'> <'\n'> <'void *xmalloc (size_t num);\n'> <'char *xstrdup (const char *string);\n'> <'const char *base_name (const char *name);\n'> <'char *find_executable (const char *wrapper);\n'> <'char *chase_symlinks (const char *pathspec);\n'> <'int make_executable (const char *path);\n'> <'int check_executable (const char *path);\n'> <'char *strendzap (char *str, const char *pat);\n'> <'void lt_fatal (const char *message, ...);\n'> <'void lt_setenv (const char *name, const char *value);\n'> < 'char *lt_extend_str (const char *orig_value, const char *add, int to_end);\n' > <'void lt_opt_process_env_set (const char *arg);\n'> <'void lt_opt_process_env_prepend (const char *arg);\n'> <'void lt_opt_process_env_append (const char *arg);\n'> <'int lt_split_name_value (const char *arg, char** name, char** value);\n'> <'void lt_update_exe_path (const char *name, const char *value);\n'> <'void lt_update_lib_path (const char *name, const char *value);\n'> <'\n'> <'static const char *script_text_part1 =\n'> ] ) ) ] do_fork: T ) (command.Pipeline children: [ (C {<func_emit_wrapper_part1>} {<yes>}) (C {($ Id.VSub_DollarName '$SED')} {<-e>} {(SQ <'s/\\([\\\\"]\\)/\\\\\\1/g'>)} {<-e>} {(SQ <'s/^/ "/'>)} {<-e>} {(SQ <'s/$/\\\\n"/'>)} ) ] negated: F ) (C {<echo>} {(DQ <';'>)}) (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 18192 stdin_parts: [<'\n'> <'static const char *script_text_part2 =\n'>] ) ) ] do_fork: T ) (command.Pipeline children: [ (C {<func_emit_wrapper_part2>} {<yes>}) (C {($ Id.VSub_DollarName '$SED')} {<-e>} {(SQ <'s/\\([\\\\"]\\)/\\\\\\1/g'>)} {<-e>} {(SQ <'s/^/ "/'>)} {<-e>} {(SQ <'s/$/\\\\n"/'>)} ) ] negated: F ) (C {<echo>} {(DQ <';'>)}) (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 18248 stdin_parts: [ <'const char * MAGIC_EXE = '> <Id.Right_DoubleQuote '"'> ($ Id.VSub_DollarName '$magic_exe') <Id.Right_DoubleQuote '"'> <';\n'> <'const char * LIB_PATH_VARNAME = '> <Id.Right_DoubleQuote '"'> ($ Id.VSub_DollarName '$shlibpath_var') <Id.Right_DoubleQuote '"'> <';\n'> ] ) ) ] do_fork: T ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$shlibpath_overrides_runpath'))} {<Id.Lit_Equals '='>} {<yes>} ) (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$shlibpath_var'))}) (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$temp_rpath'))}) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_to_host_pathlist>} {(DQ ($ Id.VSub_DollarName '$temp_rpath'))}) (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 18305 stdin_parts: [ <'const char * LIB_PATH_VALUE = '> <Id.Right_DoubleQuote '"'> ($ Id.VSub_DollarName '$func_to_host_pathlist_result') <Id.Right_DoubleQuote '"'> <';\n'> ] ) ) ] do_fork: T ) ] spids: [18251 18284] ) ] else_action: [ (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {(DQ <EOF>)} here_end_span_id: 18318 stdin_parts: [<'const char * LIB_PATH_VALUE = "";\n'>] ) ) ] do_fork: T ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$dllsearchpath'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_to_host_pathlist>} {(DQ ($ Id.VSub_DollarName '$dllsearchpath') <':'>)}) (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 18362 stdin_parts: [ <'const char * EXE_PATH_VARNAME = '> <Id.Right_DoubleQuote '"'> <PATH> <Id.Right_DoubleQuote '"'> <';\n'> <'const char * EXE_PATH_VALUE = '> <Id.Right_DoubleQuote '"'> ($ Id.VSub_DollarName '$func_to_host_pathlist_result') <Id.Right_DoubleQuote '"'> <';\n'> ] ) ) ] do_fork: T ) ] spids: [18324 18335] ) ] else_action: [ (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {(DQ <EOF>)} here_end_span_id: 18376 stdin_parts: [ <'const char * EXE_PATH_VARNAME = "";\n'> <'const char * EXE_PATH_VALUE = "";\n'> ] ) ) ] do_fork: T ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$fast_install'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 18410 stdin_parts: [ <'const char * TARGET_PROGRAM_NAME = '> <Id.Right_DoubleQuote '"'> <lt-> ($ Id.VSub_DollarName '$outputname') <Id.Right_DoubleQuote '"'> <'; /* hopefully, no .exe */\n'> ] ) ) ] do_fork: T ) ] spids: [18382 18395] ) ] else_action: [ (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 18426 stdin_parts: [ <'const char * TARGET_PROGRAM_NAME = '> <Id.Right_DoubleQuote '"'> ($ Id.VSub_DollarName '$outputname') <Id.Right_DoubleQuote '"'> <'; /* hopefully, no .exe */\n'> ] ) ) ] do_fork: T ) ] ) (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {(DQ <EOF>)} here_end_span_id: 18484 stdin_parts: [ <'\n'> <'#define LTWRAPPER_OPTION_PREFIX "--lt-"\n'> <'#define LTWRAPPER_OPTION_PREFIX_LENGTH 5\n'> <'\n'> < 'static const size_t opt_prefix_len = LTWRAPPER_OPTION_PREFIX_LENGTH;\n' > <'static const char *ltwrapper_option_prefix = LTWRAPPER_OPTION_PREFIX;\n'> <'\n'> < 'static const char *dumpscript_opt = LTWRAPPER_OPTION_PREFIX "dump-script";\n' > <'\n'> < 'static const size_t env_set_opt_len = LTWRAPPER_OPTION_PREFIX_LENGTH + 7;\n' > < 'static const char *env_set_opt = LTWRAPPER_OPTION_PREFIX "env-set";\n' > <' /* argument is putenv-style "foo=bar", value of foo is set to bar */\n'> <'\n'> < 'static const size_t env_prepend_opt_len = LTWRAPPER_OPTION_PREFIX_LENGTH + 11;\n' > < 'static const char *env_prepend_opt = LTWRAPPER_OPTION_PREFIX "env-prepend";\n' > < ' /* argument is putenv-style "foo=bar", new value of foo is bar${foo} */\n' > <'\n'> < 'static const size_t env_append_opt_len = LTWRAPPER_OPTION_PREFIX_LENGTH + 10;\n' > < 'static const char *env_append_opt = LTWRAPPER_OPTION_PREFIX "env-append";\n' > < ' /* argument is putenv-style "foo=bar", new value of foo is ${foo}bar */\n' > <'\n'> <'int\n'> <'main (int argc, char *argv[])\n'> <'{\n'> <' char **newargz;\n'> <' int newargc;\n'> <' char *tmp_pathspec;\n'> <' char *actual_cwrapper_path;\n'> <' char *actual_cwrapper_name;\n'> <' char *target_name;\n'> <' char *lt_argv_zero;\n'> <' intptr_t rval = 127;\n'> <'\n'> <' int i;\n'> <'\n'> <' program_name = (char *) xstrdup (base_name (argv[0]));\n'> <' LTWRAPPER_DEBUGPRINTF (("(main) argv[0] : %s\\n", argv[0]));\n'> < ' LTWRAPPER_DEBUGPRINTF (("(main) program_name : %s\\n", program_name));\n' > <'\n'> <' /* very simple arg parsing; don\'t want to rely on getopt */\n'> <' for (i = 1; i < argc; i++)\n'> <' {\n'> <' if (strcmp (argv[i], dumpscript_opt) == 0)\n'> <'\t{\n'> ] ) ) ] do_fork: T ) (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$host'))} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <mingw> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <cygwin> <Id.Lit_Star '*'>} ] action: [(C {<echo>} {(DQ <' setmode(1,_O_BINARY);'>)})] spids: [18495 18505 18519 -1] ) ] ) (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {(DQ <EOF>)} here_end_span_id: 18571 stdin_parts: [ <'\t printf ("%s", script_text_part1);\n'> <'\t printf ("%s", script_text_part2);\n'> <'\t return 0;\n'> <'\t}\n'> <' }\n'> <'\n'> <' newargz = XMALLOC (char *, argc + 1);\n'> <' tmp_pathspec = find_executable (argv[0]);\n'> <' if (tmp_pathspec == NULL)\n'> <' lt_fatal ("Couldn\'t find %s", argv[0]);\n'> < ' LTWRAPPER_DEBUGPRINTF (("(main) found exe (before symlink chase) at : %s\\n",\n' > <'\t\t\t tmp_pathspec));\n'> <'\n'> <' actual_cwrapper_path = chase_symlinks (tmp_pathspec);\n'> < ' LTWRAPPER_DEBUGPRINTF (("(main) found exe (after symlink chase) at : %s\\n",\n' > <'\t\t\t actual_cwrapper_path));\n'> <' XFREE (tmp_pathspec);\n'> <'\n'> <' actual_cwrapper_name = xstrdup( base_name (actual_cwrapper_path));\n'> <' strendzap (actual_cwrapper_path, actual_cwrapper_name);\n'> <'\n'> <' /* wrapper name transforms */\n'> <' strendzap (actual_cwrapper_name, ".exe");\n'> <' tmp_pathspec = lt_extend_str (actual_cwrapper_name, ".exe", 1);\n'> <' XFREE (actual_cwrapper_name);\n'> <' actual_cwrapper_name = tmp_pathspec;\n'> <' tmp_pathspec = 0;\n'> <'\n'> < ' /* target_name transforms -- use actual target program name; might have lt- prefix */\n' > <' target_name = xstrdup (base_name (TARGET_PROGRAM_NAME));\n'> <' strendzap (target_name, ".exe");\n'> <' tmp_pathspec = lt_extend_str (target_name, ".exe", 1);\n'> <' XFREE (target_name);\n'> <' target_name = tmp_pathspec;\n'> <' tmp_pathspec = 0;\n'> <'\n'> <' LTWRAPPER_DEBUGPRINTF (("(main) libtool target name: %s\\n",\n'> <'\t\t\t target_name));\n'> ] ) ) ] do_fork: T ) (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 18598 stdin_parts: [ <' newargz[0] =\n'> <' XMALLOC (char, (strlen (actual_cwrapper_path) +\n'> <'\t\t strlen ('> <Id.Right_DoubleQuote '"'> ($ Id.VSub_DollarName '$objdir') <Id.Right_DoubleQuote '"'> <') + 1 + strlen (actual_cwrapper_name) + 1));\n'> <' strcpy (newargz[0], actual_cwrapper_path);\n'> <' strcat (newargz[0], '> <Id.Right_DoubleQuote '"'> ($ Id.VSub_DollarName '$objdir') <Id.Right_DoubleQuote '"'> <');\n'> <' strcat (newargz[0], '> <Id.Right_DoubleQuote '"'> <'/'> <Id.Right_DoubleQuote '"'> <');\n'> ] ) ) ] do_fork: T ) (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {(DQ <EOF>)} here_end_span_id: 18618 stdin_parts: [ <' /* stop here, and copy so we don\'t have to do this twice */\n'> <' tmp_pathspec = xstrdup (newargz[0]);\n'> <'\n'> <' /* do NOT want the lt- prefix here, so use actual_cwrapper_name */\n'> <' strcat (newargz[0], actual_cwrapper_name);\n'> <'\n'> <' /* DO want the lt- prefix here if it exists, so use target_name */\n'> <' lt_argv_zero = lt_extend_str (tmp_pathspec, target_name, 1);\n'> <' XFREE (tmp_pathspec);\n'> <' tmp_pathspec = NULL;\n'> ] ) ) ] do_fork: T ) (command.Case to_match: {($ Id.VSub_DollarName '$host_os')} arms: [ (case_arm pat_list: [{<mingw> <Id.Lit_Star '*'>}] action: [ (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {(DQ <EOF>)} here_end_span_id: 18651 stdin_parts: [ <' {\n'> <' char* p;\n'> <' while ((p = strchr (newargz[0], \'\\\\\')) != NULL)\n'> <' {\n'> <'\t*p = \'/\';\n'> <' }\n'> <' while ((p = strchr (lt_argv_zero, \'\\\\\')) != NULL)\n'> <' {\n'> <'\t*p = \'/\';\n'> <' }\n'> <' }\n'> ] ) ) ] do_fork: T ) ] spids: [18628 18630 18653 -1] ) ] ) (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {(DQ <EOF>)} here_end_span_id: 18749 stdin_parts: [ <' XFREE (target_name);\n'> <' XFREE (actual_cwrapper_path);\n'> <' XFREE (actual_cwrapper_name);\n'> <'\n'> <' lt_setenv ("BIN_SH", "xpg4"); /* for Tru64 */\n'> <' lt_setenv ("DUALCASE", "1"); /* for MSK sh */\n'> <' lt_update_lib_path (LIB_PATH_VARNAME, LIB_PATH_VALUE);\n'> <' lt_update_exe_path (EXE_PATH_VARNAME, EXE_PATH_VALUE);\n'> <'\n'> <' newargc=0;\n'> <' for (i = 1; i < argc; i++)\n'> <' {\n'> <' if (strncmp (argv[i], env_set_opt, env_set_opt_len) == 0)\n'> <' {\n'> <' if (argv[i][env_set_opt_len] == \'=\')\n'> <' {\n'> <' const char *p = argv[i] + env_set_opt_len + 1;\n'> <' lt_opt_process_env_set (p);\n'> <' }\n'> < ' else if (argv[i][env_set_opt_len] == \'\\0\' && i + 1 < argc)\n' > <' {\n'> <' lt_opt_process_env_set (argv[++i]); /* don\'t copy */\n'> <' }\n'> <' else\n'> <' lt_fatal ("%s missing required argument", env_set_opt);\n'> <' continue;\n'> <' }\n'> < ' if (strncmp (argv[i], env_prepend_opt, env_prepend_opt_len) == 0)\n' > <' {\n'> <' if (argv[i][env_prepend_opt_len] == \'=\')\n'> <' {\n'> <' const char *p = argv[i] + env_prepend_opt_len + 1;\n'> <' lt_opt_process_env_prepend (p);\n'> <' }\n'> < ' else if (argv[i][env_prepend_opt_len] == \'\\0\' && i + 1 < argc)\n' > <' {\n'> < ' lt_opt_process_env_prepend (argv[++i]); /* don\'t copy */\n' > <' }\n'> <' else\n'> < ' lt_fatal ("%s missing required argument", env_prepend_opt);\n' > <' continue;\n'> <' }\n'> <' if (strncmp (argv[i], env_append_opt, env_append_opt_len) == 0)\n'> <' {\n'> <' if (argv[i][env_append_opt_len] == \'=\')\n'> <' {\n'> <' const char *p = argv[i] + env_append_opt_len + 1;\n'> <' lt_opt_process_env_append (p);\n'> <' }\n'> < ' else if (argv[i][env_append_opt_len] == \'\\0\' && i + 1 < argc)\n' > <' {\n'> <' lt_opt_process_env_append (argv[++i]); /* don\'t copy */\n'> <' }\n'> <' else\n'> <' lt_fatal ("%s missing required argument", env_append_opt);\n'> <' continue;\n'> <' }\n'> < ' if (strncmp (argv[i], ltwrapper_option_prefix, opt_prefix_len) == 0)\n' > <' {\n'> < ' /* however, if there is an option in the LTWRAPPER_OPTION_PREFIX\n' > < ' namespace, but it is not one of the ones we know about and\n' > < ' have already dealt with, above (inluding dump-script), then\n' > < ' report an error. Otherwise, targets might begin to believe\n' > < ' they are allowed to use options in the LTWRAPPER_OPTION_PREFIX\n' > < ' namespace. The first time any user complains about this, we\'ll\n' > < ' need to make LTWRAPPER_OPTION_PREFIX a configure-time option\n' > <' or a configure.ac-settable value.\n'> <' */\n'> <' lt_fatal ("Unrecognized option in %s namespace: \'%s\'",\n'> <' ltwrapper_option_prefix, argv[i]);\n'> <' }\n'> <' /* otherwise ... */\n'> <' newargz[++newargc] = xstrdup (argv[i]);\n'> <' }\n'> <' newargz[++newargc] = NULL;\n'> <'\n'> < ' LTWRAPPER_DEBUGPRINTF (("(main) lt_argv_zero : %s\\n", (lt_argv_zero ? lt_argv_zero : "<NULL>")));\n' > <' for (i = 0; i < newargc; i++)\n'> <' {\n'> < ' LTWRAPPER_DEBUGPRINTF (("(main) newargz[%d] : %s\\n", i, (newargz[i] ? newargz[i] : "<NULL>")));\n' > <' }\n'> <'\n'> ] ) ) ] do_fork: T ) (command.Case to_match: {($ Id.VSub_DollarName '$host_os')} arms: [ (case_arm pat_list: [{<mingw> <Id.Lit_Star '*'>}] action: [ (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {(DQ <EOF>)} here_end_span_id: 18780 stdin_parts: [ < ' /* execv doesn\'t actually work on mingw as expected on unix */\n' > < ' rval = _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz);\n' > <' if (rval == -1)\n'> <' {\n'> <' /* failed to start process */\n'> < ' LTWRAPPER_DEBUGPRINTF (("(main) failed to launch target \\"%s\\": errno = %d\\n", lt_argv_zero, errno));\n' > <' return 127;\n'> <' }\n'> <' return rval;\n'> ] ) ) ] do_fork: T ) ] spids: [18759 18761 18782 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {(DQ <EOF>)} here_end_span_id: 18798 stdin_parts: [ <' execv (lt_argv_zero, newargz);\n'> <' return rval; /* =127, but avoids unused variable warning */\n'> ] ) ) ] do_fork: T ) ] spids: [18785 18786 18800 -1] ) ] ) (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {(DQ <EOF>)} here_end_span_id: 19259 stdin_parts: [ <'}\n'> <'\n'> <'void *\n'> <'xmalloc (size_t num)\n'> <'{\n'> <' void *p = (void *) malloc (num);\n'> <' if (!p)\n'> <' lt_fatal ("Memory exhausted");\n'> <'\n'> <' return p;\n'> <'}\n'> <'\n'> <'char *\n'> <'xstrdup (const char *string)\n'> <'{\n'> <' return string ? strcpy ((char *) xmalloc (strlen (string) + 1),\n'> <'\t\t\t string) : NULL;\n'> <'}\n'> <'\n'> <'const char *\n'> <'base_name (const char *name)\n'> <'{\n'> <' const char *base;\n'> <'\n'> <'#if defined (HAVE_DOS_BASED_FILE_SYSTEM)\n'> <' /* Skip over the disk name in MSDOS pathnames. */\n'> <' if (isalpha ((unsigned char) name[0]) && name[1] == \':\')\n'> <' name += 2;\n'> <'#endif\n'> <'\n'> <' for (base = name; *name; name++)\n'> <' if (IS_DIR_SEPARATOR (*name))\n'> <' base = name + 1;\n'> <' return base;\n'> <'}\n'> <'\n'> <'int\n'> <'check_executable (const char *path)\n'> <'{\n'> <' struct stat st;\n'> <'\n'> <' LTWRAPPER_DEBUGPRINTF (("(check_executable) : %s\\n",\n'> <'\t\t\t path ? (*path ? path : "EMPTY!") : "NULL!"));\n'> <' if ((!path) || (!*path))\n'> <' return 0;\n'> <'\n'> <' if ((stat (path, &st) >= 0)\n'> <' && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH)))\n'> <' return 1;\n'> <' else\n'> <' return 0;\n'> <'}\n'> <'\n'> <'int\n'> <'make_executable (const char *path)\n'> <'{\n'> <' int rval = 0;\n'> <' struct stat st;\n'> <'\n'> <' LTWRAPPER_DEBUGPRINTF (("(make_executable) : %s\\n",\n'> <'\t\t\t path ? (*path ? path : "EMPTY!") : "NULL!"));\n'> <' if ((!path) || (!*path))\n'> <' return 0;\n'> <'\n'> <' if (stat (path, &st) >= 0)\n'> <' {\n'> <' rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR);\n'> <' }\n'> <' return rval;\n'> <'}\n'> <'\n'> <'/* Searches for the full path of the wrapper. Returns\n'> <' newly allocated full path name if found, NULL otherwise\n'> <' Does not chase symlinks, even on platforms that support them.\n'> <'*/\n'> <'char *\n'> <'find_executable (const char *wrapper)\n'> <'{\n'> <' int has_slash = 0;\n'> <' const char *p;\n'> <' const char *p_next;\n'> <' /* static buffer for getcwd */\n'> <' char tmp[LT_PATHMAX + 1];\n'> <' int tmp_len;\n'> <' char *concat_name;\n'> <'\n'> <' LTWRAPPER_DEBUGPRINTF (("(find_executable) : %s\\n",\n'> <'\t\t\t wrapper ? (*wrapper ? wrapper : "EMPTY!") : "NULL!"));\n'> <'\n'> <' if ((wrapper == NULL) || (*wrapper == \'\\0\'))\n'> <' return NULL;\n'> <'\n'> <' /* Absolute path? */\n'> <'#if defined (HAVE_DOS_BASED_FILE_SYSTEM)\n'> <' if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == \':\')\n'> <' {\n'> <' concat_name = xstrdup (wrapper);\n'> <' if (check_executable (concat_name))\n'> <'\treturn concat_name;\n'> <' XFREE (concat_name);\n'> <' }\n'> <' else\n'> <' {\n'> <'#endif\n'> <' if (IS_DIR_SEPARATOR (wrapper[0]))\n'> <'\t{\n'> <'\t concat_name = xstrdup (wrapper);\n'> <'\t if (check_executable (concat_name))\n'> <'\t return concat_name;\n'> <'\t XFREE (concat_name);\n'> <'\t}\n'> <'#if defined (HAVE_DOS_BASED_FILE_SYSTEM)\n'> <' }\n'> <'#endif\n'> <'\n'> <' for (p = wrapper; *p; p++)\n'> <' if (*p == \'/\')\n'> <' {\n'> <'\thas_slash = 1;\n'> <'\tbreak;\n'> <' }\n'> <' if (!has_slash)\n'> <' {\n'> <' /* no slashes; search PATH */\n'> <' const char *path = getenv ("PATH");\n'> <' if (path != NULL)\n'> <'\t{\n'> <'\t for (p = path; *p; p = p_next)\n'> <'\t {\n'> <'\t const char *q;\n'> <'\t size_t p_len;\n'> <'\t for (q = p; *q; q++)\n'> <'\t\tif (IS_PATH_SEPARATOR (*q))\n'> <'\t\t break;\n'> <'\t p_len = q - p;\n'> <'\t p_next = (*q == \'\\0\' ? q : q + 1);\n'> <'\t if (p_len == 0)\n'> <'\t\t{\n'> <'\t\t /* empty path: current directory */\n'> <'\t\t if (getcwd (tmp, LT_PATHMAX) == NULL)\n'> <'\t\t lt_fatal ("getcwd failed");\n'> <'\t\t tmp_len = strlen (tmp);\n'> <'\t\t concat_name =\n'> <'\t\t XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1);\n'> <'\t\t memcpy (concat_name, tmp, tmp_len);\n'> <'\t\t concat_name[tmp_len] = \'/\';\n'> <'\t\t strcpy (concat_name + tmp_len + 1, wrapper);\n'> <'\t\t}\n'> <'\t else\n'> <'\t\t{\n'> <'\t\t concat_name =\n'> <'\t\t XMALLOC (char, p_len + 1 + strlen (wrapper) + 1);\n'> <'\t\t memcpy (concat_name, p, p_len);\n'> <'\t\t concat_name[p_len] = \'/\';\n'> <'\t\t strcpy (concat_name + p_len + 1, wrapper);\n'> <'\t\t}\n'> <'\t if (check_executable (concat_name))\n'> <'\t\treturn concat_name;\n'> <'\t XFREE (concat_name);\n'> <'\t }\n'> <'\t}\n'> <' /* not found in PATH; assume curdir */\n'> <' }\n'> <' /* Relative path | not found in path: prepend cwd */\n'> <' if (getcwd (tmp, LT_PATHMAX) == NULL)\n'> <' lt_fatal ("getcwd failed");\n'> <' tmp_len = strlen (tmp);\n'> <' concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1);\n'> <' memcpy (concat_name, tmp, tmp_len);\n'> <' concat_name[tmp_len] = \'/\';\n'> <' strcpy (concat_name + tmp_len + 1, wrapper);\n'> <'\n'> <' if (check_executable (concat_name))\n'> <' return concat_name;\n'> <' XFREE (concat_name);\n'> <' return NULL;\n'> <'}\n'> <'\n'> <'char *\n'> <'chase_symlinks (const char *pathspec)\n'> <'{\n'> <'#ifndef S_ISLNK\n'> <' return xstrdup (pathspec);\n'> <'#else\n'> <' char buf[LT_PATHMAX];\n'> <' struct stat s;\n'> <' char *tmp_pathspec = xstrdup (pathspec);\n'> <' char *p;\n'> <' int has_symlinks = 0;\n'> <' while (strlen (tmp_pathspec) && !has_symlinks)\n'> <' {\n'> < ' LTWRAPPER_DEBUGPRINTF (("checking path component for symlinks: %s\\n",\n' > <'\t\t\t tmp_pathspec));\n'> <' if (lstat (tmp_pathspec, &s) == 0)\n'> <'\t{\n'> <'\t if (S_ISLNK (s.st_mode) != 0)\n'> <'\t {\n'> <'\t has_symlinks = 1;\n'> <'\t break;\n'> <'\t }\n'> <'\n'> <'\t /* search backwards for last DIR_SEPARATOR */\n'> <'\t p = tmp_pathspec + strlen (tmp_pathspec) - 1;\n'> <'\t while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p)))\n'> <'\t p--;\n'> <'\t if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p)))\n'> <'\t {\n'> <'\t /* no more DIR_SEPARATORS left */\n'> <'\t break;\n'> <'\t }\n'> <'\t *p = \'\\0\';\n'> <'\t}\n'> <' else\n'> <'\t{\n'> <'\t char *errstr = strerror (errno);\n'> <'\t lt_fatal ("Error accessing file %s (%s)", tmp_pathspec, errstr);\n'> <'\t}\n'> <' }\n'> <' XFREE (tmp_pathspec);\n'> <'\n'> <' if (!has_symlinks)\n'> <' {\n'> <' return xstrdup (pathspec);\n'> <' }\n'> <'\n'> <' tmp_pathspec = realpath (pathspec, buf);\n'> <' if (tmp_pathspec == 0)\n'> <' {\n'> <' lt_fatal ("Could not follow symlinks for %s", pathspec);\n'> <' }\n'> <' return xstrdup (tmp_pathspec);\n'> <'#endif\n'> <'}\n'> <'\n'> <'char *\n'> <'strendzap (char *str, const char *pat)\n'> <'{\n'> <' size_t len, patlen;\n'> <'\n'> <' assert (str != NULL);\n'> <' assert (pat != NULL);\n'> <'\n'> <' len = strlen (str);\n'> <' patlen = strlen (pat);\n'> <'\n'> <' if (patlen <= len)\n'> <' {\n'> <' str += len - patlen;\n'> <' if (strcmp (str, pat) == 0)\n'> <'\t*str = \'\\0\';\n'> <' }\n'> <' return str;\n'> <'}\n'> <'\n'> <'static void\n'> <'lt_error_core (int exit_status, const char *mode,\n'> <'\t const char *message, va_list ap)\n'> <'{\n'> <' fprintf (stderr, "%s: %s: ", program_name, mode);\n'> <' vfprintf (stderr, message, ap);\n'> <' fprintf (stderr, ".\\n");\n'> <'\n'> <' if (exit_status >= 0)\n'> <' exit (exit_status);\n'> <'}\n'> <'\n'> <'void\n'> <'lt_fatal (const char *message, ...)\n'> <'{\n'> <' va_list ap;\n'> <' va_start (ap, message);\n'> <' lt_error_core (EXIT_FAILURE, "FATAL", message, ap);\n'> <' va_end (ap);\n'> <'}\n'> <'\n'> <'void\n'> <'lt_setenv (const char *name, const char *value)\n'> <'{\n'> <' LTWRAPPER_DEBUGPRINTF (("(lt_setenv) setting \'%s\' to \'%s\'\\n",\n'> <' (name ? name : "<NULL>"),\n'> <' (value ? value : "<NULL>")));\n'> <' {\n'> <'#ifdef HAVE_SETENV\n'> <' /* always make a copy, for consistency with !HAVE_SETENV */\n'> <' char *str = xstrdup (value);\n'> <' setenv (name, str, 1);\n'> <'#else\n'> <' int len = strlen (name) + 1 + strlen (value) + 1;\n'> <' char *str = XMALLOC (char, len);\n'> <' sprintf (str, "%s=%s", name, value);\n'> <' if (putenv (str) != EXIT_SUCCESS)\n'> <' {\n'> <' XFREE (str);\n'> <' }\n'> <'#endif\n'> <' }\n'> <'}\n'> <'\n'> <'char *\n'> <'lt_extend_str (const char *orig_value, const char *add, int to_end)\n'> <'{\n'> <' char *new_value;\n'> <' if (orig_value && *orig_value)\n'> <' {\n'> <' int orig_value_len = strlen (orig_value);\n'> <' int add_len = strlen (add);\n'> <' new_value = XMALLOC (char, add_len + orig_value_len + 1);\n'> <' if (to_end)\n'> <' {\n'> <' strcpy (new_value, orig_value);\n'> <' strcpy (new_value + orig_value_len, add);\n'> <' }\n'> <' else\n'> <' {\n'> <' strcpy (new_value, add);\n'> <' strcpy (new_value + add_len, orig_value);\n'> <' }\n'> <' }\n'> <' else\n'> <' {\n'> <' new_value = xstrdup (add);\n'> <' }\n'> <' return new_value;\n'> <'}\n'> <'\n'> <'int\n'> <'lt_split_name_value (const char *arg, char** name, char** value)\n'> <'{\n'> <' const char *p;\n'> <' int len;\n'> <' if (!arg || !*arg)\n'> <' return 1;\n'> <'\n'> <' p = strchr (arg, (int)\'=\');\n'> <'\n'> <' if (!p)\n'> <' return 1;\n'> <'\n'> <' *value = xstrdup (++p);\n'> <'\n'> <' len = strlen (arg) - strlen (*value);\n'> <' *name = XMALLOC (char, len);\n'> <' strncpy (*name, arg, len-1);\n'> <' (*name)[len - 1] = \'\\0\';\n'> <'\n'> <' return 0;\n'> <'}\n'> <'\n'> <'void\n'> <'lt_opt_process_env_set (const char *arg)\n'> <'{\n'> <' char *name = NULL;\n'> <' char *value = NULL;\n'> <'\n'> <' if (lt_split_name_value (arg, &name, &value) != 0)\n'> <' {\n'> <' XFREE (name);\n'> <' XFREE (value);\n'> <' lt_fatal ("bad argument for %s: \'%s\'", env_set_opt, arg);\n'> <' }\n'> <'\n'> <' lt_setenv (name, value);\n'> <' XFREE (name);\n'> <' XFREE (value);\n'> <'}\n'> <'\n'> <'void\n'> <'lt_opt_process_env_prepend (const char *arg)\n'> <'{\n'> <' char *name = NULL;\n'> <' char *value = NULL;\n'> <' char *new_value = NULL;\n'> <'\n'> <' if (lt_split_name_value (arg, &name, &value) != 0)\n'> <' {\n'> <' XFREE (name);\n'> <' XFREE (value);\n'> <' lt_fatal ("bad argument for %s: \'%s\'", env_prepend_opt, arg);\n'> <' }\n'> <'\n'> <' new_value = lt_extend_str (getenv (name), value, 0);\n'> <' lt_setenv (name, new_value);\n'> <' XFREE (new_value);\n'> <' XFREE (name);\n'> <' XFREE (value);\n'> <'}\n'> <'\n'> <'void\n'> <'lt_opt_process_env_append (const char *arg)\n'> <'{\n'> <' char *name = NULL;\n'> <' char *value = NULL;\n'> <' char *new_value = NULL;\n'> <'\n'> <' if (lt_split_name_value (arg, &name, &value) != 0)\n'> <' {\n'> <' XFREE (name);\n'> <' XFREE (value);\n'> <' lt_fatal ("bad argument for %s: \'%s\'", env_append_opt, arg);\n'> <' }\n'> <'\n'> <' new_value = lt_extend_str (getenv (name), value, 1);\n'> <' lt_setenv (name, new_value);\n'> <' XFREE (new_value);\n'> <' XFREE (name);\n'> <' XFREE (value);\n'> <'}\n'> <'\n'> <'void\n'> <'lt_update_exe_path (const char *name, const char *value)\n'> <'{\n'> < ' LTWRAPPER_DEBUGPRINTF (("(lt_update_exe_path) modifying \'%s\' by prepending \'%s\'\\n",\n' > <' (name ? name : "<NULL>"),\n'> <' (value ? value : "<NULL>")));\n'> <'\n'> <' if (name && *name && value && *value)\n'> <' {\n'> <' char *new_value = lt_extend_str (getenv (name), value, 0);\n'> <' /* some systems can\'t cope with a \':\'-terminated path #\' */\n'> <' int len = strlen (new_value);\n'> < ' while (((len = strlen (new_value)) > 0) && IS_PATH_SEPARATOR (new_value[len-1]))\n' > <' {\n'> <' new_value[len-1] = \'\\0\';\n'> <' }\n'> <' lt_setenv (name, new_value);\n'> <' XFREE (new_value);\n'> <' }\n'> <'}\n'> <'\n'> <'void\n'> <'lt_update_lib_path (const char *name, const char *value)\n'> <'{\n'> < ' LTWRAPPER_DEBUGPRINTF (("(lt_update_lib_path) modifying \'%s\' by prepending \'%s\'\\n",\n' > <' (name ? name : "<NULL>"),\n'> <' (value ? value : "<NULL>")));\n'> <'\n'> <' if (name && *name && value && *value)\n'> <' {\n'> <' char *new_value = lt_extend_str (getenv (name), value, 0);\n'> <' lt_setenv (name, new_value);\n'> <' XFREE (new_value);\n'> <' }\n'> <'}\n'> <'\n'> <'\n'> ] ) ) ] do_fork: T ) ] ) ) (command.ShFunction name: func_mode_link body: (BraceGroup children: [ (C {($ Id.VSub_DollarName '$opt_debug')}) (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-cygwin> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-mingw> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-pw32> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-os2> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <-cegcc> <Id.Lit_Star '*'>} ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:allow_undefined) op: assign_op.Equal rhs: {<yes>} spids: [19366] ) ] ) ] spids: [19287 19322 19370 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:allow_undefined) op: assign_op.Equal rhs: {<yes>} spids: [19377] ) ] ) ] spids: [19373 19374 19381 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libtool_args) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$nonopt')} spids: [19387] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:base_compile) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$nonopt') <' '> ($ Id.VSub_At '$@'))} spids: [19391] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_command) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$nonopt')} spids: [19399] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_command) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$nonopt')} spids: [19403] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_rpath) op: assign_op.Equal rhs: (word.Empty) spids: [19408] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_rpath) op: assign_op.Equal rhs: (word.Empty) spids: [19411] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_shlibpath) op: assign_op.Equal rhs: (word.Empty) spids: [19414] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_shlibpath) op: assign_op.Equal rhs: (word.Empty) spids: [19417] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:convenience) op: assign_op.Equal rhs: (word.Empty) spids: [19420] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:old_convenience) op: assign_op.Equal rhs: (word.Empty) spids: [19423] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: (word.Empty) spids: [19426] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:old_deplibs) op: assign_op.Equal rhs: (word.Empty) spids: [19429] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compiler_flags) op: assign_op.Equal rhs: (word.Empty) spids: [19432] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:linker_flags) op: assign_op.Equal rhs: (word.Empty) spids: [19435] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dllsearchpath) op: assign_op.Equal rhs: (word.Empty) spids: [19438] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lib_search_path) op: assign_op.Equal rhs: {(command_sub left_token:<Id.Left_Backtick '`'> child:(C {<pwd>}))} spids: [19441] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:inst_prefix_dir) op: assign_op.Equal rhs: (word.Empty) spids: [19449] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:new_inherited_linker_flags) op: assign_op.Equal rhs: (word.Empty) spids: [19452] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:avoid_version) op: assign_op.Equal rhs: {<no>} spids: [19456] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlfiles) op: assign_op.Equal rhs: (word.Empty) spids: [19460] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlprefiles) op: assign_op.Equal rhs: (word.Empty) spids: [19463] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlself) op: assign_op.Equal rhs: {<no>} spids: [19466] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:export_dynamic) op: assign_op.Equal rhs: {<no>} spids: [19470] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:export_symbols) op: assign_op.Equal rhs: (word.Empty) spids: [19474] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:export_symbols_regex) op: assign_op.Equal rhs: (word.Empty) spids: [19477] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:generated) op: assign_op.Equal rhs: (word.Empty) spids: [19480] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobjs) op: assign_op.Equal rhs: (word.Empty) spids: [19483] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:ltlibs) op: assign_op.Equal rhs: (word.Empty) spids: [19486] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:module) op: assign_op.Equal rhs: {<no>} spids: [19489] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:no_install) op: assign_op.Equal rhs: {<no>} spids: [19493] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:objs) op: assign_op.Equal rhs: (word.Empty) spids: [19497] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:non_pic_objects) op: assign_op.Equal rhs: (word.Empty) spids: [19500] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:precious_files_regex) op: assign_op.Equal rhs: (word.Empty) spids: [19503] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prefer_static_libs) op: assign_op.Equal rhs: {<no>} spids: [19506] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:preload) op: assign_op.Equal rhs: {<no>} spids: [19510] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [19514] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prevarg) op: assign_op.Equal rhs: (word.Empty) spids: [19517] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:release) op: assign_op.Equal rhs: (word.Empty) spids: [19520] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rpath) op: assign_op.Equal rhs: (word.Empty) spids: [19523] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:xrpath) op: assign_op.Equal rhs: (word.Empty) spids: [19526] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:perm_rpath) op: assign_op.Equal rhs: (word.Empty) spids: [19529] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:temp_rpath) op: assign_op.Equal rhs: (word.Empty) spids: [19532] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:thread_safe) op: assign_op.Equal rhs: {<no>} spids: [19535] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:vinfo) op: assign_op.Equal rhs: (word.Empty) spids: [19539] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:vinfo_number) op: assign_op.Equal rhs: {<no>} spids: [19542] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:weak_libs) op: assign_op.Equal rhs: (word.Empty) spids: [19546] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:single_module) op: assign_op.Equal rhs: {(DQ (${ Id.VSub_Name wl) <-single_module>)} spids: [19549] ) ] ) (C {<func_infer_tag>} {($ Id.VSub_DollarName '$base_compile')}) (command.ForEach iter_name: arg do_arg_iter: T 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: [19609] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Break break> ) ] spids: [19583 19584 19616 -1] ) (case_arm pat_list: [{<-all-static>} {<-static>} {<-static-libtool-libs>}] action: [ (command.Case to_match: {($ Id.VSub_DollarName '$arg')} arms: [ (case_arm pat_list: [{<-all-static>}] action: [ (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.Lit_Equals '='>} {<yes>} ) (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$link_static_flag' ) ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_warning>} { (DQ < 'complete static linking is impossible in this configuration' > ) } ) ] spids: [19642 19665] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$link_static_flag') ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlopen_self) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$dlopen_self_static')} spids: [19692] ) ] ) ] spids: [19678 19689] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prefer_static_libs) op: assign_op.Equal rhs: {<yes>} spids: [19699] ) ] ) ] spids: [19638 19639 19703 -1] ) (case_arm pat_list: [{<-static>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$pic_flag'))} ) (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$link_static_flag' ) ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlopen_self) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$dlopen_self_static')} spids: [19734] ) ] ) ] spids: [19710 19731] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prefer_static_libs) op: assign_op.Equal rhs: {<built>} spids: [19741] ) ] ) ] spids: [19706 19707 19745 -1] ) (case_arm pat_list: [{<-static-libtool-libs>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$pic_flag'))} ) (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$link_static_flag' ) ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlopen_self) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$dlopen_self_static')} spids: [19776] ) ] ) ] spids: [19752 19773] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prefer_static_libs) op: assign_op.Equal rhs: {<yes>} spids: [19783] ) ] ) ] spids: [19748 19749 19787 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:build_libtool_libs) op: assign_op.Equal rhs: {<no>} spids: [19793] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:build_old_libs) op: assign_op.Equal rhs: {<yes>} spids: [19797] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Break break> ) ] spids: [19619 19628 19804 -1] ) ] ) ] ) ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$old_archive_from_new_cmds'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:build_old_libs) op: assign_op.Equal rhs: {<yes>} spids: [19828] ) ] ) ] ) (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:arg) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [19853] ) ] ) (C {<shift>}) (C {<func_quote_for_eval>} {(DQ ($ Id.VSub_DollarName '$arg'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:qarg) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_quote_for_eval_unquoted_result')} spids: [19869] ) ] ) (C {<func_append>} {<libtool_args>} {(DQ <' '> ($ Id.VSub_DollarName '$func_quote_for_eval_result'))} ) (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.Case to_match: {($ Id.VSub_DollarName '$prev')} arms: [ (case_arm pat_list: [{<output>}] action: [ (C {<func_append>} {<compile_command>} {(DQ <' @OUTPUT@'>)}) (C {<func_append>} {<finalize_command>} {(DQ <' @OUTPUT@'>)}) ] spids: [19909 19910 19931 -1] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$prev')} arms: [ (case_arm pat_list: [{<dlfiles>} {<dlprefiles>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$preload'))} {<Id.Lit_Equals '='>} {<no>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_append>} {<compile_command>} {(DQ <' @SYMFILE@'>)}) (C {<func_append>} {<finalize_command>} {(DQ <' @SYMFILE@'>)}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:preload) op: assign_op.Equal rhs: {<yes>} spids: [19989] ) ] ) ] spids: [19951 19964] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$arg')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <.la>} {<Id.Lit_Star '*'> <.lo>} ] spids: [20003 20010 20012 -1] ) (case_arm pat_list: [{<force>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$dlself'))} {<Id.Lit_Equals '='>} {<no>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlself) op: assign_op.Equal rhs: {<needless>} spids: [20038] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:export_dynamic) op: assign_op.Equal rhs: {<yes>} spids: [20042] ) ] ) ] spids: [20022 20035] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [20049] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [20018 20019 20055 -1] ) (case_arm pat_list: [{<self>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$prev'))} {<Id.Lit_Equals '='>} {<dlprefiles>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlself) op: assign_op.Equal rhs: {<yes>} spids: [20078] ) ] ) ] spids: [20062 20075] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} { (DQ ($ Id.VSub_DollarName '$prev') ) } {<Id.Lit_Equals '='>} {<dlfiles>} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$dlopen_self' ) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<yes>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlself) op: assign_op.Equal rhs: {<yes>} spids: [20111] ) ] ) ] spids: [20082 20108] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlself) op: assign_op.Equal rhs: {<needless>} spids: [20118] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:export_dynamic) op: assign_op.Equal rhs: {<yes>} spids: [20122] ) ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [20129] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [20058 20059 20135 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$prev'))} {<Id.Lit_Equals '='>} {<dlfiles>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dlfiles') <' '> ($ Id.VSub_DollarName '$arg') ) } spids: [20158] ) ] ) ] spids: [20142 20155] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlprefiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dlprefiles') <' '> ($ Id.VSub_DollarName '$arg') ) } spids: [20169] ) ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [20180] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [20138 20139 20186 -1] ) ] ) ] spids: [19945 19948 20192 -1] ) (case_arm pat_list: [{<expsyms>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:export_symbols) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$arg'))} spids: [20199] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {<-f>} {(DQ ($ Id.VSub_DollarName '$arg'))}) (C {<func_fatal_error>} { (DQ <'symbol file '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$arg') <'\' does not exist'> ) } ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [20227] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [20195 20196 20233 -1] ) (case_arm pat_list: [{<expsyms_regex>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:export_symbols_regex) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$arg'))} spids: [20240] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [20246] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [20236 20237 20252 -1] ) (case_arm pat_list: [{<framework>}] action: [ (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-darwin> <Id.Lit_Star '*'> } ] action: [ (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$deplibs') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$qarg') <'.ltframework '> ) <Id.Lit_Star '*'> } ] spids: [20284 20291 20293 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplibs') <' '> ($ Id.VSub_DollarName '$qarg') <.ltframework> ) } spids: [20299] ) ] ) ] spids: [20296 20297 20311 -1] ) ] ) ] spids: [20266 20271 20317 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [20323] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [20255 20256 20329 -1] ) (case_arm pat_list: [{<inst_prefix>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:inst_prefix_dir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$arg'))} spids: [20336] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [20342] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [20332 20333 20348 -1] ) (case_arm pat_list: [{<objectlist>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-f>} {(DQ ($ Id.VSub_DollarName '$arg'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:save_arg) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$arg')} spids: [20369] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:moreargs) op: assign_op.Equal rhs: (word.Empty) spids: [20373] ) ] ) (command.ForEach iter_name: fil iter_words: [ { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<cat>} {(DQ ($ Id.VSub_DollarName '$save_arg'))} ) ) } ] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$fil')} spids: [20399] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<func_lalib_unsafe_p>} { (DQ ($ Id.VSub_DollarName '$arg' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: pic_object ) op: assign_op.Equal rhs: (word.Empty) spids: [20424] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: non_pic_object ) op: assign_op.Equal rhs: (word.Empty) spids: [20427] ) ] ) (C {<func_source>} {(DQ ($ Id.VSub_DollarName '$arg'))} ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [ Id.Op_DPipe Id.Op_DPipe Id.Op_DAmp ] children: [ (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$pic_object' ) ) } ) (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$non_pic_object' ) ) } ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$pic_object' ) ) } {<Id.Lit_Equals '='>} {<none>} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$non_pic_object' ) ) } {<Id.Lit_Equals '='>} {<none>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_fatal_error>} { (DQ < 'cannot find name of object for ' > (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$arg') <'\''> ) } ) ] spids: [20443 20491] ) ] ) (C {<func_dirname>} {(DQ ($ Id.VSub_DollarName '$arg'))} {(DQ <'/'>)} {(DQ )} ) (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: [20526] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$pic_object' ) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<none>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: pic_object ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$xdir' ) ($ Id.VSub_DollarName '$pic_object') ) } spids: [20554] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$prev' ) ) } {<Id.Lit_Equals '='>} {<dlfiles>} ) 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 ($ Id.VSub_DollarName '$build_libtool_libs'))} {<Id.Lit_Equals '='>} {<yes>} ) (C { < test > } {(DQ ($ Id.VSub_DollarName '$dlopen_support'))} {<Id.Lit_Equals '='>} {<yes>} ) ] ) terminator: < Id.Op_Semi _ > ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: dlfiles ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dlfiles' ) <' '> ($ Id.VSub_DollarName '$pic_object') ) } spids: [ 20606 ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: prev ) op: assign_op.Equal rhs: (word.Empty) spids: [ 20614 ] ) ] ) (command.ControlFlow token: < Id.ControlFlow_Continue continue > ) ] spids: [20578 20603] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: prev ) op: assign_op.Equal rhs: { < dlprefiles > } spids: [20627] ) ] ) ] ) ] spids: [20562 20575] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$prev' ) ) } {<Id.Lit_Equals '='>} {<dlprefiles>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: dlprefiles ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dlprefiles' ) <' '> ($ Id.VSub_DollarName '$pic_object') ) } spids: [20662] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: prev ) op: assign_op.Equal rhs: (word.Empty) spids: [20670] ) ] ) ] spids: [20642 20655] ) ] ) (C {<func_append>} {<libobjs>} { (DQ <' '> ($ Id.VSub_DollarName '$pic_object' ) ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: arg ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$pic_object' ) ) } spids: [20691] ) ] ) ] spids: [20533 20547] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$non_pic_object' ) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<none>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: non_pic_object ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$xdir' ) ($ Id.VSub_DollarName '$non_pic_object') ) } spids: [20726] ) ] ) (C {<func_append>} {<non_pic_objects>} {(DQ <' '> ($ Id.VSub_DollarName '$non_pic_object'))} ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [ Id.Op_DPipe ] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$pic_object'))} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$pic_object' ) ) } {<Id.Lit_Equals '='>} {<none>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: arg ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$non_pic_object' ) ) } spids: [20775] ) ] ) ] spids: [20748 20772] ) ] ) ] spids: [20705 20719] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: non_pic_object ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$pic_object' ) ) } spids: [20795] ) ] ) (C {<func_append>} {<non_pic_objects>} { (DQ <' '> ($ Id.VSub_DollarName '$non_pic_object' ) ) } ) ] ) ] spids: [20412 20421] ) ] else_action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C { ($ Id.VSub_DollarName '$opt_dry_run' ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_dirname>} {(DQ ($ Id.VSub_DollarName '$arg'))} {(DQ <'/'>)} {(DQ )} ) (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: [20847] ) ] ) (C {<func_lo2o>} {(DQ ($ Id.VSub_DollarName '$arg'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: pic_object ) op: assign_op.Equal rhs: { ($ Id.VSub_DollarName '$xdir' ) ($ Id.VSub_DollarName '$objdir') <'/'> ($ Id.VSub_DollarName '$func_lo2o_result') } spids: [20861] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: non_pic_object ) op: assign_op.Equal rhs: { ($ Id.VSub_DollarName '$xdir' ) ($ Id.VSub_DollarName '$func_lo2o_result') } spids: [20868] ) ] ) (C {<func_append>} {<libobjs>} { (DQ <' '> ($ Id.VSub_DollarName '$pic_object' ) ) } ) (C {<func_append>} {<non_pic_objects>} { (DQ <' '> ($ Id.VSub_DollarName '$non_pic_object' ) ) } ) ] spids: [20821 20826] ) ] else_action: [ (C {<func_fatal_error>} { (DQ (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$arg') <'\' is not a valid libtool object'> ) } ) ] ) ] ) ] ) ) ] spids: [20355 20366] ) ] else_action: [ (C {<func_fatal_error>} { (DQ <'link input file '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$arg') <'\' does not exist'> ) } ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$save_arg')} spids: [20930] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [20934] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [20351 20352 20940 -1] ) (case_arm pat_list: [{<precious_regex>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:precious_files_regex) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$arg'))} spids: [20947] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [20953] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [20943 20944 20959 -1] ) (case_arm pat_list: [{<release>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:release) op: assign_op.Equal rhs: {(DQ <-> ($ Id.VSub_DollarName '$arg'))} spids: [20966] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [20973] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [20962 20963 20979 -1] ) (case_arm pat_list: [{<rpath>} {<xrpath>}] action: [ (command.Case to_match: {($ Id.VSub_DollarName '$arg')} 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: [21001 21018 21020 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<func_fatal_error>} {(DQ <'only absolute run-paths are allowed'>)} ) ] spids: [21023 21024 21034 -1] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$prev'))} {<Id.Lit_Equals '='>} {<rpath>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$rpath') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$arg') <' '>) <Id.Lit_Star '*'> } ] spids: [21066 21073 21075 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rpath) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$rpath') <' '> ($ Id.VSub_DollarName '$arg') ) } spids: [21081] ) ] ) ] spids: [21078 21079 21088 -1] ) ] ) ] spids: [21040 21053] ) ] else_action: [ (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$xrpath') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$arg') <' '>) <Id.Lit_Star '*'> } ] spids: [21107 21114 21116 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:xrpath) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$xrpath') <' '> ($ Id.VSub_DollarName '$arg') ) } spids: [21122] ) ] ) ] spids: [21119 21120 21129 -1] ) ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [21138] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [20982 20987 21144 -1] ) (case_arm pat_list: [{<shrext>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:shrext_cmds) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$arg'))} spids: [21151] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [21157] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [21147 21148 21163 -1] ) (case_arm pat_list: [{<weak>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:weak_libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$weak_libs') <' '> ($ Id.VSub_DollarName '$arg') ) } spids: [21170] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [21178] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [21166 21167 21184 -1] ) (case_arm pat_list: [{<xcclinker>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:linker_flags) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$linker_flags') <' '> ($ Id.VSub_DollarName '$qarg') ) } spids: [21191] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compiler_flags) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$compiler_flags') <' '> ($ Id.VSub_DollarName '$qarg') ) } spids: [21199] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [21207] ) ] ) (C {<func_append>} {<compile_command>} {(DQ <' '> ($ Id.VSub_DollarName '$qarg'))} ) (C {<func_append>} {<finalize_command>} {(DQ <' '> ($ Id.VSub_DollarName '$qarg'))} ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [21187 21188 21233 -1] ) (case_arm pat_list: [{<xcompiler>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compiler_flags) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$compiler_flags') <' '> ($ Id.VSub_DollarName '$qarg') ) } spids: [21240] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [21248] ) ] ) (C {<func_append>} {<compile_command>} {(DQ <' '> ($ Id.VSub_DollarName '$qarg'))} ) (C {<func_append>} {<finalize_command>} {(DQ <' '> ($ Id.VSub_DollarName '$qarg'))} ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [21236 21237 21274 -1] ) (case_arm pat_list: [{<xlinker>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:linker_flags) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$linker_flags') <' '> ($ Id.VSub_DollarName '$qarg') ) } spids: [21281] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compiler_flags) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$compiler_flags') <' '> ($ Id.VSub_DollarName '$wl') ($ Id.VSub_DollarName '$qarg') ) } spids: [21289] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [21298] ) ] ) (C {<func_append>} {<compile_command>} { (DQ <' '> ($ Id.VSub_DollarName '$wl') ($ Id.VSub_DollarName '$qarg') ) } ) (C {<func_append>} {<finalize_command>} { (DQ <' '> ($ Id.VSub_DollarName '$wl') ($ Id.VSub_DollarName '$qarg') ) } ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [21277 21278 21326 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<eval>} { (DQ ($ Id.VSub_DollarName '$prev') <'='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <arg> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [21345] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [21329 21330 21351 -1] ) ] ) ] spids: [19888 19899] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prevarg) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$arg'))} spids: [21364] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$arg')} arms: [ (case_arm pat_list: [{<-all-static>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$link_static_flag'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_append>} {<compile_command>} {(DQ <' '> ($ Id.VSub_DollarName '$link_static_flag'))} ) (C {<func_append>} {<finalize_command>} {(DQ <' '> ($ Id.VSub_DollarName '$link_static_flag'))} ) ] spids: [21382 21393] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [21378 21379 21426 -1] ) (case_arm pat_list: [{<-allow-undefined>}] action: [ (C {<func_fatal_error>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-allow-undefined\' must not be used because it is the default'> ) } ) ] spids: [21430 21431 21446 -1] ) (case_arm pat_list: [{<-avoid-version>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:avoid_version) op: assign_op.Equal rhs: {<yes>} spids: [21454] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [21450 21451 21461 -1] ) (case_arm pat_list: [{<-dlopen>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {<dlfiles>} spids: [21469] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [21465 21466 21476 -1] ) (case_arm pat_list: [{<-dlpreopen>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {<dlprefiles>} spids: [21484] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [21480 21481 21491 -1] ) (case_arm pat_list: [{<-export-dynamic>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:export_dynamic) op: assign_op.Equal rhs: {<yes>} spids: [21499] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [21495 21496 21506 -1] ) (case_arm pat_list: [{<-export-symbols>} {<-export-symbols-regex>}] action: [ (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 '$export_symbols'))} ) (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$export_symbols_regex') ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_fatal_error>} { (DQ < 'more than one -exported-symbols argument is not allowed' > ) } ) ] spids: [21518 21539] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$arg'))} {<Id.Lit_Equals '='>} {(DQ <X-export-symbols>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {<expsyms>} spids: [21571] ) ] ) ] spids: [21552 21568] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {<expsyms_regex>} spids: [21578] ) ] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [21510 21515 21588 -1] ) (case_arm pat_list: [{<-framework>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {<framework>} spids: [21596] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [21592 21593 21603 -1] ) (case_arm pat_list: [{<-inst-prefix-dir>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {<inst_prefix>} spids: [21611] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [21607 21608 21618 -1] ) (case_arm pat_list: [ {<-L> <Id.Lit_LBracket '['> <A-Z> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <A-Z> <Id.Lit_RBracket ']'> <Id.Lit_Star '*'> <Id.Lit_Colon ':'> <Id.Lit_Star '*'> } ] action: [ (command.Case to_match: {($ Id.VSub_DollarName '$with_gcc') <'/'> ($ Id.VSub_DollarName '$host') } arms: [ (case_arm pat_list: [ {<'no/'> <Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-irix> <Id.Lit_Star '*'> } {<'/'> <Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-irix> <Id.Lit_Star '*'> } ] action: [ (C {<func_append>} {<compile_command>} {(DQ <' '> ($ Id.VSub_DollarName '$arg'))} ) (C {<func_append>} {<finalize_command>} {(DQ <' '> ($ Id.VSub_DollarName '$arg'))} ) ] spids: [21652 21667 21690 -1] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [21630 21640 21699 -1] ) (case_arm pat_list: [{<-L> <Id.Lit_Star '*'>}] action: [ (C {<func_stripname>} {(SQ <-L>)} {(SQ )} {(DQ ($ Id.VSub_DollarName '$arg'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dir) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [21722] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$dir'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (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: [ (C {<func_fatal_error>} { (DQ <'require no space between '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'-L\' and '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_Number '$1') <'\''> ) } ) ] spids: [21740 21753] ) ] else_action: [ (C {<func_fatal_error>} { (DQ <'need path for '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'-L\' option'> ) } ) ] ) ] spids: [21726 21737] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$dir')} 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: [21797 21814 21816 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (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: [21823] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$absdir'))}) (C {<func_fatal_error>} { (DQ <'cannot determine absolute directory name of '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$dir') <'\''> ) } ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$absdir'))} spids: [21861] ) ] ) ] spids: [21819 21820 21867 -1] ) ] ) (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$deplibs') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' -L'> ($ Id.VSub_DollarName '$dir') <' '>) <Id.Lit_Star '*'> } ] spids: [21883 21890 21892 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplibs') <' -L'> ($ Id.VSub_DollarName '$dir') ) } spids: [21899] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lib_search_path) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$lib_search_path') <' '> ($ Id.VSub_DollarName '$dir') ) } spids: [21907] ) ] ) ] spids: [21895 21896 21915 -1] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-cygwin> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-mingw> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-pw32> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-os2> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <-cegcc> <Id.Lit_Star '*'>} ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:testbindir) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <X> ($ Id.VSub_DollarName '$dir'))} ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(SQ <'s*/lib$*/bin*'>)} ) ] negated: F ) ) } spids: [21966] ) ] ) (command.Case to_match: {<Id.Lit_Colon ':'> ($ Id.VSub_DollarName '$dllsearchpath') <Id.Lit_Colon ':'> } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <':'> ($ Id.VSub_DollarName '$dir') <':'>) <Id.Lit_Star '*'> } ] spids: [21998 22005 22007 -1] ) (case_arm pat_list: [{<Id.Lit_Colon ':'> <Id.Lit_Colon ':'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dllsearchpath) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$dir')} spids: [22014] ) ] ) ] spids: [22010 22012 22016 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dllsearchpath) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dllsearchpath') <':'> ($ Id.VSub_DollarName '$dir') ) } spids: [22022] ) ] ) ] spids: [22019 22020 22028 -1] ) ] ) (command.Case to_match: {<Id.Lit_Colon ':'> ($ Id.VSub_DollarName '$dllsearchpath') <Id.Lit_Colon ':'> } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <':'> ($ Id.VSub_DollarName '$testbindir') <':'>) <Id.Lit_Star '*'> } ] spids: [22043 22050 22052 -1] ) (case_arm pat_list: [{<Id.Lit_Colon ':'> <Id.Lit_Colon ':'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dllsearchpath) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$testbindir')} spids: [22059] ) ] ) ] spids: [22055 22057 22061 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dllsearchpath) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dllsearchpath') <':'> ($ Id.VSub_DollarName '$testbindir') ) } spids: [22067] ) ] ) ] spids: [22064 22065 22073 -1] ) ] ) ] spids: [21928 21963 22079 -1] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [21703 21705 22088 -1] ) (case_arm pat_list: [{<-l> <Id.Lit_Star '*'>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$arg'))} {<Id.Lit_Equals '='>} {(DQ <X-lc>)} ) (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$arg'))} {<Id.Lit_Equals '='>} {(DQ <X-lm>)} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-cygwin> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-mingw> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-pw32> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-beos> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-cegcc> <Id.Lit_Star '*'>} ] action: [ (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [22138 22173 22183 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-os2> <Id.Lit_Star '*'> } ] action: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$arg'))} {<Id.Lit_Equals '='>} {(DQ <X-lc>)} ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] ) ] spids: [22186 22191 22216 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-openbsd> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-freebsd> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-dragonfly> <Id.Lit_Star '*'> } ] action: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$arg'))} {<Id.Lit_Equals '='>} {(DQ <X-lc>)} ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] ) ] spids: [22219 22240 22265 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-rhapsody> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-darwin1.> <Id.Lit_LBracket '['> <012> <Id.Lit_RBracket ']'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplibs') <' System.ltframework'> ) } spids: [22290] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [22268 22283 22300 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-sco3.2v5> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-sco5v6> <Id.Lit_Star '*'> } ] action: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$arg'))} {<Id.Lit_Equals '='>} {(DQ <X-lc>)} ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] ) ] spids: [22303 22316 22341 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-sysv4.2uw2> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-sysv5> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-unixware> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-OpenUNIX> <Id.Lit_Star '*'> } ] action: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$arg'))} {<Id.Lit_Equals '='>} {(DQ <X-lc>)} ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] ) ] spids: [22344 22373 22398 -1] ) ] ) ] spids: [22097 22128] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$arg'))} {<Id.Lit_Equals '='>} {(DQ <X-lc_r>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-openbsd> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-freebsd> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-dragonfly> <Id.Lit_Star '*'> } ] action: [ (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [22430 22451 22461 -1] ) ] ) ] spids: [22404 22420] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplibs') <' '> ($ Id.VSub_DollarName '$arg') ) } spids: [22470] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [22092 22094 22481 -1] ) (case_arm pat_list: [{<-module>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:module) op: assign_op.Equal rhs: {<yes>} spids: [22489] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [22485 22486 22496 -1] ) (case_arm pat_list: [{<-model>} {<-arch>} {<-isysroot>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compiler_flags) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$compiler_flags') <' '> ($ Id.VSub_DollarName '$arg') ) } spids: [22520] ) ] ) (C {<func_append>} {<compile_command>} {(DQ <' '> ($ Id.VSub_DollarName '$arg'))} ) (C {<func_append>} {<finalize_command>} {(DQ <' '> ($ Id.VSub_DollarName '$arg'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {<xcompiler>} spids: [22548] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [22512 22517 22555 -1] ) (case_arm pat_list: [ {<-mt>} {<-mthreads>} {<-kthread>} {<-Kthread>} {<-pthread>} {<-pthreads>} {<--thread-safe>} {<-threads>} ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compiler_flags) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$compiler_flags') <' '> ($ Id.VSub_DollarName '$arg') ) } spids: [22577] ) ] ) (C {<func_append>} {<compile_command>} {(DQ <' '> ($ Id.VSub_DollarName '$arg'))} ) (C {<func_append>} {<finalize_command>} {(DQ <' '> ($ Id.VSub_DollarName '$arg'))} ) (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$new_inherited_linker_flags') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$arg') <' '>) <Id.Lit_Star '*'> } ] spids: [22615 22622 22624 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:new_inherited_linker_flags) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$new_inherited_linker_flags') <' '> ($ Id.VSub_DollarName '$arg') ) } spids: [22631] ) ] ) ] spids: [22627 22629 22638 -1] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [22559 22574 22647 -1] ) (case_arm pat_list: [{<-multi_module>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:single_module) op: assign_op.Equal rhs: {(DQ (${ Id.VSub_Name wl) <-multi_module>)} spids: [22655] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [22651 22652 22667 -1] ) (case_arm pat_list: [{<-no-fast-install>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:fast_install) op: assign_op.Equal rhs: {<no>} spids: [22675] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [22671 22672 22682 -1] ) (case_arm pat_list: [{<-no-install>}] action: [ (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-cygwin> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-mingw> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-pw32> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-os2> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-darwin> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <-cegcc> <Id.Lit_Star '*'>} ] action: [ (C {<func_warning>} { (DQ (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'-no-install\' is ignored for '> ($ Id.VSub_DollarName '$host') ) } ) (C {<func_warning>} { (DQ <'assuming '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'-no-fast-install\' instead'> ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:fast_install) op: assign_op.Equal rhs: {<no>} spids: [22769] ) ] ) ] spids: [22697 22740 22773 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:no_install) op: assign_op.Equal rhs: {<yes>} spids: [22779] ) ] ) ] spids: [22776 22777 22782 -1] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [22686 22687 22791 -1] ) (case_arm pat_list: [{<-no-undefined>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:allow_undefined) op: assign_op.Equal rhs: {<no>} spids: [22799] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [22795 22796 22806 -1] ) (case_arm pat_list: [{<-objectlist>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {<objectlist>} spids: [22814] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [22810 22811 22821 -1] ) (case_arm pat_list: [{<-o>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {<output>} spids: [22828] ) ] ) ] spids: [22825 22826 22831 -1] ) (case_arm pat_list: [{<-precious-files-regex>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {<precious_regex>} spids: [22839] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [22835 22836 22846 -1] ) (case_arm pat_list: [{<-release>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {<release>} spids: [22854] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [22850 22851 22861 -1] ) (case_arm pat_list: [{<-rpath>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {<rpath>} spids: [22869] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [22865 22866 22876 -1] ) (case_arm pat_list: [{<-R>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {<xrpath>} spids: [22884] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [22880 22881 22891 -1] ) (case_arm pat_list: [{<-R> <Id.Lit_Star '*'>}] action: [ (C {<func_stripname>} {(SQ <-R>)} {(SQ )} {(DQ ($ Id.VSub_DollarName '$arg'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dir) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [22914] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$dir')} 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: [22929 22946 22948 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<func_fatal_error>} {(DQ <'only absolute run-paths are allowed'>)} ) ] spids: [22951 22952 22962 -1] ) ] ) (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$xrpath') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$dir') <' '>) <Id.Lit_Star '*'> } ] spids: [22978 22985 22987 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:xrpath) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$xrpath') <' '> ($ Id.VSub_DollarName '$dir') ) } spids: [22993] ) ] ) ] spids: [22990 22991 23000 -1] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [22895 22897 23009 -1] ) (case_arm pat_list: [{<-shared>}] action: [(command.ControlFlow token:<Id.ControlFlow_Continue continue>)] spids: [23013 23014 23024 -1] ) (case_arm pat_list: [{<-shrext>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {<shrext>} spids: [23032] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [23028 23029 23039 -1] ) (case_arm pat_list: [{<-static>} {<-static-libtool-libs>}] action: [(command.ControlFlow token:<Id.ControlFlow_Continue continue>)] spids: [23043 23048 23074 -1] ) (case_arm pat_list: [{<-thread-safe>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:thread_safe) op: assign_op.Equal rhs: {<yes>} spids: [23082] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [23078 23079 23089 -1] ) (case_arm pat_list: [{<-version-info>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {<vinfo>} spids: [23097] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [23093 23094 23104 -1] ) (case_arm pat_list: [{<-version-number>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {<vinfo>} spids: [23112] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:vinfo_number) op: assign_op.Equal rhs: {<yes>} spids: [23116] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [23108 23109 23123 -1] ) (case_arm pat_list: [{<-weak>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {<weak>} spids: [23131] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [23127 23128 23138 -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: [23162] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg) op: assign_op.Equal rhs: (word.Empty) spids: [23166] ) ] ) (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: [23169] ) ] ) terminator: <Id.Op_Semi _> ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(SQ <','>)} spids: [23175] ) ] ) (command.ForEach iter_name: flag 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: [23193] ) ] ) (C {<func_quote_for_eval>} {(DQ ($ Id.VSub_DollarName '$flag'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$arg') <' '> ($ Id.VSub_DollarName '$wl') ($ Id.VSub_DollarName '$func_quote_for_eval_result') ) } spids: [23206] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compiler_flags) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$compiler_flags') <' '> ($ Id.VSub_DollarName '$func_quote_for_eval_result') ) } spids: [23215] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$save_ifs'))} spids: [23226] ) ] ) (C {<func_stripname>} {(SQ <' '>)} {(SQ )} {(DQ ($ Id.VSub_DollarName '$arg'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [23246] ) ] ) ] spids: [23142 23145 23250 -1] ) (case_arm pat_list: [{<-Wl> <Id.Lit_Comma ','> <Id.Lit_Star '*'>}] action: [ (C {<func_stripname>} {(SQ <'-Wl,'>)} {(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: [23274] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg) op: assign_op.Equal rhs: (word.Empty) spids: [23278] ) ] ) (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: [23281] ) ] ) terminator: <Id.Op_Semi _> ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(SQ <','>)} spids: [23287] ) ] ) (command.ForEach iter_name: flag 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: [23305] ) ] ) (C {<func_quote_for_eval>} {(DQ ($ Id.VSub_DollarName '$flag'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$arg') <' '> ($ Id.VSub_DollarName '$wl') ($ Id.VSub_DollarName '$func_quote_for_eval_result') ) } spids: [23318] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compiler_flags) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$compiler_flags') <' '> ($ Id.VSub_DollarName '$wl') ($ Id.VSub_DollarName '$func_quote_for_eval_result') ) } spids: [23327] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:linker_flags) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$linker_flags') <' '> ($ Id.VSub_DollarName '$func_quote_for_eval_result') ) } spids: [23336] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$save_ifs'))} spids: [23347] ) ] ) (C {<func_stripname>} {(SQ <' '>)} {(SQ )} {(DQ ($ Id.VSub_DollarName '$arg'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [23367] ) ] ) ] spids: [23254 23257 23371 -1] ) (case_arm pat_list: [{<-Xcompiler>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {<xcompiler>} spids: [23379] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [23375 23376 23386 -1] ) (case_arm pat_list: [{<-Xlinker>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {<xlinker>} spids: [23394] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [23390 23391 23401 -1] ) (case_arm pat_list: [{<-XCClinker>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {<xcclinker>} spids: [23409] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [23405 23406 23416 -1] ) (case_arm pat_list: [{<-msg_> <Id.Lit_Star '*'>}] action: [ (C {<func_quote_for_eval>} {(DQ ($ Id.VSub_DollarName '$arg'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_quote_for_eval_result'))} spids: [23436] ) ] ) ] spids: [23424 23426 23442 -1] ) (case_arm pat_list: [ {<-64>} {<-mips> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'>} {<-r> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> <Id.Lit_Star '*'> } {<-xarch> <Id.Lit_Equals '='> <Id.Lit_Star '*'>} {<-xtarget> <Id.Lit_Equals '='> <Id.Lit_Star '*'>} {<Id.Lit_Other '+'> <DA> <Id.Lit_Star '*'>} {<Id.Lit_Other '+'> <DD> <Id.Lit_Star '*'>} {<-q> <Id.Lit_Star '*'>} {<-m> <Id.Lit_Star '*'>} {<-t> <Id.Lit_LBracket '['> <45> <Id.Lit_RBracket ']'> <Id.Lit_Star '*'>} {<-txscale> <Id.Lit_Star '*'>} {<-p>} {<-pg>} {<--coverage>} {<-fprofile-> <Id.Lit_Star '*'>} {<-F> <Id.Lit_Star '*'>} {<Id.Lit_At '@'> <Id.Lit_Star '*'>} ] action: [ (C {<func_quote_for_eval>} {(DQ ($ Id.VSub_DollarName '$arg'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_quote_for_eval_result'))} spids: [23560] ) ] ) (C {<func_append>} {<compile_command>} {(DQ <' '> ($ Id.VSub_DollarName '$arg'))} ) (C {<func_append>} {<finalize_command>} {(DQ <' '> ($ Id.VSub_DollarName '$arg'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compiler_flags) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$compiler_flags') <' '> ($ Id.VSub_DollarName '$arg') ) } spids: [23586] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [23486 23550 23597 -1] ) (case_arm pat_list: [{<-> <Id.Lit_Star '*'>} {<Id.Lit_Other '+'> <Id.Lit_Star '*'>}] action: [ (C {<func_quote_for_eval>} {(DQ ($ Id.VSub_DollarName '$arg'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_quote_for_eval_result'))} spids: [23622] ) ] ) ] spids: [23605 23612 23628 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <.> ($ Id.VSub_DollarName '$objext')}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:objs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$objs') <' '> ($ Id.VSub_DollarName '$arg') ) } spids: [23642] ) ] ) ] spids: [23632 23635 23650 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <.lo>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<func_lalib_unsafe_p>} {(DQ ($ Id.VSub_DollarName '$arg'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pic_object) op: assign_op.Equal rhs: (word.Empty) spids: [23680] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:non_pic_object) op: assign_op.Equal rhs: (word.Empty) spids: [23683] ) ] ) (C {<func_source>} {(DQ ($ Id.VSub_DollarName '$arg'))}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe Id.Op_DPipe Id.Op_DAmp] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$pic_object'))} ) (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$non_pic_object') ) } ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$pic_object'))} {<Id.Lit_Equals '='>} {<none>} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$non_pic_object') ) } {<Id.Lit_Equals '='>} {<none>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_fatal_error>} { (DQ <'cannot find name of object for '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$arg') <'\''> ) } ) ] spids: [23699 23747] ) ] ) (C {<func_dirname>} {(DQ ($ Id.VSub_DollarName '$arg'))} {(DQ <'/'>)} {(DQ )}) (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: [23782] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$pic_object'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<none>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pic_object) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$xdir') ($ Id.VSub_DollarName '$pic_object') ) } spids: [23810] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$prev'))} {<Id.Lit_Equals '='>} {<dlfiles>} ) 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 ($ Id.VSub_DollarName '$build_libtool_libs' ) ) } {<Id.Lit_Equals '='>} {<yes>} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$dlopen_support' ) ) } {<Id.Lit_Equals '='>} {<yes>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: dlfiles ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dlfiles' ) <' '> ($ Id.VSub_DollarName '$pic_object') ) } spids: [23862] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [23870] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [23834 23859] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: {<dlprefiles>} spids: [23883] ) ] ) ] ) ] spids: [23818 23831] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$prev'))} {<Id.Lit_Equals '='>} {<dlprefiles>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlprefiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dlprefiles') <' '> ($ Id.VSub_DollarName '$pic_object') ) } spids: [23918] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [23926] ) ] ) ] spids: [23898 23911] ) ] ) (C {<func_append>} {<libobjs>} {(DQ <' '> ($ Id.VSub_DollarName '$pic_object'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$pic_object'))} spids: [23947] ) ] ) ] spids: [23789 23803] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$non_pic_object'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<none>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:non_pic_object) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$xdir') ($ Id.VSub_DollarName '$non_pic_object') ) } spids: [23982] ) ] ) (C {<func_append>} {<non_pic_objects>} {(DQ <' '> ($ Id.VSub_DollarName '$non_pic_object'))} ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$pic_object' ) ) } ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$pic_object' ) ) } {<Id.Lit_Equals '='>} {<none>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$non_pic_object' ) ) } spids: [24031] ) ] ) ] spids: [24004 24028] ) ] ) ] spids: [23961 23975] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:non_pic_object) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$pic_object'))} spids: [24051] ) ] ) (C {<func_append>} {<non_pic_objects>} {(DQ <' '> ($ Id.VSub_DollarName '$non_pic_object'))} ) ] ) ] spids: [23668 23677] ) ] else_action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {($ Id.VSub_DollarName '$opt_dry_run')}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_dirname>} {(DQ ($ Id.VSub_DollarName '$arg'))} {(DQ <'/'>)} {(DQ )} ) (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: [24103] ) ] ) (C {<func_lo2o>} {(DQ ($ Id.VSub_DollarName '$arg'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pic_object) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$xdir') ($ Id.VSub_DollarName '$objdir') <'/'> ($ Id.VSub_DollarName '$func_lo2o_result') } spids: [24117] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:non_pic_object) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$xdir') ($ Id.VSub_DollarName '$func_lo2o_result') } spids: [24124] ) ] ) (C {<func_append>} {<libobjs>} {(DQ <' '> ($ Id.VSub_DollarName '$pic_object'))} ) (C {<func_append>} {<non_pic_objects>} {(DQ <' '> ($ Id.VSub_DollarName '$non_pic_object'))} ) ] spids: [24077 24082] ) ] else_action: [ (C {<func_fatal_error>} { (DQ (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$arg') <'\' is not a valid libtool object'> ) } ) ] ) ] ) ] spids: [23654 23656 24167 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <.> ($ Id.VSub_DollarName '$libext')}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplibs') <' '> ($ Id.VSub_DollarName '$arg') ) } spids: [24181] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:old_deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$old_deplibs') <' '> ($ Id.VSub_DollarName '$arg') ) } spids: [24189] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [24171 24174 24200 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <.la>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$prev'))} {<Id.Lit_Equals '='>} {<dlfiles>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dlfiles') <' '> ($ Id.VSub_DollarName '$arg') ) } spids: [24234] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [24242] ) ] ) ] spids: [24214 24227] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$prev'))} {<Id.Lit_Equals '='>} {<dlprefiles>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlprefiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dlprefiles') <' '> ($ Id.VSub_DollarName '$arg') ) } spids: [24265] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prev) op: assign_op.Equal rhs: (word.Empty) spids: [24273] ) ] ) ] spids: [24245 24258] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplibs') <' '> ($ Id.VSub_DollarName '$arg') ) } spids: [24279] ) ] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [24204 24206 24293 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<func_quote_for_eval>} {(DQ ($ Id.VSub_DollarName '$arg'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arg) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_quote_for_eval_result'))} spids: [24320] ) ] ) ] spids: [24301 24302 24326 -1] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$arg'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_append>} {<compile_command>} {(DQ <' '> ($ Id.VSub_DollarName '$arg'))} ) (C {<func_append>} {<finalize_command>} {(DQ <' '> ($ Id.VSub_DollarName '$arg'))} ) ] spids: [24340 24351] ) ] ) ] ) ) (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 '$prevarg') <'\' 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>} {(DQ ($ Id.VSub_DollarName '$export_dynamic'))} {<Id.Lit_Equals '='>} {<yes>} ) (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$export_dynamic_flag_spec'))} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} {<Id.Lit_VarLike 'arg='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$export_dynamic_flag_spec') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } ) (C {<func_append>} {<compile_command>} {(DQ <' '> ($ Id.VSub_DollarName '$arg'))}) (C {<func_append>} {<finalize_command>} {(DQ <' '> ($ Id.VSub_DollarName '$arg'))}) ] spids: [24407 24430] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:oldlibs) op: assign_op.Equal rhs: (word.Empty) spids: [24465] ) ] ) (C {<func_basename>} {(DQ ($ Id.VSub_DollarName '$output'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:outputname) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_basename_result'))} spids: [24479] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobjs_save) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$libobjs'))} spids: [24485] ) ] ) (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>} {<Id.Lit_VarLike 'shlib_search_path='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <ECHO> } {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <X> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <Id.Lit_LBrace '{'> ($ Id.VSub_DollarName '$shlibpath_var') <Id.Lit_RBrace '}'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\|'>)} {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <Xsed>} {<-e>} {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\''>) <'s/'> <Id.Lit_Colon ':'> <'/'>} {<'/g'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\\''>) (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) } ) ] spids: [24492 24503] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:shlib_search_path) op: assign_op.Equal rhs: (word.Empty) spids: [24545] ) ] ) ] ) (C {<eval>} {<Id.Lit_VarLike 'sys_lib_search_path='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ($ Id.VSub_DollarName '$sys_lib_search_path_spec') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) (C {<eval>} {<Id.Lit_VarLike 'sys_lib_dlsearch_path='> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ($ Id.VSub_DollarName '$sys_lib_dlsearch_path_spec') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) (C {<func_dirname>} {(DQ ($ Id.VSub_DollarName '$output'))} {(DQ <'/'>)} {(DQ )}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:output_objdir) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$func_dirname_result') ($ Id.VSub_DollarName '$objdir') ) } spids: [24582] ) ] ) (C {<func_mkdir_p>} {(DQ ($ Id.VSub_DollarName '$output_objdir'))}) (command.Case to_match: {($ Id.VSub_DollarName '$output')} arms: [ (case_arm pat_list: [{(DQ )}] action: [(C {<func_fatal_help>} {(DQ <'you must specify an output file'>)})] spids: [24612 24614 24624 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <.> ($ Id.VSub_DollarName '$libext')}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:linkmode) op: assign_op.Equal rhs: {<oldlib>} spids: [24632] ) ] ) ] spids: [24627 24630 24635 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'> <.lo>} {<Id.Lit_Star '*'> <.> ($ Id.VSub_DollarName '$objext')} ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:linkmode) op: assign_op.Equal rhs: {<obj>} spids: [24648] ) ] ) ] spids: [24638 24646 24651 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <.la>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:linkmode) op: assign_op.Equal rhs: {<lib>} spids: [24658] ) ] ) ] spids: [24654 24656 24661 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:linkmode) op: assign_op.Equal rhs: {<prog>} spids: [24667] ) ] ) ] spids: [24664 24665 24670 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:specialdeplibs) op: assign_op.Equal rhs: (word.Empty) spids: [24680] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libs) op: assign_op.Equal rhs: (word.Empty) spids: [24684] ) ] ) (command.ForEach iter_name: deplib iter_words: [{($ Id.VSub_DollarName '$deplibs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {($ Id.VSub_DollarName '$opt_duplicate_deps')}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$libs') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$deplib') <' '>) <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:specialdeplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$specialdeplibs') <' '> ($ Id.VSub_DollarName '$deplib') ) } spids: [24735] ) ] ) ] spids: [24726 24733 24742 -1] ) ] ) ] spids: [24707 24713] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$libs') <' '> ($ Id.VSub_DollarName '$deplib')) } spids: [24751] ) ] ) ] ) ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$linkmode'))} {<Id.Lit_Equals '='>} {<lib>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$predeps') <' '> ($ Id.VSub_DollarName '$libs') <' '> ($ Id.VSub_DollarName '$compiler_lib_search_path') <' '> ($ Id.VSub_DollarName '$postdeps') ) } spids: [24779] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pre_post_deps) op: assign_op.Equal rhs: (word.Empty) spids: [24804] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C { ($ Id.VSub_DollarName '$opt_duplicate_compiler_generated_deps' ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ForEach iter_name: pre_post_dep iter_words: [ {($ Id.VSub_DollarName '$predeps')} {($ Id.VSub_DollarName '$postdeps')} ] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$pre_post_deps') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$pre_post_dep') <' '>) <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:specialdeplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$specialdeplibs') <' '> ($ Id.VSub_DollarName '$pre_post_deps') ) } spids: [24848] ) ] ) ] spids: [24839 24846 24855 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pre_post_deps) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$pre_post_deps') <' '> ($ Id.VSub_DollarName '$pre_post_dep') ) } spids: [24861] ) ] ) ] ) ) ] spids: [24807 24812] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pre_post_deps) op: assign_op.Equal rhs: (word.Empty) spids: [24875] ) ] ) ] spids: [24763 24776] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: (word.Empty) spids: [24882] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdependency_libs) op: assign_op.Equal rhs: (word.Empty) spids: [24885] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newlib_search_path) op: assign_op.Equal rhs: (word.Empty) spids: [24888] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:need_relink) op: assign_op.Equal rhs: {<no>} spids: [24891] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:notinst_deplibs) op: assign_op.Equal rhs: (word.Empty) spids: [24898] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:notinst_path) op: assign_op.Equal rhs: (word.Empty) spids: [24904] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$linkmode')} arms: [ (case_arm pat_list: [{<lib>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:passes) op: assign_op.Equal rhs: {(DQ <'conv dlpreopen link'>)} spids: [24922] ) ] ) (command.ForEach iter_name: file iter_words: [ {($ Id.VSub_DollarName '$dlfiles')} {($ Id.VSub_DollarName '$dlprefiles')} ] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$file')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <.la>}] spids: [24949 24951 24953 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<func_fatal_help>} { (DQ <'libraries can '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'-dlopen\' only libtool libraries: '> ($ Id.VSub_DollarName '$file') ) } ) ] spids: [24956 24957 24970 -1] ) ] ) ] ) ) ] spids: [24918 24919 24979 -1] ) (case_arm pat_list: [{<prog>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_deplibs) op: assign_op.Equal rhs: (word.Empty) spids: [24986] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_deplibs) op: assign_op.Equal rhs: (word.Empty) spids: [24989] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:alldeplibs) op: assign_op.Equal rhs: {<no>} spids: [24992] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdlfiles) op: assign_op.Equal rhs: (word.Empty) spids: [24996] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdlprefiles) op: assign_op.Equal rhs: (word.Empty) spids: [24999] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:passes) op: assign_op.Equal rhs: {(DQ <'conv scan dlopen dlpreopen link'>)} spids: [25002] ) ] ) ] spids: [24982 24983 25008 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:passes) op: assign_op.Equal rhs: {(DQ <conv>)} spids: [25014] ) ] ) ] spids: [25011 25012 25020 -1] ) ] ) (command.ForEach iter_name: pass iter_words: [{($ Id.VSub_DollarName '$passes')}] do_arg_iter: F body: (command.DoGroup children: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$linkmode') <','> ($ Id.VSub_DollarName '$pass') ) } {<Id.Lit_Equals '='>} {(DQ <'lib,link'>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmp_deplibs) op: assign_op.Equal rhs: (word.Empty) spids: [25075] ) ] ) (command.ForEach iter_name: deplib iter_words: [{($ Id.VSub_DollarName '$deplibs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmp_deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$tmp_deplibs') ) } spids: [25090] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$tmp_deplibs'))} spids: [25101] ) ] ) ] spids: [25047 25064] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} { (DQ ($ Id.VSub_DollarName '$linkmode') <','> ($ Id.VSub_DollarName '$pass') ) } {<Id.Lit_Equals '='>} {(DQ <'lib,link'>)} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$linkmode') <','> ($ Id.VSub_DollarName '$pass') ) } {<Id.Lit_Equals '='>} {(DQ <'prog,scan'>)} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$deplibs'))} spids: [25148] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: (word.Empty) spids: [25154] ) ] ) ] spids: [25111 25145] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$linkmode'))} {<Id.Lit_Equals '='>} {<prog>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: {($ Id.VSub_DollarName '$pass')} arms: [ (case_arm pat_list: [{<dlopen>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$dlfiles'))} spids: [25186] ) ] ) ] spids: [25183 25184 25191 -1] ) (case_arm pat_list: [{<dlpreopen>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$dlprefiles'))} spids: [25197] ) ] ) ] spids: [25194 25195 25202 -1] ) (case_arm pat_list: [{<link>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$deplibs') <' %DEPLIBS%'>)} spids: [25209] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$link_all_deplibs'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<Xno>} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$libs') <' '> ($ Id.VSub_DollarName '$dependency_libs') ) } spids: [25230] ) ] ) ] ) ] spids: [25205 25206 25238 -1] ) ] ) ] spids: [25160 25173] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$linkmode') <','> ($ Id.VSub_DollarName '$pass') ) } {<Id.Lit_Equals '='>} {(DQ <'lib,dlpreopen'>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ForEach iter_name: lib iter_words: [{($ Id.VSub_DollarName '$dlprefiles')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dependency_libs) op: assign_op.Equal rhs: (word.Empty) spids: [25287] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$lib')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <.la>}] action: [ (C {<func_source>} {(DQ ($ Id.VSub_DollarName '$lib'))}) ] spids: [25297 25299 25307 -1] ) ] ) (command.ForEach iter_name: deplib iter_words: [{($ Id.VSub_DollarName '$dependency_libs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplib_base) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <X> ($ Id.VSub_DollarName '$deplib') ) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(DQ ($ Id.VSub_DollarName '$basename'))} ) ] negated: F ) ) } spids: [25334] ) ] ) (command.Case to_match: {(DQ <' '> ($ Id.VSub_DollarName '$weak_libs') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$deplib_base') <' '> ) <Id.Lit_Star '*'> } ] spids: [25368 25375 25377 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplibs') <' '> ($ Id.VSub_DollarName '$deplib') ) } spids: [25383] ) ] ) ] spids: [25380 25381 25390 -1] ) ] ) ] ) ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$dlprefiles'))} spids: [25402] ) ] ) ] spids: [25247 25264] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$pass'))} {<Id.Lit_Equals '='>} {<dlopen>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:save_deplibs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$deplibs'))} spids: [25431] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: (word.Empty) spids: [25437] ) ] ) ] spids: [25411 25424] ) ] ) (command.ForEach iter_name: deplib iter_words: [{($ Id.VSub_DollarName '$libs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lib) op: assign_op.Equal rhs: (word.Empty) spids: [25456] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:found) op: assign_op.Equal rhs: {<no>} spids: [25459] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$deplib')} arms: [ (case_arm pat_list: [ {<-mt>} {<-mthreads>} {<-kthread>} {<-Kthread>} {<-pthread>} {<-pthreads>} {<--thread-safe>} {<-threads>} ] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$linkmode') <','> ($ Id.VSub_DollarName '$pass') ) } {<Id.Lit_Equals '='>} {(DQ <'prog,link'>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$compile_deplibs') ) } spids: [25508] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$finalize_deplibs') ) } spids: [25516] ) ] ) ] spids: [25488 25505] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compiler_flags) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$compiler_flags') <' '> ($ Id.VSub_DollarName '$deplib') ) } spids: [25527] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$linkmode'))} {<Id.Lit_Equals '='>} {<lib>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: { (DQ ($ Id.VSub_DollarName '$new_inherited_linker_flags' ) <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$deplib') <' '> ) <Id.Lit_Star '*'> } ] spids: [25562 25569 25571 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: new_inherited_linker_flags ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$new_inherited_linker_flags' ) <' '> ($ Id.VSub_DollarName '$deplib') ) } spids: [25578] ) ] ) ] spids: [25574 25576 25585 -1] ) ] ) ] spids: [25535 25549] ) ] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [25470 25485 25600 -1] ) (case_arm pat_list: [{<-l> <Id.Lit_Star '*'>}] action: [ (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 '$linkmode'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<lib>} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$linkmode'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<prog>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_warning>} { (DQ (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'-l\' is ignored for archives/objects'> ) } ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [25608 25635] ) ] ) (C {<func_stripname>} {(SQ <-l>)} {(SQ )} {(DQ ($ Id.VSub_DollarName '$deplib'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:name) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [25666] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$linkmode'))} {<Id.Lit_Equals '='>} {<lib>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:searchdirs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newlib_search_path') <' '> ($ Id.VSub_DollarName '$lib_search_path') <' '> ($ Id.VSub_DollarName '$compiler_lib_search_dirs') <' '> ($ Id.VSub_DollarName '$sys_lib_search_path') <' '> ($ Id.VSub_DollarName '$shlib_search_path') ) } spids: [25686] ) ] ) ] spids: [25670 25683] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:searchdirs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newlib_search_path') <' '> ($ Id.VSub_DollarName '$lib_search_path') <' '> ($ Id.VSub_DollarName '$sys_lib_search_path') <' '> ($ Id.VSub_DollarName '$shlib_search_path') ) } spids: [25703] ) ] ) ] ) (command.ForEach iter_name: searchdir iter_words: [{($ Id.VSub_DollarName '$searchdirs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ForEach iter_name: search_ext iter_words: [ {<.la>} {($ Id.VSub_DollarName '$std_shrext')} {<.so>} {<.a>} ] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lib) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$searchdir') <'/lib'> (${ Id.VSub_Name name) (${ Id.VSub_Name search_ext) ) } spids: [25752] ) ] ) (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: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$search_ext' ) ) } {<Id.Lit_Equals '='>} {(DQ <.la>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: found ) op: assign_op.Equal rhs: {<yes>} spids: [25797] ) ] ) ] spids: [25779 25794] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: found ) op: assign_op.Equal rhs: {<no>} spids: [25804] ) ] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Break break> arg_word: {<2>} ) ] spids: [25765 25776] ) ] ) ] ) ) ] ) ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$found'))} {<Id.KW_Bang '!'> <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 '$linkmode') <','> ($ Id.VSub_DollarName '$pass') ) } {<Id.Lit_Equals '='>} {(DQ <'prog,link'>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: compile_deplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$compile_deplibs') ) } spids: [25866] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: finalize_deplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$finalize_deplibs') ) } spids: [25874] ) ] ) ] spids: [25846 25863] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [25885] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$linkmode'))} {<Id.Lit_Equals '='>} {<lib>} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: newdependency_libs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$newdependency_libs') ) } spids: [25905] ) ] ) ] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [25825 25839] ) ] else_action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ <X> ($ Id.VSub_DollarName '$allow_libtool_libs_with_static_runtimes' ) ) } {<Id.Lit_Equals '='>} {(DQ <Xyes>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: { (DQ <' '> ($ Id.VSub_DollarName '$predeps') <' '> ($ Id.VSub_DollarName '$postdeps') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$deplib') <' '> ) <Id.Lit_Star '*'> } ] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<func_lalib_p>} { (DQ ($ Id.VSub_DollarName '$lib' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: library_names ) op: assign_op.Equal rhs: (word.Empty) spids: [25988] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: old_library ) op: assign_op.Equal rhs: (word.Empty) spids: [25991] ) ] ) (C {<func_source>} {(DQ ($ Id.VSub_DollarName '$lib'))} ) (command.ForEach iter_name: l iter_words: [ { ($ Id.VSub_DollarName '$old_library' ) } { ($ Id.VSub_DollarName '$library_names' ) } ] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: ll ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$l' ) ) } spids: [26015] ) ] ) ] ) ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ <X> ($ Id.VSub_DollarName '$ll' ) ) } {<Id.Lit_Equals '='>} {(DQ <X> ($ Id.VSub_DollarName '$old_library'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: found ) op: assign_op.Equal rhs: {<no>} spids: [26048] ) ] ) (C {<func_dirname>} { (DQ ($ Id.VSub_DollarName '$lib' ) ) } {(DQ )} {(DQ <.>)} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: ladir ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$func_dirname_result' ) ) } spids: [26066] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: lib ) op: assign_op.Equal rhs: { ($ Id.VSub_DollarName '$ladir' ) <'/'> ($ Id.VSub_DollarName '$old_library') } spids: [26072] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$linkmode' ) <','> ($ Id.VSub_DollarName '$pass') ) } {<Id.Lit_Equals '='>} {(DQ <'prog,link'>)} ) terminator: <Id.Op_Semi _ > ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: compile_deplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib' ) <' '> ($ Id.VSub_DollarName '$compile_deplibs') ) } spids: [26098] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: finalize_deplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib' ) <' '> ($ Id.VSub_DollarName '$finalize_deplibs') ) } spids: [26106] ) ] ) ] spids: [26078 26095] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: deplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib' ) <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [26117] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} { (DQ ($ Id.VSub_DollarName '$linkmode' ) ) } {<Id.Lit_Equals '='>} {<lib>} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: newdependency_libs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib' ) <' '> ($ Id.VSub_DollarName '$newdependency_libs') ) } spids: [26137] ) ] ) ] ) ] ) (command.ControlFlow token: < Id.ControlFlow_Continue continue > ) ] spids: [26024 26042] ) ] ) ] spids: [25976 25985] ) ] ) ] spids: [25966 25973 26157 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] spids: [26160 26161 26163 -1] ) ] ) ] spids: [25933 25950] ) ] ) ] ) ] spids: [25603 25605 26175 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <.ltframework>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$linkmode') <','> ($ Id.VSub_DollarName '$pass') ) } {<Id.Lit_Equals '='>} {(DQ <'prog,link'>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$compile_deplibs') ) } spids: [26206] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$finalize_deplibs') ) } spids: [26214] ) ] ) ] spids: [26186 26203] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [26225] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$linkmode'))} {<Id.Lit_Equals '='>} {<lib>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: { (DQ ($ Id.VSub_DollarName '$new_inherited_linker_flags' ) <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$deplib') <' '> ) <Id.Lit_Star '*'> } ] spids: [26260 26267 26269 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: new_inherited_linker_flags ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$new_inherited_linker_flags' ) <' '> ($ Id.VSub_DollarName '$deplib') ) } spids: [26276] ) ] ) ] spids: [26272 26274 26283 -1] ) ] ) ] spids: [26233 26247] ) ] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [26181 26183 26298 -1] ) (case_arm pat_list: [{<-L> <Id.Lit_Star '*'>}] action: [ (command.Case to_match: {($ Id.VSub_DollarName '$linkmode')} arms: [ (case_arm pat_list: [{<lib>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [26317] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$pass'))} {<Id.Lit_Equals '='>} {<conv>} ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdependency_libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$newdependency_libs') ) } spids: [26340] ) ] ) (C {<func_stripname>} {(SQ <-L>)} {(SQ )} {(DQ ($ Id.VSub_DollarName '$deplib'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newlib_search_path) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newlib_search_path') <' '> ($ Id.VSub_DollarName '$func_stripname_result') ) } spids: [26362] ) ] ) ] spids: [26313 26314 26370 -1] ) (case_arm pat_list: [{<prog>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$pass'))} {<Id.Lit_Equals '='>} {<conv>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [26393] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [26377 26390] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$pass'))} {<Id.Lit_Equals '='>} {<scan>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [26423] ) ] ) ] spids: [26407 26420] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$compile_deplibs') ) } spids: [26434] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$finalize_deplibs') ) } spids: [26442] ) ] ) ] ) (C {<func_stripname>} {(SQ <-L>)} {(SQ )} {(DQ ($ Id.VSub_DollarName '$deplib'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newlib_search_path) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newlib_search_path') <' '> ($ Id.VSub_DollarName '$func_stripname_result') ) } spids: [26467] ) ] ) ] spids: [26373 26374 26475 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<func_warning>} { (DQ (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'-L\' is ignored for archives/objects'> ) } ) ] spids: [26478 26479 26490 -1] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [26301 26303 26502 -1] ) (case_arm pat_list: [{<-R> <Id.Lit_Star '*'>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$pass'))} {<Id.Lit_Equals '='>} {<link>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_stripname>} {(SQ <-R>)} {(SQ )} {(DQ ($ Id.VSub_DollarName '$deplib'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dir) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [26543] ) ] ) (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$xrpath') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$dir') <' '>) <Id.Lit_Star '*'> } ] spids: [26561 26568 26570 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:xrpath) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$xrpath') <' '> ($ Id.VSub_DollarName '$dir') ) } spids: [26576] ) ] ) ] spids: [26573 26574 26583 -1] ) ] ) ] spids: [26513 26526] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [26592] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [26508 26510 26603 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <.la>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lib) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$deplib'))} spids: [26610] ) ] ) ] spids: [26606 26608 26615 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <.> ($ Id.VSub_DollarName '$libext')}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$pass'))} {<Id.Lit_Equals '='>} {<conv>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [26640] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [26624 26637] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$linkmode')} arms: [ (case_arm pat_list: [{<lib>}] action: [ (command.Case to_match: { (DQ <' '> ($ Id.VSub_DollarName '$dlpreconveniencelibs') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$deplib') <' '>) <Id.Lit_Star '*'> } ] spids: [26684 26691 26693 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:valid_a_lib) op: assign_op.Equal rhs: {<no>} spids: [26700] ) ] ) (command.Case to_match: { ($ Id.VSub_DollarName '$deplibs_check_method' ) } arms: [ (case_arm pat_list: [ {<match_pattern> <Id.Lit_Star '*'>} ] action: [ (command.Sentence child: (C {<set>} {<dummy>} { ($ Id.VSub_DollarName '$deplibs_check_method' ) } ) terminator: <Id.Op_Semi _> ) (C {<shift>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: match_pattern_regex ) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<expr>} { (DQ ($ Id.VSub_DollarName '$deplibs_check_method' ) ) } {<Id.Lit_Colon ':'>} { (DQ ($ Id.VSub_Number '$1' ) <' '> <Id.Lit_BadBackslash '\\'> <'(.*'> <Id.Lit_BadBackslash '\\'> <')'> ) } ) ) } spids: [26726] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Pipeline children: [ (command.Simple words: [ {<eval>} { (DQ (word_part.EscapedLiteral token: < Id.Lit_EscapedChar '\\$' > ) <'ECHO '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <X> ($ Id.VSub_DollarName '$deplib' ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ) } ] redirects: [ (redir op: < Id.Redir_Great '2>' > loc: (redir_loc.Fd fd: 2 ) arg: { < '/dev/null' > } ) ] do_fork: T ) (C { ($ Id.VSub_DollarName '$Xsed' ) } {<-e>} {<10q>} ) (command.Simple words: [ { ($ Id.VSub_DollarName '$EGREP' ) } { (DQ ($ Id.VSub_DollarName '$match_pattern_regex' ) ) } ] 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: valid_a_lib ) op: assign_op.Equal rhs: {<yes>} spids: [26795] ) ] ) ] spids: [26753 26792] ) ] ) ] spids: [26711 26713 26802 -1] ) (case_arm pat_list: [{<pass_all>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: valid_a_lib ) op: assign_op.Equal rhs: {<yes>} spids: [26809] ) ] ) ] spids: [26805 26806 26813 -1] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$valid_a_lib' ) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {($ Id.VSub_DollarName '$ECHO')}) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** Warning: Trying to link with static lib archive ' > ($ Id.VSub_DollarName '$deplib') <.> ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** I have the capability to make that library automatically link in when' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** you link to this library. But I can only do this if you have a' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** shared version of the library, which you do not appear to have' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** because the file extensions .' > ($ Id.VSub_DollarName '$libext') <' of this argument makes me believe'> ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** that it is just a static archive that I should not use here.' > ) } ) ] spids: [26819 26833] ) ] else_action: [ (C {($ Id.VSub_DollarName '$ECHO')}) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** Warning: Linking the shared library ' > ($ Id.VSub_DollarName '$output') <' against the'> ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'*** static library '> ($ Id.VSub_DollarName '$deplib') <' is not portable!'> ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [26909] ) ] ) ] ) ] spids: [26696 26697 26920 -1] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [26661 26662 26929 -1] ) (case_arm pat_list: [{<prog>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$pass'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<link>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [26953] ) ] ) ] spids: [26936 26950] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$compile_deplibs') ) } spids: [26964] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$finalize_deplibs') ) } spids: [26972] ) ] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [26932 26933 26986 -1] ) ] ) ] spids: [26618 26621 26995 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'> <.lo>} {<Id.Lit_Star '*'> <.> ($ Id.VSub_DollarName '$objext')} ] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$pass'))} {<Id.Lit_Equals '='>} {<conv>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [27028] ) ] ) ] spids: [27012 27025] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$linkmode'))} {<Id.Lit_Equals '='>} {<prog>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (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 '$pass') ) } {<Id.Lit_Equals '='>} {<dlpreopen>} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$dlopen_support' ) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<yes>} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$build_libtool_libs' ) ) } {<Id.Lit_Equals '='>} {<no>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdlprefiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdlprefiles' ) <' '> ($ Id.VSub_DollarName '$deplib') ) } spids: [27101] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: compile_deplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$compile_deplibs') ) } spids: [27109] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: finalize_deplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$finalize_deplibs') ) } spids: [27117] ) ] ) ] spids: [27052 27090] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdlfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdlfiles') <' '> ($ Id.VSub_DollarName '$deplib') ) } spids: [27128] ) ] ) ] ) ] spids: [27036 27049] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [27001 27009 27145 -1] ) (case_arm pat_list: [{<Id.Lit_Other '%'> <DEPLIBS> <Id.Lit_Other '%'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:alldeplibs) op: assign_op.Equal rhs: {<yes>} spids: [27154] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [27148 27151 27161 -1] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$found'))} {<Id.Lit_Equals '='>} {<yes>} ) (C {<test>} {<-f>} {(DQ ($ Id.VSub_DollarName '$lib'))}) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<Id.Lit_Colon ':'>})] spids: [27171 27194] ) ] else_action: [ (C {<func_fatal_error>} { (DQ <'cannot find the library '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$lib') <'\' or unhandled argument '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$deplib') <'\''> ) } ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<func_lalib_unsafe_p>} {(DQ ($ Id.VSub_DollarName '$lib'))}) (C {<func_fatal_error>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$lib') <'\' is not a valid libtool archive'> ) } ) ] ) (C {<func_dirname>} {(DQ ($ Id.VSub_DollarName '$lib'))} {(DQ )} {(DQ <.>)}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:ladir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_dirname_result'))} spids: [27257] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlname) op: assign_op.Equal rhs: (word.Empty) spids: [27264] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlopen) op: assign_op.Equal rhs: (word.Empty) spids: [27267] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlpreopen) op: assign_op.Equal rhs: (word.Empty) spids: [27270] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libdir) op: assign_op.Equal rhs: (word.Empty) spids: [27273] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:library_names) op: assign_op.Equal rhs: (word.Empty) spids: [27276] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:old_library) op: assign_op.Equal rhs: (word.Empty) spids: [27279] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:inherited_linker_flags) op: assign_op.Equal rhs: (word.Empty) spids: [27282] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:installed) op: assign_op.Equal rhs: {<yes>} spids: [27293] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:shouldnotlink) op: assign_op.Equal rhs: {<no>} spids: [27297] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:avoidtemprpath) op: assign_op.Equal rhs: (word.Empty) spids: [27301] ) ] ) (C {<func_source>} {(DQ ($ Id.VSub_DollarName '$lib'))}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$inherited_linker_flags'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmp_inherited_linker_flags) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <X> ($ Id.VSub_DollarName '$inherited_linker_flags' ) ) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} { (SQ < 's/-framework \\([^ $]*\\)/\\1.ltframework/g' > ) } ) ] negated: F ) ) } spids: [27336] ) ] ) (command.ForEach iter_name: tmp_inherited_linker_flag iter_words: [ {($ Id.VSub_DollarName '$tmp_inherited_linker_flags')} ] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: { (DQ <' '> ($ Id.VSub_DollarName '$new_inherited_linker_flags' ) <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$tmp_inherited_linker_flag' ) <' '> ) <Id.Lit_Star '*'> } ] spids: [27388 27395 27397 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: new_inherited_linker_flags ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$new_inherited_linker_flags' ) <' '> ($ Id.VSub_DollarName '$tmp_inherited_linker_flag') ) } spids: [27403] ) ] ) ] spids: [27400 27401 27409 -1] ) ] ) ] ) ) ] spids: [27322 27333] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dependency_libs) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'X '> ($ Id.VSub_DollarName '$dependency_libs')) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} { (SQ < 's% \\([^ $]*\\).ltframework% -framework \\1%g' > ) } ) ] negated: F ) ) } spids: [27421] ) ] ) (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 '$linkmode') <','> ($ Id.VSub_DollarName '$pass') ) } {<Id.Lit_Equals '='>} {(DQ <'lib,link'>)} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$linkmode') <','> ($ Id.VSub_DollarName '$pass') ) } {<Id.Lit_Equals '='>} {(DQ <'prog,scan'>)} ) (BraceGroup children: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} { (DQ ($ Id.VSub_DollarName '$linkmode') ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<prog>} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$linkmode') ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<lib>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$dlopen'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dlfiles') <' '> ($ Id.VSub_DollarName '$dlopen') ) } spids: [27529] ) ] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$dlpreopen'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlprefiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dlprefiles') <' '> ($ Id.VSub_DollarName '$dlpreopen') ) } spids: [27547] ) ] ) ] ) ] spids: [27450 27516] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$pass'))} {<Id.Lit_Equals '='>} {<conv>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$lib') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [27579] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$libdir'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$old_library' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_fatal_error>} { (DQ <'cannot find name of link library for '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$lib') <'\''> ) } ) ] spids: [27601 27612] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:convenience) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$convenience') <' '> ($ Id.VSub_DollarName '$ladir') <'/'> ($ Id.VSub_DollarName '$objdir') <'/'> ($ Id.VSub_DollarName '$old_library') ) } spids: [27632] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:old_convenience) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$old_convenience') <' '> ($ Id.VSub_DollarName '$ladir') <'/'> ($ Id.VSub_DollarName '$objdir') <'/'> ($ Id.VSub_DollarName '$old_library') ) } spids: [27644] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmp_libs) op: assign_op.Equal rhs: (word.Empty) spids: [27656] ) ] ) (command.ForEach iter_name: deplib iter_words: [{($ Id.VSub_DollarName '$dependency_libs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [27671] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C { ($ Id.VSub_DollarName '$opt_duplicate_deps' ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: { (DQ ($ Id.VSub_DollarName '$tmp_libs') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$deplib' ) <' '> ) <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: specialdeplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$specialdeplibs' ) <' '> ($ Id.VSub_DollarName '$deplib') ) } spids: [27707] ) ] ) ] spids: [27698 27705 27714 -1] ) ] ) ] spids: [27679 27685] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmp_libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$tmp_libs') <' '> ($ Id.VSub_DollarName '$deplib') ) } spids: [27723] ) ] ) ] ) ) ] spids: [27587 27598] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$linkmode'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<prog>} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$linkmode'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<lib>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_fatal_error>} { (DQ (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$lib') <'\' is not a convenience library'> ) } ) ] spids: [27734 27761] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [27559 27572] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:linklib) op: assign_op.Equal rhs: (word.Empty) spids: [27791] ) ] ) (command.ForEach iter_name: l iter_words: [ {($ Id.VSub_DollarName '$old_library')} {($ Id.VSub_DollarName '$library_names')} ] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:linklib) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$l'))} spids: [27808] ) ] ) ] ) ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$linklib'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_fatal_error>} { (DQ <'cannot find name of link library for '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$lib') <'\''> ) } ) ] spids: [27817 27828] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$pass'))} {<Id.Lit_Equals '='>} {<dlopen>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$libdir'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_fatal_error>} { (DQ <'cannot -dlopen a convenience library: '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$lib') <'\''> ) } ) ] spids: [27865 27876] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe Id.Op_DPipe] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$dlname'))} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$dlopen_support') ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<yes>} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$build_libtool_libs' ) ) } {<Id.Lit_Equals '='>} {<no>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlprefiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dlprefiles') <' '> ($ Id.VSub_DollarName '$lib') <' '> ($ Id.VSub_DollarName '$dependency_libs') ) } spids: [27949] ) ] ) ] spids: [27892 27930] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdlfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdlfiles') <' '> ($ Id.VSub_DollarName '$lib') ) } spids: [27962] ) ] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [27849 27862] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$ladir')} 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:abs_ladir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$ladir'))} spids: [28013] ) ] ) ] spids: [27994 28011 28018 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:abs_ladir) 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 '$ladir'))}) (C {<pwd>}) ] ) ) } spids: [28025] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$abs_ladir'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_warning>} { (DQ <'cannot determine absolute directory name of '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$ladir') <'\''> ) } ) (C {<func_warning>} { (DQ < 'passing it literally to the linker, although it might fail' > ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:abs_ladir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$ladir'))} spids: [28072] ) ] ) ] spids: [28041 28052] ) ] ) ] spids: [28021 28022 28081 -1] ) ] ) (C {<func_basename>} {(DQ ($ Id.VSub_DollarName '$lib'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:laname) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_basename_result'))} spids: [28094] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$installed'))} {<Id.Lit_Equals '='>} {<Xyes>} ) 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>} {<Id.KW_Bang '!'>} {<-f>} { (DQ ($ Id.VSub_DollarName '$libdir') <'/'> ($ Id.VSub_DollarName '$linklib') ) } ) (C {<test>} {<-f>} { (DQ ($ Id.VSub_DollarName '$abs_ladir') <'/'> ($ Id.VSub_DollarName '$linklib') ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_warning>} { (DQ <'library '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$lib') <'\' was moved.'> ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$ladir'))} spids: [28162] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:absdir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$abs_ladir'))} spids: [28168] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libdir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$abs_ladir'))} spids: [28174] ) ] ) ] spids: [28122 28149] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$libdir'))} spids: [28183] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:absdir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$libdir'))} spids: [28189] ) ] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$hardcode_automatic'))} {<Id.Lit_Equals '='>} {<Xyes>} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:avoidtemprpath) op: assign_op.Equal rhs: {<yes>} spids: [28211] ) ] ) ] ) ] spids: [28105 28119] ) ] else_action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<Id.KW_Bang '!'>} {<-f>} { (DQ ($ Id.VSub_DollarName '$ladir') <'/'> ($ Id.VSub_DollarName '$objdir') <'/'> ($ Id.VSub_DollarName '$linklib') ) } ) (C {<test>} {<-f>} { (DQ ($ Id.VSub_DollarName '$abs_ladir') <'/'> ($ Id.VSub_DollarName '$linklib') ) } ) ] ) 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 '$ladir'))} spids: [28250] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:absdir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$abs_ladir'))} spids: [28256] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:notinst_path) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$notinst_path') <' '> ($ Id.VSub_DollarName '$abs_ladir') ) } spids: [28266] ) ] ) ] spids: [28218 28247] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dir) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$ladir') <'/'> ($ Id.VSub_DollarName '$objdir') ) } spids: [28277] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:absdir) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$abs_ladir') <'/'> ($ Id.VSub_DollarName '$objdir') ) } spids: [28285] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:notinst_path) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$notinst_path') <' '> ($ Id.VSub_DollarName '$abs_ladir') ) } spids: [28297] ) ] ) ] ) ] ) (C {<func_stripname>} {(SQ <lib>)} {(SQ <.la>)} {(DQ ($ Id.VSub_DollarName '$laname'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:name) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [28329] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$pass'))} {<Id.Lit_Equals '='>} {<dlpreopen>} ) 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>} {<-z>} {(DQ ($ Id.VSub_DollarName '$libdir'))} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$linkmode'))} {<Id.Lit_Equals '='>} {<prog>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_fatal_error>} { (DQ < 'only libraries may -dlpreopen a convenience library: ' > (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$lib') <'\''> ) } ) ] spids: [28354 28377] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$old_library'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdlprefiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdlprefiles') <' '> ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$old_library') ) } spids: [28415] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$libdir'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: dlpreconveniencelibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dlpreconveniencelibs' ) <' '> ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$old_library') ) } spids: [28445] ) ] ) ] ) ] spids: [28401 28412] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$dlname'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdlprefiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdlprefiles') <' '> ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$dlname') ) } spids: [28473] ) ] ) ] spids: [28459 28470] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdlprefiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdlprefiles') <' '> ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$linklib') ) } spids: [28486] ) ] ) ] ) ] spids: [28338 28351] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$libdir'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$linkmode'))} {<Id.Lit_Equals '='>} {<lib>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$old_library') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [28540] ) ] ) ] spids: [28524 28537] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$linkmode') <','> ($ Id.VSub_DollarName '$pass') ) } {<Id.Lit_Equals '='>} {(DQ <'prog,link'>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$old_library') <' '> ($ Id.VSub_DollarName '$compile_deplibs') ) } spids: [28570] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$old_library') <' '> ($ Id.VSub_DollarName '$finalize_deplibs') ) } spids: [28580] ) ] ) ] spids: [28550 28567] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$lib') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [28593] ) ] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [28506 28517] ) ] ) (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 '$linkmode'))} {<Id.Lit_Equals '='>} {<prog>} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$pass'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<link>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newlib_search_path) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newlib_search_path') <' '> ($ Id.VSub_DollarName '$ladir') ) } spids: [28644] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$lib') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [28652] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:linkalldeplibs) op: assign_op.Equal rhs: {<no>} spids: [28661] ) ] ) (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 '$link_all_deplibs' ) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<no>} ) (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$library_names') ) } ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$build_libtool_libs' ) ) } {<Id.Lit_Equals '='>} {<no>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:linkalldeplibs) op: assign_op.Equal rhs: {<yes>} spids: [28705] ) ] ) ] spids: [28665 28702] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmp_libs) op: assign_op.Equal rhs: (word.Empty) spids: [28713] ) ] ) (command.ForEach iter_name: deplib iter_words: [{($ Id.VSub_DollarName '$dependency_libs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$deplib')} arms: [ (case_arm pat_list: [{<-L> <Id.Lit_Star '*'>}] action: [ (C {<func_stripname>} {(SQ <-L>)} {(SQ )} {(DQ ($ Id.VSub_DollarName '$deplib'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: newlib_search_path ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newlib_search_path' ) <' '> ($ Id.VSub_DollarName '$func_stripname_result') ) } spids: [28753] ) ] ) ] spids: [28735 28737 28761 -1] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$linkalldeplibs' ) ) } {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [28787] ) ] ) ] spids: [28771 28784] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdependency_libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$newdependency_libs' ) ) } spids: [28806] ) ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C { ($ Id.VSub_DollarName '$opt_duplicate_deps' ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: { (DQ ($ Id.VSub_DollarName '$tmp_libs') <' '>) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$deplib') <' '> ) <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: specialdeplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$specialdeplibs' ) <' '> ($ Id.VSub_DollarName '$deplib') ) } spids: [28845] ) ] ) ] spids: [28836 28843 28852 -1] ) ] ) ] spids: [28817 28823] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmp_libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$tmp_libs') <' '> ($ Id.VSub_DollarName '$deplib') ) } spids: [28861] ) ] ) ] ) ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [28615 28641] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$linkmode') <','> ($ Id.VSub_DollarName '$pass') ) } {<Id.Lit_Equals '='>} {(DQ <'prog,link'>)} ) 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 '$library_names') ) } ) (BraceGroup children: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (BraceGroup children: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} { (DQ ($ Id.VSub_DollarName '$prefer_static_libs' ) ) } {<Id.Lit_Equals '='>} {<no>} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$prefer_static_libs' ) <','> ($ Id.VSub_DollarName '$installed') ) } {<Id.Lit_Equals '='>} {(DQ <'built,yes'>)} ) ] ) terminator: <Id.Op_Semi _> ) ] ) (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$old_library' ) ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) ] ) 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 '$shlibpath_var' ) ) } ) (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$avoidtemprpath' ) ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: { (DQ ($ Id.VSub_DollarName '$temp_rpath') <':'> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ ($ Id.VSub_DollarName '$absdir') <':'> ) <Id.Lit_Star '*'> } ] spids: [29013 29019 29021 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: temp_rpath ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$temp_rpath' ) ($ Id.VSub_DollarName '$absdir') <':'> ) } spids: [29027] ) ] ) ] spids: [29024 29025 29034 -1] ) ] ) ] spids: [28974 28996] ) ] ) (command.Case to_match: { (DQ <' '> ($ Id.VSub_DollarName '$sys_lib_dlsearch_path') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$absdir') <' '>) <Id.Lit_Star '*'> } ] spids: [29067 29074 29076 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.Case to_match: { (DQ ($ Id.VSub_DollarName '$compile_rpath') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$absdir') <' '> ) <Id.Lit_Star '*'> } ] spids: [29093 29100 29102 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: compile_rpath ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$compile_rpath' ) <' '> ($ Id.VSub_DollarName '$absdir') ) } spids: [29108] ) ] ) ] spids: [29105 29106 -1 29116] ) ] ) ] spids: [29079 29080 29119 -1] ) ] ) (command.Case to_match: { (DQ <' '> ($ Id.VSub_DollarName '$sys_lib_dlsearch_path') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$libdir') <' '>) <Id.Lit_Star '*'> } ] spids: [29136 29143 29145 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.Case to_match: { (DQ ($ Id.VSub_DollarName '$finalize_rpath') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$libdir') <' '> ) <Id.Lit_Star '*'> } ] spids: [29162 29169 29171 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: finalize_rpath ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$finalize_rpath' ) <' '> ($ Id.VSub_DollarName '$libdir') ) } spids: [29177] ) ] ) ] spids: [29174 29175 -1 29185] ) ] ) ] spids: [29148 29149 29188 -1] ) ] ) ] spids: [28905 28967] ) ] ) (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 '$alldeplibs'))} {<Id.Lit_Equals '='>} {<yes>} ) (BraceGroup children: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} { (DQ ($ Id.VSub_DollarName '$deplibs_check_method' ) ) } {<Id.Lit_Equals '='>} {<pass_all>} ) (BraceGroup children: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} { (DQ ($ Id.VSub_DollarName '$build_libtool_libs' ) ) } {<Id.Lit_Equals '='>} {<yes>} ) (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$library_names' ) ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) ] ) terminator: <Id.Op_Semi _> ) ] ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [29201 29261] ) ] ) ] spids: [28885 28902] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:link_static) op: assign_op.Equal rhs: {<no>} spids: [29278] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:use_static_libs) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$prefer_static_libs')} spids: [29285] ) ] ) (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 '$use_static_libs'))} {<Id.Lit_Equals '='>} {<built>} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$installed'))} {<Id.Lit_Equals '='>} {<yes>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:use_static_libs) op: assign_op.Equal rhs: {<no>} spids: [29317] ) ] ) ] spids: [29289 29314] ) ] ) (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 '$library_names'))} ) (BraceGroup children: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} { (DQ ($ Id.VSub_DollarName '$use_static_libs' ) ) } {<Id.Lit_Equals '='>} {<no>} ) (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$old_library' ) ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (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.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:notinst_deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$notinst_deplibs') <' '> ($ Id.VSub_DollarName '$lib') ) } spids: [29395] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:need_relink) op: assign_op.Equal rhs: {<no>} spids: [29403] ) ] ) ] spids: [29373 29388 29407 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$installed') ) } {<Id.Lit_Equals '='>} {<no>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: notinst_deplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$notinst_deplibs' ) <' '> ($ Id.VSub_DollarName '$lib') ) } spids: [29430] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:need_relink) op: assign_op.Equal rhs: {<yes>} spids: [29438] ) ] ) ] spids: [29414 29427] ) ] ) ] spids: [29410 29411 29445 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlopenmodule) op: assign_op.Equal rhs: {(DQ )} spids: [29464] ) ] ) (command.ForEach iter_name: dlpremoduletest iter_words: [{($ Id.VSub_DollarName '$dlprefiles')}] do_arg_iter: F body: (command.DoGroup children: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ <X> ($ Id.VSub_DollarName '$dlpremoduletest' ) ) } {<Id.Lit_Equals '='>} {(DQ <X> ($ Id.VSub_DollarName '$lib'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlopenmodule) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dlpremoduletest' ) ) } spids: [29501] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Break break> ) ] spids: [29481 29498] ) ] ) ] ) ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp Id.Op_DAmp] children: [ (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$dlopenmodule') ) } ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$shouldnotlink') ) } {<Id.Lit_Equals '='>} {<yes>} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$pass'))} {<Id.Lit_Equals '='>} {<link>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {($ Id.VSub_DollarName '$ECHO')}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$linkmode') ) } {<Id.Lit_Equals '='>} {<prog>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'*** Warning: Linking the executable '> ($ Id.VSub_DollarName '$output') <' against the loadable module'> ) } ) ] spids: [29557 29570] ) ] else_action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'*** Warning: Linking the shared library '> ($ Id.VSub_DollarName '$output') <' against the loadable module'> ) } ) ] ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'*** '> ($ Id.VSub_DollarName '$linklib') <' is not portable!'> ) } ) ] spids: [29516 29551] ) ] ) (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 '$linkmode'))} {<Id.Lit_Equals '='>} {<lib>} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$hardcode_into_libs' ) ) } {<Id.Lit_Equals '='>} {<yes>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: { (DQ <' '> ($ Id.VSub_DollarName '$sys_lib_dlsearch_path') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$absdir') <' '>) <Id.Lit_Star '*'> } ] spids: [29661 29668 29670 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.Case to_match: { (DQ ($ Id.VSub_DollarName '$compile_rpath') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$absdir') <' '> ) <Id.Lit_Star '*'> } ] spids: [29687 29694 29696 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: compile_rpath ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$compile_rpath' ) <' '> ($ Id.VSub_DollarName '$absdir') ) } spids: [29702] ) ] ) ] spids: [29699 29700 -1 29710] ) ] ) ] spids: [29673 29674 29713 -1] ) ] ) (command.Case to_match: { (DQ <' '> ($ Id.VSub_DollarName '$sys_lib_dlsearch_path') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$libdir') <' '>) <Id.Lit_Star '*'> } ] spids: [29730 29737 29739 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.Case to_match: { (DQ ($ Id.VSub_DollarName '$finalize_rpath') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$libdir') <' '> ) <Id.Lit_Star '*'> } ] spids: [29756 29763 29765 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: finalize_rpath ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$finalize_rpath' ) <' '> ($ Id.VSub_DollarName '$libdir') ) } spids: [29771] ) ] ) ] spids: [29768 29769 -1 29779] ) ] ) ] spids: [29742 29743 29782 -1] ) ] ) ] spids: [29609 29635] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$old_archive_from_expsyms_cmds' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<set>} {<dummy>} {($ Id.VSub_DollarName '$library_names')} ) (C {<shift>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:realname) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [29820] ) ] ) (C {<shift>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libname) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<eval>} { (DQ (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <'ECHO '> ) ($ Id.VSub_DollarName '$libname_spec') (DQ ) } ) ) } spids: [29829] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$dlname'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:soname) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$dlname'))} spids: [29869] ) ] ) ] spids: [29855 29866] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$soname_spec' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <cygwin> <Id.Lit_Star '*'> } {<mingw> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <cegcc> <Id.Lit_Star '*'> } ] action: [ (C {<func_arith>} {($ Id.VSub_DollarName '$current')} {<->} {($ Id.VSub_DollarName '$age')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:major) op: assign_op.Equal rhs: { ($ Id.VSub_DollarName '$func_arith_result' ) } spids: [29926] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: versuffix ) op: assign_op.Equal rhs: { (DQ <-> ($ Id.VSub_DollarName '$major' ) ) } spids: [29930] ) ] ) ] spids: [29900 29914 29937 -1] ) ] ) (C {<eval>} {<Id.Lit_VarLike 'soname='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$soname_spec') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) ] spids: [29875 29886] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:soname) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$realname'))} spids: [29954] ) ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:soroot) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$soname'))} spids: [29968] ) ] ) (C {<func_basename>} {(DQ ($ Id.VSub_DollarName '$soroot'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:soname) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$func_basename_result') ) } spids: [29981] ) ] ) (C {<func_stripname>} {(SQ <lib>)} {(SQ <.dll>)} {(DQ ($ Id.VSub_DollarName '$soname'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newlib) op: assign_op.Equal rhs: {<libimp-> ($ Id.VSub_DollarName '$func_stripname_result') <.a> } spids: [30002] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-f>} { (DQ ($ Id.VSub_DollarName '$output_objdir' ) <'/'> ($ Id.VSub_DollarName '$soname') <-def> ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<Id.Lit_Colon ':'>})] spids: [30013 30027] ) ] else_action: [ (C {<func_verbose>} { (DQ <'extracting exported symbol list from '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$soname') <'\''> ) } ) (C {<func_execute_cmds>} { (DQ ($ Id.VSub_DollarName '$extract_expsyms_cmds') ) } {(SQ <'exit $?'>)} ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-f>} { (DQ ($ Id.VSub_DollarName '$output_objdir' ) <'/'> ($ Id.VSub_DollarName '$newlib') ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (C {<Id.Lit_Colon ':'>}) terminator: <Id.Op_Semi _> ) ] spids: [30064 30077] ) ] else_action: [ (C {<func_verbose>} { (DQ <'generating import library for '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$soname') <'\''> ) } ) (C {<func_execute_cmds>} { (DQ ($ Id.VSub_DollarName '$old_archive_from_expsyms_cmds' ) ) } {(SQ <'exit $?'>)} ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dir) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$output_objdir')} spids: [30113] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:linklib) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$newlib')} spids: [30117] ) ] ) ] spids: [29792 29803] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$linkmode'))} {<Id.Lit_Equals '='>} {<prog>} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$mode'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<relink>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:add_shlibpath) op: assign_op.Equal rhs: (word.Empty) spids: [30157] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:add_dir) op: assign_op.Equal rhs: (word.Empty) spids: [30160] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:add) op: assign_op.Equal rhs: (word.Empty) spids: [30163] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lib_linked) op: assign_op.Equal rhs: {<yes>} spids: [30166] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$hardcode_action')} arms: [ (case_arm pat_list: [{<immediate>} {<unsupported>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$hardcode_direct' ) ) } {<Id.Lit_Equals '='>} {<no>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:add) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$linklib') ) } spids: [30201] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-sco3.2v5.0.> <Id.Lit_LBracket '['> <024> <Id.Lit_RBracket ']'> <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: add_dir ) op: assign_op.Equal rhs: { (DQ <-L> ($ Id.VSub_DollarName '$dir' ) ) } spids: [30226] ) ] ) ] spids: [30216 30224 30232 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-sysv4> <Id.Lit_Star '*'> <uw2> <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: add_dir ) op: assign_op.Equal rhs: { (DQ <-L> ($ Id.VSub_DollarName '$dir' ) ) } spids: [30244] ) ] ) ] spids: [30235 30242 30250 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-sysv5OpenUNIX> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-sysv5UnixWare7.> <Id.Lit_LBracket '['> <01> <Id.Lit_RBracket ']'> <.> <Id.Lit_LBracket '['> <10> <Id.Lit_RBracket ']'> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-unixware7> <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: add_dir ) op: assign_op.Equal rhs: { (DQ <-L> ($ Id.VSub_DollarName '$dir' ) ) } spids: [30285] ) ] ) ] spids: [30253 30283 30291 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-darwin> <Id.Lit_Star '*'> } ] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Pipeline children: [ (command.Simple words: [ { < '/usr/bin/file' > } {<-L>} { ($ Id.VSub_DollarName '$add' ) } ] 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 < ': [^:]* bundle' > ) } ] 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.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C { < test > } {(DQ <X> ($ Id.VSub_DollarName '$dlopenmodule'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} { (DQ < X > ($ Id.VSub_DollarName '$lib') ) } ) terminator: < Id.Op_Semi _ > ) ] ) action: [ (C { ($ Id.VSub_DollarName '$ECHO' ) } {(DQ <'*** Warning: lib '> ($ Id.VSub_DollarName '$linklib') <' is a module, not a shared library'>)} ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C { < test > } {<-z>} {(DQ ($ Id.VSub_DollarName '$old_library'))} ) terminator: < Id.Op_Semi _ > ) ] ) action: [ (C { ($ Id.VSub_DollarName '$ECHO' ) } ) (C { ($ Id.VSub_DollarName '$ECHO' ) } {(DQ <'*** And there doesn\'t seem to be a static archive available'>)} ) (C { ($ Id.VSub_DollarName '$ECHO' ) } {(DQ <'*** The link will probably fail, sorry'>)} ) ] spids: [ 30370 30382 ] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: add ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dir' ) <'/'> ($ Id.VSub_DollarName '$old_library') ) } spids: [ 30405 ] ) ] ) ] ) ] spids: [30340 30358] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C { < test > } {<-n>} {(DQ ($ Id.VSub_DollarName '$old_library'))} ) terminator: < Id.Op_Semi _ > ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: add ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dir' ) <'/'> ($ Id.VSub_DollarName '$old_library') ) } spids: [ 30430 ] ) ] ) ] spids: [30416 30427] ) ] ) ] spids: [30311 30337] ) ] ) ] spids: [30294 30300 -1 30444] ) ] ) ] spids: [30185 30198] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$hardcode_minus_L' ) ) } {<Id.Lit_Equals '='>} {<no>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-sunos> <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: add_shlibpath ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dir' ) ) } spids: [30477] ) ] ) ] spids: [30470 30475 30482 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: add_dir ) op: assign_op.Equal rhs: { (DQ <-L> ($ Id.VSub_DollarName '$dir') ) } spids: [30488] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:add) op: assign_op.Equal rhs: { (DQ <-l> ($ Id.VSub_DollarName '$name') ) } spids: [30495] ) ] ) ] spids: [30447 30460] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$hardcode_shlibpath_var' ) ) } {<Id.Lit_Equals '='>} {<no>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: add_shlibpath ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dir') ) } spids: [30518] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:add) op: assign_op.Equal rhs: { (DQ <-l> ($ Id.VSub_DollarName '$name') ) } spids: [30524] ) ] ) ] spids: [30502 30515] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lib_linked) op: assign_op.Equal rhs: {<no>} spids: [30534] ) ] ) ] ) ] spids: [30177 30182 30541 -1] ) (case_arm pat_list: [{<relink>}] action: [ (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 '$hardcode_direct' ) ) } {<Id.Lit_Equals '='>} {<yes>} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$hardcode_direct_absolute' ) ) } {<Id.Lit_Equals '='>} {<no>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:add) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$linklib') ) } spids: [30577] ) ] ) ] spids: [30548 30574] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$hardcode_minus_L' ) ) } {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: add_dir ) op: assign_op.Equal rhs: { (DQ <-L> ($ Id.VSub_DollarName '$dir') ) } spids: [30601] ) ] ) (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.Case to_match: { ($ Id.VSub_DollarName '$libdir' ) } arms: [ (case_arm pat_list: [ {<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: add_dir ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$add_dir' ) <' -L'> ($ Id.VSub_DollarName '$inst_prefix_dir') ($ Id.VSub_DollarName '$libdir') ) } spids: [30641] ) ] ) ] spids: [30633 30638 30650 -1] ) ] ) ] spids: [30612 30623] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:add) op: assign_op.Equal rhs: { (DQ <-l> ($ Id.VSub_DollarName '$name') ) } spids: [30659] ) ] ) ] spids: [30585 30598] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$hardcode_shlibpath_var' ) ) } {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: add_shlibpath ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dir') ) } spids: [30682] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:add) op: assign_op.Equal rhs: { (DQ <-l> ($ Id.VSub_DollarName '$name') ) } spids: [30688] ) ] ) ] spids: [30666 30679] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lib_linked) op: assign_op.Equal rhs: {<no>} spids: [30698] ) ] ) ] ) ] spids: [30544 30545 30705 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lib_linked) op: assign_op.Equal rhs: {<no>} spids: [30711] ) ] ) ] spids: [30708 30709 30714 -1] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$lib_linked') ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_fatal_configuration>} {(DQ <'unsupported hardcode properties'>)} ) ] spids: [30721 30735] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$add_shlibpath' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: {<Id.Lit_Colon ':'> ($ Id.VSub_DollarName '$compile_shlibpath') <Id.Lit_Colon ':'> } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <':'> ($ Id.VSub_DollarName '$add_shlibpath' ) <':'> ) <Id.Lit_Star '*'> } ] spids: [30772 30779 30781 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: compile_shlibpath ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$compile_shlibpath' ) ($ Id.VSub_DollarName '$add_shlibpath') <':'> ) } spids: [30787] ) ] ) ] spids: [30784 30785 30794 -1] ) ] ) ] spids: [30749 30760] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$linkmode') ) } {<Id.Lit_Equals '='>} {<prog>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$add_dir'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: compile_deplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$add_dir') <' '> ($ Id.VSub_DollarName '$compile_deplibs') ) } spids: [30829] ) ] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$add'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: compile_deplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$add') <' '> ($ Id.VSub_DollarName '$compile_deplibs') ) } spids: [30847] ) ] ) ] ) ] spids: [30803 30816] ) ] else_action: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$add_dir'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$add_dir') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [30868] ) ] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$add'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$add') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [30886] ) ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp Id.Op_DAmp] children: [ (C {<test>} { (DQ ($ Id.VSub_DollarName '$hardcode_direct' ) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<yes>} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$hardcode_minus_L' ) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<yes>} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$hardcode_shlibpath_var' ) ) } {<Id.Lit_Equals '='>} {<yes>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: {<Id.Lit_Colon ':'> ($ Id.VSub_DollarName '$finalize_shlibpath' ) <Id.Lit_Colon ':'> } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <':'> ($ Id.VSub_DollarName '$libdir') <':'> ) <Id.Lit_Star '*'> } ] spids: [30947 30954 30956 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: finalize_shlibpath ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$finalize_shlibpath' ) ($ Id.VSub_DollarName '$libdir') <':'> ) } spids: [30962] ) ] ) ] spids: [30959 30960 30969 -1] ) ] ) ] spids: [30894 30935] ) ] ) ] ) ] spids: [30128 30154] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$linkmode'))} {<Id.Lit_Equals '='>} {<prog>} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$mode'))} {<Id.Lit_Equals '='>} {<relink>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:add_shlibpath) op: assign_op.Equal rhs: (word.Empty) spids: [31013] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:add_dir) op: assign_op.Equal rhs: (word.Empty) spids: [31016] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:add) op: assign_op.Equal rhs: (word.Empty) spids: [31019] ) ] ) (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 '$hardcode_direct' ) ) } {<Id.Lit_Equals '='>} {<yes>} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$hardcode_direct_absolute' ) ) } {<Id.Lit_Equals '='>} {<no>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:add) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$libdir') <'/'> ($ Id.VSub_DollarName '$linklib') ) } spids: [31055] ) ] ) ] spids: [31026 31052] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$hardcode_minus_L' ) ) } {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:add_dir) op: assign_op.Equal rhs: { (DQ <-L> ($ Id.VSub_DollarName '$libdir') ) } spids: [31079] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:add) op: assign_op.Equal rhs: {(DQ <-l> ($ Id.VSub_DollarName '$name'))} spids: [31086] ) ] ) ] spids: [31063 31076] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$hardcode_shlibpath_var' ) ) } {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: {<Id.Lit_Colon ':'> ($ Id.VSub_DollarName '$finalize_shlibpath') <Id.Lit_Colon ':'> } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <':'> ($ Id.VSub_DollarName '$libdir') <':'> ) <Id.Lit_Star '*'> } ] spids: [31118 31125 31127 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: finalize_shlibpath ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$finalize_shlibpath' ) ($ Id.VSub_DollarName '$libdir') <':'> ) } spids: [31133] ) ] ) ] spids: [31130 31131 31140 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:add) op: assign_op.Equal rhs: {(DQ <-l> ($ Id.VSub_DollarName '$name'))} spids: [31146] ) ] ) ] spids: [31093 31106] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$hardcode_automatic' ) ) } {<Id.Lit_Equals '='>} {<yes>} ) 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 '$inst_prefix_dir' ) ) } ) (C {<test>} {<-f>} { (DQ ($ Id.VSub_DollarName '$inst_prefix_dir' ) ($ Id.VSub_DollarName '$libdir') <'/'> ($ Id.VSub_DollarName '$linklib') ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:add) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$inst_prefix_dir' ) ($ Id.VSub_DollarName '$libdir') <'/'> ($ Id.VSub_DollarName '$linklib') ) } spids: [31198] ) ] ) ] spids: [31169 31195] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:add) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$libdir') <'/'> ($ Id.VSub_DollarName '$linklib') ) } spids: [31210] ) ] ) ] ) ] spids: [31153 31166] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:add_dir) op: assign_op.Equal rhs: {(DQ <-L> ($ Id.VSub_DollarName '$libdir'))} spids: [31228] ) ] ) (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.Case to_match: {($ Id.VSub_DollarName '$libdir')} arms: [ (case_arm pat_list: [ {<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: add_dir ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$add_dir' ) <' -L'> ($ Id.VSub_DollarName '$inst_prefix_dir') ($ Id.VSub_DollarName '$libdir') ) } spids: [31268] ) ] ) ] spids: [31260 31265 31277 -1] ) ] ) ] spids: [31239 31250] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:add) op: assign_op.Equal rhs: {(DQ <-l> ($ Id.VSub_DollarName '$name'))} spids: [31286] ) ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$linkmode') ) } {<Id.Lit_Equals '='>} {<prog>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$add_dir'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: finalize_deplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$add_dir') <' '> ($ Id.VSub_DollarName '$finalize_deplibs') ) } spids: [31323] ) ] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$add'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: finalize_deplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$add') <' '> ($ Id.VSub_DollarName '$finalize_deplibs') ) } spids: [31341] ) ] ) ] ) ] spids: [31297 31310] ) ] else_action: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$add_dir'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$add_dir') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [31362] ) ] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$add'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$add') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [31380] ) ] ) ] ) ] ) ] spids: [30985 31010] ) ] ) ] spids: [29324 29363] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$linkmode'))} {<Id.Lit_Equals '='>} {<prog>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$hardcode_direct'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<unsupported>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (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:linklib) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$old_library'))} spids: [31449] ) ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$linklib') <' '> ($ Id.VSub_DollarName '$compile_deplibs') ) } spids: [31455] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$linklib') <' '> ($ Id.VSub_DollarName '$finalize_deplibs') ) } spids: [31465] ) ] ) ] spids: [31422 31436] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_deplibs) op: assign_op.Equal rhs: { (DQ <-l> ($ Id.VSub_DollarName '$name') <' -L'> ($ Id.VSub_DollarName '$dir') <' '> ($ Id.VSub_DollarName '$compile_deplibs') ) } spids: [31478] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_deplibs) op: assign_op.Equal rhs: { (DQ <-l> ($ Id.VSub_DollarName '$name') <' -L'> ($ Id.VSub_DollarName '$dir') <' '> ($ Id.VSub_DollarName '$finalize_deplibs') ) } spids: [31489] ) ] ) ] ) ] spids: [31394 31407] ) (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.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$deplibs_check_method' ) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<pass_all>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {($ Id.VSub_DollarName '$ECHO')}) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** Warning: This system can not link to static lib archive ' > ($ Id.VSub_DollarName '$lib') <.> ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** I have the capability to make that library automatically link in when' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** you link to this library. But I can only do this if you have a' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** shared version of the library, which you do not appear to have.' > ) } ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$module'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** But as you try to build a module library, libtool will still create ' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** a static module, that should work as long as the dlopening application' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** is linked with the -dlopen flag to resolve symbols at runtime.' > ) } ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$global_symbol_pipe' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {($ Id.VSub_DollarName '$ECHO')}) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** However, this would only work if libtool was able to extract symbol' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** lists from a program, using ' > (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'nm\' or equivalent, but libtool could'> ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** not find such a program. So, this module is probably useless.' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'*** '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'nm\' from GNU binutils and a full rebuild may help.'> ) } ) ] spids: [31627 31638] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$build_old_libs' ) ) } {<Id.Lit_Equals '='>} {<no>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: build_libtool_libs ) op: assign_op.Equal rhs: {<module>} spids: [31695] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: build_old_libs ) op: assign_op.Equal rhs: {<yes>} spids: [31699] ) ] ) ] spids: [31679 31692] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: build_libtool_libs ) op: assign_op.Equal rhs: {<no>} spids: [31706] ) ] ) ] ) ] spids: [31590 31603] ) ] ) ] spids: [31523 31537] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$old_library') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [31719] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:link_static) op: assign_op.Equal rhs: {<yes>} spids: [31729] ) ] ) ] ) ] spids: [31503 31516] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$linkmode'))} {<Id.Lit_Equals '='>} {<lib>} ) 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 '$dependency_libs' ) ) } ) (BraceGroup children: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe Id.Op_DPipe] children: [ (C {<test>} { (DQ ($ Id.VSub_DollarName '$hardcode_into_libs' ) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<yes>} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$build_old_libs' ) ) } {<Id.Lit_Equals '='>} {<yes>} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$link_static' ) ) } {<Id.Lit_Equals '='>} {<yes>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:temp_deplibs) op: assign_op.Equal rhs: (word.Empty) spids: [31822] ) ] ) (command.ForEach iter_name: libdir iter_words: [{($ Id.VSub_DollarName '$dependency_libs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$libdir')} arms: [ (case_arm pat_list: [{<-R> <Id.Lit_Star '*'>}] action: [ (C {<func_stripname>} {(SQ <-R>)} {(SQ )} {(DQ ($ Id.VSub_DollarName '$libdir'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: temp_xrpath ) op: assign_op.Equal rhs: { ($ Id.VSub_DollarName '$func_stripname_result' ) } spids: [31862] ) ] ) (command.Case to_match: { (DQ <' '> ($ Id.VSub_DollarName '$xrpath') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$temp_xrpath' ) <' '> ) <Id.Lit_Star '*'> } ] spids: [31877 31884 31886 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: xrpath ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$xrpath' ) <' '> ($ Id.VSub_DollarName '$temp_xrpath') ) } spids: [31892] ) ] ) ] spids: [31889 31890 31898 -1] ) ] ) ] spids: [31844 31846 31902 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: temp_deplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$temp_deplibs' ) <' '> ($ Id.VSub_DollarName '$libdir') ) } spids: [31908] ) ] ) ] spids: [31905 31906 31914 -1] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dependency_libs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$temp_deplibs'))} spids: [31923] ) ] ) ] spids: [31759 31815] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newlib_search_path) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newlib_search_path') <' '> ($ Id.VSub_DollarName '$absdir') ) } spids: [31933] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$link_static'))} {<Id.Lit_Equals '='>} {<no>} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdependency_libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$abs_ladir') <'/'> ($ Id.VSub_DollarName '$laname') <' '> ($ Id.VSub_DollarName '$newdependency_libs') ) } spids: [31957] ) ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmp_libs) op: assign_op.Equal rhs: (word.Empty) spids: [31971] ) ] ) (command.ForEach iter_name: deplib iter_words: [{($ Id.VSub_DollarName '$dependency_libs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdependency_libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$newdependency_libs') ) } spids: [31986] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C { ($ Id.VSub_DollarName '$opt_duplicate_deps' ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: { (DQ ($ Id.VSub_DollarName '$tmp_libs') <' '>) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$deplib') <' '> ) <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: specialdeplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$specialdeplibs' ) <' '> ($ Id.VSub_DollarName '$deplib') ) } spids: [32022] ) ] ) ] spids: [32013 32020 32029 -1] ) ] ) ] spids: [31994 32000] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmp_libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$tmp_libs') <' '> ($ Id.VSub_DollarName '$deplib') ) } spids: [32038] ) ] ) ] ) ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$link_all_deplibs') ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<no>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ForEach iter_name: deplib iter_words: [{($ Id.VSub_DollarName '$dependency_libs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:path) op: assign_op.Equal rhs: (word.Empty) spids: [32083] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$deplib')} arms: [ (case_arm pat_list: [{<-L> <Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:path) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib' ) ) } spids: [32097] ) ] ) ] spids: [32093 32095 32102 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <.la>}] action: [ (C {<func_dirname>} {(DQ ($ Id.VSub_DollarName '$deplib'))} {(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: [32124] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$dir')} 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: absdir ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dir' ) ) } spids: [32160] ) ] ) ] spids: [32141 32158 32165 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (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: [32172] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$absdir' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_warning>} { (DQ < 'cannot determine absolute directory name of ' > (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$dir') <'\''> ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: absdir ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dir' ) ) } spids: [32212] ) ] ) ] spids: [32188 32199] ) ] ) ] spids: [32168 32169 32221 -1] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Simple words: [ { ($ Id.VSub_DollarName '$GREP' ) } { (DQ < '^installed=no' > ) } { ($ Id.VSub_DollarName '$deplib' ) } ] redirects: [ (redir op: <Id.Redir_Great '>' > loc: (redir_loc.Fd fd: 1 ) arg: {<'/dev/null'>} ) ] do_fork: T ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: { ($ Id.VSub_DollarName '$host' ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-darwin> <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: depdepl ) op: assign_op.Equal rhs: (word.Empty) spids: [32260] ) ] ) (C {<eval>} { <Id.Lit_VarLike 'deplibrary_names=' > (command_sub left_token: < Id.Left_Backtick '`' > child: (C { (${ Id.VSub_Name SED ) } {<-n>} {<-e>} {(SQ <'s/^library_names=\\(.*\\)$/\\1/p'>)} {($ Id.VSub_DollarName '$deplib')} ) ) } ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C { < test > } {<-n>} {(DQ ($ Id.VSub_DollarName '$deplibrary_names'))} ) terminator: < Id.Op_Semi _ > ) ] ) action: [ (command.ForEach iter_name: tmp iter_words: [ { ($ Id.VSub_DollarName '$deplibrary_names' ) } ] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: depdepl ) op: assign_op.Equal rhs: { ($ Id.VSub_DollarName '$tmp' ) } spids: [ 32319 ] ) ] ) ] ) ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C { < test > } {<-f>} { (DQ ($ Id.VSub_DollarName '$absdir' ) <'/'> ($ Id.VSub_DollarName '$objdir') <'/'> ($ Id.VSub_DollarName '$depdepl') ) } ) terminator: < Id.Op_Semi _ > ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: depdepl ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$absdir' ) <'/'> ($ Id.VSub_DollarName '$objdir') <'/'> ($ Id.VSub_DollarName '$depdepl') ) } spids: [ 32345 ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: darwin_install_name ) op: assign_op.Equal rhs: { (command_sub left_token: < Id.Left_Backtick '`' > child: (command.Pipeline children: [ (C { (${ Id.VSub_Name OTOOL ) } {<-L>} {($ Id.VSub_DollarName '$depdepl')} ) (C { < awk > } {(SQ <'{if (NR == 2) {print $1;exit}}'>)} ) ] negated: F ) ) } spids: [ 32355 ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C { < test > } {<-z>} {(DQ ($ Id.VSub_DollarName '$darwin_install_name'))} ) terminator: < Id.Op_Semi _ > ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: darwin_install_name ) op: assign_op.Equal rhs: { (command_sub left_token: < Id.Left_Backtick '`' > child: (command.Pipeline children: [ (C { (${ Id.VSub_Name OTOOL64 ) } {<-L>} {($ Id.VSub_DollarName '$depdepl')} ) (C { < awk > } {(SQ <'{if (NR == 2) {print $1;exit}}'>)} ) ] negated: F ) ) } spids: [ 32391 ] ) ] ) ] spids: [ 32377 32388 ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: compiler_flags ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$compiler_flags' ) <' '> (${ Id.VSub_Name wl) <'-dylib_file '> (${ Id.VSub_Name wl) (${ Id.VSub_Name darwin_install_name) < ':' > (${ Id.VSub_Name depdepl) ) } spids: [ 32416 ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: linker_flags ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$linker_flags' ) <' -dylib_file '> (${ Id.VSub_Name darwin_install_name) <':'> (${ Id.VSub_Name depdepl) ) } spids: [ 32437 ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: path ) op: assign_op.Equal rhs: (word.Empty) spids: [ 32451 ] ) ] ) ] spids: [ 32326 32342 ] ) ] ) ] spids: [32291 32303] ) ] ) ] spids: [32252 32257 32460 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'>} ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: path ) op: assign_op.Equal rhs: { (DQ <-L> ($ Id.VSub_DollarName '$absdir' ) <'/'> ($ Id.VSub_DollarName '$objdir') ) } spids: [32467] ) ] ) ] spids: [32463 32464 32476 -1] ) ] ) ] spids: [32227 32242] ) ] else_action: [ (C {<eval>} {<Id.Lit_VarLike 'libdir='> (command_sub left_token: <Id.Left_Backtick '`'> child: (C {(${ Id.VSub_Name SED)} {<-n>} {<-e>} {(SQ <'s/^libdir=\\(.*\\)$/\\1/p'>)} {($ Id.VSub_DollarName '$deplib')} ) ) } ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$libdir' ) ) } ) (C {<func_fatal_error>} { (DQ (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`' > ) ($ Id.VSub_DollarName '$deplib') <'\' is not a valid libtool archive'> ) } ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} { (DQ ($ Id.VSub_DollarName '$absdir' ) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ ($ Id.VSub_DollarName '$libdir'))} ) (C {<func_warning>} { (DQ (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`' > ) ($ Id.VSub_DollarName '$deplib') <'\' seems to be moved'> ) } ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: path ) op: assign_op.Equal rhs: { (DQ <-L> ($ Id.VSub_DollarName '$absdir' ) ) } spids: [32561] ) ] ) ] ) ] spids: [32105 32107 32571 -1] ) ] ) (command.Case to_match: { (DQ <' '> ($ Id.VSub_DollarName '$deplibs') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$path') <' '> ) <Id.Lit_Star '*'> } ] spids: [32588 32595 32597 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: deplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$path') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [32603] ) ] ) ] spids: [32600 32601 32610 -1] ) ] ) ] ) ) ] spids: [32050 32064] ) ] ) ] spids: [31743 31756] ) ] ) ] ) ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$pass'))} {<Id.Lit_Equals '='>} {<link>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$linkmode'))} {<Id.Lit_Equals '='>} {(DQ <prog>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$new_inherited_linker_flags') <' '> ($ Id.VSub_DollarName '$compile_deplibs') ) } spids: [32671] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$new_inherited_linker_flags') <' '> ($ Id.VSub_DollarName '$finalize_deplibs') ) } spids: [32679] ) ] ) ] spids: [32653 32668] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compiler_flags) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$compiler_flags') <' '>) (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'X '> ($ Id.VSub_DollarName '$new_inherited_linker_flags' ) ) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} { (SQ < 's% \\([^ $]*\\).ltframework% -framework \\1%g' > ) } ) ] negated: F ) ) } spids: [32690] ) ] ) ] ) ] spids: [32637 32650] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dependency_libs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$newdependency_libs'))} spids: [32729] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$pass'))} {<Id.Lit_Equals '='>} {<dlpreopen>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ForEach iter_name: deplib iter_words: [{($ Id.VSub_DollarName '$save_deplibs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [32767] ) ] ) ] ) ) ] spids: [32735 32748] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$pass'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<dlopen>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$pass'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<conv>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lib_search_path) op: assign_op.Equal rhs: (word.Empty) spids: [32819] ) ] ) (command.ForEach iter_name: dir iter_words: [{($ Id.VSub_DollarName '$newlib_search_path')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$lib_search_path') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$dir') <' '>) <Id.Lit_Star '*'> } ] spids: [32844 32851 32853 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: lib_search_path ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$lib_search_path' ) <' '> ($ Id.VSub_DollarName '$dir') ) } spids: [32859] ) ] ) ] spids: [32856 32857 32866 -1] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newlib_search_path) op: assign_op.Equal rhs: (word.Empty) spids: [32875] ) ] ) ] spids: [32798 32812] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$linkmode') <','> ($ Id.VSub_DollarName '$pass') ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ <'prog,link'>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:vars) op: assign_op.Equal rhs: {(DQ <deplibs>)} spids: [32903] ) ] ) ] spids: [32882 32900] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:vars) op: assign_op.Equal rhs: {(DQ <'compile_deplibs finalize_deplibs'>)} spids: [32912] ) ] ) ] ) (command.ForEach iter_name: var iter_words: [{($ Id.VSub_DollarName '$vars')} {<dependency_libs>}] do_arg_iter: F body: (command.DoGroup children: [ (C {<eval>} {<Id.Lit_VarLike 'tmp_libs='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) ($ Id.VSub_DollarName '$var') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:new_libs) op: assign_op.Equal rhs: (word.Empty) spids: [32948] ) ] ) (command.ForEach iter_name: deplib iter_words: [{($ Id.VSub_DollarName '$tmp_libs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$deplib')} arms: [ (case_arm pat_list: [{<-L> <Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:new_libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib') <' '> ($ Id.VSub_DollarName '$new_libs') ) } spids: [32998] ) ] ) ] spids: [32994 32996 33005 -1] ) (case_arm pat_list: [{<-R> <Id.Lit_Star '*'>}] spids: [33008 33010 33012 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.Case to_match: { (DQ <' '> ($ Id.VSub_DollarName '$specialdeplibs') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$deplib') <' '> ) <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: new_libs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib' ) <' '> ($ Id.VSub_DollarName '$new_libs') ) } spids: [33095] ) ] ) ] spids: [33086 33093 33102 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.Case to_match: { (DQ <' '> ($ Id.VSub_DollarName '$new_libs') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$deplib' ) <' '> ) <Id.Lit_Star '*'> } ] spids: [33120 33127 33129 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: new_libs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplib' ) <' '> ($ Id.VSub_DollarName '$new_libs') ) } spids: [33135] ) ] ) ] spids: [33132 33133 33142 -1] ) ] ) ] spids: [33105 33106 33148 -1] ) ] ) ] spids: [33015 33016 33154 -1] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmp_libs) op: assign_op.Equal rhs: (word.Empty) spids: [33163] ) ] ) (command.ForEach iter_name: deplib iter_words: [{($ Id.VSub_DollarName '$new_libs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$deplib')} arms: [ (case_arm pat_list: [{<-L> <Id.Lit_Star '*'>}] action: [ (command.Case to_match: { (DQ <' '> ($ Id.VSub_DollarName '$tmp_libs') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$deplib') <' '> ) <Id.Lit_Star '*'> } ] spids: [33201 33208 33210 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: tmp_libs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$tmp_libs' ) <' '> ($ Id.VSub_DollarName '$deplib') ) } spids: [33216] ) ] ) ] spids: [33213 33214 33223 -1] ) ] ) ] spids: [33185 33187 33229 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmp_libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$tmp_libs') <' '> ($ Id.VSub_DollarName '$deplib') ) } spids: [33235] ) ] ) ] spids: [33232 33233 33242 -1] ) ] ) ] ) ) (C {<eval>} {($ Id.VSub_DollarName '$var') <Id.Lit_Equals '='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$tmp_libs') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) ] ) ) ] spids: [32781 32795] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmp_libs) op: assign_op.Equal rhs: (word.Empty) spids: [33277] ) ] ) (command.ForEach iter_name: i iter_words: [{($ Id.VSub_DollarName '$dependency_libs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: { (DQ <' '> ($ Id.VSub_DollarName '$predeps') <' '> ($ Id.VSub_DollarName '$postdeps') <' '> ($ Id.VSub_DollarName '$compiler_lib_search_path') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$i') <' '>) <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:i) op: assign_op.Equal rhs: {(DQ )} spids: [33318] ) ] ) ] spids: [33308 33315 33323 -1] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$i'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmp_libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$tmp_libs') <' '> ($ Id.VSub_DollarName '$i') ) } spids: [33344] ) ] ) ] spids: [33329 33341] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dependency_libs) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$tmp_libs')} spids: [33358] ) ] ) ] ) ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$linkmode'))} {<Id.Lit_Equals '='>} {<prog>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlfiles) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$newdlfiles'))} spids: [33384] ) ] ) ] spids: [33368 33381] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$linkmode'))} {<Id.Lit_Equals '='>} {<prog>} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$linkmode'))} {<Id.Lit_Equals '='>} {<lib>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlprefiles) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$newdlprefiles'))} spids: [33421] ) ] ) ] spids: [33393 33418] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$linkmode')} arms: [ (case_arm pat_list: [{<oldlib>}] action: [ (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: [ (C {<func_warning>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-dlopen\' is ignored for archives'> ) } ) ] spids: [33442 33467] ) ] ) (command.Case to_match: {(DQ <' '> ($ Id.VSub_DollarName '$deplibs'))} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\ '> ) <-l> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\ '> ) <-L> <Id.Lit_Star '*'> } ] action: [ (C {<func_warning>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-l\' and '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-L\' are ignored for archives'> ) } ) ] spids: [33492 33503 33515 -1] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$rpath'))}) (C {<func_warning>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-rpath\' is ignored for archives'> ) } ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$xrpath'))}) (C {<func_warning>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-R\' is ignored for archives'> ) } ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$vinfo'))}) (C {<func_warning>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-version-info/-version-number\' is ignored for archives'> ) } ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$release'))}) (C {<func_warning>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-release\' is ignored for archives'> ) } ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$export_symbols') ($ Id.VSub_DollarName '$export_symbols_regex') ) } ) (C {<func_warning>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-export-symbols\' is ignored for archives'> ) } ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:build_libtool_libs) op: assign_op.Equal rhs: {<no>} spids: [33632] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:oldlibs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$output'))} spids: [33636] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:objs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$objs') ($ Id.VSub_DollarName '$old_deplibs')) } spids: [33642] ) ] ) ] spids: [33438 33439 33649 -1] ) (case_arm pat_list: [{<lib>}] action: [ (command.Case to_match: {($ Id.VSub_DollarName '$outputname')} arms: [ (case_arm pat_list: [{<lib> <Id.Lit_Star '*'>}] action: [ (C {<func_stripname>} {(SQ <lib>)} {(SQ <.la>)} {(DQ ($ Id.VSub_DollarName '$outputname'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:name) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [33688] ) ] ) (C {<eval>} {<Id.Lit_VarLike 'shared_ext='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$shrext_cmds') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) (C {<eval>} {<Id.Lit_VarLike 'libname='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$libname_spec') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) ] spids: [33668 33670 33708 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$module'))} {<Id.Lit_Equals '='>} {<no>} ) (C {<func_fatal_help>} { (DQ <'libtool library '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$output') <'\' must begin with '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'lib\''> ) } ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$need_lib_prefix'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<no>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_stripname>} {(SQ )} {(SQ <.la>)} {(DQ ($ Id.VSub_DollarName '$outputname'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:name) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [33777] ) ] ) (C {<eval>} {<Id.Lit_VarLike 'shared_ext='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$shrext_cmds') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) (C {<eval>} {<Id.Lit_VarLike 'libname='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$libname_spec') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) ] spids: [33742 33756] ) ] else_action: [ (C {<func_stripname>} {(SQ )} {(SQ <.la>)} {(DQ ($ Id.VSub_DollarName '$outputname'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libname) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [33814] ) ] ) ] ) ] spids: [33711 33712 33821 -1] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$objs'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$deplibs_check_method'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<pass_all>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_fatal_error>} { (DQ <'cannot build libtool library '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$output') <'\' from non-libtool objects on this host:'> ($ Id.VSub_DollarName '$objs') ) } ) ] spids: [33842 33856] ) ] else_action: [ (C {($ Id.VSub_DollarName '$ECHO')}) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'*** Warning: Linking the shared library '> ($ Id.VSub_DollarName '$output') <' against the non-libtool'> ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'*** objects '> ($ Id.VSub_DollarName '$objs') <' is not portable!'> ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobjs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$libobjs') <' '> ($ Id.VSub_DollarName '$objs') ) } spids: [33894] ) ] ) ] ) ] spids: [33828 33839] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$dlself'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<no>} ) (C {<func_warning>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-dlopen self\' is ignored for libtool libraries'> ) } ) ] ) (C {<set>} {<dummy>} {($ Id.VSub_DollarName '$rpath')}) (C {<shift>}) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_Pound '$#'))} {<-gt>} {<1>}) (C {<func_warning>} { (DQ <'ignoring multiple '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'-rpath\'s for a libtool library'> ) } ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:install_libdir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [33967] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:oldlibs) op: assign_op.Equal rhs: (word.Empty) spids: [33974] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$rpath'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (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:oldlibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$libname') <.> ($ Id.VSub_DollarName '$libext') <' '> ($ Id.VSub_DollarName '$oldlibs') ) } spids: [34023] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:build_libtool_libs) op: assign_op.Equal rhs: {<convenience>} spids: [34035] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:build_old_libs) op: assign_op.Equal rhs: {<yes>} spids: [34039] ) ] ) ] spids: [33991 34004] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$vinfo'))}) (C {<func_warning>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) < '-version-info/-version-number\' is ignored for convenience libraries' > ) } ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$release'))}) (C {<func_warning>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-release\' is ignored for convenience libraries'> ) } ) ] ) ] spids: [33977 33988] ) ] else_action: [ (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: [34096] ) ] ) terminator: <Id.Op_Semi _> ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(SQ <':'>)} spids: [34102] ) ] ) (C {<set>} {<dummy>} {($ Id.VSub_DollarName '$vinfo')} {<0>} {<0>} {<0>}) (C {<shift>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$save_ifs'))} spids: [34124] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_Number '$7'))}) (C {<func_fatal_help>} { (DQ <'too many parameters to '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'-version-info\''> ) } ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$vinfo_number')} arms: [ (case_arm pat_list: [{<yes>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:number_major) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [34177] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:number_minor) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$2'))} spids: [34183] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:number_revision) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$3'))} spids: [34189] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$version_type')} arms: [ (case_arm pat_list: [{<darwin>} {<linux>} {<osf>} {<windows>} {<none>}] action: [ (C {<func_arith>} {($ Id.VSub_DollarName '$number_major')} {<Id.Lit_Other '+'>} {($ Id.VSub_DollarName '$number_minor')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:current) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_arith_result')} spids: [34251] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:age) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$number_minor'))} spids: [34255] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:revision) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$number_revision'))} spids: [34261] ) ] ) ] spids: [34230 34239 34267 -1] ) (case_arm pat_list: [{<freebsd-aout>} {<freebsd-elf>} {<sunos>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:current) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$number_major'))} spids: [34278] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:revision) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$number_minor'))} spids: [34284] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:age) op: assign_op.Equal rhs: {(DQ <0>)} spids: [34290] ) ] ) ] spids: [34270 34275 34296 -1] ) (case_arm pat_list: [{<irix>} {<nonstopux>}] action: [ (C {<func_arith>} {($ Id.VSub_DollarName '$number_major')} {<Id.Lit_Other '+'>} {($ Id.VSub_DollarName '$number_minor')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:current) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_arith_result')} spids: [34314] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:age) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$number_minor'))} spids: [34318] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:revision) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$number_minor'))} spids: [34324] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lt_irix_increment) op: assign_op.Equal rhs: {<no>} spids: [34330] ) ] ) ] spids: [34299 34302 34334 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<func_fatal_configuration>} { (DQ ($ Id.VSub_DollarName '$modename') <': unknown library version type '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$version_type') <'\''> ) } ) ] spids: [34337 34338 34352 -1] ) ] ) ] spids: [34173 34174 34358 -1] ) (case_arm pat_list: [{<no>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:current) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [34365] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:revision) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$2'))} spids: [34371] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:age) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$3'))} spids: [34377] ) ] ) ] spids: [34361 34362 34383 -1] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$current')} arms: [ (case_arm pat_list: [ {<0>} {<Id.Lit_LBracket '['> <1-9> <Id.Lit_RBracket ']'>} {<Id.Lit_LBracket '['> <1-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> } {<Id.Lit_LBracket '['> <1-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> } {<Id.Lit_LBracket '['> <1-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> } {<Id.Lit_LBracket '['> <1-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> } ] spids: [34401 34452 34454 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<func_error>} { (DQ <'CURRENT '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$current') <'\' must be a nonnegative integer'> ) } ) (C {<func_fatal_error>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$vinfo') <'\' is not valid version information'> ) } ) ] spids: [34457 34458 34480 -1] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$revision')} arms: [ (case_arm pat_list: [ {<0>} {<Id.Lit_LBracket '['> <1-9> <Id.Lit_RBracket ']'>} {<Id.Lit_LBracket '['> <1-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> } {<Id.Lit_LBracket '['> <1-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> } {<Id.Lit_LBracket '['> <1-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> } {<Id.Lit_LBracket '['> <1-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> } ] spids: [34494 34545 34547 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<func_error>} { (DQ <'REVISION '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$revision') <'\' must be a nonnegative integer'> ) } ) (C {<func_fatal_error>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$vinfo') <'\' is not valid version information'> ) } ) ] spids: [34550 34551 34573 -1] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$age')} arms: [ (case_arm pat_list: [ {<0>} {<Id.Lit_LBracket '['> <1-9> <Id.Lit_RBracket ']'>} {<Id.Lit_LBracket '['> <1-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> } {<Id.Lit_LBracket '['> <1-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> } {<Id.Lit_LBracket '['> <1-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> } {<Id.Lit_LBracket '['> <1-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> <Id.Lit_LBracket '['> <0-9> <Id.Lit_RBracket ']'> } ] spids: [34587 34638 34640 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<func_error>} { (DQ <'AGE '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$age') <'\' must be a nonnegative integer'> ) } ) (C {<func_fatal_error>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$vinfo') <'\' is not valid version information'> ) } ) ] spids: [34643 34644 34666 -1] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$age'))} {<-gt>} {(DQ ($ Id.VSub_DollarName '$current'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_error>} { (DQ <'AGE '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$age') <'\' is greater than the current interface number '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$current') <'\''> ) } ) (C {<func_fatal_error>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$vinfo') <'\' is not valid version information'> ) } ) ] spids: [34673 34688] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:major) op: assign_op.Equal rhs: (word.Empty) spids: [34721] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:versuffix) op: assign_op.Equal rhs: (word.Empty) spids: [34724] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:verstring) op: assign_op.Equal rhs: (word.Empty) spids: [34727] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$version_type')} arms: [ (case_arm pat_list: [{<none>}] spids: [34737 34738 34740 -1] ) (case_arm pat_list: [{<darwin>}] action: [ (C {<func_arith>} {($ Id.VSub_DollarName '$current')} {<->} {($ Id.VSub_DollarName '$age')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:major) op: assign_op.Equal rhs: {<.> ($ Id.VSub_DollarName '$func_arith_result')} spids: [34765] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:versuffix) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$major') <.> ($ Id.VSub_DollarName '$age') <.> ($ Id.VSub_DollarName '$revision') ) } spids: [34770] ) ] ) (C {<func_arith>} {($ Id.VSub_DollarName '$current')} {<Id.Lit_Other '+'>} {<1>} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:minor_current) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_arith_result')} spids: [34793] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:xlcverstring) op: assign_op.Equal rhs: { (DQ (${ Id.VSub_Name wl) <'-compatibility_version '> (${ Id.VSub_Name wl) ($ Id.VSub_DollarName '$minor_current') <' '> (${ Id.VSub_Name wl) <'-current_version '> (${ Id.VSub_Name wl) ($ Id.VSub_DollarName '$minor_current') <.> ($ Id.VSub_DollarName '$revision') ) } spids: [34797] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:verstring) op: assign_op.Equal rhs: { (DQ <'-compatibility_version '> ($ Id.VSub_DollarName '$minor_current') <' -current_version '> ($ Id.VSub_DollarName '$minor_current') <.> ($ Id.VSub_DollarName '$revision') ) } spids: [34821] ) ] ) ] spids: [34744 34745 34832 -1] ) (case_arm pat_list: [{<freebsd-aout>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:major) op: assign_op.Equal rhs: {(DQ <.> ($ Id.VSub_DollarName '$current'))} spids: [34840] ) ] ) (command.Sentence child: (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:versuffix) op: assign_op.Equal rhs: { (DQ <.> ($ Id.VSub_DollarName '$current') <.> ($ Id.VSub_DollarName '$revision') ) } spids: [34847] ) ] ) terminator: <Id.Op_Semi _> ) ] spids: [34836 34837 34857 -1] ) (case_arm pat_list: [{<freebsd-elf>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:major) op: assign_op.Equal rhs: {(DQ <.> ($ Id.VSub_DollarName '$current'))} spids: [34865] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:versuffix) op: assign_op.Equal rhs: {(DQ <.> ($ Id.VSub_DollarName '$current'))} spids: [34872] ) ] ) ] spids: [34861 34862 34879 -1] ) (case_arm pat_list: [{<irix>} {<nonstopux>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ <X> ($ Id.VSub_DollarName '$lt_irix_increment') ) } {<Id.Lit_Equals '='>} {(DQ <Xno>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_arith>} {($ Id.VSub_DollarName '$current')} {<->} {($ Id.VSub_DollarName '$age')} ) ] spids: [34891 34907] ) ] else_action: [ (C {<func_arith>} {($ Id.VSub_DollarName '$current')} {<->} {($ Id.VSub_DollarName '$age')} {<Id.Lit_Other '+'>} {<1>} ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:major) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_arith_result')} spids: [34938] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$version_type')} arms: [ (case_arm pat_list: [{<nonstopux>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:verstring_prefix) op: assign_op.Equal rhs: {<nonstopux>} spids: [34953] ) ] ) ] spids: [34950 34951 34956 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:verstring_prefix) op: assign_op.Equal rhs: {<sgi>} spids: [34962] ) ] ) ] spids: [34959 34960 34965 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:verstring) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$verstring_prefix') ($ Id.VSub_DollarName '$major') <.> ($ Id.VSub_DollarName '$revision') ) } spids: [34971] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:loop) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$revision')} spids: [34985] ) ] ) (command.WhileUntil keyword: <Id.KW_While while> cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$loop'))} {<-ne>} {<0>} ) terminator: <Id.Op_Semi _> ) ] ) body: (command.DoGroup children: [ (C {<func_arith>} {($ Id.VSub_DollarName '$revision')} {<->} {($ Id.VSub_DollarName '$loop')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:iface) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_arith_result')} spids: [35014] ) ] ) (C {<func_arith>} {($ Id.VSub_DollarName '$loop')} {<->} {<1>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:loop) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_arith_result')} spids: [35027] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:verstring) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$verstring_prefix') ($ Id.VSub_DollarName '$major') <.> ($ Id.VSub_DollarName '$iface') <':'> ($ Id.VSub_DollarName '$verstring') ) } spids: [35031] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:major) op: assign_op.Equal rhs: {<.> ($ Id.VSub_DollarName '$major')} spids: [35050] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:versuffix) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$major') <.> ($ Id.VSub_DollarName '$revision') ) } spids: [35055] ) ] ) ] spids: [34883 34888 35063 -1] ) (case_arm pat_list: [{<linux>}] action: [ (C {<func_arith>} {($ Id.VSub_DollarName '$current')} {<->} {($ Id.VSub_DollarName '$age')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:major) op: assign_op.Equal rhs: {<.> ($ Id.VSub_DollarName '$func_arith_result')} spids: [35080] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:versuffix) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$major') <.> ($ Id.VSub_DollarName '$age') <.> ($ Id.VSub_DollarName '$revision') ) } spids: [35085] ) ] ) ] spids: [35067 35068 35095 -1] ) (case_arm pat_list: [{<osf>}] action: [ (C {<func_arith>} {($ Id.VSub_DollarName '$current')} {<->} {($ Id.VSub_DollarName '$age')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:major) op: assign_op.Equal rhs: {<.> ($ Id.VSub_DollarName '$func_arith_result')} spids: [35112] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:versuffix) op: assign_op.Equal rhs: { (DQ <.> ($ Id.VSub_DollarName '$current') <.> ($ Id.VSub_DollarName '$age') <.> ($ Id.VSub_DollarName '$revision') ) } spids: [35117] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:verstring) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$current') <.> ($ Id.VSub_DollarName '$age') <.> ($ Id.VSub_DollarName '$revision') ) } spids: [35128] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:loop) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$age')} spids: [35143] ) ] ) (command.WhileUntil keyword: <Id.KW_While while> cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$loop'))} {<-ne>} {<0>} ) terminator: <Id.Op_Semi _> ) ] ) body: (command.DoGroup children: [ (C {<func_arith>} {($ Id.VSub_DollarName '$current')} {<->} {($ Id.VSub_DollarName '$loop')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:iface) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_arith_result')} spids: [35172] ) ] ) (C {<func_arith>} {($ Id.VSub_DollarName '$loop')} {<->} {<1>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:loop) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_arith_result')} spids: [35185] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:verstring) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$verstring') <':'> (${ Id.VSub_Name iface) <.0> ) } spids: [35189] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:verstring) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$verstring') <':'> (${ Id.VSub_Name current) <.0> ) } spids: [35208] ) ] ) ] spids: [35099 35100 35219 -1] ) (case_arm pat_list: [{<qnx>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:major) op: assign_op.Equal rhs: {(DQ <.> ($ Id.VSub_DollarName '$current'))} spids: [35227] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:versuffix) op: assign_op.Equal rhs: {(DQ <.> ($ Id.VSub_DollarName '$current'))} spids: [35234] ) ] ) ] spids: [35223 35224 35241 -1] ) (case_arm pat_list: [{<sunos>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:major) op: assign_op.Equal rhs: {(DQ <.> ($ Id.VSub_DollarName '$current'))} spids: [35249] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:versuffix) op: assign_op.Equal rhs: { (DQ <.> ($ Id.VSub_DollarName '$current') <.> ($ Id.VSub_DollarName '$revision') ) } spids: [35256] ) ] ) ] spids: [35245 35246 35265 -1] ) (case_arm pat_list: [{<windows>}] action: [ (C {<func_arith>} {($ Id.VSub_DollarName '$current')} {<->} {($ Id.VSub_DollarName '$age')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:major) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_arith_result')} spids: [35290] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:versuffix) op: assign_op.Equal rhs: {(DQ <-> ($ Id.VSub_DollarName '$major'))} spids: [35294] ) ] ) ] spids: [35269 35270 35301 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {<func_fatal_configuration>} { (DQ <'unknown library version type '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$version_type') <'\''> ) } ) ] spids: [35305 35306 35319 -1] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$vinfo'))}) (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$release'))}) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:major) op: assign_op.Equal rhs: (word.Empty) spids: [35354] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$version_type')} arms: [ (case_arm pat_list: [{<darwin>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:verstring) op: assign_op.Equal rhs: (word.Empty) spids: [35376] ) ] ) ] spids: [35364 35365 35379 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:verstring) op: assign_op.Equal rhs: {(DQ <0.0>)} spids: [35386] ) ] ) ] spids: [35382 35383 35392 -1] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$need_version'))} {<Id.Lit_Equals '='>} {<no>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:versuffix) op: assign_op.Equal rhs: (word.Empty) spids: [35414] ) ] ) ] spids: [35398 35411] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:versuffix) op: assign_op.Equal rhs: {(DQ <.0.0>)} spids: [35420] ) ] ) ] ) ] spids: [35330 35351] ) ] ) (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 '$avoid_version'))} {<Id.Lit_Equals '='>} {<yes>} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$need_version'))} {<Id.Lit_Equals '='>} {<no>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:major) op: assign_op.Equal rhs: (word.Empty) spids: [35465] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:versuffix) op: assign_op.Equal rhs: (word.Empty) spids: [35468] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:verstring) op: assign_op.Equal rhs: {(DQ )} spids: [35471] ) ] ) ] spids: [35437 35462] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$allow_undefined'))} {<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 '$allow_undefined_flag') ) } {<Id.Lit_Equals '='>} {<unsupported>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_warning>} { (DQ <'undefined symbols not allowed in '> ($ Id.VSub_DollarName '$host') <' shared libraries'> ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:build_libtool_libs) op: assign_op.Equal rhs: {<no>} spids: [35525] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:build_old_libs) op: assign_op.Equal rhs: {<yes>} spids: [35529] ) ] ) ] spids: [35500 35513] ) ] ) ] spids: [35484 35497] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:allow_undefined_flag) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$no_undefined_flag'))} spids: [35543] ) ] ) ] ) ] ) (C {<func_generate_dlsyms>} {(DQ ($ Id.VSub_DollarName '$libname'))} {(DQ ($ Id.VSub_DollarName '$libname'))} {(DQ <yes>)} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobjs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$libobjs') <' '> ($ Id.VSub_DollarName '$symfileobj') ) } spids: [35572] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$libobjs'))} {<Id.Lit_Equals '='>} {(DQ <'X '>)} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobjs) op: assign_op.Equal rhs: (word.Empty) spids: [35595] ) ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$mode'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<relink>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:removelist) op: assign_op.Equal rhs: (word.Empty) spids: [35624] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tempremovelist) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_DollarName '$output_objdir') <'/*'>)} ) ) } spids: [35627] ) ] ) (command.ForEach iter_name: p iter_words: [{($ Id.VSub_DollarName '$tempremovelist')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$p')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <.> ($ Id.VSub_DollarName '$objext')} {<Id.Lit_Star '*'> <.gcno>} ] spids: [35659 35667 35670 -1] ) (case_arm pat_list: [ {($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$outputname') } {($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$libname') <.> <Id.Lit_Star '*'> } {($ Id.VSub_DollarName '$output_objdir') <'/'> (${ Id.VSub_Name libname) (${ Id.VSub_Name release) <.> <Id.Lit_Star '*'> } ] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ <X> ($ Id.VSub_DollarName '$precious_files_regex' ) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ <X>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Pipeline children: [ (C { ($ Id.VSub_DollarName '$ECHO') } {(DQ ($ Id.VSub_DollarName '$p'))} ) (command.Simple words: [ { ($ Id.VSub_DollarName '$EGREP' ) } {<-e>} { (DQ ($ Id.VSub_DollarName '$precious_files_regex' ) ) } ] 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 ) ] ) action: [ (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [35720 35745] ) ] ) ] spids: [35700 35717] ) ] ) (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 '$p') ) } spids: [35757] ) ] ) ] spids: [35673 35697 35765 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] spids: [35768 35769 35771 -1] ) ] ) ] ) ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$removelist'))}) (C {<func_show_eval>} { (DQ (${ Id.VSub_Name RM) <'r '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <removelist> ) } ) ] ) ] spids: [35599 35613] ) ] ) (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_old_libs'))} {<Id.Lit_Equals '='>} {<yes>} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$build_libtool_libs'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<convenience>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:oldlibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$oldlibs') <' '> ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$libname') <.> ($ Id.VSub_DollarName '$libext') ) } spids: [35842] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:oldobjs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$objs') <' '>) (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <X> ($ Id.VSub_DollarName '$libobjs'))} ) (C {($ Id.VSub_DollarName '$SP2NL')}) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(SQ <'/\\.'>) (${ Id.VSub_Name libext) (SQ <'$/d'>)} {<-e>} {(DQ ($ Id.VSub_DollarName '$lo2o'))} ) (C {($ Id.VSub_DollarName '$NL2SP')}) ] negated: F ) ) } spids: [35859] ) ] ) ] spids: [35812 35839] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$xrpath'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:temp_xrpath) op: assign_op.Equal rhs: (word.Empty) spids: [35955] ) ] ) (command.ForEach iter_name: libdir iter_words: [{($ Id.VSub_DollarName '$xrpath')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:temp_xrpath) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$temp_xrpath') <' -R'> ($ Id.VSub_DollarName '$libdir') ) } spids: [35970] ) ] ) (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$finalize_rpath') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$libdir') <' '>) <Id.Lit_Star '*'> } ] spids: [35988 35995 35997 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_rpath) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$finalize_rpath') <' '> ($ Id.VSub_DollarName '$libdir') ) } spids: [36003] ) ] ) ] spids: [36000 36001 36010 -1] ) ] ) ] ) ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$hardcode_into_libs'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<yes>} ) (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:dependency_libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$temp_xrpath') <' '> ($ Id.VSub_DollarName '$dependency_libs') ) } spids: [36048] ) ] ) ] spids: [36019 36045] ) ] ) ] spids: [35937 35948] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:old_dlfiles) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$dlfiles'))} spids: [36067] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlfiles) op: assign_op.Equal rhs: (word.Empty) spids: [36073] ) ] ) (command.ForEach iter_name: lib iter_words: [{($ Id.VSub_DollarName '$old_dlfiles')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: { (DQ <' '> ($ Id.VSub_DollarName '$dlprefiles') <' '> ($ Id.VSub_DollarName '$dlfiles') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$lib') <' '>) <Id.Lit_Star '*'> } ] spids: [36101 36108 36110 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dlfiles') <' '> ($ Id.VSub_DollarName '$lib') ) } spids: [36116] ) ] ) ] spids: [36113 36114 36123 -1] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:old_dlprefiles) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$dlprefiles'))} spids: [36137] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlprefiles) op: assign_op.Equal rhs: (word.Empty) spids: [36143] ) ] ) (command.ForEach iter_name: lib iter_words: [{($ Id.VSub_DollarName '$old_dlprefiles')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$dlprefiles') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$lib') <' '>) <Id.Lit_Star '*'> } ] spids: [36168 36175 36177 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlprefiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dlprefiles') <' '> ($ Id.VSub_DollarName '$lib') ) } spids: [36183] ) ] ) ] spids: [36180 36181 36190 -1] ) ] ) ] ) ) (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.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$rpath'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-cygwin> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-mingw> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-pw32> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-os2> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-beos> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-cegcc> <Id.Lit_Star '*'>} ] spids: [36237 36280 36287 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-rhapsody> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-darwin1.> <Id.Lit_LBracket '['> <012> <Id.Lit_RBracket ']'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplibs') <' System.ltframework'> ) } spids: [36312] ) ] ) ] spids: [36290 36305 36319 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-netbsd> <Id.Lit_Star '*'> } ] spids: [36322 36327 36334 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-openbsd> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-freebsd> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-dragonfly> <Id.Lit_Star '*'> } ] spids: [36337 36358 36365 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-sco3.2v5> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-sco5v6> <Id.Lit_Star '*'> } ] spids: [36368 36381 36388 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-sysv4.2uw2> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-sysv5> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-unixware> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-OpenUNIX> <Id.Lit_Star '*'> } ] spids: [36391 36420 36427 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$build_libtool_need_lc' ) ) } {<Id.Lit_Equals '='>} {(DQ <yes>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$deplibs') <' -lc'> ) } spids: [36456] ) ] ) ] spids: [36438 36453] ) ] ) ] spids: [36430 36431 36466 -1] ) ] ) ] spids: [36216 36227] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:name_save) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$name')} spids: [36480] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libname_save) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$libname')} spids: [36484] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:release_save) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$release')} spids: [36488] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:versuffix_save) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$versuffix')} spids: [36492] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:major_save) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$major')} spids: [36496] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:release) op: assign_op.Equal rhs: {(DQ )} spids: [36512] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:versuffix) op: assign_op.Equal rhs: {(DQ )} spids: [36517] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:major) op: assign_op.Equal rhs: {(DQ )} spids: [36522] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdeplibs) op: assign_op.Equal rhs: (word.Empty) spids: [36527] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:droppeddeps) op: assign_op.Equal rhs: {<no>} spids: [36530] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$deplibs_check_method')} arms: [ (case_arm pat_list: [{<pass_all>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdeplibs) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$deplibs')} spids: [36565] ) ] ) ] spids: [36541 36542 36569 -1] ) (case_arm pat_list: [{<test_compile>}] action: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {($ Id.VSub_DollarName '$RM')} {<conftest.c>}) ] ) (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<conftest.c>} ) (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 36612 stdin_parts: [<'\t int main() { return 0; }\n'>] ) ) ] do_fork: T ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {($ Id.VSub_DollarName '$RM')} {<conftest>}) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {($ Id.VSub_DollarName '$LTCC')} {($ Id.VSub_DollarName '$LTCFLAGS')} {<-o>} {<conftest>} {<conftest.c>} {($ Id.VSub_DollarName '$deplibs')} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:ldd_output) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<ldd>} {<conftest>}) ) } spids: [36641] ) ] ) (command.ForEach iter_name: i iter_words: [{($ Id.VSub_DollarName '$deplibs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$i')} arms: [ (case_arm pat_list: [{<-l> <Id.Lit_Star '*'>}] action: [ (C {<func_stripname>} {<-l>} {(SQ )} {(DQ ($ Id.VSub_DollarName '$i'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:name) op: assign_op.Equal rhs: { ($ Id.VSub_DollarName '$func_stripname_result' ) } spids: [36687] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ <X> ($ Id.VSub_DollarName '$allow_libtool_libs_with_static_runtimes' ) ) } {<Id.Lit_Equals '='>} {(DQ <Xyes>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: { (DQ <' '> ($ Id.VSub_DollarName '$predeps' ) <' '> ($ Id.VSub_DollarName '$postdeps') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$i' ) <' '> ) <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: newdeplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdeplibs' ) <' '> ($ Id.VSub_DollarName '$i') ) } spids: [36734] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: i ) op: assign_op.Equal rhs: {(DQ )} spids: [36742] ) ] ) ] spids: [36724 36731 36747 -1] ) ] ) ] spids: [36691 36708] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$i' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: libname ) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`' > child: (C {<eval>} { (DQ (word_part.EscapedLiteral token: < Id.Lit_EscapedChar '\\$' > ) <'ECHO '> ) ($ Id.VSub_DollarName '$libname_spec') (DQ ) } ) ) } spids: [36771] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: deplib_matches ) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`' > child: (C {<eval>} { (DQ (word_part.EscapedLiteral token: < Id.Lit_EscapedChar '\\$' > ) <'ECHO '> ) ($ Id.VSub_DollarName '$library_names_spec') (DQ ) } ) ) } spids: [36793] ) ] ) (command.Sentence child: (C {<set>} {<dummy>} { ($ Id.VSub_DollarName '$deplib_matches' ) } ) terminator: <Id.Op_Semi _> ) (C {<shift>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: deplib_match ) op: assign_op.Equal rhs: {($ Id.VSub_Number '$1')} spids: [36825] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (command_sub left_token: < Id.Left_Backtick '`' > child: (C { < expr > } {(DQ ($ Id.VSub_DollarName '$ldd_output'))} {<Id.Lit_Colon ':'>} { (DQ < '.*' > ($ Id.VSub_DollarName '$deplib_match') ) } ) ) } {<-ne>} {<0>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: newdeplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdeplibs' ) <' '> ($ Id.VSub_DollarName '$i') ) } spids: [36859] ) ] ) ] spids: [36829 36856] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: droppeddeps ) op: assign_op.Equal rhs: {<yes>} spids: [36870] ) ] ) (C { ($ Id.VSub_DollarName '$ECHO' ) } ) (C { ($ Id.VSub_DollarName '$ECHO' ) } {(DQ <'*** Warning: dynamic linker does not accept needed library '> ($ Id.VSub_DollarName '$i') <.>)} ) (C { ($ Id.VSub_DollarName '$ECHO' ) } {(DQ <'*** I have the capability to make that library automatically link in when'>)} ) (C { ($ Id.VSub_DollarName '$ECHO' ) } {(DQ <'*** you link to this library. But I can only do this if you have a'>)} ) (C { ($ Id.VSub_DollarName '$ECHO' ) } {(DQ <'*** shared version of the library, which I believe you do not have'>)} ) (C { ($ Id.VSub_DollarName '$ECHO' ) } {(DQ <'*** because a test_compile did reveal that the linker did not use it for'>)} ) (C { ($ Id.VSub_DollarName '$ECHO' ) } {(DQ <'*** its dynamic dependency list that programs get resolved with at runtime.'>)} ) ] ) ] spids: [36756 36768] ) ] ) ] spids: [36670 36672 36927 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: newdeplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdeplibs' ) <' '> ($ Id.VSub_DollarName '$i') ) } spids: [36934] ) ] ) ] spids: [36930 36931 36942 -1] ) ] ) ] ) ) ] spids: [36623 36638] ) ] else_action: [ (command.ForEach iter_name: i iter_words: [{($ Id.VSub_DollarName '$deplibs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$i')} arms: [ (case_arm pat_list: [{<-l> <Id.Lit_Star '*'>}] action: [ (C {<func_stripname>} {<-l>} {(SQ )} {(DQ ($ Id.VSub_DollarName '$i'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:name) op: assign_op.Equal rhs: { ($ Id.VSub_DollarName '$func_stripname_result' ) } spids: [36998] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {($ Id.VSub_DollarName '$RM')} {<conftest>} ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C { ($ Id.VSub_DollarName '$LTCC' ) } {($ Id.VSub_DollarName '$LTCFLAGS')} {<-o>} {<conftest>} {<conftest.c>} {($ Id.VSub_DollarName '$i')} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: ldd_output ) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<ldd>} {<conftest>}) ) } spids: [37029] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ <X> ($ Id.VSub_DollarName '$allow_libtool_libs_with_static_runtimes' ) ) } {<Id.Lit_Equals '='>} {(DQ <Xyes>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: { (DQ <' '> ($ Id.VSub_DollarName '$predeps' ) <' '> ($ Id.VSub_DollarName '$postdeps') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$i' ) <' '> ) <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: newdeplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdeplibs' ) <' '> ($ Id.VSub_DollarName '$i') ) } spids: [37082] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: i ) op: assign_op.Equal rhs: {(DQ )} spids: [37090] ) ] ) ] spids: [ 37072 37079 37095 -1 ] ) ] ) ] spids: [37039 37056] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$i' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: libname ) op: assign_op.Equal rhs: { (command_sub left_token: < Id.Left_Backtick '`' > child: (C {<eval>} { (DQ (word_part.EscapedLiteral token: < Id.Lit_EscapedChar '\\$' > ) <'ECHO '> ) ($ Id.VSub_DollarName '$libname_spec') (DQ ) } ) ) } spids: [37119] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: deplib_matches ) op: assign_op.Equal rhs: { (command_sub left_token: < Id.Left_Backtick '`' > child: (C {<eval>} { (DQ (word_part.EscapedLiteral token: < Id.Lit_EscapedChar '\\$' > ) <'ECHO '> ) ($ Id.VSub_DollarName '$library_names_spec') (DQ ) } ) ) } spids: [37141] ) ] ) (command.Sentence child: (C {<set>} {<dummy>} { ($ Id.VSub_DollarName '$deplib_matches' ) } ) terminator: <Id.Op_Semi _> ) (C {<shift>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: deplib_match ) op: assign_op.Equal rhs: { ($ Id.VSub_Number '$1' ) } spids: [37173] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (command_sub left_token: < Id.Left_Backtick '`' > child: (C { < expr > } {(DQ ($ Id.VSub_DollarName '$ldd_output'))} {<Id.Lit_Colon ':'>} { (DQ < '.*' > ($ Id.VSub_DollarName '$deplib_match') ) } ) ) } {<-ne>} {<0>} ) terminator: <Id.Op_Semi _ > ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: newdeplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdeplibs' ) <' '> ($ Id.VSub_DollarName '$i') ) } spids: [37207] ) ] ) ] spids: [37177 37204] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: droppeddeps ) op: assign_op.Equal rhs: {<yes>} spids: [37218] ) ] ) (C { ($ Id.VSub_DollarName '$ECHO' ) } ) (C { ($ Id.VSub_DollarName '$ECHO' ) } {(DQ <'*** Warning: dynamic linker does not accept needed library '> ($ Id.VSub_DollarName '$i') <.>)} ) (C { ($ Id.VSub_DollarName '$ECHO' ) } {(DQ <'*** I have the capability to make that library automatically link in when'>)} ) (C { ($ Id.VSub_DollarName '$ECHO' ) } {(DQ <'*** you link to this library. But I can only do this if you have a'>)} ) (C { ($ Id.VSub_DollarName '$ECHO' ) } {(DQ <'*** shared version of the library, which you do not appear to have'>)} ) (C { ($ Id.VSub_DollarName '$ECHO' ) } {(DQ <'*** because a test_compile did reveal that the linker did not use this one'>)} ) (C { ($ Id.VSub_DollarName '$ECHO' ) } {(DQ <'*** as a dynamic dependency that programs can get resolved with at runtime.'>)} ) ] ) ] spids: [37104 37116] ) ] ) ] spids: [37011 37026] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: droppeddeps ) op: assign_op.Equal rhs: {<yes>} spids: [37278] ) ] ) (C {($ Id.VSub_DollarName '$ECHO')}) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'*** Warning! Library '> ($ Id.VSub_DollarName '$i') <' is needed by this library but I was not able to'> ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** make it link in! You will probably need to install it or some' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** library that it depends on before this library will be fully' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** functional. Installing it before continuing would be even better.' > ) } ) ] ) ] spids: [36981 36983 37318 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdeplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdeplibs' ) <' '> ($ Id.VSub_DollarName '$i') ) } spids: [37325] ) ] ) ] spids: [37321 37322 37333 -1] ) ] ) ] ) ) ] ) ] spids: [36572 36573 37345 -1] ) (case_arm pat_list: [{<file_magic> <Id.Lit_Star '*'>}] action: [ (command.Sentence child: (C {<set>} {<dummy>} {($ Id.VSub_DollarName '$deplibs_check_method')} ) terminator: <Id.Op_Semi _> ) (C {<shift>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:file_magic_regex) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<expr>} { (DQ ($ Id.VSub_DollarName '$deplibs_check_method') ) } {<Id.Lit_Colon ':'>} { (DQ ($ Id.VSub_Number '$1') <' '> <Id.Lit_BadBackslash '\\'> <'(.*'> <Id.Lit_BadBackslash '\\'> <')'> ) } ) ) } spids: [37363] ) ] ) (command.ForEach iter_name: a_deplib iter_words: [{($ Id.VSub_DollarName '$deplibs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$a_deplib')} arms: [ (case_arm pat_list: [{<-l> <Id.Lit_Star '*'>}] action: [ (C {<func_stripname>} {<-l>} {(SQ )} {(DQ ($ Id.VSub_DollarName '$a_deplib'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:name) op: assign_op.Equal rhs: { ($ Id.VSub_DollarName '$func_stripname_result' ) } spids: [37426] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ <X> ($ Id.VSub_DollarName '$allow_libtool_libs_with_static_runtimes' ) ) } {<Id.Lit_Equals '='>} {(DQ <Xyes>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: { (DQ <' '> ($ Id.VSub_DollarName '$predeps') <' '> ($ Id.VSub_DollarName '$postdeps') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$a_deplib' ) <' '> ) <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: newdeplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdeplibs' ) <' '> ($ Id.VSub_DollarName '$a_deplib') ) } spids: [37473] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: a_deplib ) op: assign_op.Equal rhs: {(DQ )} spids: [37481] ) ] ) ] spids: [37463 37470 37486 -1] ) ] ) ] spids: [37430 37447] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$a_deplib' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: libname ) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<eval>} { (DQ (word_part.EscapedLiteral token: < Id.Lit_EscapedChar '\\$' > ) <'ECHO '> ) ($ Id.VSub_DollarName '$libname_spec') (DQ ) } ) ) } spids: [37510] ) ] ) (command.ForEach iter_name: i iter_words: [ { ($ Id.VSub_DollarName '$lib_search_path' ) } { ($ Id.VSub_DollarName '$sys_lib_search_path' ) } { ($ Id.VSub_DollarName '$shlib_search_path' ) } ] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: potential_libs ) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`' > child: (command.Simple words: [ {<ls>} { ($ Id.VSub_DollarName '$i' ) <'/'> ($ Id.VSub_DollarName '$libname') <Id.Lit_LBracket '['> <.-> <Id.Lit_RBracket ']'> <Id.Lit_Star '*'> } ] redirects: [ (redir op: < Id.Redir_Great '2>' > loc: (redir_loc.Fd fd: 2 ) arg: { < '/dev/null' > } ) ] do_fork: T ) ) } spids: [37548] ) ] ) (command.ForEach iter_name: potent_lib iter_words: [ { ($ Id.VSub_DollarName '$potential_libs' ) } ] do_arg_iter: F body: (command.DoGroup children: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Pipeline children: [ (command.Simple words: [ { < ls > } { < -lLd > } { (DQ ($ Id.VSub_DollarName '$potent_lib' ) ) } ] 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 < ' -> ' > ) } ] 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.ControlFlow token: < Id.ControlFlow_Continue continue > ) ] spids: [37583 37609] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: potlib ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$potent_lib' ) ) } spids: [37638] ) ] ) (command.WhileUntil keyword: <Id.KW_While while> cond: (condition.Shell commands: [ (command.Sentence child: (command.Simple words: [ {<test>} {<-h>} { (DQ ($ Id.VSub_DollarName '$potlib' ) ) } ] 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: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: potliblink ) op: assign_op.Equal rhs: { (command_sub left_token: < Id.Left_Backtick '`' > child: (command.Pipeline children: [ (C { < ls > } {<-ld>} {($ Id.VSub_DollarName '$potlib')} ) (C { (${ Id.VSub_Name SED ) } {(SQ <'s/.* -> //'>)} ) ] negated: F ) ) } spids: [ 37661 ] ) ] ) (command.Case to_match: { ($ Id.VSub_DollarName '$potliblink' ) } 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: potlib ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$potliblink' ) ) } spids: [ 37709 ] ) ] ) ] spids: [ 37690 37707 37713 -1 ] ) (case_arm pat_list: [ { < Id.Lit_Star '*' > } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: potlib ) op: assign_op.Equal rhs: { (command_sub left_token: < Id.Left_Backtick '`' > child: (command.Pipeline children: [ (C { ($ Id.VSub_DollarName '$ECHO' ) } {(DQ <X> ($ Id.VSub_DollarName '$potlib'))} ) (C { ($ Id.VSub_DollarName '$Xsed' ) } {<-e>} {(SQ <'s,[^/]*$,,'>)} ) ] negated: F ) ) (DQ ($ Id.VSub_DollarName '$potliblink')) } spids: [ 37719 ] ) ] ) ] spids: [ 37716 37717 37743 -1 ] ) ] ) ] ) ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Pipeline children: [ (command.Simple words: [ { < eval > } { ($ Id.VSub_DollarName '$file_magic_cmd' ) } { (word_part.EscapedLiteral token: < Id.Lit_EscapedChar '\\"' > ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <potlib> (word_part.EscapedLiteral token: < Id.Lit_EscapedChar '\\"' > ) } ] redirects: [ (redir op: < Id.Redir_Great '2>' > loc: (redir_loc.Fd fd: 2 ) arg: { < '/dev/null' > } ) ] do_fork: T ) (C { ($ Id.VSub_DollarName '$SED' ) } {<-e>} {<10q>} ) (command.Simple words: [ { ($ Id.VSub_DollarName '$EGREP' ) } { (DQ ($ Id.VSub_DollarName '$file_magic_regex' ) ) } ] 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: newdeplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdeplibs' ) <' '> ($ Id.VSub_DollarName '$a_deplib') ) } spids: [ 37792 ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: a_deplib ) op: assign_op.Equal rhs: {(DQ )} spids: [ 37800 ] ) ] ) (command.ControlFlow token: < Id.ControlFlow_Break break > arg_word: {<2>} ) ] spids: [37752 37789] ) ] ) ] ) ) ] ) ) ] spids: [37495 37507] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$a_deplib' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: droppeddeps ) op: assign_op.Equal rhs: {<yes>} spids: [37837] ) ] ) (C {($ Id.VSub_DollarName '$ECHO')}) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** Warning: linker path does not have real file for library ' > ($ Id.VSub_DollarName '$a_deplib') <.> ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** I have the capability to make that library automatically link in when' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** you link to this library. But I can only do this if you have a' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** shared version of the library, which you do not appear to have' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** because I did check the linker path looking for a file starting' > ) } ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$potlib' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C { ($ Id.VSub_DollarName '$ECHO') } { (DQ <'*** with '> ($ Id.VSub_DollarName '$libname' ) <' but no candidates were found. (...for file magic test)'> ) } ) ] spids: [37881 37893] ) ] else_action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'*** with '> ($ Id.VSub_DollarName '$libname' ) <' and none of the candidates passed a file format test'> ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** using a file magic. Last file checked: ' > ($ Id.VSub_DollarName '$potlib') ) } ) ] ) ] spids: [37822 37834] ) ] ) ] spids: [37409 37411 37931 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdeplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdeplibs') <' '> ($ Id.VSub_DollarName '$a_deplib') ) } spids: [37942] ) ] ) ] spids: [37934 37935 37950 -1] ) ] ) ] ) ) ] spids: [37348 37350 37962 -1] ) (case_arm pat_list: [{<match_pattern> <Id.Lit_Star '*'>}] action: [ (command.Sentence child: (C {<set>} {<dummy>} {($ Id.VSub_DollarName '$deplibs_check_method')} ) terminator: <Id.Op_Semi _> ) (C {<shift>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:match_pattern_regex) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<expr>} { (DQ ($ Id.VSub_DollarName '$deplibs_check_method') ) } {<Id.Lit_Colon ':'>} { (DQ ($ Id.VSub_Number '$1') <' '> <Id.Lit_BadBackslash '\\'> <'(.*'> <Id.Lit_BadBackslash '\\'> <')'> ) } ) ) } spids: [37980] ) ] ) (command.ForEach iter_name: a_deplib iter_words: [{($ Id.VSub_DollarName '$deplibs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$a_deplib')} arms: [ (case_arm pat_list: [{<-l> <Id.Lit_Star '*'>}] action: [ (C {<func_stripname>} {<-l>} {(SQ )} {(DQ ($ Id.VSub_DollarName '$a_deplib'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:name) op: assign_op.Equal rhs: { ($ Id.VSub_DollarName '$func_stripname_result' ) } spids: [38043] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ <X> ($ Id.VSub_DollarName '$allow_libtool_libs_with_static_runtimes' ) ) } {<Id.Lit_Equals '='>} {(DQ <Xyes>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: { (DQ <' '> ($ Id.VSub_DollarName '$predeps') <' '> ($ Id.VSub_DollarName '$postdeps') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$a_deplib' ) <' '> ) <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: newdeplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdeplibs' ) <' '> ($ Id.VSub_DollarName '$a_deplib') ) } spids: [38090] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: a_deplib ) op: assign_op.Equal rhs: {(DQ )} spids: [38098] ) ] ) ] spids: [38080 38087 38103 -1] ) ] ) ] spids: [38047 38064] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$a_deplib' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: libname ) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<eval>} { (DQ (word_part.EscapedLiteral token: < Id.Lit_EscapedChar '\\$' > ) <'ECHO '> ) ($ Id.VSub_DollarName '$libname_spec') (DQ ) } ) ) } spids: [38127] ) ] ) (command.ForEach iter_name: i iter_words: [ { ($ Id.VSub_DollarName '$lib_search_path' ) } { ($ Id.VSub_DollarName '$sys_lib_search_path' ) } { ($ Id.VSub_DollarName '$shlib_search_path' ) } ] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: potential_libs ) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`' > child: (command.Simple words: [ {<ls>} { ($ Id.VSub_DollarName '$i' ) <'/'> ($ Id.VSub_DollarName '$libname') <Id.Lit_LBracket '['> <.-> <Id.Lit_RBracket ']'> <Id.Lit_Star '*'> } ] redirects: [ (redir op: < Id.Redir_Great '2>' > loc: (redir_loc.Fd fd: 2 ) arg: { < '/dev/null' > } ) ] do_fork: T ) ) } spids: [38165] ) ] ) (command.ForEach iter_name: potent_lib iter_words: [ { ($ Id.VSub_DollarName '$potential_libs' ) } ] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: potlib ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$potent_lib' ) ) } spids: [38196] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Pipeline children: [ (command.Simple words: [ { < eval > } { (DQ (word_part.EscapedLiteral token: < Id.Lit_EscapedChar '\\$' > ) <'ECHO '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <X> ($ Id.VSub_DollarName '$potent_lib' ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ) } ] redirects: [ (redir op: < Id.Redir_Great '2>' > loc: (redir_loc.Fd fd: 2 ) arg: { < '/dev/null' > } ) ] do_fork: T ) (C { ($ Id.VSub_DollarName '$Xsed' ) } {<-e>} {<10q>} ) (command.Simple words: [ { ($ Id.VSub_DollarName '$EGREP' ) } { (DQ ($ Id.VSub_DollarName '$match_pattern_regex' ) ) } ] 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: newdeplibs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdeplibs' ) <' '> ($ Id.VSub_DollarName '$a_deplib') ) } spids: [ 38247 ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: a_deplib ) op: assign_op.Equal rhs: {(DQ )} spids: [ 38255 ] ) ] ) (command.ControlFlow token: < Id.ControlFlow_Break break > arg_word: {<2>} ) ] spids: [38205 38244] ) ] ) ] ) ) ] ) ) ] spids: [38112 38124] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$a_deplib' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: droppeddeps ) op: assign_op.Equal rhs: {<yes>} spids: [38292] ) ] ) (C {($ Id.VSub_DollarName '$ECHO')}) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** Warning: linker path does not have real file for library ' > ($ Id.VSub_DollarName '$a_deplib') <.> ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** I have the capability to make that library automatically link in when' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** you link to this library. But I can only do this if you have a' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** shared version of the library, which you do not appear to have' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** because I did check the linker path looking for a file starting' > ) } ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$potlib' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C { ($ Id.VSub_DollarName '$ECHO') } { (DQ <'*** with '> ($ Id.VSub_DollarName '$libname' ) <' but no candidates were found. (...for regex pattern test)'> ) } ) ] spids: [38336 38348] ) ] else_action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'*** with '> ($ Id.VSub_DollarName '$libname' ) <' and none of the candidates passed a file format test'> ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** using a regex pattern. Last file checked: ' > ($ Id.VSub_DollarName '$potlib') ) } ) ] ) ] spids: [38277 38289] ) ] ) ] spids: [38026 38028 38386 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdeplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdeplibs') <' '> ($ Id.VSub_DollarName '$a_deplib') ) } spids: [38397] ) ] ) ] spids: [38389 38390 38405 -1] ) ] ) ] ) ) ] spids: [37965 37967 38417 -1] ) (case_arm pat_list: [{<none>} {<unknown>} {<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdeplibs) op: assign_op.Equal rhs: {(DQ )} spids: [38432] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmp_deplibs) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'X '> ($ Id.VSub_DollarName '$deplibs')) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(SQ <'s/ -lc$//'>)} {<-e>} {(SQ <'s/ -[LR][^ ]*//g'>)} ) ] negated: F ) ) } spids: [38437] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ <X> ($ Id.VSub_DollarName '$allow_libtool_libs_with_static_runtimes' ) ) } {<Id.Lit_Equals '='>} {(DQ <Xyes>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ForEach iter_name: i iter_words: [ {($ Id.VSub_DollarName '$predeps')} {($ Id.VSub_DollarName '$postdeps')} ] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmp_deplibs) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C { ($ Id.VSub_DollarName '$ECHO' ) } {(DQ <'X '> ($ Id.VSub_DollarName '$tmp_deplibs'))} ) (C { ($ Id.VSub_DollarName '$Xsed' ) } {<-e>} {(DQ <'s,'> ($ Id.VSub_DollarName '$i') <',,'>)} ) ] negated: F ) ) } spids: [38510] ) ] ) ] ) ) ] spids: [38471 38488] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'X '> ($ Id.VSub_DollarName '$tmp_deplibs') ) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(SQ <'s/[\t ]//g'>)} ) (command.Simple words: [ {($ Id.VSub_DollarName '$GREP')} {<.>} ] 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: [ (C {($ Id.VSub_DollarName '$ECHO')}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ <X> ($ Id.VSub_DollarName '$deplibs_check_method' ) ) } {<Id.Lit_Equals '='>} {(DQ <Xnone>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** Warning: inter-library dependencies are not supported in this platform.' > ) } ) ] spids: [38577 38593] ) ] else_action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** Warning: inter-library dependencies are not known to be supported.' > ) } ) ] ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** All declared inter-library dependencies are being dropped.' > ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:droppeddeps) op: assign_op.Equal rhs: {<yes>} spids: [38623] ) ] ) ] spids: [38541 38571] ) ] ) ] spids: [38420 38429 38630 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:versuffix) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$versuffix_save')} spids: [38636] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:major) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$major_save')} spids: [38640] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:release) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$release_save')} spids: [38644] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libname) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$libname_save')} spids: [38648] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:name) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$name_save')} spids: [38652] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-rhapsody> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-darwin1.> <Id.Lit_LBracket '['> <012> <Id.Lit_RBracket ']'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdeplibs) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'X '> ($ Id.VSub_DollarName '$newdeplibs') ) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(SQ <'s/ -lc / System.ltframework /'>)} ) ] negated: F ) ) } spids: [38686] ) ] ) ] spids: [38664 38679 38709 -1] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$droppeddeps'))} {<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 '$module'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {($ Id.VSub_DollarName '$ECHO')}) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** Warning: libtool could not satisfy all declared inter-library' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'*** dependencies of module '> ($ Id.VSub_DollarName '$libname') <'. Therefore, libtool will create'> ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** a static module, that should work as long as the dlopening' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** application is linked with the -dlopen flag.' > ) } ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$global_symbol_pipe' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {($ Id.VSub_DollarName '$ECHO')}) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** However, this would only work if libtool was able to extract symbol' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'*** lists from a program, using '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'nm\' or equivalent, but libtool could'> ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** not find such a program. So, this module is probably useless.' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'*** '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) <'nm\' from GNU binutils and a full rebuild may help.'> ) } ) ] spids: [38781 38792] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$build_old_libs' ) ) } {<Id.Lit_Equals '='>} {<no>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:oldlibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$output_objdir' ) <'/'> ($ Id.VSub_DollarName '$libname') <.> ($ Id.VSub_DollarName '$libext') ) } spids: [38849] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: build_libtool_libs ) op: assign_op.Equal rhs: {<module>} spids: [38859] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:build_old_libs) op: assign_op.Equal rhs: {<yes>} spids: [38863] ) ] ) ] spids: [38833 38846] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:build_libtool_libs) op: assign_op.Equal rhs: {<no>} spids: [38870] ) ] ) ] ) ] spids: [38732 38745] ) ] else_action: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** The inter-library dependencies that have been dropped here will be' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** automatically added whenever a program is linked with this library' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <'*** or is declared to -dlopen it.'>)} ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$allow_undefined' ) ) } {<Id.Lit_Equals '='>} {<no>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {($ Id.VSub_DollarName '$ECHO')}) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** Since this library must not contain undefined symbols,' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** because either the platform does not support them or' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** it was explicitly requested with -no-undefined,' > ) } ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ < '*** libtool will only create a static version of it.' > ) } ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$build_old_libs' ) ) } {<Id.Lit_Equals '='>} {<no>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:oldlibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$output_objdir' ) <'/'> ($ Id.VSub_DollarName '$libname') <.> ($ Id.VSub_DollarName '$libext') ) } spids: [38965] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: build_libtool_libs ) op: assign_op.Equal rhs: {<module>} spids: [38975] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: build_old_libs ) op: assign_op.Equal rhs: {<yes>} spids: [38979] ) ] ) ] spids: [38949 38962] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: build_libtool_libs ) op: assign_op.Equal rhs: {<no>} spids: [38986] ) ] ) ] ) ] spids: [38902 38915] ) ] ) ] ) ] spids: [38716 38729] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$newdeplibs')} spids: [39006] ) ] ) ] spids: [36200 36213] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-darwin> <Id.Lit_Star '*'>} ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdeplibs) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <'X '> ($ Id.VSub_DollarName '$newdeplibs'))} ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} { (SQ < 's% \\([^ $]*\\).ltframework% -framework \\1%g' > ) } ) ] negated: F ) ) } spids: [39032] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:new_inherited_linker_flags) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'X '> ($ Id.VSub_DollarName '$new_inherited_linker_flags' ) ) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} { (SQ < 's% \\([^ $]*\\).ltframework% -framework \\1%g' > ) } ) ] negated: F ) ) } spids: [39061] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <'X '> ($ Id.VSub_DollarName '$deplibs'))} ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} { (SQ < 's% \\([^ $]*\\).ltframework% -framework \\1%g' > ) } ) ] negated: F ) ) } spids: [39090] ) ] ) ] spids: [39024 39029 39119 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:new_libs) op: assign_op.Equal rhs: (word.Empty) spids: [39134] ) ] ) (command.ForEach iter_name: path iter_words: [{($ Id.VSub_DollarName '$notinst_path')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {(DQ <' '> ($ Id.VSub_DollarName '$new_libs') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' -L'> ($ Id.VSub_DollarName '$path') <'/'> ($ Id.VSub_DollarName '$objdir') <' '> ) <Id.Lit_Star '*'> } ] spids: [39160 39169 39171 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.Case to_match: {(DQ <' '> ($ Id.VSub_DollarName '$deplibs') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' -L'> ($ Id.VSub_DollarName '$path') <'/'> ($ Id.VSub_DollarName '$objdir') <' '> ) <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:new_libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$new_libs') <' -L'> ($ Id.VSub_DollarName '$path') <'/'> ($ Id.VSub_DollarName '$objdir') ) } spids: [39201] ) ] ) ] spids: [39189 39198 39210 -1] ) ] ) ] spids: [39174 39175 39216 -1] ) ] ) ] ) ) (command.ForEach iter_name: deplib iter_words: [{($ Id.VSub_DollarName '$deplibs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$deplib')} arms: [ (case_arm pat_list: [{<-L> <Id.Lit_Star '*'>}] action: [ (command.Case to_match: {(DQ <' '> ($ Id.VSub_DollarName '$new_libs') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$deplib') <' '>) <Id.Lit_Star '*'> } ] spids: [39260 39267 39269 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:new_libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$new_libs') <' '> ($ Id.VSub_DollarName '$deplib') ) } spids: [39275] ) ] ) ] spids: [39272 39273 39282 -1] ) ] ) ] spids: [39244 39246 39288 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:new_libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$new_libs') <' '> ($ Id.VSub_DollarName '$deplib') ) } spids: [39294] ) ] ) ] spids: [39291 39292 39301 -1] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$new_libs'))} spids: [39310] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:library_names) op: assign_op.Equal rhs: (word.Empty) spids: [39321] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:old_library) op: assign_op.Equal rhs: (word.Empty) spids: [39324] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlname) op: assign_op.Equal rhs: (word.Empty) spids: [39327] ) ] ) (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.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$hardcode_into_libs'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:hardcode_libdirs) op: assign_op.Equal rhs: (word.Empty) spids: [39371] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dep_rpath) op: assign_op.Equal rhs: (word.Empty) spids: [39374] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rpath) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$finalize_rpath'))} spids: [39377] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$mode'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<relink>} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rpath) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$compile_rpath') ($ Id.VSub_DollarName '$rpath') ) } spids: [39396] ) ] ) ] ) (command.ForEach iter_name: libdir iter_words: [{($ Id.VSub_DollarName '$rpath')}] 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 '$hardcode_libdir_flag_spec' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$hardcode_libdir_separator' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$hardcode_libdirs' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: hardcode_libdirs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$libdir' ) ) } spids: [39457] ) ] ) ] spids: [39443 39454] ) ] else_action: [ (command.Case to_match: { ($ Id.VSub_DollarName '$hardcode_libdir_separator' ) ($ Id.VSub_DollarName '$hardcode_libdirs') ($ Id.VSub_DollarName '$hardcode_libdir_separator') } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ ($ Id.VSub_DollarName '$hardcode_libdir_separator' ) ($ Id.VSub_DollarName '$libdir') ($ Id.VSub_DollarName '$hardcode_libdir_separator') ) <Id.Lit_Star '*'> } ] spids: [39479 39486 39489 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: hardcode_libdirs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$hardcode_libdirs' ) ($ Id.VSub_DollarName '$hardcode_libdir_separator') ($ Id.VSub_DollarName '$libdir') ) } spids: [39496] ) ] ) ] spids: [39492 39493 39504 -1] ) ] ) ] ) ] spids: [39429 39440] ) ] else_action: [ (C {<eval>} {<Id.Lit_VarLike 'flag='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$hardcode_libdir_flag_spec') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dep_rpath) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dep_rpath' ) <' '> ($ Id.VSub_DollarName '$flag') ) } spids: [39524] ) ] ) ] ) ] spids: [39415 39426] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$runpath_var' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: { (DQ ($ Id.VSub_DollarName '$perm_rpath') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$libdir') <' '> ) <Id.Lit_Star '*'> } ] spids: [39559 39566 39568 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: perm_rpath ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$perm_rpath' ) <' '> ($ Id.VSub_DollarName '$libdir') ) } spids: [39574] ) ] ) ] spids: [39571 39572 39581 -1] ) ] ) ] spids: [39535 39546] ) ] ) ] ) ) (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 '$hardcode_libdir_separator' ) ) } ) (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$hardcode_libdirs' ) ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libdir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$hardcode_libdirs'))} spids: [39622] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$hardcode_libdir_flag_spec_ld' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} {<Id.Lit_VarLike 'dep_rpath='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$hardcode_libdir_flag_spec_ld') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } ) ] spids: [39628 39639] ) ] else_action: [ (C {<eval>} {<Id.Lit_VarLike 'dep_rpath='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$hardcode_libdir_flag_spec') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } ) ] ) ] spids: [39597 39619] ) ] ) (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 '$runpath_var'))} ) (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$perm_rpath'))} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rpath) op: assign_op.Equal rhs: (word.Empty) spids: [39695] ) ] ) (command.ForEach iter_name: dir iter_words: [{($ Id.VSub_DollarName '$perm_rpath')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rpath) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$rpath') ($ Id.VSub_DollarName '$dir') <':'> ) } spids: [39710] ) ] ) ] ) ) (C {<eval>} { (DQ ($ Id.VSub_DollarName '$runpath_var') <'=\''> ($ Id.VSub_DollarName '$rpath') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) ($ Id.VSub_DollarName '$runpath_var') <'\'; export '> ($ Id.VSub_DollarName '$runpath_var') ) } ) ] spids: [39667 39688] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$dep_rpath'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dep_rpath') <' '> ($ Id.VSub_DollarName '$deplibs') ) } spids: [39747] ) ] ) ] ) ] spids: [39351 39364] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:shlibpath) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$finalize_shlibpath'))} spids: [39759] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$mode'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<relink>} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:shlibpath) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$compile_shlibpath') ($ Id.VSub_DollarName '$shlibpath') ) } spids: [39778] ) ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$shlibpath'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} { (DQ ($ Id.VSub_DollarName '$shlibpath_var') <'=\''> ($ Id.VSub_DollarName '$shlibpath') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) ($ Id.VSub_DollarName '$shlibpath_var') <'\'; export '> ($ Id.VSub_DollarName '$shlibpath_var') ) } ) ] spids: [39785 39796] ) ] ) (C {<eval>} {<Id.Lit_VarLike 'shared_ext='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$shrext_cmds') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) (C {<eval>} {<Id.Lit_VarLike 'library_names='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$library_names_spec') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } ) (C {<set>} {<dummy>} {($ Id.VSub_DollarName '$library_names')}) (C {<shift>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:realname) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [39846] ) ] ) (C {<shift>}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$soname_spec'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} {<Id.Lit_VarLike 'soname='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$soname_spec') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) ] spids: [39856 39867] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:soname) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$realname'))} spids: [39881] ) ] ) ] ) (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.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlname) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$soname')} spids: [39904] ) ] ) ] spids: [39890 39901] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lib) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$realname') ) } spids: [39912] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:linknames) op: assign_op.Equal rhs: (word.Empty) spids: [39920] ) ] ) (command.ForEach iter_name: link do_arg_iter: T body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:linknames) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$linknames') <' '> ($ Id.VSub_DollarName '$link') ) } spids: [39931] ) ] ) ] ) ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$pic_flag'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobjs) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <X> ($ Id.VSub_DollarName '$libobjs'))} ) (C {($ Id.VSub_DollarName '$SP2NL')}) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(DQ ($ Id.VSub_DollarName '$lo2o'))} ) (C {($ Id.VSub_DollarName '$NL2SP')}) ] negated: F ) ) } spids: [39957] ) ] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$libobjs'))} {<Id.Lit_Equals '='>} {(DQ <'X '>)} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobjs) op: assign_op.Equal rhs: (word.Empty) spids: [40003] ) ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:delfiles) op: assign_op.Equal rhs: (word.Empty) spids: [40007] ) ] ) (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 '$export_symbols'))} ) (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$include_expsyms'))} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {<cp>} {(DQ ($ Id.VSub_DollarName '$export_symbols'))} { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$libname') <.uexp> ) } ) ] ) (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 '$libname') <.uexp> ) } spids: [40052] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:delfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$delfiles') <' '> ($ Id.VSub_DollarName '$export_symbols') ) } spids: [40061] ) ] ) ] spids: [40010 40031] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:orig_export_symbols) op: assign_op.Equal rhs: (word.Empty) spids: [40073] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$host_os')} arms: [ (case_arm pat_list: [ {<cygwin> <Id.Lit_Star '*'>} {<mingw> <Id.Lit_Star '*'>} {<cegcc> <Id.Lit_Star '*'>} ] 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 '$export_symbols') ) } ) (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$export_symbols_regex' ) ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ <x> (command_sub left_token: <Id.Left_Backtick '`'> child: (C { ($ Id.VSub_DollarName '$SED' ) } {<1q>} {($ Id.VSub_DollarName '$export_symbols')} ) ) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<xEXPORTS>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: orig_export_symbols ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$export_symbols' ) ) } spids: [40176] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:export_symbols) op: assign_op.Equal rhs: (word.Empty) spids: [40182] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: always_export_symbols ) op: assign_op.Equal rhs: {<yes>} spids: [40185] ) ] ) ] spids: [40126 40149] ) ] ) ] spids: [40098 40119] ) ] ) ] spids: [40083 40095 40195 -1] ) ] ) (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.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} { (DQ ($ Id.VSub_DollarName '$always_export_symbols' ) ) } {<Id.Lit_Equals '='>} {<yes>} ) (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$export_symbols_regex' ) ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_verbose>} { (DQ <'generating symbol list for '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$libname') <'.la\''> ) } ) (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 '$libname') <.exp> ) } spids: [40256] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {($ Id.VSub_DollarName '$RM')} {($ Id.VSub_DollarName '$export_symbols')} ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:cmds) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$export_symbols_cmds')} spids: [40274] ) ] ) (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: [40278] ) ] ) terminator: <Id.Op_Semi _> ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(SQ <'~'>)} spids: [40284] ) ] ) (command.ForEach iter_name: cmd iter_words: [{($ Id.VSub_DollarName '$cmds')}] 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: [40302] ) ] ) (C {<eval>} {<Id.Lit_VarLike 'cmd='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$cmd') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) (C {<func_len>} {(DQ <' '> ($ Id.VSub_DollarName '$cmd'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:len) op: assign_op.Equal rhs: { ($ Id.VSub_DollarName '$func_len_result' ) } spids: [40324] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} { (DQ ($ Id.VSub_DollarName '$len' ) ) } {<-lt>} {(DQ ($ Id.VSub_DollarName '$max_cmd_len'))} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$max_cmd_len' ) ) } {<-le>} {<-1>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_show_eval>} {(DQ ($ Id.VSub_DollarName '$cmd'))} {(SQ <'exit $?'>)} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: skipped_export ) op: assign_op.Equal rhs: {<false>} spids: [40369] ) ] ) ] spids: [40328 40355] ) ] else_action: [ (C {<func_verbose>} { (DQ < 'using reloadable object file for export list...' > ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: skipped_export ) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [40387] ) ] ) (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: [40408] ) ] ) (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 '$export_symbols_regex' ) ) } ) (C {<test>} { (DQ <X> ($ Id.VSub_DollarName '$skipped_export' ) ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ <'X:'>)} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_show_eval>} { (SQ < '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' > ) } ) (C {<func_show_eval>} { (SQ < '$MV "${export_symbols}T" "$export_symbols"' > ) } ) ] spids: [40414 40441] ) ] ) ] spids: [40220 40243] ) ] ) ] spids: [40206 40217] ) ] ) (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 '$export_symbols'))} ) (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$include_expsyms'))} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmp_export_symbols) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$export_symbols'))} spids: [40492] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$orig_export_symbols'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmp_export_symbols) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$orig_export_symbols'))} spids: [40508] ) ] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {<eval>} { (SQ < '$ECHO "X$include_expsyms" | $Xsed | $SP2NL >> "$tmp_export_symbols"' > ) } ) ] ) ] spids: [40468 40489] ) ] ) (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 '$skipped_export'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ <'X:'>)} ) (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$orig_export_symbols'))} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_verbose>} { (DQ <'filter symbol list for '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$libname') <'.la\' to tag DATA exports'> ) } ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (command.Simple words: [ {($ Id.VSub_DollarName '$SED')} {<-e>} { (SQ < '/[ ,]DATA/!d;s,\\(.*\\)\\([ \\,].*\\),s|^\\1$|\\1\\2|,' > ) } ] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {($ Id.VSub_DollarName '$export_symbols')} ) (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$libname') <.filter> } ) ] do_fork: T ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:delfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$delfiles') <' '> ($ Id.VSub_DollarName '$export_symbols') <' '> ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$libname') <.filter> ) } spids: [40617] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:export_symbols) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$libname') <.def> } spids: [40630] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (command.Simple words: [ {($ Id.VSub_DollarName '$SED')} {<-f>} {($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$libname') <.filter> } ] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {($ Id.VSub_DollarName '$orig_export_symbols')} ) (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {($ Id.VSub_DollarName '$export_symbols')} ) ] do_fork: T ) ] ) ] spids: [40529 40556] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmp_deplibs) op: assign_op.Equal rhs: (word.Empty) spids: [40663] ) ] ) (command.ForEach iter_name: test_deplib iter_words: [{($ Id.VSub_DollarName '$deplibs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {(DQ <' '> ($ Id.VSub_DollarName '$convenience') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$test_deplib') <' '>) <Id.Lit_Star '*'> } ] spids: [40689 40696 40698 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmp_deplibs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$tmp_deplibs') <' '> ($ Id.VSub_DollarName '$test_deplib') ) } spids: [40705] ) ] ) ] spids: [40701 40702 40713 -1] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:deplibs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$tmp_deplibs'))} spids: [40722] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$convenience'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp Id.Op_DAmp] children: [ (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$whole_archive_flag_spec' ) ) } ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$compiler_needs_object' ) ) } {<Id.Lit_Equals '='>} {<yes>} ) (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$libobjs'))} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: whole_archive_flag_spec ) op: assign_op.Equal rhs: (word.Empty) spids: [40789] ) ] ) ] spids: [40743 40778] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$whole_archive_flag_spec' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:save_libobjs) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$libobjs')} spids: [40809] ) ] ) (C {<eval>} {<Id.Lit_VarLike 'libobjs='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <libobjs> } {($ Id.VSub_DollarName '$whole_archive_flag_spec') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$libobjs'))} {<Id.Lit_Equals '='>} {(DQ <'X '>)} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobjs) op: assign_op.Equal rhs: (word.Empty) spids: [40839] ) ] ) ] ) ] spids: [40795 40806] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:gentop) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> (${ Id.VSub_Name outputname) <x> ) } spids: [40845] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:generated) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$generated') <' '> ($ Id.VSub_DollarName '$gentop') ) } spids: [40856] ) ] ) (C {<func_extract_archives>} {($ Id.VSub_DollarName '$gentop')} {($ Id.VSub_DollarName '$convenience')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobjs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$libobjs') <' '> ($ Id.VSub_DollarName '$func_extract_archives_result' ) ) } spids: [40872] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$libobjs'))} {<Id.Lit_Equals '='>} {(DQ <'X '>)} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobjs) op: assign_op.Equal rhs: (word.Empty) spids: [40895] ) ] ) ] ) ] ) ] spids: [40729 40740] ) ] ) (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 '$thread_safe'))} {<Id.Lit_Equals '='>} {<yes>} ) (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$thread_safe_flag_spec') ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} {<Id.Lit_VarLike 'flag='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$thread_safe_flag_spec') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:linker_flags) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$linker_flags') <' '> ($ Id.VSub_DollarName '$flag') ) } spids: [40939] ) ] ) ] spids: [40905 40928] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$mode'))} {<Id.Lit_Equals '='>} {<relink>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.AndOr ops: [Id.Op_DPipe Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {<eval>} { (SQ < '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' > ) } ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_QMark '$?')} ) ] ) ] spids: [40955 40968] ) ] ) (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 '$module'))} {<Id.Lit_Equals '='>} {<yes>} ) (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$module_cmds'))} ) ] ) 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 '$export_symbols') ) } ) (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$module_expsym_cmds' ) ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} {<Id.Lit_VarLike 'test_cmds='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$module_expsym_cmds') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:cmds) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$module_expsym_cmds')} spids: [41055] ) ] ) ] spids: [41023 41044] ) ] else_action: [ (C {<eval>} {<Id.Lit_VarLike 'test_cmds='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$module_cmds') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:cmds) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$module_cmds')} spids: [41070] ) ] ) ] ) ] spids: [40996 41020] ) ] else_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 '$export_symbols'))} ) (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$archive_expsym_cmds' ) ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} {<Id.Lit_VarLike 'test_cmds='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$archive_expsym_cmds') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:cmds) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$archive_expsym_cmds')} spids: [41112] ) ] ) ] spids: [41080 41101] ) ] else_action: [ (C {<eval>} {<Id.Lit_VarLike 'test_cmds='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$archive_cmds') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:cmds) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$archive_cmds')} spids: [41127] ) ] ) ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DPipe] children: [ (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$skipped_export'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ <'X:'>)} ) (C {<func_len>} {(DQ <' '> ($ Id.VSub_DollarName '$test_cmds'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:len) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_len_result')} spids: [41167] ) ] ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$len'))} {<-lt>} {(DQ ($ Id.VSub_DollarName '$max_cmd_len'))} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$max_cmd_len'))} {<-le>} {<-1>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<Id.Lit_Colon ':'>})] spids: [41138 41198] ) ] else_action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$convenience'))} ) (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$whole_archive_flag_spec' ) ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:save_libobjs) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$libobjs')} spids: [41276] ) ] ) ] spids: [41252 41273] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:save_output) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$output')} spids: [41283] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:output_la) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <X> ($ Id.VSub_DollarName '$output'))} ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(DQ ($ Id.VSub_DollarName '$basename'))} ) ] negated: F ) ) } spids: [41287] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:test_cmds) op: assign_op.Equal rhs: (word.Empty) spids: [41319] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:concat_cmds) op: assign_op.Equal rhs: (word.Empty) spids: [41322] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:objlist) op: assign_op.Equal rhs: (word.Empty) spids: [41325] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:last_robj) op: assign_op.Equal rhs: (word.Empty) spids: [41328] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:k) op: assign_op.Equal rhs: {<1>} spids: [41331] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$save_libobjs'))} ) (C {<test>} { (DQ <X> ($ Id.VSub_DollarName '$skipped_export') ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ <'X:'>)} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$with_gnu_ld'))} {<Id.Lit_Equals '='>} {<yes>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:output) op: assign_op.Equal rhs: {(${ Id.VSub_Name output_objdir) <'/'> (${ Id.VSub_Name output_la) <.lnkscript> } spids: [41378] ) ] ) (C {<func_verbose>} { (DQ <'creating GNU ld script: '> ($ Id.VSub_DollarName '$output') ) } ) (command.Simple words: [{($ Id.VSub_DollarName '$ECHO')} {(SQ <'INPUT ('>)}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {($ Id.VSub_DollarName '$output')} ) ] do_fork: T ) (command.ForEach iter_name: obj iter_words: [{($ Id.VSub_DollarName '$save_libobjs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Simple words: [ {($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_DollarName '$obj'))} ] redirects: [ (redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: {($ Id.VSub_DollarName '$output')} ) ] do_fork: T ) ] ) ) (command.Simple words: [{($ Id.VSub_DollarName '$ECHO')} {(SQ <')'>)}] redirects: [ (redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: {($ Id.VSub_DollarName '$output')} ) ] do_fork: T ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:delfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$delfiles') <' '> ($ Id.VSub_DollarName '$output') ) } spids: [41445] ) ] ) ] spids: [41336 41375] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$save_libobjs'))} ) (C {<test>} { (DQ <X> ($ Id.VSub_DollarName '$skipped_export') ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ <'X:'>)} ) (C {<test>} { (DQ <X> ($ Id.VSub_DollarName '$file_list_spec') ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<X>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:output) op: assign_op.Equal rhs: {(${ Id.VSub_Name output_objdir) <'/'> (${ Id.VSub_Name output_la) <.lnk> } spids: [41497] ) ] ) (C {<func_verbose>} { (DQ <'creating linker input file list: '> ($ Id.VSub_DollarName '$output') ) } ) (command.Simple words: [{<Id.Lit_Colon ':'>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {($ Id.VSub_DollarName '$output')} ) ] do_fork: T ) (C {<set>} {<x>} {($ Id.VSub_DollarName '$save_libobjs')}) (C {<shift>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:firstobj) op: assign_op.Equal rhs: (word.Empty) spids: [41533] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$compiler_needs_object' ) ) } {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:firstobj) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1') <' '>)} spids: [41552] ) ] ) (C {<shift>}) ] spids: [41536 41549] ) ] ) (command.ForEach iter_name: obj do_arg_iter: T body: (command.DoGroup children: [ (command.Simple words: [ {($ Id.VSub_DollarName '$ECHO')} {(DQ ($ Id.VSub_DollarName '$obj'))} ] redirects: [ (redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: {($ Id.VSub_DollarName '$output')} ) ] do_fork: T ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:delfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$delfiles') <' '> ($ Id.VSub_DollarName '$output') ) } spids: [41587] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:output) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$firstobj') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$file_list_spec') ($ Id.VSub_DollarName '$output') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } spids: [41595] ) ] ) ] spids: [41453 41494] ) ] else_action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$save_libobjs'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_verbose>} {(DQ <'creating reloadable object files...'>)} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:output) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$output_la') <-> (${ Id.VSub_Name k) <.> ($ Id.VSub_DollarName '$objext') } spids: [41627] ) ] ) (C {<eval>} {<Id.Lit_VarLike 'test_cmds='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$reload_cmds') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) (C {<func_len>} {(DQ <' '> ($ Id.VSub_DollarName '$test_cmds'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:len0) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_len_result')} spids: [41655] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:len) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$len0')} spids: [41659] ) ] ) (command.ForEach iter_name: obj iter_words: [{($ Id.VSub_DollarName '$save_libobjs')}] do_arg_iter: F body: (command.DoGroup children: [ (C {<func_len>} {(DQ <' '> ($ Id.VSub_DollarName '$obj'))} ) (C {<func_arith>} {($ Id.VSub_DollarName '$len')} {<Id.Lit_Other '+'>} {($ Id.VSub_DollarName '$func_len_result')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:len) op: assign_op.Equal rhs: { ($ Id.VSub_DollarName '$func_arith_result' ) } spids: [41697] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} { (DQ <X> ($ Id.VSub_DollarName '$objlist' ) ) } {<Id.Lit_Equals '='>} {<X>} ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$len' ) ) } {<-lt>} {(DQ ($ Id.VSub_DollarName '$max_cmd_len'))} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_append>} {<objlist>} { (DQ <' '> ($ Id.VSub_DollarName '$obj') ) } ) ] spids: [41701 41730] ) ] else_action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$k' ) ) } {<-eq>} {<1>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} {<Id.Lit_VarLike 'concat_cmds='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$reload_cmds') } {($ Id.VSub_DollarName '$objlist')} { ($ Id.VSub_DollarName '$last_robj' ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) ] spids: [41754 41768] ) ] else_action: [ (C {<eval>} {<Id.Lit_VarLike 'concat_cmds='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <concat_cmds> <Id.Lit_TildeLike '~'> ($ Id.VSub_DollarName '$reload_cmds') } {($ Id.VSub_DollarName '$objlist')} {($ Id.VSub_DollarName '$last_robj') <Id.Lit_TildeLike '~'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <RM> } {($ Id.VSub_DollarName '$last_robj') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>)} ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:last_robj) op: assign_op.Equal rhs: { ($ Id.VSub_DollarName '$output_objdir' ) <'/'> ($ Id.VSub_DollarName '$output_la') <-> (${ Id.VSub_Name k) <.> ($ Id.VSub_DollarName '$objext') } spids: [41821] ) ] ) (C {<func_arith>} {($ Id.VSub_DollarName '$k')} {<Id.Lit_Other '+'>} {<1>} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:k) op: assign_op.Equal rhs: { ($ Id.VSub_DollarName '$func_arith_result' ) } spids: [41842] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:output) op: assign_op.Equal rhs: { ($ Id.VSub_DollarName '$output_objdir' ) <'/'> ($ Id.VSub_DollarName '$output_la') <-> (${ Id.VSub_Name k) <.> ($ Id.VSub_DollarName '$objext') } spids: [41846] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:objlist) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$obj')} spids: [41858] ) ] ) (C {<func_len>} { (DQ <' '> ($ Id.VSub_DollarName '$last_robj') ) } ) (C {<func_arith>} {($ Id.VSub_DollarName '$len0')} {<Id.Lit_Other '+'>} {($ Id.VSub_DollarName '$func_len_result')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:len) op: assign_op.Equal rhs: { ($ Id.VSub_DollarName '$func_arith_result' ) } spids: [41879] ) ] ) ] ) ] ) ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$concat_cmds'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:concat_cmds) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$concat_cmds') <Id.Lit_TildeLike '~'> } spids: [41911] ) ] ) ] ) (C {<eval>} {<Id.Lit_VarLike 'concat_cmds='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <Id.Lit_LBrace '{'> <concat_cmds> <Id.Lit_RBrace '}'> ($ Id.VSub_DollarName '$reload_cmds') } {($ Id.VSub_DollarName '$objlist')} {($ Id.VSub_DollarName '$last_robj') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$last_robj') ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} {<Id.Lit_VarLike 'concat_cmds='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <Id.Lit_LBrace '{'> <concat_cmds> <Id.Lit_RBrace '}'> <Id.Lit_TildeLike '~'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <RM> } {($ Id.VSub_DollarName '$last_robj') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>)} ) ] spids: [41932 41943] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:delfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$delfiles') <' '> ($ Id.VSub_DollarName '$output') ) } spids: [41965] ) ] ) ] spids: [41606 41617] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:output) op: assign_op.Equal rhs: (word.Empty) spids: [41977] ) ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C { (braced_var_sub token: <Id.VSub_Name skipped_export> suffix_op: (suffix_op.Unary tok: <Id.VTest_Hyphen -> arg_word: {<false>} ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_verbose>} { (DQ <'generating symbol list for '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$libname') <'.la\''> ) } ) (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 '$libname') <.exp> ) } spids: [42006] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {($ Id.VSub_DollarName '$RM')} {($ Id.VSub_DollarName '$export_symbols')} ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobjs) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$output')} spids: [42024] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$concat_cmds'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:concat_cmds) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$concat_cmds') <Id.Lit_TildeLike '~'> } spids: [42042] ) ] ) ] ) (C {<eval>} {<Id.Lit_VarLike 'concat_cmds='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <concat_cmds> ($ Id.VSub_DollarName '$export_symbols_cmds') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$last_robj') ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} {<Id.Lit_VarLike 'concat_cmds='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <concat_cmds> <Id.Lit_TildeLike '~'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <RM> } {($ Id.VSub_DollarName '$last_robj') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>)} ) ] spids: [42057 42068] ) ] ) ] spids: [41984 41993] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$save_libobjs'))}) (C {<func_verbose>} { (DQ <'creating a temporary reloadable object file: '> ($ Id.VSub_DollarName '$output') ) } ) ] ) (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: [42116] ) ] ) terminator: <Id.Op_Semi _> ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(SQ <'~'>)} spids: [42122] ) ] ) (command.ForEach iter_name: cmd iter_words: [{($ Id.VSub_DollarName '$concat_cmds')}] 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: [42140] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_silent')}) (BraceGroup children: [ (C {<func_quote_for_expand>} {(DQ ($ Id.VSub_DollarName '$cmd'))} ) (C {<eval>} { (DQ <'func_echo '> ($ Id.VSub_DollarName '$func_quote_for_expand_result' ) ) } ) ] ) ] ) (command.AndOr ops: [Id.Op_DPipe Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {<eval>} {(DQ ($ Id.VSub_DollarName '$cmd'))}) (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lt_exit) op: assign_op.Equal rhs: {($ Id.VSub_QMark '$?')} spids: [42186] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ ($ Id.VSub_DollarName '$mode' ) ) } {<Id.Lit_Equals '='>} {<relink>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Subshell child: (command.AndOr ops: [Id.Op_DAmp Id.Op_DAmp] children: [ (C {<cd>} { (DQ ($ Id.VSub_DollarName '$output_objdir' ) ) } ) (C {($ Id.VSub_DollarName '$RM')} { (DQ (${ Id.VSub_Name realname) <T> ) } ) (C {($ Id.VSub_DollarName '$MV')} { (DQ (${ Id.VSub_Name realname) <U> ) } {(DQ ($ Id.VSub_DollarName '$realname'))} ) ] ) ) ] spids: [42195 42208] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$lt_exit')} ) ] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$save_ifs'))} spids: [42267] ) ] ) (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 '$export_symbols_regex' ) ) } ) (C { (braced_var_sub token: <Id.VSub_Name skipped_export> suffix_op: (suffix_op.Unary tok: <Id.VTest_Hyphen -> arg_word: {<false>} ) ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_show_eval>} { (SQ < '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' > ) } ) (C {<func_show_eval>} {(SQ <'$MV "${export_symbols}T" "$export_symbols"'>)} ) ] spids: [42274 42293] ) ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C { (braced_var_sub token: <Id.VSub_Name skipped_export> suffix_op: (suffix_op.Unary tok: <Id.VTest_Hyphen -> arg_word: {<false>} ) ) } ) 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 '$export_symbols' ) ) } ) (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$include_expsyms' ) ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tmp_export_symbols) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$export_symbols') ) } spids: [42353] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$orig_export_symbols' ) ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: tmp_export_symbols ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$orig_export_symbols' ) ) } spids: [42369] ) ] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {<eval>} { (SQ < '$ECHO "X$include_expsyms" | $Xsed | $SP2NL >> "$tmp_export_symbols"' > ) } ) ] ) ] spids: [42329 42350] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$orig_export_symbols' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_verbose>} { (DQ <'filter symbol list for '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$libname') <'.la\' to tag DATA exports'> ) } ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (command.Simple words: [ {($ Id.VSub_DollarName '$SED')} {<-e>} { (SQ < '/[ ,]DATA/!d;s,\\(.*\\)\\([ \\,].*\\),s|^\\1$|\\1\\2|,' > ) } ] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: { ($ Id.VSub_DollarName '$export_symbols') } ) (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$libname') <.filter> } ) ] do_fork: T ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:delfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$delfiles') <' '> ($ Id.VSub_DollarName '$export_symbols') <' '> ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$libname') <.filter> ) } spids: [42462] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:export_symbols) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$libname') <.def> } spids: [42475] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (command.Simple words: [ {($ Id.VSub_DollarName '$SED')} {<-f>} {($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$libname') <.filter> } ] redirects: [ (redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: { ($ Id.VSub_DollarName '$orig_export_symbols' ) } ) (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: { ($ Id.VSub_DollarName '$export_symbols') } ) ] do_fork: T ) ] ) ] spids: [42390 42401] ) ] ) ] spids: [42317 42326] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobjs) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$output')} spids: [42511] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:output) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$save_output')} spids: [42519] ) ] ) (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 '$convenience'))} ) (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$whole_archive_flag_spec' ) ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} {<Id.Lit_VarLike 'libobjs='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <libobjs> } {($ Id.VSub_DollarName '$whole_archive_flag_spec') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$libobjs'))} {<Id.Lit_Equals '='>} {(DQ <'X '>)} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobjs) op: assign_op.Equal rhs: (word.Empty) spids: [42574] ) ] ) ] ) ] spids: [42524 42545] ) ] ) (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 '$module'))} {<Id.Lit_Equals '='>} {<yes>} ) (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$module_cmds'))} ) ] ) 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 '$export_symbols' ) ) } ) (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$module_expsym_cmds' ) ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:cmds) op: assign_op.Equal rhs: { ($ Id.VSub_DollarName '$module_expsym_cmds') } spids: [42644] ) ] ) ] spids: [42620 42641] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:cmds) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$module_cmds')} spids: [42651] ) ] ) ] ) ] spids: [42593 42617] ) ] else_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 '$export_symbols') ) } ) (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$archive_expsym_cmds' ) ) } ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:cmds) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$archive_expsym_cmds')} spids: [42685] ) ] ) ] spids: [42661 42682] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:cmds) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$archive_cmds')} spids: [42692] ) ] ) ] ) ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$delfiles'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} {<Id.Lit_VarLike 'cmds='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <cmds> <Id.Lit_TildeLike '~'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <RM> } {($ Id.VSub_DollarName '$delfiles') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>)} ) ] spids: [42706 42717] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$dlprefiles'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:gentop) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> (${ Id.VSub_Name outputname) <x> ) } spids: [42760] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:generated) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$generated') <' '> ($ Id.VSub_DollarName '$gentop') ) } spids: [42771] ) ] ) (C {<func_extract_archives>} {($ Id.VSub_DollarName '$gentop')} {($ Id.VSub_DollarName '$dlprefiles')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobjs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$libobjs') <' '> ($ Id.VSub_DollarName '$func_extract_archives_result') ) } spids: [42787] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$libobjs'))} {<Id.Lit_Equals '='>} {(DQ <'X '>)} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobjs) op: assign_op.Equal rhs: (word.Empty) spids: [42810] ) ] ) ] ) ] spids: [42746 42757] ) ] ) (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: [42817] ) ] ) terminator: <Id.Op_Semi _> ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(SQ <'~'>)} spids: [42823] ) ] ) (command.ForEach iter_name: cmd iter_words: [{($ Id.VSub_DollarName '$cmds')}] 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: [42841] ) ] ) (C {<eval>} {<Id.Lit_VarLike 'cmd='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$cmd') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_silent')}) (BraceGroup children: [ (C {<func_quote_for_expand>} {(DQ ($ Id.VSub_DollarName '$cmd'))} ) (C {<eval>} { (DQ <'func_echo '> ($ Id.VSub_DollarName '$func_quote_for_expand_result' ) ) } ) ] ) ] ) (command.AndOr ops: [Id.Op_DPipe Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {<eval>} {(DQ ($ Id.VSub_DollarName '$cmd'))}) (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:lt_exit) op: assign_op.Equal rhs: {($ Id.VSub_QMark '$?')} spids: [42895] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$mode'))} {<Id.Lit_Equals '='>} {<relink>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Subshell child: (command.AndOr ops: [Id.Op_DAmp Id.Op_DAmp] children: [ (C {<cd>} { (DQ ($ Id.VSub_DollarName '$output_objdir' ) ) } ) (C {($ Id.VSub_DollarName '$RM')} {(DQ (${ Id.VSub_Name realname) <T>)} ) (C {($ Id.VSub_DollarName '$MV')} {(DQ (${ Id.VSub_Name realname) <U>)} {(DQ ($ Id.VSub_DollarName '$realname'))} ) ] ) ) ] spids: [42904 42917] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$lt_exit')} ) ] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:IFS) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$save_ifs'))} spids: [42976] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$mode'))} {<Id.Lit_Equals '='>} {<relink>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.AndOr ops: [Id.Op_DPipe Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {<eval>} { (SQ < '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' > ) } ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_QMark '$?')} ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$convenience'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$whole_archive_flag_spec' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_show_eval>} {(SQ <'${RM}r "$gentop"'>)}) ] spids: [43035 43046] ) ] ) ] spids: [43021 43032] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_SUCCESS')} ) ] spids: [42987 43000] ) ] ) (command.ForEach iter_name: linkname iter_words: [{($ Id.VSub_DollarName '$linknames')}] do_arg_iter: F body: (command.DoGroup children: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$realname'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ ($ Id.VSub_DollarName '$linkname'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_show_eval>} { (SQ < '(cd "$output_objdir" && $RM "$linkname" && $LN_S "$realname" "$linkname")' > ) } {(SQ <'exit $?'>)} ) ] spids: [43088 43104] ) ] ) ] ) ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$module'))} {<Id.Lit_Equals '='>} {<yes>} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$export_dynamic'))} {<Id.Lit_Equals '='>} {<yes>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlname) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$soname'))} spids: [43161] ) ] ) ] spids: [43129 43154] ) ] ) ] spids: [39335 39348] ) ] ) ] spids: [33653 33654 43173 -1] ) (case_arm pat_list: [{<obj>}] action: [ (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: [ (C {<func_warning>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-dlopen\' is ignored for objects'> ) } ) ] spids: [43181 43206] ) ] ) (command.Case to_match: {(DQ <' '> ($ Id.VSub_DollarName '$deplibs'))} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\ '> ) <-l> <Id.Lit_Star '*'> } {<Id.Lit_Star '*'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\ '> ) <-L> <Id.Lit_Star '*'> } ] action: [ (C {<func_warning>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-l\' and '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-L\' are ignored for objects'> ) } ) ] spids: [43231 43242 43254 -1] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$rpath'))}) (C {<func_warning>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-rpath\' is ignored for objects'> ) } ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$xrpath'))}) (C {<func_warning>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-R\' is ignored for objects'> ) } ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$vinfo'))}) (C {<func_warning>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-version-info\' is ignored for objects'> ) } ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$release'))}) (C {<func_warning>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-release\' is ignored for objects'> ) } ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$output')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <.lo>}] action: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$objs') ($ Id.VSub_DollarName '$old_deplibs') ) } ) (C {<func_fatal_error>} { (DQ <'cannot build library object '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$output') <'\' from non-libtool objects'> ) } ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobj) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$output')} spids: [43381] ) ] ) (C {<func_lo2o>} {(DQ ($ Id.VSub_DollarName '$libobj'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:obj) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_lo2o_result')} spids: [43392] ) ] ) ] spids: [43352 43354 43396 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libobj) op: assign_op.Equal rhs: (word.Empty) spids: [43403] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:obj) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$output'))} spids: [43406] ) ] ) ] spids: [43399 43400 43412 -1] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {($ Id.VSub_DollarName '$RM')} {($ Id.VSub_DollarName '$obj')} {($ Id.VSub_DollarName '$libobj')} ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:reload_conv_objs) op: assign_op.Equal rhs: (word.Empty) spids: [43451] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:gentop) op: assign_op.Equal rhs: (word.Empty) spids: [43454] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:wl) op: assign_op.Equal rhs: (word.Empty) spids: [43469] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$convenience'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$whole_archive_flag_spec'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} {<Id.Lit_VarLike 'tmp_whole_archive_flags='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$whole_archive_flag_spec') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:reload_conv_objs) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$reload_objs') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\ '> ) (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <X> ($ Id.VSub_DollarName '$tmp_whole_archive_flags' ) ) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(SQ <'s|,| |g'>)} ) ] negated: F ) ) } spids: [43509] ) ] ) ] spids: [43487 43498] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:gentop) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> (${ Id.VSub_Name obj) <x> ) } spids: [43537] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:generated) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$generated') <' '> ($ Id.VSub_DollarName '$gentop') ) } spids: [43548] ) ] ) (C {<func_extract_archives>} {($ Id.VSub_DollarName '$gentop')} {($ Id.VSub_DollarName '$convenience')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:reload_conv_objs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$reload_objs') <' '> ($ Id.VSub_DollarName '$func_extract_archives_result') ) } spids: [43564] ) ] ) ] ) ] spids: [43473 43484] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:reload_objs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$objs') ($ Id.VSub_DollarName '$old_deplibs') <' '> ) (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <X> ($ Id.VSub_DollarName '$libobjs'))} ) (C {($ Id.VSub_DollarName '$SP2NL')}) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(SQ <'/\\.'>) (${ Id.VSub_Name libext) (single_quoted left: <Id.Left_DollarSingleQuote '$\''> tokens: [<Id.Char_Literals '/d'>] multiline: F ) } {<-e>} {(SQ <'/\\.lib$/d'>)} {<-e>} {(DQ ($ Id.VSub_DollarName '$lo2o'))} ) (C {($ Id.VSub_DollarName '$NL2SP')}) ] negated: F ) ) (DQ <' '> ($ Id.VSub_DollarName '$reload_conv_objs')) } spids: [43583] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:output) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$obj'))} spids: [43649] ) ] ) (C {<func_execute_cmds>} {(DQ ($ Id.VSub_DollarName '$reload_cmds'))} {(SQ <'exit $?'>)} ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$libobj'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$gentop'))}) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<func_show_eval>} {(SQ <'${RM}r "$gentop"'>)})] spids: [43685 43696] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_SUCCESS')} ) ] spids: [43671 43682] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$build_libtool_libs'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$gentop'))}) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<func_show_eval>} {(SQ <'${RM}r "$gentop"'>)})] spids: [43736 43747] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_SUCCESS')} ) ] spids: [43719 43733] ) ] ) (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 '$pic_flag'))}) (C {<test>} {(DQ ($ Id.VSub_DollarName '$pic_mode'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<default>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:reload_objs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$libobjs') <' '> ($ Id.VSub_DollarName '$reload_conv_objs') ) } spids: [43817] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:output) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$libobj'))} spids: [43825] ) ] ) (C {<func_execute_cmds>} {(DQ ($ Id.VSub_DollarName '$reload_cmds'))} {(SQ <'exit $?'>)} ) ] spids: [43786 43810] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$gentop'))}) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<func_show_eval>} {(SQ <'${RM}r "$gentop"'>)})] spids: [43846 43857] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_SUCCESS')} ) ] spids: [43177 43178 43876 -1] ) (case_arm pat_list: [{<prog>}] action: [ (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <cygwin> <Id.Lit_Star '*'>}] action: [ (C {<func_stripname>} {(SQ )} {(SQ <.exe>)} {(DQ ($ Id.VSub_DollarName '$output'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:output) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result') <.exe>} spids: [43910] ) ] ) ] spids: [43891 43894 43913 -1] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$vinfo'))}) (C {<func_warning>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-version-info\' is ignored for programs'> ) } ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$release'))}) (C {<func_warning>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'-release\' is ignored for programs'> ) } ) ] ) (command.AndOr ops: [Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$preload'))} {<Id.Lit_Equals '='>} {<yes>} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$dlopen_support'))} {<Id.Lit_Equals '='>} {<unknown>} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$dlopen_self'))} {<Id.Lit_Equals '='>} {<unknown>} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$dlopen_self_static'))} {<Id.Lit_Equals '='>} {<unknown>} ) (C {<func_warning>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) <'LT_INIT([dlopen])\' not used. Assuming no dlopen support.'> ) } ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-rhapsody> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-darwin1.> <Id.Lit_LBracket '['> <012> <Id.Lit_RBracket ']'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_deplibs) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'X '> ($ Id.VSub_DollarName '$compile_deplibs')) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(SQ <'s/ -lc / System.ltframework /'>)} ) ] negated: F ) ) } spids: [44055] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_deplibs) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'X '> ($ Id.VSub_DollarName '$finalize_deplibs') ) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(SQ <'s/ -lc / System.ltframework /'>)} ) ] negated: F ) ) } spids: [44078] ) ] ) ] spids: [44033 44048 44101 -1] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-darwin> <Id.Lit_Star '*'>} ] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$tagname'))} {<Id.Lit_Equals '='>} {<CXX>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: { (braced_var_sub token: <Id.VSub_Name MACOSX_DEPLOYMENT_TARGET> suffix_op: (suffix_op.Unary tok: <Id.VTest_Hyphen -> arg_word: {<10.0>} ) ) } arms: [ (case_arm pat_list: [ {<10.> <Id.Lit_LBracket '['> <0123> <Id.Lit_RBracket ']'>} ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$compile_command') <' '> (${ Id.VSub_Name wl) <-bind_at_load> ) } spids: [44166] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$finalize_command') <' '> (${ Id.VSub_Name wl) <-bind_at_load> ) } spids: [44177] ) ] ) ] spids: [44159 44163 44188 -1] ) ] ) ] spids: [44131 44145] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_deplibs) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'X '> ($ Id.VSub_DollarName '$compile_deplibs')) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} { (SQ < 's% \\([^ $]*\\).ltframework% -framework \\1%g' > ) } ) ] negated: F ) ) } spids: [44201] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_deplibs) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} { (DQ <'X '> ($ Id.VSub_DollarName '$finalize_deplibs') ) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} { (SQ < 's% \\([^ $]*\\).ltframework% -framework \\1%g' > ) } ) ] negated: F ) ) } spids: [44230] ) ] ) ] spids: [44115 44120 44259 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:new_libs) op: assign_op.Equal rhs: (word.Empty) spids: [44275] ) ] ) (command.ForEach iter_name: path iter_words: [{($ Id.VSub_DollarName '$notinst_path')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {(DQ <' '> ($ Id.VSub_DollarName '$new_libs') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' -L'> ($ Id.VSub_DollarName '$path') <'/'> ($ Id.VSub_DollarName '$objdir') <' '> ) <Id.Lit_Star '*'> } ] spids: [44301 44310 44312 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.Case to_match: {(DQ <' '> ($ Id.VSub_DollarName '$compile_deplibs') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' -L'> ($ Id.VSub_DollarName '$path') <'/'> ($ Id.VSub_DollarName '$objdir') <' '> ) <Id.Lit_Star '*'> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:new_libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$new_libs') <' -L'> ($ Id.VSub_DollarName '$path') <'/'> ($ Id.VSub_DollarName '$objdir') ) } spids: [44342] ) ] ) ] spids: [44330 44339 44351 -1] ) ] ) ] spids: [44315 44316 44357 -1] ) ] ) ] ) ) (command.ForEach iter_name: deplib iter_words: [{($ Id.VSub_DollarName '$compile_deplibs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$deplib')} arms: [ (case_arm pat_list: [{<-L> <Id.Lit_Star '*'>}] action: [ (command.Case to_match: {(DQ <' '> ($ Id.VSub_DollarName '$new_libs') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$deplib') <' '>) <Id.Lit_Star '*'> } ] spids: [44401 44408 44410 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:new_libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$new_libs') <' '> ($ Id.VSub_DollarName '$deplib') ) } spids: [44416] ) ] ) ] spids: [44413 44414 44423 -1] ) ] ) ] spids: [44385 44387 44429 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:new_libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$new_libs') <' '> ($ Id.VSub_DollarName '$deplib') ) } spids: [44435] ) ] ) ] spids: [44432 44433 44442 -1] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_deplibs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$new_libs'))} spids: [44451] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$compile_command') <' '> ($ Id.VSub_DollarName '$compile_deplibs') ) } spids: [44459] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$finalize_command') <' '> ($ Id.VSub_DollarName '$finalize_deplibs') ) } spids: [44467] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$rpath') ($ Id.VSub_DollarName '$xrpath') ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ForEach iter_name: libdir iter_words: [ {($ Id.VSub_DollarName '$rpath')} {($ Id.VSub_DollarName '$xrpath')} ] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$finalize_rpath') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$libdir') <' '>) <Id.Lit_Star '*'> } ] spids: [44523 44530 44532 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_rpath) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$finalize_rpath') <' '> ($ Id.VSub_DollarName '$libdir') ) } spids: [44538] ) ] ) ] spids: [44535 44536 44545 -1] ) ] ) ] ) ) ] spids: [44476 44488] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rpath) op: assign_op.Equal rhs: (word.Empty) spids: [44562] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:hardcode_libdirs) op: assign_op.Equal rhs: (word.Empty) spids: [44565] ) ] ) (command.ForEach iter_name: libdir iter_words: [ {($ Id.VSub_DollarName '$compile_rpath')} {($ Id.VSub_DollarName '$finalize_rpath')} ] 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 '$hardcode_libdir_flag_spec') ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$hardcode_libdir_separator' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$hardcode_libdirs' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: hardcode_libdirs ) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$libdir'))} spids: [44624] ) ] ) ] spids: [44610 44621] ) ] else_action: [ (command.Case to_match: { ($ Id.VSub_DollarName '$hardcode_libdir_separator' ) ($ Id.VSub_DollarName '$hardcode_libdirs') ($ Id.VSub_DollarName '$hardcode_libdir_separator') } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ ($ Id.VSub_DollarName '$hardcode_libdir_separator' ) ($ Id.VSub_DollarName '$libdir') ($ Id.VSub_DollarName '$hardcode_libdir_separator') ) <Id.Lit_Star '*'> } ] spids: [44646 44653 44656 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: hardcode_libdirs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$hardcode_libdirs' ) ($ Id.VSub_DollarName '$hardcode_libdir_separator') ($ Id.VSub_DollarName '$libdir') ) } spids: [44663] ) ] ) ] spids: [44659 44660 44671 -1] ) ] ) ] ) ] spids: [44596 44607] ) ] else_action: [ (C {<eval>} {<Id.Lit_VarLike 'flag='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$hardcode_libdir_flag_spec') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rpath) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$rpath') <' '> ($ Id.VSub_DollarName '$flag') ) } spids: [44691] ) ] ) ] ) ] spids: [44582 44593] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$runpath_var'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$perm_rpath') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$libdir') <' '>) <Id.Lit_Star '*'> } ] spids: [44726 44733 44735 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:perm_rpath) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$perm_rpath') <' '> ($ Id.VSub_DollarName '$libdir') ) } spids: [44741] ) ] ) ] spids: [44738 44739 44748 -1] ) ] ) ] spids: [44702 44713] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-cygwin> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-mingw> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-pw32> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <-> <Id.Lit_Star '*'> <-os2> <Id.Lit_Star '*'>} {<Id.Lit_Star '*'> <-cegcc> <Id.Lit_Star '*'>} ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:testbindir) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {(${ Id.VSub_Name ECHO)} {(DQ ($ Id.VSub_DollarName '$libdir'))} ) (C {(${ Id.VSub_Name SED)} {<-e>} {(SQ <'s*/lib$*/bin*'>)} ) ] negated: F ) ) } spids: [44802] ) ] ) (command.Case to_match: {<Id.Lit_Colon ':'> ($ Id.VSub_DollarName '$dllsearchpath') <Id.Lit_Colon ':'> } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <':'> ($ Id.VSub_DollarName '$libdir') <':'>) <Id.Lit_Star '*'> } ] spids: [44837 44844 44846 -1] ) (case_arm pat_list: [{<Id.Lit_Colon ':'> <Id.Lit_Colon ':'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dllsearchpath) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$libdir')} spids: [44853] ) ] ) ] spids: [44849 44851 44855 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dllsearchpath) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dllsearchpath') <':'> ($ Id.VSub_DollarName '$libdir') ) } spids: [44861] ) ] ) ] spids: [44858 44859 44867 -1] ) ] ) (command.Case to_match: {<Id.Lit_Colon ':'> ($ Id.VSub_DollarName '$dllsearchpath') <Id.Lit_Colon ':'> } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <':'> ($ Id.VSub_DollarName '$testbindir') <':'>) <Id.Lit_Star '*'> } ] spids: [44882 44889 44891 -1] ) (case_arm pat_list: [{<Id.Lit_Colon ':'> <Id.Lit_Colon ':'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dllsearchpath) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$testbindir')} spids: [44898] ) ] ) ] spids: [44894 44896 44900 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dllsearchpath) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dllsearchpath') <':'> ($ Id.VSub_DollarName '$testbindir') ) } spids: [44906] ) ] ) ] spids: [44903 44904 44912 -1] ) ] ) ] spids: [44764 44799 44918 -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 '$hardcode_libdir_separator'))} ) (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$hardcode_libdirs'))} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libdir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$hardcode_libdirs'))} spids: [44956] ) ] ) (C {<eval>} {<Id.Lit_VarLike 'rpath='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } {($ Id.VSub_DollarName '$hardcode_libdir_flag_spec') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } ) ] spids: [44931 44953] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_rpath) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$rpath'))} spids: [44974] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rpath) op: assign_op.Equal rhs: (word.Empty) spids: [44981] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:hardcode_libdirs) op: assign_op.Equal rhs: (word.Empty) spids: [44984] ) ] ) (command.ForEach iter_name: libdir iter_words: [{($ Id.VSub_DollarName '$finalize_rpath')}] 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 '$hardcode_libdir_flag_spec') ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$hardcode_libdir_separator' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$hardcode_libdirs' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: hardcode_libdirs ) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$libdir'))} spids: [45041] ) ] ) ] spids: [45027 45038] ) ] else_action: [ (command.Case to_match: { ($ Id.VSub_DollarName '$hardcode_libdir_separator' ) ($ Id.VSub_DollarName '$hardcode_libdirs') ($ Id.VSub_DollarName '$hardcode_libdir_separator') } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ ($ Id.VSub_DollarName '$hardcode_libdir_separator' ) ($ Id.VSub_DollarName '$libdir') ($ Id.VSub_DollarName '$hardcode_libdir_separator') ) <Id.Lit_Star '*'> } ] spids: [45063 45070 45073 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: hardcode_libdirs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$hardcode_libdirs' ) ($ Id.VSub_DollarName '$hardcode_libdir_separator') ($ Id.VSub_DollarName '$libdir') ) } spids: [45080] ) ] ) ] spids: [45076 45077 45088 -1] ) ] ) ] ) ] spids: [45013 45024] ) ] else_action: [ (C {<eval>} {<Id.Lit_VarLike 'flag='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$hardcode_libdir_flag_spec') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rpath) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$rpath') <' '> ($ Id.VSub_DollarName '$flag') ) } spids: [45108] ) ] ) ] ) ] spids: [44999 45010] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$runpath_var'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$finalize_perm_rpath') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$libdir') <' '>) <Id.Lit_Star '*'> } ] spids: [45143 45150 45152 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_perm_rpath) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$finalize_perm_rpath') <' '> ($ Id.VSub_DollarName '$libdir') ) } spids: [45158] ) ] ) ] spids: [45155 45156 45165 -1] ) ] ) ] spids: [45119 45130] ) ] ) ] ) ) (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 '$hardcode_libdir_separator'))} ) (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$hardcode_libdirs'))} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libdir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$hardcode_libdirs'))} spids: [45206] ) ] ) (C {<eval>} {<Id.Lit_VarLike 'rpath='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } {($ Id.VSub_DollarName '$hardcode_libdir_flag_spec') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } ) ] spids: [45181 45203] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_rpath) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$rpath'))} spids: [45224] ) ] ) (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 '$libobjs'))}) (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:compile_command) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <X> ($ Id.VSub_DollarName '$compile_command'))} ) (C {($ Id.VSub_DollarName '$SP2NL')}) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(DQ ($ Id.VSub_DollarName '$lo2o'))} ) (C {($ Id.VSub_DollarName '$NL2SP')}) ] negated: F ) ) } spids: [45261] ) ] ) (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 <X> ($ Id.VSub_DollarName '$finalize_command'))} ) (C {($ Id.VSub_DollarName '$SP2NL')}) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(DQ ($ Id.VSub_DollarName '$lo2o'))} ) (C {($ Id.VSub_DollarName '$NL2SP')}) ] negated: F ) ) } spids: [45292] ) ] ) ] spids: [45231 45254] ) ] ) (C {<func_generate_dlsyms>} {(DQ ($ Id.VSub_DollarName '$outputname'))} {(DQ <'@PROGRAM@'>)} {(DQ <no>)} ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$prelink_cmds'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_execute_cmds>} {(DQ ($ Id.VSub_DollarName '$prelink_cmds'))} {(SQ <'exit $?'>)} ) ] spids: [45347 45358] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:wrappers_required) op: assign_op.Equal rhs: {<yes>} spids: [45376] ) ] ) (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 {<test>} {(DQ ($ Id.VSub_DollarName '$build_libtool_libs'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:wrappers_required) op: assign_op.Equal rhs: {<no>} spids: [45417] ) ] ) ] spids: [45400 45414] ) ] ) ] spids: [45387 45397 45424 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <cegcc>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:wrappers_required) op: assign_op.Equal rhs: {<no>} spids: [45436] ) ] ) ] spids: [45427 45429 45440 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$need_relink'))} {<Id.Lit_Equals '='>} {<no>} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$build_libtool_libs'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<yes>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:wrappers_required) op: assign_op.Equal rhs: {<no>} spids: [45476] ) ] ) ] spids: [45447 45473] ) ] ) ] spids: [45443 45444 45483 -1] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$wrappers_required'))} {<Id.Lit_Equals '='>} {<no>} ) 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 <X> ($ Id.VSub_DollarName '$compile_command'))} ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(SQ <'s%@OUTPUT@%'>) (DQ ($ Id.VSub_DollarName '$output')) (SQ <'%g'>) } ) ] negated: F ) ) } spids: [45509] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:link_command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$compile_command') ($ Id.VSub_DollarName '$compile_rpath') ) } spids: [45538] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:exit_status) op: assign_op.Equal rhs: {<0>} spids: [45550] ) ] ) (C {<func_show_eval>} {(DQ ($ Id.VSub_DollarName '$link_command'))} {(SQ <'exit_status=$?'>)} ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-f>} { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> (${ Id.VSub_Name outputname) <S.> (${ Id.VSub_Name objext) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_show_eval>} {(SQ <'$RM "$output_objdir/${outputname}S.${objext}"'>)} ) ] spids: [45570 45589] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$exit_status')} ) ] spids: [45489 45502] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$compile_shlibpath') ($ Id.VSub_DollarName '$finalize_shlibpath') ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$shlibpath_var') <'='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$compile_shlibpath') ($ Id.VSub_DollarName '$finalize_shlibpath') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) ($ Id.VSub_DollarName '$shlibpath_var') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' '> ($ Id.VSub_DollarName '$compile_command') ) } spids: [45627] ) ] ) ] spids: [45612 45624] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$finalize_shlibpath'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$shlibpath_var') <'='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$finalize_shlibpath') (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) ($ Id.VSub_DollarName '$shlibpath_var') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' '> ($ Id.VSub_DollarName '$finalize_command') ) } spids: [45659] ) ] ) ] spids: [45645 45656] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_var) op: assign_op.Equal rhs: (word.Empty) spids: [45677] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_var) op: assign_op.Equal rhs: (word.Empty) spids: [45680] ) ] ) (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: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$perm_rpath'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rpath) op: assign_op.Equal rhs: (word.Empty) spids: [45715] ) ] ) (command.ForEach iter_name: dir iter_words: [{($ Id.VSub_DollarName '$perm_rpath')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rpath) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$rpath') ($ Id.VSub_DollarName '$dir') <':'> ) } spids: [45730] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:compile_var) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$runpath_var') <'='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$rpath') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) ($ Id.VSub_DollarName '$runpath_var') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' '> ) } spids: [45741] ) ] ) ] spids: [45697 45708] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$finalize_perm_rpath'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rpath) op: assign_op.Equal rhs: (word.Empty) spids: [45775] ) ] ) (command.ForEach iter_name: dir iter_words: [{($ Id.VSub_DollarName '$finalize_perm_rpath')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rpath) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$rpath') ($ Id.VSub_DollarName '$dir') <':'> ) } spids: [45790] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:finalize_var) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$runpath_var') <'='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$rpath') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) ($ Id.VSub_DollarName '$runpath_var') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' '> ) } spids: [45801] ) ] ) ] spids: [45757 45768] ) ] ) ] spids: [45683 45694] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$no_install'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:link_command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$compile_var') ($ Id.VSub_DollarName '$compile_command') ($ Id.VSub_DollarName '$compile_rpath') ) } spids: [45841] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:link_command) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <X> ($ Id.VSub_DollarName '$link_command'))} ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(SQ <'s%@OUTPUT@%'>) (DQ ($ Id.VSub_DollarName '$output')) (SQ <'%g'>) } ) ] negated: F ) ) } spids: [45853] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {($ Id.VSub_DollarName '$RM')} {($ Id.VSub_DollarName '$output')}) ] ) (C {<func_show_eval>} {(DQ ($ Id.VSub_DollarName '$link_command'))} {(SQ <'exit $?'>)} ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_SUCCESS')} ) ] spids: [45821 45834] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$hardcode_action'))} {<Id.Lit_Equals '='>} {<relink>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:link_command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$compile_var') ($ Id.VSub_DollarName '$compile_command') ($ Id.VSub_DollarName '$compile_rpath') ) } spids: [45939] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:relink_command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$finalize_var') ($ Id.VSub_DollarName '$finalize_command') ($ Id.VSub_DollarName '$finalize_rpath') ) } spids: [45947] ) ] ) (C {<func_warning>} {(DQ <'this platform does not like uninstalled shared libraries'>)} ) (C {<func_warning>} { (DQ (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$output') <'\' will be relinked during installation'> ) } ) ] spids: [45919 45932] ) ] else_action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$fast_install'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<no>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:link_command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$finalize_var') ($ Id.VSub_DollarName '$compile_command') ($ Id.VSub_DollarName '$finalize_rpath') ) } spids: [45992] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$fast_install'))} {<Id.Lit_Equals '='>} {<yes>} ) 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 <X> ($ Id.VSub_DollarName '$compile_var') ($ Id.VSub_DollarName '$compile_command') ($ Id.VSub_DollarName '$compile_rpath') ) } ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(SQ <'s%@OUTPUT@%$progdir/$file%g'>)} ) ] negated: F ) ) } spids: [46016] ) ] ) ] spids: [46000 46013] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:relink_command) op: assign_op.Equal rhs: (word.Empty) spids: [46052] ) ] ) ] ) ] spids: [45975 45989] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:link_command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$compile_var') ($ Id.VSub_DollarName '$compile_command') ($ Id.VSub_DollarName '$compile_rpath') ) } spids: [46061] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:relink_command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$finalize_var') ($ Id.VSub_DollarName '$finalize_command') ($ Id.VSub_DollarName '$finalize_rpath') ) } spids: [46069] ) ] ) ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:link_command) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <X> ($ Id.VSub_DollarName '$link_command'))} ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(SQ <'s%@OUTPUT@%'>) (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$outputname') ) (SQ <'%g'>) } ) ] negated: F ) ) } spids: [46088] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (C {($ Id.VSub_DollarName '$RM')} {($ Id.VSub_DollarName '$output')} {($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$outputname') } {($ Id.VSub_DollarName '$output_objdir') <'/lt-'> ($ Id.VSub_DollarName '$outputname')} ) ] ) (C {<func_show_eval>} {(DQ ($ Id.VSub_DollarName '$link_command'))} {(SQ <'exit $?'>)} ) (C {<func_verbose>} {(DQ <'creating '> ($ Id.VSub_DollarName '$output'))}) (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.ForEach iter_name: var iter_words: [{($ Id.VSub_DollarName '$variables_saved_for_relink')}] do_arg_iter: F body: (command.DoGroup children: [ (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.Lit_LBrace '{'> ($ Id.VSub_DollarName '$var') <Id.Lit_Other '+'> <set> <Id.Lit_RBrace '}'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:relink_command) op: assign_op.Equal rhs: { (DQ <'{ test -z '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'{'> ($ Id.VSub_DollarName '$var') <'+set}'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' || '> ($ Id.VSub_DollarName '$lt_unset') <' '> ($ Id.VSub_DollarName '$var') <' || { '> ($ Id.VSub_DollarName '$var') <'=; export '> ($ Id.VSub_DollarName '$var') <'; }; }; '> ($ Id.VSub_DollarName '$relink_command') ) } spids: [46222] ) ] ) ] spids: [46201 46219] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<eval>} {<Id.Lit_VarLike 'var_value='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) ($ Id.VSub_DollarName '$var') } ) terminator: <Id.Op_Semi _> ) (command.Sentence child: (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$var_value'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:relink_command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$var') <'=; export '> ($ Id.VSub_DollarName '$var') <'; '> ($ Id.VSub_DollarName '$relink_command') ) } spids: [46265] ) ] ) ] spids: [46244 46262] ) ] else_action: [ (C {<func_quote_for_eval>} {(DQ ($ Id.VSub_DollarName '$var_value'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:relink_command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$var') <'='> ($ Id.VSub_DollarName '$func_quote_for_eval_result' ) <'; export '> ($ Id.VSub_DollarName '$var') <'; '> ($ Id.VSub_DollarName '$relink_command') ) } spids: [46285] ) ] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:relink_command) op: assign_op.Equal rhs: { (DQ <'(cd '> (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<pwd>}) ) <'; '> ($ Id.VSub_DollarName '$relink_command') <')'> ) } spids: [46303] ) ] ) (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 <X> ($ Id.VSub_DollarName '$relink_command'))} ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(DQ ($ Id.VSub_DollarName '$sed_quote_subst'))} ) ] negated: F ) ) } spids: [46317] ) ] ) ] spids: [46171 46182] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$ECHO'))} {<Id.Lit_Equals '='>} { (DQ <X> ($ Id.VSub_DollarName '$SHELL') <' '> ($ Id.VSub_DollarName '$progpath') <' --fallback-echo'> ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (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 ':'> <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:qecho) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$SHELL') <' '> ($ Id.VSub_DollarName '$progpath') <' --fallback-echo'> ) } spids: [46397] ) ] ) ] spids: [46378 46395 46404 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:qecho) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$SHELL') <' '> (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<pwd>}) ) <'/'> ($ Id.VSub_DollarName '$progpath') <' --fallback-echo'> ) } spids: [46410] ) ] ) ] spids: [46407 46408 46423 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:qecho) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <X> ($ Id.VSub_DollarName '$qecho'))} ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(DQ ($ Id.VSub_DollarName '$sed_quote_subst'))} ) ] negated: F ) ) } spids: [46429] ) ] ) ] spids: [46348 46368] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:qecho) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <X> ($ Id.VSub_DollarName '$ECHO'))} ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(DQ ($ Id.VSub_DollarName '$sed_quote_subst'))} ) ] negated: F ) ) } spids: [46455] ) ] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (BraceGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$output')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <.exe>}] action: [ (C {<func_stripname>} {(SQ )} {(SQ <.exe>)} {(DQ ($ Id.VSub_DollarName '$output'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:output) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [46526] ) ] ) ] spids: [46508 46510 46529 -1] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$host')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <cygwin> <Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:exeext) op: assign_op.Equal rhs: {<.exe>} spids: [46552] ) ] ) (C {<func_stripname>} {(SQ )} {(SQ <.exe>)} {(DQ ($ Id.VSub_DollarName '$outputname'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:outputname) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [46570] ) ] ) ] spids: [46546 46549 46573 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:exeext) op: assign_op.Equal rhs: (word.Empty) spids: [46579] ) ] ) ] spids: [46576 46577 46581 -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: [ (C {<func_dirname_and_basename>} {(DQ ($ Id.VSub_DollarName '$output'))} {(DQ )} {(DQ <.>)} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:output_name) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_basename_result')} spids: [46621] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:output_path) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_dirname_result')} spids: [46625] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:cwrappersource) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$output_path') <'/'> ($ Id.VSub_DollarName '$objdir') <'/lt-'> ($ Id.VSub_DollarName '$output_name') <.c> ) } spids: [46629] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:cwrapper) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$output_path') <'/'> ($ Id.VSub_DollarName '$output_name') <.exe> ) } spids: [46640] ) ] ) (C {($ Id.VSub_DollarName '$RM')} {($ Id.VSub_DollarName '$cwrappersource')} {($ Id.VSub_DollarName '$cwrapper')} ) (C {<trap>} { (DQ ($ Id.VSub_DollarName '$RM') <' '> ($ Id.VSub_DollarName '$cwrappersource') <' '> ($ Id.VSub_DollarName '$cwrapper') <'; exit '> ($ Id.VSub_DollarName '$EXIT_FAILURE') ) } {<1>} {<2>} {<15>} ) (command.Simple words: [{<func_emit_cwrapperexe_src>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {($ Id.VSub_DollarName '$cwrappersource')} ) ] do_fork: T ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (BraceGroup children: [ (C {($ Id.VSub_DollarName '$LTCC')} {($ Id.VSub_DollarName '$LTCFLAGS')} {<-o>} {($ Id.VSub_DollarName '$cwrapper')} {($ Id.VSub_DollarName '$cwrappersource')} ) (C {($ Id.VSub_DollarName '$STRIP')} {($ Id.VSub_DollarName '$cwrapper')} ) ] ) ] ) (C {<func_ltwrapper_scriptname>} {($ Id.VSub_DollarName '$cwrapper')} ) (C {($ Id.VSub_DollarName '$RM')} {($ Id.VSub_DollarName '$func_ltwrapper_scriptname_result')} ) (C {<trap>} { (DQ ($ Id.VSub_DollarName '$RM') <' '> ($ Id.VSub_DollarName '$func_ltwrapper_scriptname_result') <'; exit '> ($ Id.VSub_DollarName '$EXIT_FAILURE') ) } {<1>} {<2>} {<15>} ) (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 <x> ($ Id.VSub_DollarName '$build') ) } {<Id.Lit_Equals '='>} {(DQ <x> ($ Id.VSub_DollarName '$host'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Simple words: [ {($ Id.VSub_DollarName '$cwrapper')} {<--lt-dump-script>} ] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: { ($ Id.VSub_DollarName '$func_ltwrapper_scriptname_result' ) } ) ] do_fork: T ) ] spids: [46769 46787] ) ] else_action: [ (command.Simple words: [{<func_emit_wrapper>} {<no>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: { ($ Id.VSub_DollarName '$func_ltwrapper_scriptname_result' ) } ) ] do_fork: T ) ] ) ] ) ] ) ] spids: [46594 46604 46817 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (C {($ Id.VSub_DollarName '$RM')} {($ Id.VSub_DollarName '$output')} ) (C {<trap>} { (DQ ($ Id.VSub_DollarName '$RM') <' '> ($ Id.VSub_DollarName '$output') <'; exit '> ($ Id.VSub_DollarName '$EXIT_FAILURE') ) } {<1>} {<2>} {<15>} ) (command.Simple words: [{<func_emit_wrapper>} {<no>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {($ Id.VSub_DollarName '$output')} ) ] do_fork: T ) (C {<chmod>} {<Id.Lit_Other '+'> <x>} {($ Id.VSub_DollarName '$output')} ) ] spids: [46820 46822 46865 -1] ) ] ) ] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_SUCCESS')} ) ] spids: [43880 43881 46879 -1] ) ] ) (command.ForEach iter_name: oldlib iter_words: [{($ Id.VSub_DollarName '$oldlibs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$build_libtool_libs'))} {<Id.Lit_Equals '='>} {<convenience>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:oldobjs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$libobjs_save') <' '> ($ Id.VSub_DollarName '$symfileobj') ) } spids: [46919] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:addlibs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$convenience'))} spids: [46927] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:build_libtool_libs) op: assign_op.Equal rhs: {<no>} spids: [46933] ) ] ) ] spids: [46903 46916] ) ] else_action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$build_libtool_libs'))} {<Id.Lit_Equals '='>} {<module>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:oldobjs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$libobjs_save'))} spids: [46956] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:build_libtool_libs) op: assign_op.Equal rhs: {<no>} spids: [46962] ) ] ) ] spids: [46940 46953] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:oldobjs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$old_deplibs') <' '> ($ Id.VSub_DollarName '$non_pic_objects') ) } spids: [46969] ) ] ) (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 '$preload'))} {<Id.Lit_Equals '='>} {<yes>} ) (C {<test>} {<-f>} {(DQ ($ Id.VSub_DollarName '$symfileobj'))} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:oldobjs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$oldobjs') <' '> ($ Id.VSub_DollarName '$symfileobj') ) } spids: [47003] ) ] ) ] spids: [46977 47000] ) ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:addlibs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$old_convenience'))} spids: [47017] ) ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$addlibs'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:gentop) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> (${ Id.VSub_Name outputname) <x> ) } spids: [47041] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:generated) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$generated') <' '> ($ Id.VSub_DollarName '$gentop') ) } spids: [47052] ) ] ) (C {<func_extract_archives>} {($ Id.VSub_DollarName '$gentop')} {($ Id.VSub_DollarName '$addlibs')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:oldobjs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$oldobjs') <' '> ($ Id.VSub_DollarName '$func_extract_archives_result') ) } spids: [47068] ) ] ) ] spids: [47027 47038] ) ] ) (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 '$old_archive_from_new_cmds'))} ) (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:cmds) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$old_archive_from_new_cmds')} spids: [47110] ) ] ) ] spids: [47084 47107] ) ] else_action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$dlprefiles'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:gentop) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> (${ Id.VSub_Name outputname) <x> ) } spids: [47136] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:generated) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$generated') <' '> ($ Id.VSub_DollarName '$gentop') ) } spids: [47147] ) ] ) (C {<func_extract_archives>} {($ Id.VSub_DollarName '$gentop')} {($ Id.VSub_DollarName '$dlprefiles')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:oldobjs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$oldobjs') <' '> ($ Id.VSub_DollarName '$func_extract_archives_result') ) } spids: [47163] ) ] ) ] spids: [47122 47133] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Subshell child: (command.Pipeline children: [ (command.ForEach iter_name: obj iter_words: [{($ Id.VSub_DollarName '$oldobjs')}] do_arg_iter: F body: (command.DoGroup children: [ (C {<func_basename>} {(DQ ($ Id.VSub_DollarName '$obj'))} ) (C {($ Id.VSub_DollarName '$ECHO')} { (DQ ($ Id.VSub_DollarName '$func_basename_result' ) ) } ) ] ) ) (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: [47199 47248] ) ] else_action: [ (C {($ Id.VSub_DollarName '$ECHO')} {(DQ <'copying selected object files to avoid basename conflicts...'>)} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:gentop) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> (${ Id.VSub_Name outputname) <x> ) } spids: [47264] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:generated) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$generated') <' '> ($ Id.VSub_DollarName '$gentop') ) } spids: [47275] ) ] ) (C {<func_mkdir_p>} {(DQ ($ Id.VSub_DollarName '$gentop'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:save_oldobjs) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$oldobjs')} spids: [47290] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:oldobjs) op: assign_op.Equal rhs: (word.Empty) spids: [47294] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:counter) op: assign_op.Equal rhs: {<1>} spids: [47297] ) ] ) (command.ForEach iter_name: obj iter_words: [{($ Id.VSub_DollarName '$save_oldobjs')}] do_arg_iter: F body: (command.DoGroup children: [ (C {<func_basename>} {(DQ ($ Id.VSub_DollarName '$obj'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:objbase) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$func_basename_result'))} spids: [47320] ) ] ) (command.Case to_match: {(DQ <' '> ($ Id.VSub_DollarName '$oldobjs') <' '>)} arms: [ (case_arm pat_list: [{(DQ <' '>)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:oldobjs) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$obj')} spids: [47342] ) ] ) ] spids: [47337 47340 47345 -1] ) (case_arm pat_list: [ {<Id.Lit_Star '*'> <Id.Lit_LBracket '['> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\ '> ) <'/'> <Id.Lit_RBracket ']'> (DQ ($ Id.VSub_DollarName '$objbase') <' '>) <Id.Lit_Star '*'> } ] action: [ (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.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newobj) op: assign_op.Equal rhs: {<lt> ($ Id.VSub_DollarName '$counter') <-> ($ Id.VSub_DollarName '$objbase') } spids: [47377] ) ] ) (C {<func_arith>} {($ Id.VSub_DollarName '$counter')} {<Id.Lit_Other '+'>} {<1>} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:counter) op: assign_op.Equal rhs: { ($ Id.VSub_DollarName '$func_arith_result' ) } spids: [47393] ) ] ) (command.Case to_match: { (DQ <' '> ($ Id.VSub_DollarName '$oldobjs') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <Id.Lit_LBracket '['> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\ '> ) <'/'> <Id.Lit_RBracket ']'> (DQ ($ Id.VSub_DollarName '$newobj') <' '>) <Id.Lit_Star '*'> } ] spids: [47408 47418 47420 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<Id.KW_Bang '!'>} {<-f>} {(DQ ($ Id.VSub_DollarName '$gentop') <'/'> ($ Id.VSub_DollarName '$newobj'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Sentence child: (command.ControlFlow token: <Id.ControlFlow_Break break > ) terminator: <Id.Op_Semi _> ) ] spids: [47426 47441] ) ] ) ] spids: [47423 47424 47448 -1] ) ] ) ] ) ) (C {<func_show_eval>} { (DQ <'ln '> ($ Id.VSub_DollarName '$obj') <' '> ($ Id.VSub_DollarName '$gentop') <'/'> ($ Id.VSub_DollarName '$newobj') <' || cp '> ($ Id.VSub_DollarName '$obj') <' '> ($ Id.VSub_DollarName '$gentop') <'/'> ($ Id.VSub_DollarName '$newobj') ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:oldobjs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$oldobjs') <' '> ($ Id.VSub_DollarName '$gentop') <'/'> ($ Id.VSub_DollarName '$newobj') ) } spids: [47475] ) ] ) ] spids: [47348 47358 47485 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:oldobjs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$oldobjs') <' '> ($ Id.VSub_DollarName '$obj') ) } spids: [47491] ) ] ) ] spids: [47488 47489 47498 -1] ) ] ) ] ) ) ] ) (C {<eval>} {<Id.Lit_VarLike 'cmds='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$old_archive_cmds') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) (C {<func_len>} {(DQ <' '> ($ Id.VSub_DollarName '$cmds'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:len) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_len_result')} spids: [47527] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$len'))} {<-lt>} {(DQ ($ Id.VSub_DollarName '$max_cmd_len'))} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$max_cmd_len'))} {<-le>} {<-1>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:cmds) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$old_archive_cmds')} spids: [47561] ) ] ) ] spids: [47531 47558] ) ] else_action: [ (C {<func_verbose>} {(DQ <'using piecewise archive linking...'>)}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:save_RANLIB) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$RANLIB')} spids: [47579] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:RANLIB) op: assign_op.Equal rhs: {<Id.Lit_Colon ':'>} spids: [47583] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:objlist) op: assign_op.Equal rhs: (word.Empty) spids: [47587] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:concat_cmds) op: assign_op.Equal rhs: (word.Empty) spids: [47590] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:save_oldobjs) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$oldobjs')} spids: [47593] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:oldobjs) op: assign_op.Equal rhs: (word.Empty) spids: [47597] ) ] ) (command.ForEach iter_name: obj iter_words: [{($ Id.VSub_DollarName '$save_oldobjs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:last_oldobj) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$obj')} spids: [47616] ) ] ) ] ) ) (C {<eval>} {<Id.Lit_VarLike 'test_cmds='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$old_archive_cmds') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) (C {<func_len>} {(DQ <' '> ($ Id.VSub_DollarName '$test_cmds'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:len0) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_len_result')} spids: [47639] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:len) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$len0')} spids: [47643] ) ] ) (command.ForEach iter_name: obj iter_words: [{($ Id.VSub_DollarName '$save_oldobjs')}] do_arg_iter: F body: (command.DoGroup children: [ (C {<func_len>} {(DQ <' '> ($ Id.VSub_DollarName '$obj'))}) (C {<func_arith>} {($ Id.VSub_DollarName '$len')} {<Id.Lit_Other '+'>} {($ Id.VSub_DollarName '$func_len_result')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:len) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_arith_result')} spids: [47676] ) ] ) (C {<func_append>} {<objlist>} {(DQ <' '> ($ Id.VSub_DollarName '$obj'))} ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$len'))} {<-lt>} {(DQ ($ Id.VSub_DollarName '$max_cmd_len'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<Id.Lit_Colon ':'>})] spids: [47690 47705] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:oldobjs) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$objlist')} spids: [47718] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$obj'))} {<Id.Lit_Equals '='>} {(DQ ($ Id.VSub_DollarName '$last_oldobj'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:RANLIB) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$save_RANLIB')} spids: [47741] ) ] ) ] spids: [47722 47738] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$concat_cmds'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:concat_cmds) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$concat_cmds') <Id.Lit_TildeLike '~'> } spids: [47758] ) ] ) ] ) (C {<eval>} {<Id.Lit_VarLike 'concat_cmds='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <Id.Lit_LBrace '{'> <concat_cmds> <Id.Lit_RBrace '}'> ($ Id.VSub_DollarName '$old_archive_cmds') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:objlist) op: assign_op.Equal rhs: (word.Empty) spids: [47775] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:len) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$len0')} spids: [47778] ) ] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:RANLIB) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$save_RANLIB')} spids: [47788] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:oldobjs) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$objlist')} spids: [47792] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$oldobjs'))} {<Id.Lit_Equals '='>} {(DQ <X>)} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} {<Id.Lit_VarLike 'cmds='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <concat_cmds> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) } ) ] spids: [47796 47813] ) ] else_action: [ (C {<eval>} {<Id.Lit_VarLike 'cmds='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <concat_cmds> <Id.Lit_TildeLike '~'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) <old_archive_cmds> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) ] ) ] ) ] ) (C {<func_execute_cmds>} {(DQ ($ Id.VSub_DollarName '$cmds'))} {(SQ <'exit $?'>)}) ] ) ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$generated'))}) (C {<func_show_eval>} {(DQ (${ Id.VSub_Name RM) <r> ($ Id.VSub_DollarName '$generated'))} ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$output')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <.la>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:old_library) op: assign_op.Equal rhs: (word.Empty) spids: [47904] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$build_old_libs'))} {<Id.Lit_Equals '='>} {<yes>} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:old_library) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$libname') <.> ($ Id.VSub_DollarName '$libext') ) } spids: [47919] ) ] ) ] ) (C {<func_verbose>} {(DQ <'creating '> ($ Id.VSub_DollarName '$output'))}) (command.ForEach iter_name: var iter_words: [{($ Id.VSub_DollarName '$variables_saved_for_relink')}] do_arg_iter: F body: (command.DoGroup children: [ (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.Lit_LBrace '{'> ($ Id.VSub_DollarName '$var') <Id.Lit_Other '+'> <set> <Id.Lit_RBrace '}'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:relink_command) op: assign_op.Equal rhs: { (DQ <'{ test -z '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'>) <'{'> ($ Id.VSub_DollarName '$var') <'+set}'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' || '> ($ Id.VSub_DollarName '$lt_unset') <' '> ($ Id.VSub_DollarName '$var') <' || { '> ($ Id.VSub_DollarName '$var') <'=; export '> ($ Id.VSub_DollarName '$var') <'; }; }; '> ($ Id.VSub_DollarName '$relink_command') ) } spids: [47973] ) ] ) ] spids: [47952 47970] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<eval>} {<Id.Lit_VarLike 'var_value='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ) ($ Id.VSub_DollarName '$var') } ) terminator: <Id.Op_Semi _> ) (command.Sentence child: (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$var_value'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:relink_command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$var') <'=; export '> ($ Id.VSub_DollarName '$var') <'; '> ($ Id.VSub_DollarName '$relink_command') ) } spids: [48016] ) ] ) ] spids: [47995 48013] ) ] else_action: [ (C {<func_quote_for_eval>} {(DQ ($ Id.VSub_DollarName '$var_value'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:relink_command) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$var') <'='> ($ Id.VSub_DollarName '$func_quote_for_eval_result') <'; export '> ($ Id.VSub_DollarName '$var') <'; '> ($ Id.VSub_DollarName '$relink_command') ) } spids: [48036] ) ] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:relink_command) op: assign_op.Equal rhs: { (DQ <'(cd '> (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<pwd>}) ) <'; '> ($ Id.VSub_DollarName '$SHELL') <' '> ($ Id.VSub_DollarName '$progpath') <' '> ($ Id.VSub_DollarName '$preserve_args') <' --mode=relink '> ($ Id.VSub_DollarName '$libtool_args') <' @inst_prefix_dir@)'> ) } spids: [48058] ) ] ) (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 <X> ($ Id.VSub_DollarName '$relink_command'))} ) (C {($ Id.VSub_DollarName '$Xsed')} {<-e>} {(DQ ($ Id.VSub_DollarName '$sed_quote_subst'))} ) ] negated: F ) ) } spids: [48078] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$hardcode_automatic'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:relink_command) op: assign_op.Equal rhs: (word.Empty) spids: [48118] ) ] ) ] spids: [48101 48115] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_DollarName '$opt_dry_run')}) (BraceGroup children: [ (command.ForEach iter_name: installed iter_words: [{<no>} {<yes>}] do_arg_iter: F body: (command.DoGroup children: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$installed'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$install_libdir' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ControlFlow token: <Id.ControlFlow_Break break> ) ] spids: [48166 48177] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:output) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$output_objdir') <'/'> ($ Id.VSub_DollarName '$outputname') ) <i> } spids: [48186] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdependency_libs) op: assign_op.Equal rhs: (word.Empty) spids: [48199] ) ] ) (command.ForEach iter_name: deplib iter_words: [{($ Id.VSub_DollarName '$dependency_libs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$deplib')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <.la>}] action: [ (C {<func_basename>} {(DQ ($ Id.VSub_DollarName '$deplib'))} ) (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: [48233] ) ] ) (C {<eval>} {<Id.Lit_VarLike 'libdir='> (command_sub left_token: <Id.Left_Backtick '`'> child: (C {(${ Id.VSub_Name SED)} {<-n>} {<-e>} {(SQ <'s/^libdir=\\(.*\\)$/\\1/p'>)} {($ Id.VSub_DollarName '$deplib')} ) ) } ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$libdir') ) } ) (C {<func_fatal_error>} { (DQ (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\`'> ) ($ Id.VSub_DollarName '$deplib') <'\' is not a valid libtool archive'> ) } ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: newdependency_libs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdependency_libs' ) <' '> ($ Id.VSub_DollarName '$libdir') <'/'> ($ Id.VSub_DollarName '$name') ) } spids: [48288] ) ] ) ] spids: [48221 48223 48298 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: newdependency_libs ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdependency_libs' ) <' '> ($ Id.VSub_DollarName '$deplib') ) } spids: [48304] ) ] ) ] spids: [48301 48302 48311 -1] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dependency_libs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdependency_libs') ) } spids: [48320] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdlfiles) op: assign_op.Equal rhs: (word.Empty) spids: [48326] ) ] ) (command.ForEach iter_name: lib iter_words: [{($ Id.VSub_DollarName '$dlfiles')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$lib')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <.la>}] action: [ (C {<func_basename>} {(DQ ($ Id.VSub_DollarName '$lib'))} ) (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: [48361] ) ] ) (C {<eval>} {<Id.Lit_VarLike 'libdir='> (command_sub left_token: <Id.Left_Backtick '`'> child: (C {(${ Id.VSub_Name SED)} {<-n>} {<-e>} {(SQ <'s/^libdir=\\(.*\\)$/\\1/p'>)} {($ Id.VSub_DollarName '$lib')} ) ) } ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$libdir') ) } ) (C {<func_fatal_error>} { (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: newdlfiles ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdlfiles' ) <' '> ($ Id.VSub_DollarName '$libdir') <'/'> ($ Id.VSub_DollarName '$name') ) } spids: [48416] ) ] ) ] spids: [48349 48351 48426 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name: newdlfiles ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdlfiles' ) <' '> ($ Id.VSub_DollarName '$lib') ) } spids: [48432] ) ] ) ] spids: [48429 48430 48439 -1] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlfiles) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$newdlfiles'))} spids: [48448] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdlprefiles) op: assign_op.Equal rhs: (word.Empty) spids: [48454] ) ] ) (command.ForEach iter_name: lib iter_words: [{($ Id.VSub_DollarName '$dlprefiles')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$lib')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <.la>}] action: [ (C {<func_basename>} {(DQ ($ Id.VSub_DollarName '$lib'))} ) (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: [48504] ) ] ) (C {<eval>} {<Id.Lit_VarLike 'libdir='> (command_sub left_token: <Id.Left_Backtick '`'> child: (C {(${ Id.VSub_Name SED)} {<-n>} {<-e>} {(SQ <'s/^libdir=\\(.*\\)$/\\1/p'>)} {($ Id.VSub_DollarName '$lib')} ) ) } ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-z>} { (DQ ($ Id.VSub_DollarName '$libdir') ) } ) (C {<func_fatal_error>} { (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: newdlprefiles ) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdlprefiles' ) <' '> ($ Id.VSub_DollarName '$libdir') <'/'> ($ Id.VSub_DollarName '$name') ) } spids: [48559] ) ] ) ] spids: [48476 48478 48569 -1] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlprefiles) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$newdlprefiles'))} spids: [48578] ) ] ) ] spids: [48150 48163] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdlfiles) op: assign_op.Equal rhs: (word.Empty) spids: [48587] ) ] ) (command.ForEach iter_name: lib iter_words: [{($ Id.VSub_DollarName '$dlfiles')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$lib')} 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:abs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$lib'))} spids: [48628] ) ] ) ] spids: [48609 48626 48633 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:abs) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<pwd>}) ) (DQ <'/'> ($ Id.VSub_DollarName '$lib')) } spids: [48639] ) ] ) ] spids: [48636 48637 48650 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdlfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdlfiles') <' '> ($ Id.VSub_DollarName '$abs') ) } spids: [48656] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlfiles) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$newdlfiles'))} spids: [48667] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdlprefiles) op: assign_op.Equal rhs: (word.Empty) spids: [48673] ) ] ) (command.ForEach iter_name: lib iter_words: [{($ Id.VSub_DollarName '$dlprefiles')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$lib')} 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:abs) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$lib'))} spids: [48714] ) ] ) ] spids: [48695 48712 48719 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:abs) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<pwd>}) ) (DQ <'/'> ($ Id.VSub_DollarName '$lib')) } spids: [48725] ) ] ) ] spids: [48722 48723 48736 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:newdlprefiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$newdlprefiles') <' '> ($ Id.VSub_DollarName '$abs') ) } spids: [48742] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:dlprefiles) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$newdlprefiles'))} spids: [48753] ) ] ) ] ) (C {($ Id.VSub_DollarName '$RM')} {($ Id.VSub_DollarName '$output')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tdlname) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$dlname')} spids: [48771] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$host') <Id.Lit_Comma ','> ($ Id.VSub_DollarName '$output') <Id.Lit_Comma ','> ($ Id.VSub_DollarName '$installed') <Id.Lit_Comma ','> ($ Id.VSub_DollarName '$module') <Id.Lit_Comma ','> ($ Id.VSub_DollarName '$dlname') } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> <cygwin> <Id.Lit_Star '*'> <Id.Lit_Comma ','> <Id.Lit_Star '*'> <lai> <Id.Lit_Comma ','> <yes> <Id.Lit_Comma ','> <no> <Id.Lit_Comma ','> <Id.Lit_Star '*'> <.dll> } {<Id.Lit_Star '*'> <mingw> <Id.Lit_Star '*'> <Id.Lit_Comma ','> <Id.Lit_Star '*'> <lai> <Id.Lit_Comma ','> <yes> <Id.Lit_Comma ','> <no> <Id.Lit_Comma ','> <Id.Lit_Star '*'> <.dll> } {<Id.Lit_Star '*'> <cegcc> <Id.Lit_Star '*'> <Id.Lit_Comma ','> <Id.Lit_Star '*'> <lai> <Id.Lit_Comma ','> <yes> <Id.Lit_Comma ','> <no> <Id.Lit_Comma ','> <Id.Lit_Star '*'> <.dll> } ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tdlname) op: assign_op.Equal rhs: {<'../bin/'> ($ Id.VSub_DollarName '$dlname')} spids: [48837] ) ] ) ] spids: [48790 48835 48841 -1] ) ] ) (command.Simple words: [ {($ Id.VSub_DollarName '$ECHO')} { (DQ <'# '> ($ Id.VSub_DollarName '$outputname') <' - a libtool library 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'> <'# The name that we can dlopen(3).\n'> <'dlname=\''> ($ Id.VSub_DollarName '$tdlname') <'\'\n'> <'\n'> <'# Names of this library.\n'> <'library_names=\''> ($ Id.VSub_DollarName '$library_names') <'\'\n'> <'\n'> <'# The name of the static archive.\n'> <'old_library=\''> ($ Id.VSub_DollarName '$old_library') <'\'\n'> <'\n'> <'# Linker flags that can not go in dependency_libs.\n'> <'inherited_linker_flags=\''> ($ Id.VSub_DollarName '$new_inherited_linker_flags') <'\'\n'> <'\n'> <'# Libraries that this one depends upon.\n'> <'dependency_libs=\''> ($ Id.VSub_DollarName '$dependency_libs') <'\'\n'> <'\n'> <'# Names of additional weak libraries provided by this library\n'> <'weak_library_names=\''> ($ Id.VSub_DollarName '$weak_libs') <'\'\n'> <'\n'> <'# Version information for '> ($ Id.VSub_DollarName '$libname') <'.\n'> <'current='> ($ Id.VSub_DollarName '$current') <'\n'> <'age='> ($ Id.VSub_DollarName '$age') <'\n'> <'revision='> ($ Id.VSub_DollarName '$revision') <'\n'> <'\n'> <'# Is this an already installed library?\n'> <'installed='> ($ Id.VSub_DollarName '$installed') <'\n'> <'\n'> < '# Should we warn about portability when linking against -modules?\n' > <'shouldnotlink='> ($ Id.VSub_DollarName '$module') <'\n'> <'\n'> <'# Files to dlopen/dlpreopen\n'> <'dlopen=\''> ($ Id.VSub_DollarName '$dlfiles') <'\'\n'> <'dlpreopen=\''> ($ Id.VSub_DollarName '$dlprefiles') <'\'\n'> <'\n'> <'# Directory that this library needs to be installed in:\n'> <'libdir=\''> ($ Id.VSub_DollarName '$install_libdir') <'\''> ) } ] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {($ Id.VSub_DollarName '$output')} ) ] do_fork: T ) (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 '$installed'))} {<Id.Lit_Equals '='>} {<no>} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$need_relink'))} {<Id.Lit_Equals '='>} {<yes>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Simple words: [ {($ Id.VSub_DollarName '$ECHO')} { (DQ <'relink_command='> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ) ($ Id.VSub_DollarName '$relink_command') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) ) } ] redirects: [ (redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: {($ Id.VSub_DollarName '$output')} ) ] do_fork: T ) ] spids: [48938 48963] ) ] ) ] ) ) ] ) ] ) (C {<func_show_eval>} { (SQ < '( cd "$output_objdir" && $RM "$outputname" && $LN_S "../$outputname" "$outputname" )' > ) } {(SQ <'exit $?'>)} ) ] spids: [47899 47901 49010 -1] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_SUCCESS')} ) ] ) ) (command.AndOr ops: [Id.Op_DAmp] children: [ (BraceGroup children: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$mode'))} {<Id.Lit_Equals '='>} {<link>}) (C {<test>} {(DQ ($ Id.VSub_DollarName '$mode'))} {<Id.Lit_Equals '='>} {<relink>}) ] ) terminator: <Id.Op_Semi _> ) ] ) (C {<func_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 '$@'))}) ) } ) ] ) (command.ShFunction name: func_mode_uninstall body: (BraceGroup children: [ (C {($ Id.VSub_DollarName '$opt_debug')}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:RM) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$nonopt'))} spids: [49079] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:files) op: assign_op.Equal rhs: (word.Empty) spids: [49085] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rmforce) op: assign_op.Equal rhs: (word.Empty) spids: [49088] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:exit_status) op: assign_op.Equal rhs: {<0>} spids: [49091] ) ] ) (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: [49104] ) ] ) (command.ForEach iter_name: arg do_arg_iter: T body: (command.DoGroup children: [ (command.Case to_match: {($ Id.VSub_DollarName '$arg')} arms: [ (case_arm pat_list: [{<-f>}] action: [ (command.Sentence child: (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:RM) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$RM') <' '> ($ Id.VSub_DollarName '$arg') ) } spids: [49129] ) ] ) terminator: <Id.Op_Semi _> ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rmforce) op: assign_op.Equal rhs: {<yes>} spids: [49137] ) ] ) ] spids: [49126 49127 49140 -1] ) (case_arm pat_list: [{<-> <Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:RM) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$RM') <' '> ($ Id.VSub_DollarName '$arg') ) } spids: [49147] ) ] ) ] spids: [49143 49145 49154 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] 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 '$arg') ) } spids: [49160] ) ] ) ] spids: [49157 49158 49167 -1] ) ] ) ] ) ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$RM'))}) (C {<func_fatal_help>} {(DQ <'you must specify an RM program'>)}) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rmdirs) op: assign_op.Equal rhs: (word.Empty) spids: [49197] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:origobjdir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$objdir'))} spids: [49201] ) ] ) (command.ForEach iter_name: file iter_words: [{($ Id.VSub_DollarName '$files')}] do_arg_iter: F body: (command.DoGroup children: [ (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: [49233] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ <X> ($ Id.VSub_DollarName '$dir'))} {<Id.Lit_Equals '='>} {<X.>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:objdir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$origobjdir'))} spids: [49256] ) ] ) ] spids: [49239 49253] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:objdir) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$origobjdir') ) } spids: [49265] ) ] ) ] ) (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: [49283] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$mode'))} {<Id.Lit_Equals '='>} {<uninstall>} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:objdir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$dir'))} spids: [49301] ) ] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$mode'))} {<Id.Lit_Equals '='>} {<clean>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.Case to_match: {(DQ <' '> ($ Id.VSub_DollarName '$rmdirs') <' '>)} arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$objdir') <' '>) <Id.Lit_Star '*'> } ] spids: [49339 49346 49348 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rmdirs) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$rmdirs') <' '> ($ Id.VSub_DollarName '$objdir') ) } spids: [49354] ) ] ) ] spids: [49351 49352 49361 -1] ) ] ) ] spids: [49312 49325] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe Id.Op_DPipe] children: [ (BraceGroup children: [ (command.Sentence child: (C {<test>} {<-L>} {(DQ ($ Id.VSub_DollarName '$file'))}) terminator: <Id.Op_Semi _> ) ] 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>} ) ] ) (BraceGroup children: [ (command.Sentence child: (C {<test>} {<-h>} {(DQ ($ Id.VSub_DollarName '$file'))}) terminator: <Id.Op_Semi _> ) ] 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>} ) ] ) (C {<test>} {<-f>} {(DQ ($ Id.VSub_DollarName '$file'))}) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<Id.Lit_Colon ':'>})] spids: [49375 49430] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-d>} {(DQ ($ Id.VSub_DollarName '$file'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:exit_status) op: assign_op.Equal rhs: {<1>} spids: [49450] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Continue continue> ) ] spids: [49436 49447] ) (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$rmforce'))} {<Id.Lit_Equals '='>} {<yes>} ) terminator: <Id.Op_Semi _> ) ] ) action: [(command.ControlFlow token:<Id.ControlFlow_Continue continue>)] spids: [49457 49470] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rmfiles) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$file'))} spids: [49480] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$name')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <.la>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<func_lalib_p>} {(DQ ($ Id.VSub_DollarName '$file'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_source>} {($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$name') } ) (command.ForEach iter_name: n iter_words: [{($ Id.VSub_DollarName '$library_names')}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rmfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$rmfiles') <' '> ($ Id.VSub_DollarName '$objdir') <'/'> ($ Id.VSub_DollarName '$n') ) } spids: [49539] ) ] ) ] ) ) (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:rmfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$rmfiles') <' '> ($ Id.VSub_DollarName '$objdir') <'/'> ($ Id.VSub_DollarName '$old_library') ) } spids: [49562] ) ] ) ] ) (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$mode'))} arms: [ (case_arm pat_list: [{<clean>}] action: [ (command.Case to_match: { (DQ <' '> ($ Id.VSub_DollarName '$library_names') <' '> ) } arms: [ (case_arm pat_list: [ {<Id.Lit_Star '*'> (DQ <' '> ($ Id.VSub_DollarName '$dlname') <' '>) <Id.Lit_Star '*'> } ] spids: [49601 49608 49610 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rmfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$rmfiles') <' '> ($ Id.VSub_DollarName '$objdir') <'/'> ($ Id.VSub_DollarName '$dlname') ) } spids: [49616] ) ] ) ] spids: [49613 49614 49625 -1] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$libdir'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rmfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$rmfiles') <' '> ($ Id.VSub_DollarName '$objdir') <'/'> ($ Id.VSub_DollarName '$name') <' '> ($ Id.VSub_DollarName '$objdir') <'/'> (${ Id.VSub_Name name) <i> ) } spids: [49641] ) ] ) ] ) ] spids: [49582 49583 49658 -1] ) (case_arm pat_list: [{<uninstall>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$library_names' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_execute_cmds>} { (DQ ($ Id.VSub_DollarName '$postuninstall_cmds') ) } {(SQ <'test "$rmforce" = yes || exit_status=1'>)} ) ] spids: [49665 49676] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} { (DQ ($ Id.VSub_DollarName '$old_library' ) ) } ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_execute_cmds>} { (DQ ($ Id.VSub_DollarName '$old_postuninstall_cmds' ) ) } {(SQ <'test "$rmforce" = yes || exit_status=1'>)} ) ] spids: [49698 49709] ) ] ) ] spids: [49661 49662 49734 -1] ) ] ) ] spids: [49503 49512] ) ] ) ] spids: [49494 49496 49743 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'> <.lo>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<func_lalib_p>} {(DQ ($ Id.VSub_DollarName '$file'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_source>} {($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$name') } ) (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 '$pic_object'))} ) (C {<test>} {(DQ ($ Id.VSub_DollarName '$pic_object'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<none>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rmfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$rmfiles') <' '> ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$pic_object') ) } spids: [49813] ) ] ) ] spids: [49785 49810] ) ] ) (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 '$non_pic_object') ) } ) (C {<test>} { (DQ ($ Id.VSub_DollarName '$non_pic_object') ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<none>} ) ] ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rmfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$rmfiles') <' '> ($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$non_pic_object') ) } spids: [49859] ) ] ) ] spids: [49831 49856] ) ] ) ] spids: [49756 49765] ) ] ) ] spids: [49747 49749 49875 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {(DQ ($ Id.VSub_DollarName '$mode'))} {<Id.Lit_Equals '='>} {<clean>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:noexename) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$name')} spids: [49900] ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$file')} arms: [ (case_arm pat_list: [{<Id.Lit_Star '*'> <.exe>}] 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: [49930] ) ] ) (C {<func_stripname>} {(SQ )} {(SQ <.exe>)} {(DQ ($ Id.VSub_DollarName '$name'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:noexename) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$func_stripname_result')} spids: [49948] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rmfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$rmfiles') <' '> ($ Id.VSub_DollarName '$file') ) } spids: [49960] ) ] ) ] spids: [49911 49913 49968 -1] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<func_ltwrapper_p>} {(DQ ($ Id.VSub_DollarName '$file'))} ) terminator: <Id.Op_Semi _> ) ] ) 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:relink_command) op: assign_op.Equal rhs: (word.Empty) spids: [50009] ) ] ) (C {<func_source>} { ($ Id.VSub_DollarName '$func_ltwrapper_scriptname_result' ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rmfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$rmfiles') <' '> ($ Id.VSub_DollarName '$func_ltwrapper_scriptname_result') ) } spids: [50017] ) ] ) ] spids: [49990 49999] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:relink_command) op: assign_op.Equal rhs: (word.Empty) spids: [50028] ) ] ) (C {<func_source>} {($ Id.VSub_DollarName '$dir') <'/'> ($ Id.VSub_DollarName '$noexename') } ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rmfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$rmfiles') <' '> ($ Id.VSub_DollarName '$objdir') <'/'> ($ Id.VSub_DollarName '$name') <' '> ($ Id.VSub_DollarName '$objdir') <'/'> (${ Id.VSub_Name name) <S.> (${ Id.VSub_Name objext) ) } spids: [50050] ) ] ) (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 '='>} {<yes>} ) (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:rmfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$rmfiles') <' '> ($ Id.VSub_DollarName '$objdir') <'/lt-'> ($ Id.VSub_DollarName '$name') ) } spids: [50096] ) ] ) ] spids: [50070 50093] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} { (DQ <X> ($ Id.VSub_DollarName '$noexename') ) } {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ <X> ($ Id.VSub_DollarName '$name'))} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:rmfiles) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$rmfiles') <' '> ($ Id.VSub_DollarName '$objdir') <'/lt-'> (${ Id.VSub_Name noexename) <.c> ) } spids: [50131] ) ] ) ] spids: [50109 50128] ) ] ) ] spids: [49978 49987] ) ] ) ] spids: [49883 49897] ) ] ) ] spids: [49879 49880 50153 -1] ) ] ) (C {<func_show_eval>} {(DQ ($ Id.VSub_DollarName '$RM') <' '> ($ Id.VSub_DollarName '$rmfiles'))} {(SQ <'exit_status=1'>)} ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:objdir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$origobjdir'))} spids: [50175] ) ] ) (command.ForEach iter_name: dir iter_words: [{($ Id.VSub_DollarName '$rmdirs')}] do_arg_iter: F body: (command.DoGroup children: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-d>} {(DQ ($ Id.VSub_DollarName '$dir'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<func_show_eval>} {(DQ <'rmdir '> ($ Id.VSub_DollarName '$dir') <' >/dev/null 2>&1'>)} ) ] spids: [50198 50209] ) ] ) ] ) ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$exit_status')} ) ] ) ) (command.AndOr ops: [Id.Op_DAmp] children: [ (BraceGroup children: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<test>} {(DQ ($ Id.VSub_DollarName '$mode'))} {<Id.Lit_Equals '='>} {<uninstall>}) (C {<test>} {(DQ ($ Id.VSub_DollarName '$mode'))} {<Id.Lit_Equals '='>} {<clean>}) ] ) terminator: <Id.Op_Semi _> ) ] ) (C {<func_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 '$@'))}) ) } ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$mode'))}) (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:help) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$generic_help'))} spids: [50289] ) ] ) (C {<func_fatal_help>} {(DQ <'you must specify a MODE'>)}) ] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$exec_cmd'))}) (C {<func_fatal_help>} { (DQ <'invalid operation mode '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\`'>) ($ Id.VSub_DollarName '$mode') <'\''> ) } ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$exec_cmd'))}) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<eval>} {<exec>} {(DQ ($ Id.VSub_DollarName '$exec_cmd'))}) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$EXIT_FAILURE')} ) ] spids: [50326 50337] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Exit exit> arg_word: {($ Id.VSub_DollarName '$exit_status')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:build_libtool_libs) op: assign_op.Equal rhs: {<no>} spids: [50396] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:build_old_libs) op: assign_op.Equal rhs: {<yes>} spids: [50399] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:build_old_libs) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Case to_match: {($ Id.VSub_DollarName '$build_libtool_libs')} arms: [ (case_arm pat_list: [{<yes>}] action: [(C {<echo>} {<no>})] spids: [50419 50420 50425 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [(C {<echo>} {<yes>})] spids: [50427 50428 50433 -1] ) ] ) ) } spids: [50409] ) ] ) ] )