(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:PROGRAM) op:Equal rhs:{(ltmain.sh)} spids:[209])]
      spids: [209]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:PACKAGE) op:Equal rhs:{(libtool)} spids:[212])]
      spids: [212]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:VERSION)
          op: Equal
          rhs: {(DQ ('2.2.6b Debian-2.2.6b-2'))}
          spids: [215]
        )
      ]
      spids: [215]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:TIMESTAMP) op:Equal rhs:{(DQ )} spids:[220])]
      spids: [220]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:package_revision) op:Equal rhs:{(1.3017)} spids:[224])]
      spids: [224]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (AndOr
                  children: [
                    (C {(test)} {(-n)} 
                      {
                        (DQ 
                          (BracedVarSub
                            token: <VSub_Name ZSH_VERSION>
                            suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(set)})
                            spids: [238 242]
                          )
                        )
                      }
                    )
                    (Subshell
                      child: (C {(emulate)} {(sh)})
                      redirects: [
                        (Redir
                          op_id: Redir_Great
                          fd: 16777215
                          arg_word: {(/dev/null)}
                          spids: [253]
                        )
                        (Redir
                          op_id: Redir_GreatAnd
                          fd: 2
                          arg_word: {(1)}
                          spids: [256]
                        )
                      ]
                      spids: [247 251]
                    )
                  ]
                  op_id: Op_DAmp
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(emulate)} {(sh)})
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:NULLCMD)
                  op: Equal
                  rhs: {(Lit_Other ':')}
                  spids: [268]
                )
              ]
              spids: [268]
            )
            (C {(alias)} {(-g)} {(SQ <'${1+"$@"}'>) (Lit_Other '=') (SQ <'"$@"'>)})
            (C {(setopt)} {(NO_GLOB_SUBST)})
          ]
          spids: [16777215 260]
        )
      ]
      else_action: [
        (Case
          to_match: 
            {
              (CommandSubPart
                command_list: 
                  (CommandList
                    children: [
                      (Subshell
                        child: (C {(set)} {(-o)})
                        redirects: [(Redir op_id:Redir_Great fd:2 arg_word:{(/dev/null)} spids:[309])]
                        spids: [303 307]
                      )
                    ]
                  )
                left_token: <Left_Backtick '`'>
                spids: [302 311]
              )
            }
          arms: [
            (case_arm
              pat_list: [{(Lit_Other '*') (posix) (Lit_Other '*')}]
              action: [(C {(set)} {(-o)} {(posix)})]
              spids: [315 318 325 16777215]
            )
          ]
          spids: [300 313 327]
        )
      ]
      spids: [297 329]
    )
    (Sentence
      child: 
        (Assignment
          keyword: Assign_None
          pairs: [(assign_pair lhs:(LhsName name:BIN_SH) op:Equal rhs:{(xpg4)} spids:[331])]
          spids: [331]
        )
      terminator: <Op_Semi ';'>
    )
    (C {(export)} {(BIN_SH)})
    (Sentence
      child: 
        (Assignment
          keyword: Assign_None
          pairs: [(assign_pair lhs:(LhsName name:DUALCASE) op:Equal rhs:{(1)} spids:[342])]
          spids: [342]
        )
      terminator: <Op_Semi ';'>
    )
    (C {(export)} {(DUALCASE)})
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:lt_user_locale) op:Equal rhs:{(SQ )} spids:[366])]
      spids: [366]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:lt_safe_locale) op:Equal rhs:{(SQ )} spids:[368])]
      spids: [368]
    )
    (ForEach
      iter_name: lt_var
      iter_words: [{(LANG)} {(LANGUAGE)} {(LC_ALL)} {(LC_CTYPE)} {(LC_COLLATE)} {(LC_MESSAGES)}]
      do_arg_iter: False
      body: 
        (DoGroup
          children: [
            (C {(eval)} 
              {
                (DQ ('if test ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{') ($ VSub_Name '$lt_var') ('+set}') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                  (' = set; then\n') ('          save_') ($ VSub_Name '$lt_var') ('=') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) 
                  ($ VSub_Name '$lt_var') ('\n') ('          ') ($ VSub_Name '$lt_var') ('=C\n') ('\t  export ') ($ VSub_Name '$lt_var') ('\n') 
                  ('\t  lt_user_locale=') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ($ VSub_Name '$lt_var') ('=') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (save_) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('lt_var; ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (lt_user_locale) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('\n') ('\t  lt_safe_locale=') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                  ($ VSub_Name '$lt_var') ('=C; ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (lt_safe_locale) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('\n') ('\tfi')
                )
              }
            )
          ]
          spids: [388 438]
        )
      spids: [375 16777215]
    )
    (C {($ VSub_Name '$lt_unset')} {(CDPATH)})
    (C {(Lit_Other ':')} 
      {
        (BracedVarSub
          token: <VSub_Name CP>
          suffix_op: (StringUnary op_id:VTest_Equals arg_word:{(DQ ('cp -f'))})
          spids: [452 458]
        )
      }
    )
    (C {(Lit_Other ':')} 
      {
        (BracedVarSub
          token: <VSub_Name ECHO>
          suffix_op: (StringUnary op_id:VTest_Equals arg_word:{(DQ (echo))})
          spids: [462 468]
        )
      }
    )
    (C {(Lit_Other ':')} 
      {
        (BracedVarSub
          token: <VSub_Name EGREP>
          suffix_op: (StringUnary op_id:VTest_Equals arg_word:{(DQ ('/bin/grep -E'))})
          spids: [472 478]
        )
      }
    )
    (C {(Lit_Other ':')} 
      {
        (BracedVarSub
          token: <VSub_Name FGREP>
          suffix_op: (StringUnary op_id:VTest_Equals arg_word:{(DQ ('/bin/grep -F'))})
          spids: [482 488]
        )
      }
    )
    (C {(Lit_Other ':')} 
      {
        (BracedVarSub
          token: <VSub_Name GREP>
          suffix_op: (StringUnary op_id:VTest_Equals arg_word:{(DQ (/bin/grep))})
          spids: [492 498]
        )
      }
    )
    (C {(Lit_Other ':')} 
      {
        (BracedVarSub
          token: <VSub_Name LN_S>
          suffix_op: (StringUnary op_id:VTest_Equals arg_word:{(DQ ('ln -s'))})
          spids: [502 508]
        )
      }
    )
    (C {(Lit_Other ':')} 
      {
        (BracedVarSub
          token: <VSub_Name MAKE>
          suffix_op: (StringUnary op_id:VTest_Equals arg_word:{(DQ (make))})
          spids: [512 518]
        )
      }
    )
    (C {(Lit_Other ':')} 
      {
        (BracedVarSub
          token: <VSub_Name MKDIR>
          suffix_op: (StringUnary op_id:VTest_Equals arg_word:{(DQ (mkdir))})
          spids: [522 528]
        )
      }
    )
    (C {(Lit_Other ':')} 
      {
        (BracedVarSub
          token: <VSub_Name MV>
          suffix_op: (StringUnary op_id:VTest_Equals arg_word:{(DQ ('mv -f'))})
          spids: [532 538]
        )
      }
    )
    (C {(Lit_Other ':')} 
      {
        (BracedVarSub
          token: <VSub_Name RM>
          suffix_op: (StringUnary op_id:VTest_Equals arg_word:{(DQ ('rm -f'))})
          spids: [542 548]
        )
      }
    )
    (C {(Lit_Other ':')} 
      {
        (BracedVarSub
          token: <VSub_Name SED>
          suffix_op: (StringUnary op_id:VTest_Equals arg_word:{(DQ (/bin/sed))})
          spids: [552 558]
        )
      }
    )
    (C {(Lit_Other ':')} 
      {
        (BracedVarSub
          token: <VSub_Name SHELL>
          suffix_op: 
            (StringUnary
              op_id: VTest_Equals
              arg_word: 
                {
                  (DQ 
                    (BracedVarSub
                      token: <VSub_Name CONFIG_SHELL>
                      suffix_op: 
                        (StringUnary
                          op_id: VTest_Hyphen
                          arg_word: {(Lit_Slash /) (bin) (Lit_Slash /) (sh)}
                        )
                      spids: [566 573]
                    )
                  )
                }
            )
          spids: [562 575]
        )
      }
    )
    (C {(Lit_Other ':')} 
      {
        (BracedVarSub
          token: <VSub_Name Xsed>
          suffix_op: 
            (StringUnary
              op_id: VTest_Equals
              arg_word: {(DQ ($ VSub_Name '$SED') (' -e 1s/^X//'))}
            )
          spids: [579 586]
        )
      }
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:EXIT_SUCCESS) op:Equal rhs:{(0)} spids:[592])]
      spids: [592]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:EXIT_FAILURE) op:Equal rhs:{(1)} spids:[595])]
      spids: [595]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:EXIT_MISMATCH) op:Equal rhs:{(63)} spids:[598])]
      spids: [598]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:EXIT_SKIP) op:Equal rhs:{(77)} spids:[604])]
      spids: [604]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:exit_status)
          op: Equal
          rhs: {($ VSub_Name '$EXIT_SUCCESS')}
          spids: [611]
        )
      ]
      spids: [611]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:lt_nl) op:Equal rhs:{(SQ <'\n'>)} spids:[618])]
      spids: [618]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:IFS)
          op: Equal
          rhs: {(DQ (' \t') ($ VSub_Name '$lt_nl'))}
          spids: [623]
        )
      ]
      spids: [623]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:dirname)
          op: Equal
          rhs: {(DQ ('s,/[^/]*') (Lit_Other '$') (',,'))}
          spids: [630]
        )
      ]
      spids: [630]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:basename) op:Equal rhs:{(DQ ('s,^.*/,,'))} spids:[637])]
      spids: [637]
    )
    (FuncDef
      name: func_dirname_and_basename
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:func_dirname_result)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {($ VSub_Name '$ECHO')} {(DQ (X) (${ VSub_Number 1))})
                                  (C {($ VSub_Name '$Xsed')} {(-e)} {(DQ ($ VSub_Name '$dirname'))})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_Backtick '`'>
                        spids: [692 711]
                      )
                    }
                  spids: [691]
                )
              ]
              spids: [691]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(test)} {(DQ (X) ($ VSub_Name '$func_dirname_result'))} {(Lit_Other '=')} 
                          {(DQ (X) (${ VSub_Number 1))}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:func_dirname_result)
                          op: Equal
                          rhs: {(DQ (${ VSub_Number 3))}
                          spids: [736]
                        )
                      ]
                      spids: [736]
                    )
                  ]
                  spids: [16777215 733]
                )
              ]
              else_action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:func_dirname_result)
                      op: Equal
                      rhs: {(DQ ($ VSub_Name '$func_dirname_result') (${ VSub_Number 2))}
                      spids: [747]
                    )
                  ]
                  spids: [747]
                )
              ]
              spids: [744 756]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:func_basename_result)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {($ VSub_Name '$ECHO')} {(DQ (X) (${ VSub_Number 1))})
                                  (C {($ VSub_Name '$Xsed')} {(-e)} {(DQ ($ VSub_Name '$basename'))})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_Backtick '`'>
                        spids: [760 779]
                      )
                    }
                  spids: [759]
                )
              ]
              spids: [759]
            )
          ]
          spids: [684]
        )
      spids: [679 683]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:progpath)
          op: Equal
          rhs: {(DQ ($ VSub_Number '$0'))}
          spids: [803]
        )
      ]
      spids: [803]
    )
    (C {(func_dirname_and_basename)} {(DQ ($ VSub_Name '$progpath'))})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:progname)
          op: Equal
          rhs: {($ VSub_Name '$func_basename_result')}
          spids: [824]
        )
      ]
      spids: [824]
    )
    (Case
      to_match: {($ VSub_Name '$progname')}
      arms: [
        (case_arm
          pat_list: [{(-) (Lit_Other '*')}]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:progname)
                  op: Equal
                  rhs: {(./) ($ VSub_Name '$progname')}
                  spids: [838]
                )
              ]
              spids: [838]
            )
          ]
          spids: [834 836 842 16777215]
        )
      ]
      spids: [827 831 844]
    )
    (Case
      to_match: {($ VSub_Name '$progpath')}
      arms: [
        (case_arm
          pat_list: [
            {(Lit_Other '[') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (/) (Lit_Other ']') 
              (Lit_Other '*')
            }
            {(Lit_Other '[') (A-Za-z) (Lit_Other ']') (Lit_Other ':') 
              (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (Lit_Other '*')
            }
          ]
          spids: [857 869 871 16777215]
        )
        (case_arm
          pat_list: [
            {(Lit_Other '*') (Lit_Other '[') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (/) 
              (Lit_Other ']') (Lit_Other '*')
            }
          ]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:progdir)
                  op: Equal
                  rhs: {($ VSub_Name '$func_dirname_result')}
                  spids: [883]
                )
              ]
              spids: [883]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:progdir)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (AndOr
                                children: [(C {(cd)} {(DQ ($ VSub_Name '$progdir'))}) (C {(pwd)})]
                                op_id: Op_DAmp
                              )
                            ]
                          )
                        left_token: <Left_Backtick '`'>
                        spids: [888 898]
                      )
                    }
                  spids: [887]
                )
              ]
              spids: [887]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:progpath)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$progdir') (/) ($ VSub_Name '$progname'))}
                  spids: [901]
                )
              ]
              spids: [901]
            )
          ]
          spids: [874 880 909 16777215]
        )
        (case_arm
          pat_list: [{(Lit_Other '*')}]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:save_IFS)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$IFS'))}
                  spids: [916]
                )
              ]
              spids: [916]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:IFS) op:Equal rhs:{(Lit_Other ':')} spids:[922])]
              spids: [922]
            )
            (ForEach
              iter_name: progdir
              iter_words: [{($ VSub_Name '$PATH')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:IFS)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$save_IFS'))}
                          spids: [938]
                        )
                      ]
                      spids: [938]
                    )
                    (AndOr
                      children: [
                        (C {(test)} {(-x)} {(DQ ($ VSub_Name '$progdir') (/) ($ VSub_Name '$progname'))})
                        (ControlFlow token:<ControlFlow_Break break>)
                      ]
                      op_id: Op_DAmp
                    )
                  ]
                  spids: [935 959]
                )
              spids: [931 933]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:IFS)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$save_IFS'))}
                  spids: [962]
                )
              ]
              spids: [962]
            )
            (AndOr
              children: [
                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$progdir'))})
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:progdir)
                      op: Equal
                      rhs: 
                        {
                          (CommandSubPart
                            command_list: (CommandList children:[(C {(pwd)})])
                            left_token: <Left_Backtick '`'>
                            spids: [979 981]
                          )
                        }
                      spids: [978]
                    )
                  ]
                  spids: [978]
                )
              ]
              op_id: Op_DPipe
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:progpath)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$progdir') (/) ($ VSub_Name '$progname'))}
                  spids: [984]
                )
              ]
              spids: [984]
            )
          ]
          spids: [912 913 992 16777215]
        )
      ]
      spids: [850 854 994]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:Xsed)
          op: Equal
          rhs: {(DQ (${ VSub_Name SED)) (SQ <' -e 1s/^X//'>)}
          spids: [1003]
        )
      ]
      spids: [1003]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sed_quote_subst)
          op: Equal
          rhs: {(SQ <'s/\\([`"$\\\\]\\)/\\\\\\1/g'>)}
          spids: [1013]
        )
      ]
      spids: [1013]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:double_quote_subst)
          op: Equal
          rhs: {(SQ <'s/\\(["`\\\\]\\)/\\\\\\1/g'>)}
          spids: [1022]
        )
      ]
      spids: [1022]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:bs) op:Equal rhs:{(SQ <'\\\\'>)} spids:[1043])]
      spids: [1043]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:bs2) op:Equal rhs:{(SQ <'\\\\\\\\'>)} spids:[1048])]
      spids: [1048]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:bs4)
          op: Equal
          rhs: {(SQ <'\\\\\\\\\\\\\\\\'>)}
          spids: [1053]
        )
      ]
      spids: [1053]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:dollar) op:Equal rhs:{(SQ <'\\$'>)} spids:[1058])]
      spids: [1058]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sed_double_backslash)
          op: Equal
          rhs: 
            {
              (DQ ('  s/') ($ VSub_Name '$bs4') ('/&') 
                (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('\n') ('/g\n') ('  s/^') ($ VSub_Name '$bs2') ($ VSub_Name '$dollar') (/) ($ VSub_Name '$bs') ('&/\n') 
                ('  s/') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('([^') ($ VSub_Name '$bs') (']') 
                (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (')') ($ VSub_Name '$bs2') ($ VSub_Name '$dollar') (/) (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) 
                (1) ($ VSub_Name '$bs2') ($ VSub_Name '$bs') ($ VSub_Name '$dollar') ('/g\n') ('  s/') (Lit_Other '\\') (n//g)
              )
            }
          spids: [1063]
        )
      ]
      spids: [1063]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:opt_dry_run) op:Equal rhs:{(false)} spids:[1103])]
      spids: [1103]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:opt_help) op:Equal rhs:{(false)} spids:[1106])]
      spids: [1106]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:opt_quiet) op:Equal rhs:{(false)} spids:[1109])]
      spids: [1109]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:opt_verbose) op:Equal rhs:{(false)} spids:[1112])]
      spids: [1112]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:opt_warning)
          op: Equal
          rhs: {(Lit_Other ':')}
          spids: [1115]
        )
      ]
      spids: [1115]
    )
    (FuncDef
      name: func_echo
      body: 
        (BraceGroup
          children: [
            (C {($ VSub_Name '$ECHO')} 
              {
                (DQ ($ VSub_Name '$progname') 
                  (BracedVarSub
                    token: <VSub_Name mode>
                    suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(': ')})
                    spids: [1140 1144]
                  ) ($ VSub_Name '$mode') (': ') ($ VSub_Star '$*')
                )
              }
            )
          ]
          spids: [1133]
        )
      spids: [1128 1132]
    )
    (FuncDef
      name: func_verbose
      body: 
        (BraceGroup
          children: [
            (AndOr
              children: [
                (C {($ VSub_Name '$opt_verbose')})
                (C {(func_echo)} 
                  {
                    (BracedVarSub
                      token: <VSub_Number 1>
                      suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
                      spids: [1173 1179]
                    )
                  }
                )
              ]
              op_id: Op_DAmp
            )
            (C {(Lit_Other ':')})
          ]
          spids: [1164]
        )
      spids: [1159 1163]
    )
    (FuncDef
      name: func_error
      body: 
        (BraceGroup
          children: [
            (SimpleCommand
              words: [
                {($ VSub_Name '$ECHO')}
                {
                  (DQ ($ VSub_Name '$progname') 
                    (BracedVarSub
                      token: <VSub_Name mode>
                      suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(': ')})
                      spids: [1218 1222]
                    ) ($ VSub_Name '$mode') (': ')
                  ) 
                  (BracedVarSub
                    token: <VSub_Number 1>
                    suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
                    spids: [1226 1232]
                  )
                }
              ]
              redirects: [(Redir op_id:Redir_GreatAnd fd:1 arg_word:{(2)} spids:[1234])]
            )
          ]
          spids: [1211]
        )
      spids: [1206 1210]
    )
    (FuncDef
      name: func_warning
      body: 
        (BraceGroup
          children: [
            (AndOr
              children: [
                (C {($ VSub_Name '$opt_warning')})
                (SimpleCommand
                  words: [
                    {($ VSub_Name '$ECHO')}
                    {
                      (DQ ($ VSub_Name '$progname') 
                        (BracedVarSub
                          token: <VSub_Name mode>
                          suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(': ')})
                          spids: [1262 1266]
                        ) ($ VSub_Name '$mode') (': warning: ')
                      ) 
                      (BracedVarSub
                        token: <VSub_Number 1>
                        suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
                        spids: [1270 1276]
                      )
                    }
                  ]
                  redirects: [(Redir op_id:Redir_GreatAnd fd:1 arg_word:{(2)} spids:[1278])]
                )
              ]
              op_id: Op_DAmp
            )
            (C {(Lit_Other ':')})
          ]
          spids: [1251]
        )
      spids: [1246 1250]
    )
    (FuncDef
      name: func_fatal_error
      body: 
        (BraceGroup
          children: [
            (C {(func_error)} 
              {
                (BracedVarSub
                  token: <VSub_Number 1>
                  suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
                  spids: [1308 1314]
                )
              }
            )
            (C {(exit)} {($ VSub_Name '$EXIT_FAILURE')})
          ]
          spids: [1303]
        )
      spids: [1298 1302]
    )
    (FuncDef
      name: func_fatal_help
      body: 
        (BraceGroup
          children: [
            (C {(func_error)} 
              {
                (BracedVarSub
                  token: <VSub_Number 1>
                  suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
                  spids: [1343 1349]
                )
              }
            )
            (C {(func_fatal_error)} {(DQ ($ VSub_Name '$help'))})
          ]
          spids: [1338]
        )
      spids: [1333 1337]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:help)
          op: Equal
          rhs: 
            {
              (DQ ('Try ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ($ VSub_Name '$progname') 
                (" --help' for more information.")
              )
            }
          spids: [1360]
        )
      ]
      spids: [1360]
    )
    (FuncDef
      name: func_grep
      body: 
        (BraceGroup
          children: [
            (SimpleCommand
              words: [{($ VSub_Name '$GREP')} {(DQ ($ VSub_Number '$1'))} {(DQ ($ VSub_Number '$2'))}]
              redirects: [
                (Redir
                  op_id: Redir_Great
                  fd: 16777215
                  arg_word: {(/dev/null)}
                  spids: [1397]
                )
                (Redir op_id:Redir_GreatAnd fd:2 arg_word:{(1)} spids:[1400])
              ]
            )
          ]
          spids: [1384]
        )
      spids: [1379 1383]
    )
    (FuncDef
      name: func_mkdir_p
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:my_directory_path)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$1'))}
                  spids: [1421]
                )
              ]
              spids: [1421]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:my_dir_list) op:Equal rhs:{(SQ )} spids:[1427])]
              spids: [1427]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (AndOr
                          children: [
                            (C {(test)} {(-n)} {(DQ ($ VSub_Name '$my_directory_path'))})
                            (C {(test)} {(DQ ($ VSub_Name '$opt_dry_run'))} 
                              {(KW_Bang '!') (Lit_Other '=')} {(DQ (':'))}
                            )
                          ]
                          op_id: Op_DAmp
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Case
                      to_match: {($ VSub_Name '$my_directory_path')}
                      arms: [
                        (case_arm
                          pat_list: [{(-) (Lit_Other '*')}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:my_directory_path)
                                  op: Equal
                                  rhs: {(DQ (./) ($ VSub_Name '$my_directory_path'))}
                                  spids: [1476]
                                )
                              ]
                              spids: [1476]
                            )
                          ]
                          spids: [1472 1474 1482 16777215]
                        )
                      ]
                      spids: [1465 1469 1485]
                    )
                    (While
                      cond: [
                        (Sentence
                          child: 
                            (C {(test)} {(KW_Bang '!')} {(-d)} {(DQ ($ VSub_Name '$my_directory_path'))})
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      body: 
                        (DoGroup
                          children: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:my_dir_list)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$my_directory_path') (':') 
                                        ($ VSub_Name '$my_dir_list')
                                      )
                                    }
                                  spids: [1517]
                                )
                              ]
                              spids: [1517]
                            )
                            (Case
                              to_match: {($ VSub_Name '$my_directory_path')}
                              arms: [
                                (case_arm
                                  pat_list: [{(Lit_Other '*') (/) (Lit_Other '*')}]
                                  spids: [1536 1539 1541 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [(ControlFlow token:<ControlFlow_Break break>)]
                                  spids: [1543 1544 1548 16777215]
                                )
                              ]
                              spids: [1530 1534 1550]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:my_directory_path)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (Pipeline
                                                children: [
                                                  (C {($ VSub_Name '$ECHO')} 
                                                    {(DQ (X) ($ VSub_Name '$my_directory_path'))}
                                                  )
                                                  (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                    {(DQ ($ VSub_Name '$dirname'))}
                                                  )
                                                ]
                                                negated: False
                                              )
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [1559 1576]
                                      )
                                    }
                                  spids: [1558]
                                )
                              ]
                              spids: [1558]
                            )
                          ]
                          spids: [1506 1579]
                        )
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:my_dir_list)
                          op: Equal
                          rhs: 
                            {
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (Pipeline
                                        children: [
                                          (C {($ VSub_Name '$ECHO')} 
                                            {(DQ (X) ($ VSub_Name '$my_dir_list'))}
                                          )
                                          (C {($ VSub_Name '$Xsed')} {(-e)} {(SQ <'s,:*$,,'>)})
                                        ]
                                        negated: False
                                      )
                                    ]
                                  )
                                left_token: <Left_Backtick '`'>
                                spids: [1583 1600]
                              )
                            }
                          spids: [1582]
                        )
                      ]
                      spids: [1582]
                    )
                    (Sentence
                      child: 
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:save_mkdir_p_IFS)
                              op: Equal
                              rhs: {(DQ ($ VSub_Name '$IFS'))}
                              spids: [1604]
                            )
                          ]
                          spids: [1604]
                        )
                      terminator: <Op_Semi ';'>
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:IFS)
                          op: Equal
                          rhs: {(SQ <':'>)}
                          spids: [1610]
                        )
                      ]
                      spids: [1610]
                    )
                    (ForEach
                      iter_name: my_dir
                      iter_words: [{($ VSub_Name '$my_dir_list')}]
                      do_arg_iter: False
                      body: 
                        (DoGroup
                          children: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:IFS)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$save_mkdir_p_IFS'))}
                                  spids: [1628]
                                )
                              ]
                              spids: [1628]
                            )
                            (AndOr
                              children: [
                                (SimpleCommand
                                  words: [{($ VSub_Name '$MKDIR')} {(DQ ($ VSub_Name '$my_dir'))}]
                                  redirects: [
                                    (Redir
                                      op_id: Redir_Great
                                      fd: 2
                                      arg_word: {(/dev/null)}
                                      spids: [1652]
                                    )
                                  ]
                                )
                                (C {(Lit_Other ':')})
                              ]
                              op_id: Op_DPipe
                            )
                          ]
                          spids: [1625 1660]
                        )
                      spids: [1621 1623]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:IFS)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$save_mkdir_p_IFS'))}
                          spids: [1663]
                        )
                      ]
                      spids: [1663]
                    )
                    (AndOr
                      children: [
                        (C {(test)} {(-d)} {(DQ ($ VSub_Name '$my_directory_path'))})
                        (C {(func_fatal_error)} 
                          {
                            (DQ ('Failed to create ') 
                              (EscapedLiteralPart
                                token: <Lit_EscapedChar '\\`'>
                              ) ($ VSub_Number '$1') ("'")
                            )
                          }
                        )
                      ]
                      op_id: Op_DPipe
                    )
                  ]
                  spids: [16777215 1457]
                )
              ]
              spids: [16777215 1696]
            )
          ]
          spids: [1418]
        )
      spids: [1413 1417]
    )
    (FuncDef
      name: func_mktempdir
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:my_template)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (BracedVarSub
                          token: <VSub_Name TMPDIR>
                          suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(Lit_Slash /) (tmp)})
                          spids: [1724 1729]
                        ) (/) 
                        (BracedVarSub
                          token: <VSub_Number 1>
                          suffix_op: 
                            (StringUnary
                              op_id: VTest_Hyphen
                              arg_word: {($ VSub_Name '$progname')}
                            )
                          spids: [1731 1735]
                        )
                      )
                    }
                  spids: [1722]
                )
              ]
              spids: [1722]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(test)} {(DQ ($ VSub_Name '$opt_dry_run'))} {(Lit_Other '=')} {(DQ (':'))})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:my_tmpdir)
                          op: Equal
                          rhs: {(DQ (${ VSub_Name my_template) (-) ($ VSub_Dollar '$$'))}
                          spids: [1762]
                        )
                      ]
                      spids: [1762]
                    )
                  ]
                  spids: [16777215 1755]
                )
              ]
              else_action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:my_tmpdir)
                      op: Equal
                      rhs: 
                        {
                          (CommandSubPart
                            command_list: 
                              (CommandList
                                children: [
                                  (SimpleCommand
                                    words: [
                                      {(mktemp)}
                                      {(-d)}
                                      {(DQ (${ VSub_Name my_template) (-XXXXXXXX))}
                                    ]
                                    redirects: [
                                      (Redir
                                        op_id: Redir_Great
                                        fd: 2
                                        arg_word: {(/dev/null)}
                                        spids: [1793]
                                      )
                                    ]
                                  )
                                ]
                              )
                            left_token: <Left_Backtick '`'>
                            spids: [1781 1795]
                          )
                        }
                      spids: [1780]
                    )
                  ]
                  spids: [1780]
                )
                (If
                  arms: [
                    (if_arm
                      cond: [
                        (Sentence
                          child: (C {(test)} {(KW_Bang '!')} {(-d)} {(DQ ($ VSub_Name '$my_tmpdir'))})
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:my_tmpdir)
                              op: Equal
                              rhs: 
                                {
                                  (DQ (${ VSub_Name my_template) (-) 
                                    (BracedVarSub
                                      token: <VSub_Name RANDOM>
                                      suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(0)})
                                      spids: [1825 1829]
                                    ) ($ VSub_Dollar '$$')
                                  )
                                }
                              spids: [1819]
                            )
                          ]
                          spids: [1819]
                        )
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:save_mktempdir_umask)
                              op: Equal
                              rhs: 
                                {
                                  (CommandSubPart
                                    command_list: (CommandList children:[(C {(umask)})])
                                    left_token: <Left_Backtick '`'>
                                    spids: [1836 1838]
                                  )
                                }
                              spids: [1835]
                            )
                          ]
                          spids: [1835]
                        )
                        (C {(umask)} {(0077)})
                        (C {($ VSub_Name '$MKDIR')} {(DQ ($ VSub_Name '$my_tmpdir'))})
                        (C {(umask)} {($ VSub_Name '$save_mktempdir_umask')})
                      ]
                      spids: [16777215 1812]
                    )
                  ]
                  spids: [16777215 1858]
                )
                (AndOr
                  children: [
                    (C {(test)} {(-d)} {(DQ ($ VSub_Name '$my_tmpdir'))})
                    (C {(func_fatal_error)} 
                      {
                        (DQ ('cannot create temporary directory ') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ($ VSub_Name '$my_tmpdir') ("'")
                        )
                      }
                    )
                  ]
                  op_id: Op_DPipe
                )
              ]
              spids: [1772 1888]
            )
            (Pipeline
              children: [
                (C {($ VSub_Name '$ECHO')} {(DQ (X) ($ VSub_Name '$my_tmpdir'))})
                (C {($ VSub_Name '$Xsed')})
              ]
              negated: False
            )
          ]
          spids: [1719]
        )
      spids: [1714 1718]
    )
    (FuncDef
      name: func_quote_for_eval
      body: 
        (BraceGroup
          children: [
            (Case
              to_match: {($ VSub_Number '$1')}
              arms: [
                (case_arm
                  pat_list: [
                    {(Lit_Other '*') (Lit_Other '[') 
                      (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                      (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (Lit_Other ']') (Lit_Other '*')
                    }
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:func_quote_for_eval_unquoted_result)
                          op: Equal
                          rhs: 
                            {
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (Pipeline
                                        children: [
                                          (C {($ VSub_Name '$ECHO')} {(DQ (X) ($ VSub_Number '$1'))})
                                          (C {($ VSub_Name '$Xsed')} {(-e)} 
                                            {(DQ ($ VSub_Name '$sed_quote_subst'))}
                                          )
                                        ]
                                        negated: False
                                      )
                                    ]
                                  )
                                left_token: <Left_Backtick '`'>
                                spids: [1952 1969]
                              )
                            }
                          spids: [1951]
                        )
                      ]
                      spids: [1951]
                    )
                  ]
                  spids: [1940 1948 1971 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*')}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:func_quote_for_eval_unquoted_result)
                          op: Equal
                          rhs: {(DQ ($ VSub_Number '$1'))}
                          spids: [1978]
                        )
                      ]
                      spids: [1978]
                    )
                  ]
                  spids: [1974 1975 1983 16777215]
                )
              ]
              spids: [1933 1937 1986]
            )
            (Case
              to_match: {($ VSub_Name '$func_quote_for_eval_unquoted_result')}
              arms: [
                (case_arm
                  pat_list: [
                    {(Lit_Other '*') (Lit_Other '[') 
                      (EscapedLiteralPart token:<Lit_EscapedChar '\\['>) (EscapedLiteralPart token:<Lit_EscapedChar '\\~'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\#'>) 
                      (EscapedLiteralPart token:<Lit_EscapedChar '\\^'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\&'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\*'>) 
                      (EscapedLiteralPart token:<Lit_EscapedChar '\\('>) (EscapedLiteralPart token:<Lit_EscapedChar '\\)'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\{'>) 
                      (EscapedLiteralPart token:<Lit_EscapedChar '\\}'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\|'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\;'>) 
                      (EscapedLiteralPart token:<Lit_EscapedChar '\\<'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\>'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\?'>) 
                      (EscapedLiteralPart token:<Lit_EscapedChar "\\'">) (EscapedLiteralPart token:<Lit_EscapedChar '\\ '>) (EscapedLiteralPart token:<Lit_EscapedChar '\\\t'>) 
                      (Lit_Other ']') (Lit_Other '*')
                    }
                    {(Lit_Other '*') (Lit_Other ']') (Lit_Other '*')}
                    {(DQ )}
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:func_quote_for_eval_result)
                          op: Equal
                          rhs: 
                            {
                              (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                                ($ VSub_Name '$func_quote_for_eval_unquoted_result') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                              )
                            }
                          spids: [2049]
                        )
                      ]
                      spids: [2049]
                    )
                  ]
                  spids: [2017 2046 2057 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*')}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:func_quote_for_eval_result)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$func_quote_for_eval_unquoted_result'))}
                          spids: [2064]
                        )
                      ]
                      spids: [2064]
                    )
                  ]
                  spids: [2060 2061 16777215 2070]
                )
              ]
              spids: [1990 1994 2070]
            )
          ]
          spids: [1930]
        )
      spids: [1925 1929]
    )
    (FuncDef
      name: func_quote_for_expand
      body: 
        (BraceGroup
          children: [
            (Case
              to_match: {($ VSub_Number '$1')}
              arms: [
                (case_arm
                  pat_list: [
                    {(Lit_Other '*') (Lit_Other '[') 
                      (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                      (Lit_Other ']') (Lit_Other '*')
                    }
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:my_arg)
                          op: Equal
                          rhs: 
                            {
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (Pipeline
                                        children: [
                                          (C {($ VSub_Name '$ECHO')} {(DQ (X) ($ VSub_Number '$1'))})
                                          (C {($ VSub_Name '$Xsed')} {(-e)} 
                                            {(DQ ($ VSub_Name '$double_quote_subst'))} {(-e)} {(DQ ($ VSub_Name '$sed_double_backslash'))}
                                          )
                                        ]
                                        negated: False
                                      )
                                    ]
                                  )
                                left_token: <Left_Backtick '`'>
                                spids: [2111 2136]
                              )
                            }
                          spids: [2110]
                        )
                      ]
                      spids: [2110]
                    )
                  ]
                  spids: [2100 2107 2138 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*')}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:my_arg)
                          op: Equal
                          rhs: {(DQ ($ VSub_Number '$1'))}
                          spids: [2145]
                        )
                      ]
                      spids: [2145]
                    )
                  ]
                  spids: [2141 2142 2150 16777215]
                )
              ]
              spids: [2093 2097 2153]
            )
            (Case
              to_match: {($ VSub_Name '$my_arg')}
              arms: [
                (case_arm
                  pat_list: [
                    {(Lit_Other '*') (Lit_Other '[') 
                      (EscapedLiteralPart token:<Lit_EscapedChar '\\['>) (EscapedLiteralPart token:<Lit_EscapedChar '\\~'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\#'>) 
                      (EscapedLiteralPart token:<Lit_EscapedChar '\\^'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\&'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\*'>) 
                      (EscapedLiteralPart token:<Lit_EscapedChar '\\('>) (EscapedLiteralPart token:<Lit_EscapedChar '\\)'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\{'>) 
                      (EscapedLiteralPart token:<Lit_EscapedChar '\\}'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\|'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\;'>) 
                      (EscapedLiteralPart token:<Lit_EscapedChar '\\<'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\>'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\?'>) 
                      (EscapedLiteralPart token:<Lit_EscapedChar "\\'">) (EscapedLiteralPart token:<Lit_EscapedChar '\\ '>) (EscapedLiteralPart token:<Lit_EscapedChar '\\\t'>) 
                      (Lit_Other ']') (Lit_Other '*')
                    }
                    {(Lit_Other '*') (Lit_Other ']') (Lit_Other '*')}
                    {(DQ )}
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:my_arg)
                          op: Equal
                          rhs: 
                            {
                              (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                                ($ VSub_Name '$my_arg') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                              )
                            }
                          spids: [2212]
                        )
                      ]
                      spids: [2212]
                    )
                  ]
                  spids: [2180 2209 2220 16777215]
                )
              ]
              spids: [2157 2161 2223]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:func_quote_for_expand_result)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$my_arg'))}
                  spids: [2227]
                )
              ]
              spids: [2227]
            )
          ]
          spids: [2090]
        )
      spids: [2085 2089]
    )
    (FuncDef
      name: func_show_eval
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:my_cmd)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$1'))}
                  spids: [2256]
                )
              ]
              spids: [2256]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:my_fail_exp)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (BracedVarSub
                          token: <VSub_Number 2>
                          suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(':')})
                          spids: [2264 2268]
                        )
                      )
                    }
                  spids: [2262]
                )
              ]
              spids: [2262]
            )
            (AndOr
              children: [
                (C 
                  {
                    (BracedVarSub
                      token: <VSub_Name opt_silent>
                      suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(false)})
                      spids: [2273 2277]
                    )
                  }
                )
                (BraceGroup
                  children: [
                    (C {(func_quote_for_expand)} {(DQ ($ VSub_Name '$my_cmd'))})
                    (C {(eval)} {(DQ ('func_echo ') ($ VSub_Name '$func_quote_for_expand_result'))})
                  ]
                  spids: [2281]
                )
              ]
              op_id: Op_DPipe
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C 
                          {
                            (BracedVarSub
                              token: <VSub_Name opt_dry_run>
                              suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(false)})
                              spids: [2305 2309]
                            )
                          }
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)]
                  spids: [16777215 2312]
                )
              ]
              else_action: [
                (C {(eval)} {(DQ ($ VSub_Name '$my_cmd'))})
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:my_status)
                      op: Equal
                      rhs: {($ VSub_QMark '$?')}
                      spids: [2327]
                    )
                  ]
                  spids: [2327]
                )
                (If
                  arms: [
                    (if_arm
                      cond: [
                        (Sentence
                          child: (C {(test)} {(DQ ($ VSub_Name '$my_status'))} {(-eq)} {(0)})
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [(Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)]
                      spids: [16777215 2344]
                    )
                  ]
                  else_action: [
                    (C {(eval)} 
                      {
                        (DQ ('(exit ') ($ VSub_Name '$my_status') ('); ') ($ VSub_Name '$my_fail_exp'))
                      }
                    )
                  ]
                  spids: [2349 2362]
                )
              ]
              spids: [2317 2365]
            )
          ]
          spids: [2253]
        )
      spids: [2248 2252]
    )
    (FuncDef
      name: func_show_eval_locale
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:my_cmd)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$1'))}
                  spids: [2391]
                )
              ]
              spids: [2391]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:my_fail_exp)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (BracedVarSub
                          token: <VSub_Number 2>
                          suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(':')})
                          spids: [2399 2403]
                        )
                      )
                    }
                  spids: [2397]
                )
              ]
              spids: [2397]
            )
            (AndOr
              children: [
                (C 
                  {
                    (BracedVarSub
                      token: <VSub_Name opt_silent>
                      suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(false)})
                      spids: [2408 2412]
                    )
                  }
                )
                (BraceGroup
                  children: [
                    (C {(func_quote_for_expand)} {(DQ ($ VSub_Name '$my_cmd'))})
                    (C {(eval)} {(DQ ('func_echo ') ($ VSub_Name '$func_quote_for_expand_result'))})
                  ]
                  spids: [2416]
                )
              ]
              op_id: Op_DPipe
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C 
                          {
                            (BracedVarSub
                              token: <VSub_Name opt_dry_run>
                              suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(false)})
                              spids: [2440 2444]
                            )
                          }
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)]
                  spids: [16777215 2447]
                )
              ]
              else_action: [
                (C {(eval)} 
                  {(DQ ($ VSub_Name '$lt_user_locale') ('\n') ('\t    ') ($ VSub_Name '$my_cmd'))}
                )
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:my_status)
                      op: Equal
                      rhs: {($ VSub_QMark '$?')}
                      spids: [2465]
                    )
                  ]
                  spids: [2465]
                )
                (C {(eval)} {(DQ ($ VSub_Name '$lt_safe_locale'))})
                (If
                  arms: [
                    (if_arm
                      cond: [
                        (Sentence
                          child: (C {(test)} {(DQ ($ VSub_Name '$my_status'))} {(-eq)} {(0)})
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [(Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)]
                      spids: [16777215 2489]
                    )
                  ]
                  else_action: [
                    (C {(eval)} 
                      {
                        (DQ ('(exit ') ($ VSub_Name '$my_status') ('); ') ($ VSub_Name '$my_fail_exp'))
                      }
                    )
                  ]
                  spids: [2494 2507]
                )
              ]
              spids: [2452 2510]
            )
          ]
          spids: [2388]
        )
      spids: [2383 2387]
    )
    (FuncDef
      name: func_version
      body: 
        (BraceGroup
          children: [
            (SimpleCommand
              words: [
                {($ VSub_Name '$SED')}
                {(-n)}
                {(SQ <'/^# '>) ($ VSub_Name '$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
                  fd: 16777215
                  arg_word: {(DQ ($ VSub_Name '$progpath'))}
                  spids: [2550]
                )
              ]
            )
            (C {(exit)} {($ VSub_QMark '$?')})
          ]
          spids: [2530]
        )
      spids: [2525 2529]
    )
    (FuncDef
      name: func_usage
      body: 
        (BraceGroup
          children: [
            (SimpleCommand
              words: [
                {($ VSub_Name '$SED')}
                {(-n)}
                {
                  (SQ <'/^# Usage:/,/# -h/ {\n'> <'        s/^# //\n'> <'\ts/^# *$//\n'> 
                    <'\ts/\\$progname/'>
                  ) ($ VSub_Name '$progname') (SQ <'/\n'> <'\tp\n'> <'    }'>)
                }
              ]
              redirects: [
                (Redir
                  op_id: Redir_Less
                  fd: 16777215
                  arg_word: {(DQ ($ VSub_Name '$progpath'))}
                  spids: [2595]
                )
              ]
            )
            (C {($ VSub_Name '$ECHO')})
            (C {($ VSub_Name '$ECHO')} 
              {
                (DQ ('run ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                  ($ VSub_Name '$progname') (" --help | more' for full usage")
                )
              }
            )
            (C {(exit)} {($ VSub_QMark '$?')})
          ]
          spids: [2575]
        )
      spids: [2570 2574]
    )
    (FuncDef
      name: func_help
      body: 
        (BraceGroup
          children: [
            (SimpleCommand
              words: [
                {($ VSub_Name '$SED')}
                {(-n)}
                {
                  (SQ <'/^# Usage:/,/# Report bugs to/ {\n'> <'        s/^# //\n'> <'\ts/^# *$//\n'> 
                    <'\ts*\\$progname*'>
                  ) ($ VSub_Name '$progname') (SQ <'*\n'> <'\ts*\\$host*'>) (DQ ($ VSub_Name '$host')) 
                  (SQ <'*\n'> <'\ts*\\$SHELL*'>) (DQ ($ VSub_Name '$SHELL')) (SQ <'*\n'> <'\ts*\\$LTCC*'>) (DQ ($ VSub_Name '$LTCC')) 
                  (SQ <'*\n'> <'\ts*\\$LTCFLAGS*'>) (DQ ($ VSub_Name '$LTCFLAGS')) (SQ <'*\n'> <'\ts*\\$LD*'>) (DQ ($ VSub_Name '$LD')) 
                  (SQ <'*\n'> <'\ts/\\$with_gnu_ld/'>) (DQ ($ VSub_Name '$with_gnu_ld')) (SQ <'/\n'> <'\ts/\\$automake_version/'>) 
                  (DQ 
                    (CommandSubPart
                      command_list: 
                        (CommandList
                          children: [
                            (Pipeline
                              children: [
                                (Subshell
                                  child: (C {(automake)} {(--version)})
                                  redirects: [
                                    (Redir
                                      op_id: Redir_Great
                                      fd: 2
                                      arg_word: {(/dev/null)}
                                      spids: [2701]
                                    )
                                  ]
                                  spids: [2695 2699]
                                )
                                (C {($ VSub_Name '$SED')} {(1q)})
                              ]
                              negated: False
                            )
                          ]
                        )
                      left_token: <Left_Backtick '`'>
                      spids: [2694 2708]
                    )
                  ) (SQ <'/\n'> <'\ts/\\$autoconf_version/'>) 
                  (DQ 
                    (CommandSubPart
                      command_list: 
                        (CommandList
                          children: [
                            (Pipeline
                              children: [
                                (Subshell
                                  child: (C {(autoconf)} {(--version)})
                                  redirects: [
                                    (Redir
                                      op_id: Redir_Great
                                      fd: 2
                                      arg_word: {(/dev/null)}
                                      spids: [2722]
                                    )
                                  ]
                                  spids: [2716 2720]
                                )
                                (C {($ VSub_Name '$SED')} {(1q)})
                              ]
                              negated: False
                            )
                          ]
                        )
                      left_token: <Left_Backtick '`'>
                      spids: [2715 2729]
                    )
                  ) (SQ <'/\n'> <'\tp\n'> <'     }'>)
                }
              ]
              redirects: [
                (Redir
                  op_id: Redir_Less
                  fd: 16777215
                  arg_word: {(DQ ($ VSub_Name '$progpath'))}
                  spids: [2737]
                )
              ]
            )
            (C {(exit)} {($ VSub_QMark '$?')})
          ]
          spids: [2633]
        )
      spids: [2628 2632]
    )
    (FuncDef
      name: func_missing_arg
      body: 
        (BraceGroup
          children: [
            (C {(func_error)} {(DQ ('missing argument for ') ($ VSub_Number '$1'))})
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:exit_cmd) op:Equal rhs:{(exit)} spids:[2776])]
              spids: [2776]
            )
          ]
          spids: [2765]
        )
      spids: [2760 2764]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:exit_cmd) op:Equal rhs:{(Lit_Other ':')} spids:[2782])]
      spids: [2782]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (C {(test)} {(DQ (X) ($ VSub_Number '$1'))} {(Lit_Other '=')} {(X--no-reexec)})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [(C {(shift)})]
          spids: [16777215 2807]
        )
        (if_arm
          cond: [
            (Sentence
              child: 
                (C {(test)} {(DQ (X) ($ VSub_Number '$1'))} {(Lit_Other '=')} {(X--fallback-echo)})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [(C {(Lit_Other ':')})]
          spids: [2816 2830]
        )
        (if_arm
          cond: [
            (Sentence
              child: 
                (C {(test)} 
                  {
                    (DQ (X) 
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (BraceGroup
                                children: [
                                  (Sentence
                                    child: (C {($ VSub_Name '$ECHO')} {(SQ <'\\t'>)})
                                    terminator: <Op_Semi ';'>
                                  )
                                ]
                                redirects: [
                                  (Redir
                                    op_id: Redir_Great
                                    fd: 2
                                    arg_word: {(/dev/null)}
                                    spids: [2857]
                                  )
                                ]
                                spids: [2846]
                              )
                            ]
                          )
                        left_token: <Left_Backtick '`'>
                        spids: [2845 2859]
                      )
                    )
                  } {(Lit_Other '=')} {(SQ <'X\\t'>)}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [(C {(Lit_Other ':')})]
          spids: [2839 2869]
        )
      ]
      else_action: [
        (C {(exec)} {($ VSub_Name '$SHELL')} {(DQ ($ VSub_Name '$progpath'))} {(--no-reexec)} 
          {
            (BracedVarSub
              token: <VSub_Number 1>
              suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
              spids: [2895 2901]
            )
          }
        )
      ]
      spids: [2878 2903]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (C {(test)} {(DQ (X) ($ VSub_Number '$1'))} {(Lit_Other '=')} {(X--fallback-echo)})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(shift)})
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (HereDoc
                  op_id: Redir_DLess
                  fd: 16777215
                  body: {(DQ ($ VSub_Star '$*') ('\n'))}
                  do_expansion: True
                  here_end: EOF
                  was_filled: True
                  spids: [2932]
                )
              ]
            )
            (C {(exit)} {($ VSub_Name '$EXIT_SUCCESS')})
          ]
          spids: [16777215 2920]
        )
      ]
      spids: [16777215 2943]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:magic)
          op: Equal
          rhs: {(DQ ('%%%MAGIC variable%%%'))}
          spids: [2946]
        )
      ]
      spids: [2946]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:magic_exe)
          op: Equal
          rhs: {(DQ ('%%%MAGIC EXE variable%%%'))}
          spids: [2951]
        )
      ]
      spids: [2951]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:nonopt) op:Equal rhs:{(SQ )} spids:[2963])]
      spids: [2963]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:execute_dlfiles) op:Equal rhs:{(SQ )} spids:[2965])]
      spids: [2965]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:preserve_args) op:Equal rhs:{(SQ )} spids:[2967])]
      spids: [2967]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:lo2o)
          op: Equal
          rhs: 
            {
              (DQ (s/) (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (.lo) 
                (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (/.) (${ VSub_Name objext) (/)
              )
            }
          spids: [2969]
        )
      ]
      spids: [2969]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:o2lo)
          op: Equal
          rhs: 
            {
              (DQ (s/) (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (.) (${ VSub_Name objext) 
                (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (/.lo/)
              )
            }
          spids: [2982]
        )
      ]
      spids: [2982]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:extracted_archives) op:Equal rhs:{(SQ )} spids:[2994])]
      spids: [2994]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:extracted_serial) op:Equal rhs:{(0)} spids:[2996])]
      spids: [2996]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:opt_dry_run) op:Equal rhs:{(false)} spids:[3000])]
      spids: [3000]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:opt_duplicate_deps) op:Equal rhs:{(false)} spids:[3003])]
      spids: [3003]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:opt_silent) op:Equal rhs:{(false)} spids:[3006])]
      spids: [3006]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:opt_debug) op:Equal rhs:{(Lit_Other ':')} spids:[3009])]
      spids: [3009]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:exec_cmd) op:Equal rhs:{(SQ )} spids:[3022])]
      spids: [3022]
    )
    (FuncDef
      name: func_fatal_configuration
      body: 
        (BraceGroup
          children: [
            (C {(func_error)} 
              {
                (BracedVarSub
                  token: <VSub_Number 1>
                  suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
                  spids: [3044 3050]
                )
              }
            )
            (C {(func_error)} 
              {(DQ ('See the ') ($ VSub_Name '$PACKAGE') (' documentation for more information.'))}
            )
            (C {(func_fatal_error)} {(DQ ('Fatal configuration error.'))})
          ]
          spids: [3039]
        )
      spids: [3034 3038]
    )
    (FuncDef
      name: func_config
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:re_begincf)
                  op: Equal
                  rhs: {(SQ <'^# ### BEGIN LIBTOOL'>)}
                  spids: [3086]
                )
              ]
              spids: [3086]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:re_endcf)
                  op: Equal
                  rhs: {(SQ <'^# ### END LIBTOOL'>)}
                  spids: [3092]
                )
              ]
              spids: [3092]
            )
            (SimpleCommand
              words: [
                {($ VSub_Name '$SED')}
                {
                  (DQ ('1,/') ($ VSub_Name '$re_begincf') (' CONFIG/d;/') ($ VSub_Name '$re_endcf') 
                    (' CONFIG/,') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (d)
                  )
                }
              ]
              redirects: [
                (Redir
                  op_id: Redir_Less
                  fd: 16777215
                  arg_word: {(DQ ($ VSub_Name '$progpath'))}
                  spids: [3115]
                )
              ]
            )
            (ForEach
              iter_name: tagname
              iter_words: [{($ VSub_Name '$taglist')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (SimpleCommand
                      words: [
                        {($ VSub_Name '$SED')}
                        {(-n)}
                        {
                          (DQ (/) ($ VSub_Name '$re_begincf') (' TAG CONFIG: ') ($ VSub_Name '$tagname') 
                            (EscapedLiteralPart
                              token: <Lit_EscapedChar '\\$'>
                            ) ('/,/') ($ VSub_Name '$re_endcf') (' TAG CONFIG: ') ($ VSub_Name '$tagname') 
                            (EscapedLiteralPart
                              token: <Lit_EscapedChar '\\$'>
                            ) (/p)
                          )
                        }
                      ]
                      redirects: [
                        (Redir
                          op_id: Redir_Less
                          fd: 16777215
                          arg_word: {(DQ ($ VSub_Name '$progpath'))}
                          spids: [3157]
                        )
                      ]
                    )
                  ]
                  spids: [3136 3164]
                )
              spids: [3132 3134]
            )
            (C {(exit)} {($ VSub_QMark '$?')})
          ]
          spids: [3083]
        )
      spids: [3078 3082]
    )
    (FuncDef
      name: func_features
      body: 
        (BraceGroup
          children: [
            (C {($ VSub_Name '$ECHO')} {(DQ ('host: ') ($ VSub_Name '$host'))})
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(test)} {(DQ ($ VSub_Name '$build_libtool_libs'))} {(Lit_Other '=')} {(yes)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {($ VSub_Name '$ECHO')} {(DQ ('enable shared libraries'))})]
                  spids: [16777215 3210]
                )
              ]
              else_action: [(C {($ VSub_Name '$ECHO')} {(DQ ('disable shared libraries'))})]
              spids: [3220 3230]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(test)} {(DQ ($ VSub_Name '$build_old_libs'))} {(Lit_Other '=')} {(yes)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {($ VSub_Name '$ECHO')} {(DQ ('enable static libraries'))})]
                  spids: [16777215 3246]
                )
              ]
              else_action: [(C {($ VSub_Name '$ECHO')} {(DQ ('disable static libraries'))})]
              spids: [3256 3266]
            )
            (C {(exit)} {($ VSub_QMark '$?')})
          ]
          spids: [3186]
        )
      spids: [3181 3185]
    )
    (FuncDef
      name: func_enable_tag
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:tagname)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$1'))}
                  spids: [3301]
                )
              ]
              spids: [3301]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:re_begincf)
                  op: Equal
                  rhs: 
                    {
                      (DQ ('^# ### BEGIN LIBTOOL TAG CONFIG: ') ($ VSub_Name '$tagname') 
                        (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>)
                      )
                    }
                  spids: [3308]
                )
              ]
              spids: [3308]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:re_endcf)
                  op: Equal
                  rhs: 
                    {
                      (DQ ('^# ### END LIBTOOL TAG CONFIG: ') ($ VSub_Name '$tagname') 
                        (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>)
                      )
                    }
                  spids: [3316]
                )
              ]
              spids: [3316]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:sed_extractcf)
                  op: Equal
                  rhs: {(DQ (/) ($ VSub_Name '$re_begincf') ('/,/') ($ VSub_Name '$re_endcf') (/p))}
                  spids: [3324]
                )
              ]
              spids: [3324]
            )
            (Case
              to_match: {($ VSub_Name '$tagname')}
              arms: [
                (case_arm
                  pat_list: [
                    {(Lit_Other '*') (Lit_Other '[') (KW_Bang '!') (-_A-Za-z0-9) (Lit_Comma ',') (/) 
                      (Lit_Other ']') (Lit_Other '*')
                    }
                  ]
                  action: [
                    (C {(func_fatal_error)} {(DQ ('invalid tag name: ') ($ VSub_Name '$tagname'))})
                  ]
                  spids: [3346 3354 3365 16777215]
                )
              ]
              spids: [3339 3343 3368]
            )
            (Case
              to_match: {($ VSub_Name '$tagname')}
              arms: [
                (case_arm pat_list:[{(CC)}] spids:[3387 3388 3390 16777215])
                (case_arm
                  pat_list: [{(Lit_Other '*')}]
                  action: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (SimpleCommand
                                  words: [
                                    {($ VSub_Name '$GREP')}
                                    {(DQ ($ VSub_Name '$re_begincf'))}
                                    {(DQ ($ VSub_Name '$progpath'))}
                                  ]
                                  redirects: [
                                    (Redir
                                      op_id: Redir_Great
                                      fd: 16777215
                                      arg_word: {(/dev/null)}
                                      spids: [3409]
                                    )
                                    (Redir
                                      op_id: Redir_GreatAnd
                                      fd: 2
                                      arg_word: {(1)}
                                      spids: [3412]
                                    )
                                  ]
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:taglist)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$taglist') (' ') ($ VSub_Name '$tagname'))}
                                  spids: [3419]
                                )
                              ]
                              spids: [3419]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:extractedcf)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (SimpleCommand
                                                words: [
                                                  {($ VSub_Name '$SED')}
                                                  {(-n)}
                                                  {(-e)}
                                                  {(DQ ($ VSub_Name '$sed_extractcf'))}
                                                ]
                                                redirects: [
                                                  (Redir
                                                    op_id: Redir_Less
                                                    fd: 16777215
                                                    arg_word: {(DQ ($ VSub_Name '$progpath'))}
                                                    spids: [3456]
                                                  )
                                                ]
                                              )
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [3445 3461]
                                      )
                                    }
                                  spids: [3444]
                                )
                              ]
                              spids: [3444]
                            )
                            (C {(eval)} {(DQ ($ VSub_Name '$extractedcf'))})
                          ]
                          spids: [16777215 3416]
                        )
                      ]
                      else_action: [
                        (C {(func_error)} {(DQ ('ignoring unknown tag ') ($ VSub_Name '$tagname'))})
                      ]
                      spids: [3471 3482]
                    )
                  ]
                  spids: [3393 3394 3485 16777215]
                )
              ]
              spids: [3380 3384 3488]
            )
          ]
          spids: [3294]
        )
      spids: [3289 3293]
    )
    (BraceGroup
      children: [
        (Case
          to_match: {($ VSub_Number '$1')}
          arms: [
            (case_arm
              pat_list: [{(clean)} {(clea)} {(cle)} {(cl)}]
              action: [
                (Sentence child:(C {(shift)}) terminator:<Op_Semi ';'>)
                (Sentence
                  child: 
                    (C {(set)} {(dummy)} {(--mode)} {(clean)} 
                      {
                        (BracedVarSub
                          token: <VSub_Number 1>
                          suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
                          spids: [3535 3541]
                        )
                      }
                    )
                  terminator: <Op_Semi ';'>
                )
                (C {(shift)})
              ]
              spids: [3514 3521 3547 16777215]
            )
            (case_arm
              pat_list: [{(compile)} {(compil)} {(compi)} {(comp)} {(com)} {(co)} {(c)}]
              action: [
                (Sentence child:(C {(shift)}) terminator:<Op_Semi ';'>)
                (Sentence
                  child: 
                    (C {(set)} {(dummy)} {(--mode)} {(compile)} 
                      {
                        (BracedVarSub
                          token: <VSub_Number 1>
                          suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
                          spids: [3577 3583]
                        )
                      }
                    )
                  terminator: <Op_Semi ';'>
                )
                (C {(shift)})
              ]
              spids: [3550 3563 3589 16777215]
            )
            (case_arm
              pat_list: [{(execute)} {(execut)} {(execu)} {(exec)} {(exe)} {(ex)} {(e)}]
              action: [
                (Sentence child:(C {(shift)}) terminator:<Op_Semi ';'>)
                (Sentence
                  child: 
                    (C {(set)} {(dummy)} {(--mode)} {(execute)} 
                      {
                        (BracedVarSub
                          token: <VSub_Number 1>
                          suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
                          spids: [3619 3625]
                        )
                      }
                    )
                  terminator: <Op_Semi ';'>
                )
                (C {(shift)})
              ]
              spids: [3592 3605 3631 16777215]
            )
            (case_arm
              pat_list: [{(finish)} {(finis)} {(fini)} {(fin)} {(KW_Fi fi)} {(f)}]
              action: [
                (Sentence child:(C {(shift)}) terminator:<Op_Semi ';'>)
                (Sentence
                  child: 
                    (C {(set)} {(dummy)} {(--mode)} {(finish)} 
                      {
                        (BracedVarSub
                          token: <VSub_Number 1>
                          suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
                          spids: [3659 3665]
                        )
                      }
                    )
                  terminator: <Op_Semi ';'>
                )
                (C {(shift)})
              ]
              spids: [3634 3645 3671 16777215]
            )
            (case_arm
              pat_list: [{(install)} {(instal)} {(insta)} {(inst)} {(ins)} {(KW_In in)} {(i)}]
              action: [
                (Sentence child:(C {(shift)}) terminator:<Op_Semi ';'>)
                (Sentence
                  child: 
                    (C {(set)} {(dummy)} {(--mode)} {(install)} 
                      {
                        (BracedVarSub
                          token: <VSub_Number 1>
                          suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
                          spids: [3701 3707]
                        )
                      }
                    )
                  terminator: <Op_Semi ';'>
                )
                (C {(shift)})
              ]
              spids: [3674 3687 3713 16777215]
            )
            (case_arm
              pat_list: [{(link)} {(lin)} {(li)} {(l)}]
              action: [
                (Sentence child:(C {(shift)}) terminator:<Op_Semi ';'>)
                (Sentence
                  child: 
                    (C {(set)} {(dummy)} {(--mode)} {(link)} 
                      {
                        (BracedVarSub
                          token: <VSub_Number 1>
                          suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
                          spids: [3737 3743]
                        )
                      }
                    )
                  terminator: <Op_Semi ';'>
                )
                (C {(shift)})
              ]
              spids: [3716 3723 3749 16777215]
            )
            (case_arm
              pat_list: [
                {(uninstall)}
                {(uninstal)}
                {(uninsta)}
                {(uninst)}
                {(unins)}
                {(unin)}
                {(uni)}
                {(un)}
                {(u)}
              ]
              action: [
                (Sentence child:(C {(shift)}) terminator:<Op_Semi ';'>)
                (Sentence
                  child: 
                    (C {(set)} {(dummy)} {(--mode)} {(uninstall)} 
                      {
                        (BracedVarSub
                          token: <VSub_Number 1>
                          suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
                          spids: [3783 3789]
                        )
                      }
                    )
                  terminator: <Op_Semi ';'>
                )
                (C {(shift)})
              ]
              spids: [3752 3769 3795 16777215]
            )
          ]
          spids: [3507 3511 3798]
        )
        (While
          cond: [
            (Sentence
              child: (C {(test)} {(DQ ($ VSub_Pound '$#'))} {(-gt)} {(0)})
              terminator: <Op_Semi ';'>
            )
          ]
          body: 
            (DoGroup
              children: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:opt)
                      op: Equal
                      rhs: {(DQ ($ VSub_Number '$1'))}
                      spids: [3822]
                    )
                  ]
                  spids: [3822]
                )
                (C {(shift)})
                (Case
                  to_match: {($ VSub_Name '$opt')}
                  arms: [
                    (case_arm
                      pat_list: [{(--config)}]
                      action: [(C {(func_config)})]
                      spids: [3839 3840 3844 16777215]
                    )
                    (case_arm
                      pat_list: [{(--debug)}]
                      action: [
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:preserve_args)
                              op: Equal
                              rhs: {(DQ ($ VSub_Name '$preserve_args') (' ') ($ VSub_Name '$opt'))}
                              spids: [3851]
                            )
                          ]
                          spids: [3851]
                        )
                        (C {(func_echo)} {(DQ ('enabling shell trace mode'))})
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:opt_debug)
                              op: Equal
                              rhs: {(SQ <'set -x'>)}
                              spids: [3866]
                            )
                          ]
                          spids: [3866]
                        )
                        (C {($ VSub_Name '$opt_debug')})
                      ]
                      spids: [3848 3849 3875 16777215]
                    )
                    (case_arm
                      pat_list: [{(-dlopen)}]
                      action: [
                        (AndOr
                          children: [
                            (C {(test)} {(DQ ($ VSub_Pound '$#'))} {(-eq)} {(0)})
                            (AndOr
                              children: [
                                (C {(func_missing_arg)} {(DQ ($ VSub_Name '$opt'))})
                                (ControlFlow
                                  token: <ControlFlow_Break break>
                                )
                              ]
                              op_id: Op_DAmp
                            )
                          ]
                          op_id: Op_DAmp
                        )
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:execute_dlfiles)
                              op: Equal
                              rhs: {(DQ ($ VSub_Name '$execute_dlfiles') (' ') ($ VSub_Number '$1'))}
                              spids: [3905]
                            )
                          ]
                          spids: [3905]
                        )
                        (C {(shift)})
                      ]
                      spids: [3879 3880 3916 16777215]
                    )
                    (case_arm
                      pat_list: [{(--dry-run)} {(-n)}]
                      action: [
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:opt_dry_run)
                              op: Equal
                              rhs: {(Lit_Other ':')}
                              spids: [3927]
                            )
                          ]
                          spids: [3927]
                        )
                      ]
                      spids: [3920 3925 3930 16777215]
                    )
                    (case_arm
                      pat_list: [{(--features)}]
                      action: [(C {(func_features)})]
                      spids: [3933 3934 3938 16777215]
                    )
                    (case_arm
                      pat_list: [{(--finish)}]
                      action: [
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:mode)
                              op: Equal
                              rhs: {(DQ (finish))}
                              spids: [3944]
                            )
                          ]
                          spids: [3944]
                        )
                      ]
                      spids: [3941 3942 3949 16777215]
                    )
                    (case_arm
                      pat_list: [{(--mode)}]
                      action: [
                        (AndOr
                          children: [
                            (C {(test)} {(DQ ($ VSub_Pound '$#'))} {(-eq)} {(0)})
                            (AndOr
                              children: [
                                (C {(func_missing_arg)} {(DQ ($ VSub_Name '$opt'))})
                                (ControlFlow
                                  token: <ControlFlow_Break break>
                                )
                              ]
                              op_id: Op_DAmp
                            )
                          ]
                          op_id: Op_DAmp
                        )
                        (Case
                          to_match: {($ VSub_Number '$1')}
                          arms: [
                            (case_arm
                              pat_list: [{(clean)}]
                              spids: [3990 3991 3993 16777215]
                            )
                            (case_arm
                              pat_list: [{(compile)}]
                              spids: [3996 3997 3999 16777215]
                            )
                            (case_arm
                              pat_list: [{(execute)}]
                              spids: [4002 4003 4005 16777215]
                            )
                            (case_arm
                              pat_list: [{(finish)}]
                              spids: [4008 4009 4011 16777215]
                            )
                            (case_arm
                              pat_list: [{(install)}]
                              spids: [4014 4015 4017 16777215]
                            )
                            (case_arm
                              pat_list: [{(link)}]
                              spids: [4020 4021 4023 16777215]
                            )
                            (case_arm
                              pat_list: [{(relink)}]
                              spids: [4026 4027 4029 16777215]
                            )
                            (case_arm
                              pat_list: [{(uninstall)}]
                              spids: [4032 4033 4035 16777215]
                            )
                            (case_arm
                              pat_list: [{(Lit_Other '*')}]
                              action: [
                                (C {(func_error)} {(DQ ('invalid argument for ') ($ VSub_Name '$opt'))})
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:exit_cmd)
                                      op: Equal
                                      rhs: {(exit)}
                                      spids: [4054]
                                    )
                                  ]
                                  spids: [4054]
                                )
                                (ControlFlow
                                  token: <ControlFlow_Break break>
                                )
                              ]
                              spids: [4043 4044 4061 16777215]
                            )
                          ]
                          spids: [3979 3983 4064]
                        )
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:mode)
                              op: Equal
                              rhs: {(DQ ($ VSub_Number '$1'))}
                              spids: [4068]
                            )
                          ]
                          spids: [4068]
                        )
                        (C {(shift)})
                      ]
                      spids: [3953 3954 4077 16777215]
                    )
                    (case_arm
                      pat_list: [{(--preserve-dup-deps)}]
                      action: [
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:opt_duplicate_deps)
                              op: Equal
                              rhs: {(Lit_Other ':')}
                              spids: [4085]
                            )
                          ]
                          spids: [4085]
                        )
                      ]
                      spids: [4081 4082 4088 16777215]
                    )
                    (case_arm
                      pat_list: [{(--quiet)} {(--silent)}]
                      action: [
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:preserve_args)
                              op: Equal
                              rhs: {(DQ ($ VSub_Name '$preserve_args') (' ') ($ VSub_Name '$opt'))}
                              spids: [4097]
                            )
                          ]
                          spids: [4097]
                        )
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:opt_silent)
                              op: Equal
                              rhs: {(Lit_Other ':')}
                              spids: [4105]
                            )
                          ]
                          spids: [4105]
                        )
                      ]
                      spids: [4092 4095 4109 16777215]
                    )
                    (case_arm
                      pat_list: [{(--verbose)} {(-v)}]
                      action: [
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:preserve_args)
                              op: Equal
                              rhs: {(DQ ($ VSub_Name '$preserve_args') (' ') ($ VSub_Name '$opt'))}
                              spids: [4119]
                            )
                          ]
                          spids: [4119]
                        )
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:opt_silent)
                              op: Equal
                              rhs: {(false)}
                              spids: [4127]
                            )
                          ]
                          spids: [4127]
                        )
                      ]
                      spids: [4113 4117 4131 16777215]
                    )
                    (case_arm
                      pat_list: [{(--tag)}]
                      action: [
                        (AndOr
                          children: [
                            (C {(test)} {(DQ ($ VSub_Pound '$#'))} {(-eq)} {(0)})
                            (AndOr
                              children: [
                                (C {(func_missing_arg)} {(DQ ($ VSub_Name '$opt'))})
                                (ControlFlow
                                  token: <ControlFlow_Break break>
                                )
                              ]
                              op_id: Op_DAmp
                            )
                          ]
                          op_id: Op_DAmp
                        )
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:preserve_args)
                              op: Equal
                              rhs: 
                                {
                                  (DQ ($ VSub_Name '$preserve_args') (' ') ($ VSub_Name '$opt') (' ') 
                                    ($ VSub_Number '$1')
                                  )
                                }
                              spids: [4161]
                            )
                          ]
                          spids: [4161]
                        )
                        (C {(func_enable_tag)} {(DQ ($ VSub_Number '$1'))})
                        (C {(shift)})
                      ]
                      spids: [4135 4136 4184 16777215]
                    )
                    (case_arm
                      pat_list: [
                        {(-dlopen) (Lit_Other '=') (Lit_Other '*')}
                        {(--mode) (Lit_Other '=') (Lit_Other '*')}
                        {(--tag) (Lit_Other '=') (Lit_Other '*')}
                      ]
                      action: [
                        (C {(func_opt_split)} {(DQ ($ VSub_Name '$opt'))})
                        (C {(set)} {(dummy)} {(DQ ($ VSub_Name '$func_opt_split_opt'))} 
                          {(DQ ($ VSub_Name '$func_opt_split_arg'))} 
                          {
                            (BracedVarSub
                              token: <VSub_Number 1>
                              suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
                              spids: [4225 4231]
                            )
                          }
                        )
                        (C {(shift)})
                      ]
                      spids: [4192 4203 4237 16777215]
                    )
                    (case_arm
                      pat_list: [{(-) (EscapedLiteralPart token:<Lit_EscapedChar '\\?'>)} {(-h)}]
                      action: [(C {(func_usage)})]
                      spids: [4241 4245 4249 16777215]
                    )
                    (case_arm
                      pat_list: [{(--help)}]
                      action: [
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:opt_help)
                              op: Equal
                              rhs: {(Lit_Other ':')}
                              spids: [4255]
                            )
                          ]
                          spids: [4255]
                        )
                      ]
                      spids: [4252 4253 4258 16777215]
                    )
                    (case_arm
                      pat_list: [{(--version)}]
                      action: [(C {(func_version)})]
                      spids: [4261 4262 4266 16777215]
                    )
                    (case_arm
                      pat_list: [{(-) (Lit_Other '*')}]
                      action: [
                        (C {(func_fatal_help)} 
                          {
                            (DQ ('unrecognized option ') 
                              (EscapedLiteralPart
                                token: <Lit_EscapedChar '\\`'>
                              ) ($ VSub_Name '$opt') ("'")
                            )
                          }
                        )
                      ]
                      spids: [4270 4272 4283 16777215]
                    )
                    (case_arm
                      pat_list: [{(Lit_Other '*')}]
                      action: [
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:nonopt)
                              op: Equal
                              rhs: {(DQ ($ VSub_Name '$opt'))}
                              spids: [4290]
                            )
                          ]
                          spids: [4290]
                        )
                        (ControlFlow token:<ControlFlow_Break break>)
                      ]
                      spids: [4287 4288 4299 16777215]
                    )
                  ]
                  spids: [3832 3836 4302]
                )
              ]
              spids: [3819 4305]
            )
        )
        (Case
          to_match: {($ VSub_Name '$host')}
          arms: [
            (case_arm
              pat_list: [
                {(Lit_Other '*') (cygwin) (Lit_Other '*')}
                {(Lit_Other '*') (mingw) (Lit_Other '*')}
                {(Lit_Other '*') (pw32) (Lit_Other '*')}
                {(Lit_Other '*') (cegcc) (Lit_Other '*')}
              ]
              action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:opt_duplicate_compiler_generated_deps)
                      op: Equal
                      rhs: {(Lit_Other ':')}
                      spids: [4345]
                    )
                  ]
                  spids: [4345]
                )
              ]
              spids: [4317 4338 4349 16777215]
            )
            (case_arm
              pat_list: [{(Lit_Other '*')}]
              action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:opt_duplicate_compiler_generated_deps)
                      op: Equal
                      rhs: {($ VSub_Name '$opt_duplicate_deps')}
                      spids: [4356]
                    )
                  ]
                  spids: [4356]
                )
              ]
              spids: [4352 4353 4360 16777215]
            )
          ]
          spids: [4310 4314 4363]
        )
        (C {($ VSub_Name '$exit_cmd')} {($ VSub_Name '$EXIT_FAILURE')})
      ]
      spids: [3499]
    )
    (FuncDef
      name: func_check_version_match
      body: 
        (BraceGroup
          children: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(test)} {(DQ ($ VSub_Name '$package_revision'))} 
                          {(KW_Bang '!') (Lit_Other '=')} {(DQ ($ VSub_Name '$macro_revision'))}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$VERSION'))} 
                                  {(KW_Bang '!') (Lit_Other '=')} {(DQ ($ VSub_Name '$macro_version'))}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-z)} {(DQ ($ VSub_Name '$macro_version'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (SimpleCommand
                                      words: [{(cat)}]
                                      redirects: [
                                        (Redir
                                          op_id: Redir_GreatAnd
                                          fd: 16777215
                                          arg_word: {(2)}
                                          spids: [4453]
                                        )
                                        (HereDoc
                                          op_id: Redir_DLess
                                          fd: 16777215
                                          body: 
                                            {
                                              (DQ ($ VSub_Name '$progname') 
                                                (': Version mismatch error.  This is ') ($ VSub_Name '$PACKAGE') (' ') ($ VSub_Name '$VERSION') (', but the\n') ($ VSub_Name '$progname') 
                                                (
': definition of this LT_INIT comes from an older release.\n'
                                                ) ($ VSub_Name '$progname') (': You should recreate aclocal.m4 with macros from ') 
                                                ($ VSub_Name '$PACKAGE') (' ') ($ VSub_Name '$VERSION') ('\n') ($ VSub_Name '$progname') (': and run autoconf again.\n')
                                              )
                                            }
                                          do_expansion: True
                                          here_end: _LT_EOF
                                          was_filled: True
                                          spids: [4456]
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [16777215 4448]
                                )
                              ]
                              else_action: [
                                (SimpleCommand
                                  words: [{(cat)}]
                                  redirects: [
                                    (Redir
                                      op_id: Redir_GreatAnd
                                      fd: 16777215
                                      arg_word: {(2)}
                                      spids: [4482]
                                    )
                                    (HereDoc
                                      op_id: Redir_DLess
                                      fd: 16777215
                                      body: 
                                        {
                                          (DQ ($ VSub_Name '$progname') 
                                            (': Version mismatch error.  This is ') ($ VSub_Name '$PACKAGE') (' ') ($ VSub_Name '$VERSION') (', but the\n') ($ VSub_Name '$progname') 
                                            (': definition of this LT_INIT comes from ') ($ VSub_Name '$PACKAGE') (' ') ($ VSub_Name '$macro_version') ('.\n') ($ VSub_Name '$progname') 
                                            (': You should recreate aclocal.m4 with macros from ') ($ VSub_Name '$PACKAGE') (' ') ($ VSub_Name '$VERSION') ('\n') ($ VSub_Name '$progname') 
                                            (': and run autoconf again.\n')
                                          )
                                        }
                                      do_expansion: True
                                      here_end: _LT_EOF
                                      was_filled: True
                                      spids: [4485]
                                    )
                                  ]
                                )
                              ]
                              spids: [4477 4510]
                            )
                          ]
                          spids: [16777215 4434]
                        )
                      ]
                      else_action: [
                        (SimpleCommand
                          words: [{(cat)}]
                          redirects: [
                            (Redir
                              op_id: Redir_GreatAnd
                              fd: 16777215
                              arg_word: {(2)}
                              spids: [4518]
                            )
                            (HereDoc
                              op_id: Redir_DLess
                              fd: 16777215
                              body: 
                                {
                                  (DQ ($ VSub_Name '$progname') 
                                    (': Version mismatch error.  This is ') ($ VSub_Name '$PACKAGE') (' ') ($ VSub_Name '$VERSION') (', revision ') ($ VSub_Name '$package_revision') 
                                    (',\n') ($ VSub_Name '$progname') (': but the definition of this LT_INIT comes from revision ') 
                                    ($ VSub_Name '$macro_revision') ('.\n') ($ VSub_Name '$progname') (': You should recreate aclocal.m4 with macros from revision ') 
                                    ($ VSub_Name '$package_revision') ('\n') ($ VSub_Name '$progname') (': of ') ($ VSub_Name '$PACKAGE') (' ') ($ VSub_Name '$VERSION') 
                                    (' and run autoconf again.\n')
                                  )
                                }
                              do_expansion: True
                              here_end: _LT_EOF
                              was_filled: True
                              spids: [4521]
                            )
                          ]
                        )
                      ]
                      spids: [4513 4548]
                    )
                    (C {(exit)} {($ VSub_Name '$EXIT_MISMATCH')})
                  ]
                  spids: [16777215 4415]
                )
              ]
              spids: [16777215 4557]
            )
          ]
          spids: [4396]
        )
      spids: [4391 4395]
    )
    (AndOr
      children: [
        (C {($ VSub_Name '$opt_help')})
        (BraceGroup
          children: [
            (C {(func_check_version_match)})
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (AndOr
                          children: [
                            (C {(test)} {(DQ ($ VSub_Name '$build_libtool_libs'))} 
                              {(KW_Bang '!') (Lit_Other '=')} {(yes)}
                            )
                            (C {(test)} {(DQ ($ VSub_Name '$build_old_libs'))} 
                              {(KW_Bang '!') (Lit_Other '=')} {(yes)}
                            )
                          ]
                          op_id: Op_DAmp
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(func_fatal_configuration)} 
                      {(DQ ('not configured to build any kind of library'))}
                    )
                  ]
                  spids: [16777215 4615]
                )
              ]
              spids: [16777215 4625]
            )
            (AndOr
              children: [
                (C {(test)} {(-z)} {(DQ ($ VSub_Name '$mode'))})
                (C {(func_fatal_error)} {(DQ ('error: you must specify a MODE.'))})
              ]
              op_id: Op_DAmp
            )
            (C {(eval)} 
              {(Lit_VarLike 'std_shrext=') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                ($ VSub_Name '$shrext_cmds') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
              }
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (AndOr
                          children: [
                            (C {(test)} {(-n)} {(DQ ($ VSub_Name '$execute_dlfiles'))})
                            (C {(test)} {(DQ ($ VSub_Name '$mode'))} {(KW_Bang '!') (Lit_Other '=')} 
                              {(execute)}
                            )
                          ]
                          op_id: Op_DAmp
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(func_error)} 
                      {
                        (DQ ('unrecognized option ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                          ("-dlopen'")
                        )
                      }
                    )
                    (SimpleCommand
                      words: [{($ VSub_Name '$ECHO')} {(DQ ($ VSub_Name '$help'))}]
                      redirects: [(Redir op_id:Redir_GreatAnd fd:1 arg_word:{(2)} spids:[4708])]
                    )
                    (C {(exit)} {($ VSub_Name '$EXIT_FAILURE')})
                  ]
                  spids: [16777215 4690]
                )
              ]
              spids: [16777215 4717]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:generic_help)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$help'))}
                  spids: [4725]
                )
              ]
              spids: [4725]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:help)
                  op: Equal
                  rhs: 
                    {
                      (DQ ('Try ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                        ($ VSub_Name '$progname') (' --help --mode=') ($ VSub_Name '$mode') ("' for more information.")
                      )
                    }
                  spids: [4731]
                )
              ]
              spids: [4731]
            )
          ]
          spids: [4577]
        )
      ]
      op_id: Op_DPipe
    )
    (FuncDef
      name: func_lalib_p
      body: 
        (BraceGroup
          children: [
            (AndOr
              children: [
                (C {(test)} {(-f)} {(DQ ($ VSub_Number '$1'))})
                (Pipeline
                  children: [
                    (SimpleCommand
                      words: [{($ VSub_Name '$SED')} {(-e)} {(4q)} {(DQ ($ VSub_Number '$1'))}]
                      redirects: [(Redir op_id:Redir_Great fd:2 arg_word:{(/dev/null)} spids:[4786])]
                    )
                    (SimpleCommand
                      words: [
                        {($ VSub_Name '$GREP')}
                        {(DQ ('^# Generated by .*') ($ VSub_Name '$PACKAGE'))}
                      ]
                      redirects: [
                        (Redir
                          op_id: Redir_Great
                          fd: 16777215
                          arg_word: {(/dev/null)}
                          spids: [4800]
                        )
                        (Redir
                          op_id: Redir_GreatAnd
                          fd: 2
                          arg_word: {(1)}
                          spids: [4804]
                        )
                      ]
                    )
                  ]
                  negated: False
                )
              ]
              op_id: Op_DAmp
            )
          ]
          spids: [4762]
        )
      spids: [4757 4761]
    )
    (FuncDef
      name: func_lalib_unsafe_p
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:lalib_p) op:Equal rhs:{(no)} spids:[4839])]
              spids: [4839]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (AndOr
                          children: [
                            (C {(test)} {(-f)} {(DQ ($ VSub_Number '$1'))})
                            (AndOr
                              children: [
                                (C {(test)} {(-r)} {(DQ ($ VSub_Number '$1'))})
                                (SimpleCommand
                                  words: [{(exec)}]
                                  redirects: [
                                    (Redir
                                      op_id: Redir_LessAnd
                                      fd: 5
                                      arg_word: {(0)}
                                      spids: [4867]
                                    )
                                    (Redir
                                      op_id: Redir_Less
                                      fd: 16777215
                                      arg_word: {(DQ ($ VSub_Number '$1'))}
                                      spids: [4870]
                                    )
                                  ]
                                )
                              ]
                              op_id: Op_DAmp
                            )
                          ]
                          op_id: Op_DAmp
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (ForEach
                      iter_name: lalib_p_l
                      iter_words: [{(1)} {(2)} {(3)} {(4)}]
                      do_arg_iter: False
                      body: 
                        (DoGroup
                          children: [
                            (C {(read)} {(lalib_p_line)})
                            (Case
                              to_match: {(DQ ($ VSub_Name '$lalib_p_line'))}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(EscapedLiteralPart token:<Lit_EscapedChar '\\#'>) 
                                      (EscapedLiteralPart
                                        token: <Lit_EscapedChar '\\ '>
                                      ) (Generated) (EscapedLiteralPart token:<Lit_EscapedChar '\\ '>) (by) 
                                      (EscapedLiteralPart
                                        token: <Lit_EscapedChar '\\ '>
                                      ) (Lit_Other '*') ($ VSub_Name '$PACKAGE') (Lit_Other '*')
                                    }
                                  ]
                                  action: [
                                    (Sentence
                                      child: 
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:lalib_p)
                                              op: Equal
                                              rhs: {(yes)}
                                              spids: [4923]
                                            )
                                          ]
                                          spids: [4923]
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Break break>
                                    )
                                  ]
                                  spids: [4911 4921 4928 16777215]
                                )
                              ]
                              spids: [4902 4908 4931]
                            )
                          ]
                          spids: [4894 4934]
                        )
                      spids: [4884 16777215]
                    )
                    (SimpleCommand
                      words: [{(exec)}]
                      redirects: [
                        (Redir
                          op_id: Redir_LessAnd
                          fd: 0
                          arg_word: {(5)}
                          spids: [4939]
                        )
                        (Redir
                          op_id: Redir_LessAnd
                          fd: 5
                          arg_word: {(-)}
                          spids: [4942]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 4876]
                )
              ]
              spids: [16777215 4946]
            )
            (C {(test)} {(DQ ($ VSub_Name '$lalib_p'))} {(Lit_Other '=')} {(yes)})
          ]
          spids: [4836]
        )
      spids: [4831 4835]
    )
    (FuncDef
      name: func_ltwrapper_script_p
      body: (BraceGroup children:[(C {(func_lalib_p)} {(DQ ($ VSub_Number '$1'))})] spids:[4979])
      spids: [4974 4978]
    )
    (FuncDef
      name: func_ltwrapper_executable_p
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:func_ltwrapper_exec_suffix)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [5011]
                )
              ]
              spids: [5011]
            )
            (Case
              to_match: {($ VSub_Number '$1')}
              arms: [
                (case_arm
                  pat_list: [{(Lit_Other '*') (.exe)}]
                  spids: [5021 5023 5025 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*')}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:func_ltwrapper_exec_suffix)
                          op: Equal
                          rhs: {(.exe)}
                          spids: [5031]
                        )
                      ]
                      spids: [5031]
                    )
                  ]
                  spids: [5028 5029 5034 16777215]
                )
              ]
              spids: [5014 5018 5037]
            )
            (SimpleCommand
              words: [
                {($ VSub_Name '$GREP')}
                {(DQ ($ VSub_Name '$magic_exe'))}
                {(DQ ($ VSub_Number '$1') ($ VSub_Name '$func_ltwrapper_exec_suffix'))}
              ]
              redirects: [
                (Redir
                  op_id: Redir_Great
                  fd: 16777215
                  arg_word: {(/dev/null)}
                  spids: [5051]
                )
                (Redir op_id:Redir_GreatAnd fd:2 arg_word:{(1)} spids:[5054])
              ]
            )
          ]
          spids: [5008]
        )
      spids: [5003 5007]
    )
    (FuncDef
      name: func_ltwrapper_scriptname
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:func_ltwrapper_scriptname_result)
                  op: Equal
                  rhs: {(DQ )}
                  spids: [5080]
                )
              ]
              spids: [5080]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(func_ltwrapper_executable_p)} {(DQ ($ VSub_Number '$1'))})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(func_dirname_and_basename)} {(DQ ($ VSub_Number '$1'))} {(DQ )} {(DQ (.))})
                    (C {(func_stripname)} {(SQ )} {(SQ <.exe>)} 
                      {(DQ ($ VSub_Name '$func_basename_result'))}
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:func_ltwrapper_scriptname_result)
                          op: Equal
                          rhs: 
                            {
                              (DQ ($ VSub_Name '$func_dirname_result') (/) ($ VSub_Name '$objdir') (/) 
                                (${ VSub_Name func_stripname_result) (_ltshwrapper)
                              )
                            }
                          spids: [5125]
                        )
                      ]
                      spids: [5125]
                    )
                  ]
                  spids: [16777215 5094]
                )
              ]
              spids: [16777215 5138]
            )
          ]
          spids: [5077]
        )
      spids: [5072 5076]
    )
    (FuncDef
      name: func_ltwrapper_p
      body: 
        (BraceGroup
          children: [
            (AndOr
              children: [
                (C {(func_ltwrapper_script_p)} {(DQ ($ VSub_Number '$1'))})
                (C {(func_ltwrapper_executable_p)} {(DQ ($ VSub_Number '$1'))})
              ]
              op_id: Op_DPipe
            )
          ]
          spids: [5160]
        )
      spids: [5155 5159]
    )
    (FuncDef
      name: func_execute_cmds
      body: 
        (BraceGroup
          children: [
            (C {($ VSub_Name '$opt_debug')})
            (Sentence
              child: 
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:save_ifs)
                      op: Equal
                      rhs: {($ VSub_Name '$IFS')}
                      spids: [5204]
                    )
                  ]
                  spids: [5204]
                )
              terminator: <Op_Semi ';'>
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:IFS) op:Equal rhs:{(SQ <'~'>)} spids:[5208])]
              spids: [5208]
            )
            (ForEach
              iter_name: cmd
              iter_words: [{($ VSub_Number '$1')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:IFS)
                          op: Equal
                          rhs: {($ VSub_Name '$save_ifs')}
                          spids: [5226]
                        )
                      ]
                      spids: [5226]
                    )
                    (C {(eval)} 
                      {(Lit_VarLike 'cmd=') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                        ($ VSub_Name '$cmd') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                      }
                    )
                    (C {(func_show_eval)} {(DQ ($ VSub_Name '$cmd'))} 
                      {
                        (DQ 
                          (BracedVarSub
                            token: <VSub_Number 2>
                            suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(':')})
                            spids: [5245 5249]
                          )
                        )
                      }
                    )
                  ]
                  spids: [5223 5253]
                )
              spids: [5219 5221]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:IFS)
                  op: Equal
                  rhs: {($ VSub_Name '$save_ifs')}
                  spids: [5256]
                )
              ]
              spids: [5256]
            )
          ]
          spids: [5198]
        )
      spids: [5193 5197]
    )
    (FuncDef
      name: func_source
      body: 
        (BraceGroup
          children: [
            (C {($ VSub_Name '$opt_debug')})
            (Case
              to_match: {($ VSub_Number '$1')}
              arms: [
                (case_arm
                  pat_list: [
                    {(Lit_Other '*') (/) (Lit_Other '*')}
                    {(Lit_Other '*') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) 
                      (Lit_Other '*')
                    }
                  ]
                  action: [(C {(.)} {(DQ ($ VSub_Number '$1'))})]
                  spids: [5299 5308 5316 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*')}]
                  action: [(C {(.)} {(DQ (./) ($ VSub_Number '$1'))})]
                  spids: [5319 5320 5329 16777215]
                )
              ]
              spids: [5292 5296 5332]
            )
          ]
          spids: [5286]
        )
      spids: [5281 5285]
    )
    (FuncDef
      name: func_infer_tag
      body: 
        (BraceGroup
          children: [
            (C {($ VSub_Name '$opt_debug')})
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (AndOr
                          children: [
                            (C {(test)} {(-n)} {(DQ ($ VSub_Name '$available_tags'))})
                            (C {(test)} {(-z)} {(DQ ($ VSub_Name '$tagname'))})
                          ]
                          op_id: Op_DAmp
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:CC_quoted)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [5391]
                        )
                      ]
                      spids: [5391]
                    )
                    (ForEach
                      iter_name: arg
                      iter_words: [{($ VSub_Name '$CC')}]
                      do_arg_iter: False
                      body: 
                        (DoGroup
                          children: [
                            (C {(func_quote_for_eval)} {(DQ ($ VSub_Name '$arg'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:CC_quoted)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$CC_quoted') (' ') 
                                        ($ VSub_Name '$func_quote_for_eval_result')
                                      )
                                    }
                                  spids: [5413]
                                )
                              ]
                              spids: [5413]
                            )
                          ]
                          spids: [5403 5421]
                        )
                      spids: [5399 5401]
                    )
                    (Case
                      to_match: {($ VSub_At '$@')}
                      arms: [
                        (case_arm
                          pat_list: [
                            {(DQ (' ') ($ VSub_Name '$CC') (' ')) (Lit_Other '*')}
                            {(DQ ($ VSub_Name '$CC') (' ')) (Lit_Other '*')}
                            {
                              (DQ (' ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [(C {($ VSub_Name '$ECHO')} {($ VSub_Name '$CC')})]
                                    )
                                  left_token: <Left_Backtick '`'>
                                  spids: [5458 5462]
                                ) (' ')
                              ) (Lit_Other '*')
                            }
                            {
                              (DQ 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [(C {($ VSub_Name '$ECHO')} {($ VSub_Name '$CC')})]
                                    )
                                  left_token: <Left_Backtick '`'>
                                  spids: [5470 5474]
                                ) (' ')
                              ) (Lit_Other '*')
                            }
                            {(DQ (' ') ($ VSub_Name '$CC_quoted')) (Lit_Other '*')}
                            {(DQ ($ VSub_Name '$CC_quoted') (' ')) (Lit_Other '*')}
                            {
                              (DQ (' ') 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {($ VSub_Name '$ECHO')} {($ VSub_Name '$CC_quoted')})
                                      ]
                                    )
                                  left_token: <Left_Backtick '`'>
                                  spids: [5499 5503]
                                ) (' ')
                              ) (Lit_Other '*')
                            }
                            {
                              (DQ 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {($ VSub_Name '$ECHO')} {($ VSub_Name '$CC_quoted')})
                                      ]
                                    )
                                  left_token: <Left_Backtick '`'>
                                  spids: [5511 5515]
                                ) (' ')
                              ) (Lit_Other '*')
                            }
                          ]
                          spids: [5440 5519 5521 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*')}]
                          action: [
                            (ForEach
                              iter_name: z
                              iter_words: [{($ VSub_Name '$available_tags')}]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (SimpleCommand
                                                  words: [
                                                    {($ VSub_Name '$GREP')}
                                                    {
                                                      (DQ ('^# ### BEGIN LIBTOOL TAG CONFIG: ') 
                                                        ($ VSub_Name '$z') (Lit_Other '$')
                                                      )
                                                    }
                                                  ]
                                                  redirects: [
                                                    (Redir
                                                      op_id: Redir_Less
                                                      fd: 16777215
                                                      arg_word: {(DQ ($ VSub_Name '$progpath'))}
                                                      spids: [5558]
                                                    )
                                                    (Redir
                                                      op_id: Redir_Great
                                                      fd: 16777215
                                                      arg_word: {(/dev/null)}
                                                      spids: [5564]
                                                    )
                                                  ]
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(eval)} 
                                              {
                                                (DQ 
                                                  (CommandSubPart
                                                    command_list: 
                                                      (CommandList
                                                        children: [
                                                          (SimpleCommand
                                                            words: [
                                                              {(${ VSub_Name SED)}
                                                              {(-n)}
                                                              {(-e)}
                                                              {
                                                                (SQ 
                                                                  <
'/^# ### BEGIN LIBTOOL TAG CONFIG: '
                                                                  >
                                                                ) ($ VSub_Name '$z') (SQ <'$/,/^# ### END LIBTOOL TAG CONFIG: '>) ($ VSub_Name '$z') (SQ <'$/p'>)
                                                              }
                                                            ]
                                                            redirects: [
                                                              (Redir
                                                                op_id: Redir_Less
                                                                fd: 16777215
                                                                arg_word: {($ VSub_Name '$progpath')}
                                                                spids: [5600]
                                                              )
                                                            ]
                                                          )
                                                        ]
                                                      )
                                                    left_token: <Left_Backtick '`'>
                                                    spids: [5579 5603]
                                                  )
                                                )
                                              }
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:CC_quoted)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [5607]
                                                )
                                              ]
                                              spids: [5607]
                                            )
                                            (ForEach
                                              iter_name: arg
                                              iter_words: [{($ VSub_Name '$CC')}]
                                              do_arg_iter: False
                                              body: 
                                                (DoGroup
                                                  children: [
                                                    (C {(func_quote_for_eval)} 
                                                      {(DQ ($ VSub_Name '$arg'))}
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:CC_quoted)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$CC_quoted') (' ') 
                                                                ($ VSub_Name 
'$func_quote_for_eval_result'
                                                                )
                                                              )
                                                            }
                                                          spids: [5633]
                                                        )
                                                      ]
                                                      spids: [5633]
                                                    )
                                                  ]
                                                  spids: [5619 5641]
                                                )
                                              spids: [5615 5617]
                                            )
                                            (Case
                                              to_match: {(DQ ($ VSub_At '$@') (' '))}
                                              arms: [
                                                (case_arm
                                                  pat_list: [
                                                    {(DQ (' ') ($ VSub_Name '$CC') (' ')) 
                                                      (Lit_Other '*')
                                                    }
                                                    {(DQ ($ VSub_Name '$CC') (' ')) (Lit_Other '*')}
                                                    {
                                                      (DQ (' ') 
                                                        (CommandSubPart
                                                          command_list: 
                                                            (CommandList
                                                              children: [
                                                                (C {($ VSub_Name '$ECHO')} 
                                                                  {($ VSub_Name '$CC')}
                                                                )
                                                              ]
                                                            )
                                                          left_token: <Left_Backtick '`'>
                                                          spids: [5673 5677]
                                                        ) (' ')
                                                      ) (Lit_Other '*')
                                                    }
                                                    {
                                                      (DQ 
                                                        (CommandSubPart
                                                          command_list: 
                                                            (CommandList
                                                              children: [
                                                                (C {($ VSub_Name '$ECHO')} 
                                                                  {($ VSub_Name '$CC')}
                                                                )
                                                              ]
                                                            )
                                                          left_token: <Left_Backtick '`'>
                                                          spids: [5685 5689]
                                                        ) (' ')
                                                      ) (Lit_Other '*')
                                                    }
                                                    {(DQ (' ') ($ VSub_Name '$CC_quoted')) 
                                                      (Lit_Other '*')
                                                    }
                                                    {(DQ ($ VSub_Name '$CC_quoted') (' ')) 
                                                      (Lit_Other '*')
                                                    }
                                                    {
                                                      (DQ (' ') 
                                                        (CommandSubPart
                                                          command_list: 
                                                            (CommandList
                                                              children: [
                                                                (C {($ VSub_Name '$ECHO')} 
                                                                  {($ VSub_Name '$CC_quoted')}
                                                                )
                                                              ]
                                                            )
                                                          left_token: <Left_Backtick '`'>
                                                          spids: [5714 5718]
                                                        ) (' ')
                                                      ) (Lit_Other '*')
                                                    }
                                                    {
                                                      (DQ 
                                                        (CommandSubPart
                                                          command_list: 
                                                            (CommandList
                                                              children: [
                                                                (C {($ VSub_Name '$ECHO')} 
                                                                  {($ VSub_Name '$CC_quoted')}
                                                                )
                                                              ]
                                                            )
                                                          left_token: <Left_Backtick '`'>
                                                          spids: [5726 5730]
                                                        ) (' ')
                                                      ) (Lit_Other '*')
                                                    }
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:tagname)
                                                          op: Equal
                                                          rhs: {($ VSub_Name '$z')}
                                                          spids: [5749]
                                                        )
                                                      ]
                                                      spids: [5749]
                                                    )
                                                    (ControlFlow
                                                      token: <ControlFlow_Break break>
                                                    )
                                                  ]
                                                  spids: [5655 5734 5756 16777215]
                                                )
                                              ]
                                              spids: [5644 5651 5759]
                                            )
                                          ]
                                          spids: [16777215 5569]
                                        )
                                      ]
                                      spids: [16777215 5762]
                                    )
                                  ]
                                  spids: [5545 5765]
                                )
                              spids: [5541 5543]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-z)} {(DQ ($ VSub_Name '$tagname'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(func_echo)} {(DQ ('unable to infer tagged configuration'))})
                                    (C {(func_fatal_error)} 
                                      {
                                        (DQ ('specify a tag with ') 
                                          (EscapedLiteralPart
                                            token: <Lit_EscapedChar '\\`'>
                                          ) ("--tag'")
                                        )
                                      }
                                    )
                                  ]
                                  spids: [16777215 5791]
                                )
                              ]
                              spids: [16777215 5816]
                            )
                          ]
                          spids: [5532 5533 5819 16777215]
                        )
                      ]
                      spids: [5424 5428 5822]
                    )
                  ]
                  spids: [16777215 5388]
                )
              ]
              spids: [16777215 5825]
            )
          ]
          spids: [5361]
        )
      spids: [5356 5360]
    )
    (FuncDef
      name: func_write_libtool_object
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:write_libobj)
                  op: Equal
                  rhs: {(${ VSub_Number 1)}
                  spids: [5849]
                )
              ]
              spids: [5849]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(test)} {(DQ ($ VSub_Name '$build_libtool_libs'))} {(Lit_Other '=')} {(yes)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:write_lobj)
                          op: Equal
                          rhs: 
                            {(EscapedLiteralPart token:<Lit_EscapedChar "\\'">) (${ VSub_Number 2) 
                              (EscapedLiteralPart
                                token: <Lit_EscapedChar "\\'">
                              )
                            }
                          spids: [5871]
                        )
                      ]
                      spids: [5871]
                    )
                  ]
                  spids: [16777215 5868]
                )
              ]
              else_action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:write_lobj)
                      op: Equal
                      rhs: {(none)}
                      spids: [5882]
                    )
                  ]
                  spids: [5882]
                )
              ]
              spids: [5879 5886]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(test)} {(DQ ($ VSub_Name '$build_old_libs'))} {(Lit_Other '=')} {(yes)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:write_oldobj)
                          op: Equal
                          rhs: 
                            {(EscapedLiteralPart token:<Lit_EscapedChar "\\'">) (${ VSub_Number 3) 
                              (EscapedLiteralPart
                                token: <Lit_EscapedChar "\\'">
                              )
                            }
                          spids: [5906]
                        )
                      ]
                      spids: [5906]
                    )
                  ]
                  spids: [16777215 5903]
                )
              ]
              else_action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:write_oldobj)
                      op: Equal
                      rhs: {(none)}
                      spids: [5917]
                    )
                  ]
                  spids: [5917]
                )
              ]
              spids: [5914 5921]
            )
            (AndOr
              children: [
                (C {($ VSub_Name '$opt_dry_run')})
                (BraceGroup
                  children: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (Redir
                          op_id: Redir_Great
                          fd: 16777215
                          arg_word: {(${ VSub_Name write_libobj) (T)}
                          spids: [5934]
                        )
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('# ') ($ VSub_Name '$write_libobj') (' - a libtool object file\n') 
                                ('# Generated by ') ($ VSub_Name '$PROGRAM') (' (GNU ') ($ VSub_Name '$PACKAGE') ($ VSub_Name '$TIMESTAMP') (') ') 
                                ($ VSub_Name '$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=') ($ VSub_Name '$write_lobj') ('\n') ('\n') 
                                ('# Name of the non-PIC object\n') ('non_pic_object=') ($ VSub_Name '$write_oldobj') ('\n') ('\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [5940]
                        )
                      ]
                    )
                    (C {($ VSub_Name '$MV')} {(DQ (${ VSub_Name write_libobj) (T))} 
                      {(DQ (${ VSub_Name write_libobj))}
                    )
                  ]
                  spids: [5929]
                )
              ]
              op_id: Op_DPipe
            )
          ]
          spids: [5846]
        )
      spids: [5841 5845]
    )
    (FuncDef
      name: func_mode_compile
      body: 
        (BraceGroup
          children: [
            (C {($ VSub_Name '$opt_debug')})
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:base_compile) op:Equal rhs:{(SQ )} spids:[6009])]
              spids: [6009]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:srcfile)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$nonopt'))}
                  spids: [6012]
                )
              ]
              spids: [6012]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:suppress_opt) op:Equal rhs:{(yes)} spids:[6021])]
              spids: [6021]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:suppress_output)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [6025]
                )
              ]
              spids: [6025]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:arg_mode) op:Equal rhs:{(normal)} spids:[6028])]
              spids: [6028]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:libobj) op:Equal rhs:{(SQ )} spids:[6032])]
              spids: [6032]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:later) op:Equal rhs:{(SQ )} spids:[6035])]
              spids: [6035]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:pie_flag) op:Equal rhs:{(SQ )} spids:[6038])]
              spids: [6038]
            )
            (ForEach
              iter_name: arg
              do_arg_iter: True
              body: 
                (DoGroup
                  children: [
                    (Case
                      to_match: {($ VSub_Name '$arg_mode')}
                      arms: [
                        (case_arm
                          pat_list: [{(arg)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:lastarg)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$arg'))}
                                  spids: [6066]
                                )
                              ]
                              spids: [6066]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:arg_mode)
                                  op: Equal
                                  rhs: {(normal)}
                                  spids: [6072]
                                )
                              ]
                              spids: [6072]
                            )
                          ]
                          spids: [6057 6059 6076 16777215]
                        )
                        (case_arm
                          pat_list: [{(target)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:libobj)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$arg'))}
                                  spids: [6085]
                                )
                              ]
                              spids: [6085]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:arg_mode)
                                  op: Equal
                                  rhs: {(normal)}
                                  spids: [6091]
                                )
                              ]
                              spids: [6091]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [6080 6082 6098 16777215]
                        )
                        (case_arm
                          pat_list: [{(normal)}]
                          action: [
                            (Case
                              to_match: {($ VSub_Name '$arg')}
                              arms: [
                                (case_arm
                                  pat_list: [{(-o)}]
                                  action: [
                                    (AndOr
                                      children: [
                                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$libobj'))})
                                        (C {(func_fatal_error)} 
                                          {
                                            (DQ ('you cannot specify ') 
                                              (EscapedLiteralPart
                                                token: <Lit_EscapedChar '\\`'>
                                              ) ("-o' more than once")
                                            )
                                          }
                                        )
                                      ]
                                      op_id: Op_DAmp
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:arg_mode)
                                          op: Equal
                                          rhs: {(target)}
                                          spids: [6143]
                                        )
                                      ]
                                      spids: [6143]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [6118 6119 6150 16777215]
                                )
                                (case_arm
                                  pat_list: [{(-pie)} {(-fpie)} {(-fPIE)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:pie_flag)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$pie_flag') (' ') ($ VSub_Name '$arg'))
                                            }
                                          spids: [6166]
                                        )
                                      ]
                                      spids: [6166]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [6154 6163 6177 16777215]
                                )
                                (case_arm
                                  pat_list: [{(-shared)} {(-static)} {(-prefer-pic)} {(-prefer-non-pic)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:later)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$later') (' ') ($ VSub_Name '$arg'))}
                                          spids: [6197]
                                        )
                                      ]
                                      spids: [6197]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [6181 6194 6208 16777215]
                                )
                                (case_arm
                                  pat_list: [{(-no-suppress)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:suppress_opt)
                                          op: Equal
                                          rhs: {(no)}
                                          spids: [6216]
                                        )
                                      ]
                                      spids: [6216]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [6212 6213 6223 16777215]
                                )
                                (case_arm
                                  pat_list: [{(-Xcompiler)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:arg_mode)
                                          op: Equal
                                          rhs: {(arg)}
                                          spids: [6231]
                                        )
                                      ]
                                      spids: [6231]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [6227 6228 6244 16777215]
                                )
                                (case_arm
                                  pat_list: [{(-Wc) (Lit_Comma ',') (Lit_Other '*')}]
                                  action: [
                                    (C {(func_stripname)} {(SQ <'-Wc,'>)} {(SQ )} 
                                      {(DQ ($ VSub_Name '$arg'))}
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:args)
                                          op: Equal
                                          rhs: {($ VSub_Name '$func_stripname_result')}
                                          spids: [6271]
                                        )
                                      ]
                                      spids: [6271]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:lastarg)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [6275]
                                        )
                                      ]
                                      spids: [6275]
                                    )
                                    (Sentence
                                      child: 
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:save_ifs)
                                              op: Equal
                                              rhs: {(DQ ($ VSub_Name '$IFS'))}
                                              spids: [6278]
                                            )
                                          ]
                                          spids: [6278]
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:IFS)
                                          op: Equal
                                          rhs: {(SQ <','>)}
                                          spids: [6284]
                                        )
                                      ]
                                      spids: [6284]
                                    )
                                    (ForEach
                                      iter_name: arg
                                      iter_words: [{($ VSub_Name '$args')}]
                                      do_arg_iter: False
                                      body: 
                                        (DoGroup
                                          children: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:IFS)
                                                  op: Equal
                                                  rhs: {(DQ ($ VSub_Name '$save_ifs'))}
                                                  spids: [6302]
                                                )
                                              ]
                                              spids: [6302]
                                            )
                                            (C {(func_quote_for_eval)} {(DQ ($ VSub_Name '$arg'))})
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:lastarg)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$lastarg') (' ') 
                                                        ($ VSub_Name '$func_quote_for_eval_result')
                                                      )
                                                    }
                                                  spids: [6315]
                                                )
                                              ]
                                              spids: [6315]
                                            )
                                          ]
                                          spids: [6299 6323]
                                        )
                                      spids: [6295 6297]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:IFS)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$save_ifs'))}
                                          spids: [6326]
                                        )
                                      ]
                                      spids: [6326]
                                    )
                                    (C {(func_stripname)} {(SQ <' '>)} {(SQ )} 
                                      {(DQ ($ VSub_Name '$lastarg'))}
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:lastarg)
                                          op: Equal
                                          rhs: {($ VSub_Name '$func_stripname_result')}
                                          spids: [6346]
                                        )
                                      ]
                                      spids: [6346]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:base_compile)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$base_compile') (' ') 
                                                ($ VSub_Name '$lastarg')
                                              )
                                            }
                                          spids: [6355]
                                        )
                                      ]
                                      spids: [6355]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [6251 6254 6366 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:lastarg)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$srcfile'))}
                                          spids: [6386]
                                        )
                                      ]
                                      spids: [6386]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:srcfile)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$arg'))}
                                          spids: [6392]
                                        )
                                      ]
                                      spids: [6392]
                                    )
                                  ]
                                  spids: [6370 6371 6398 16777215]
                                )
                              ]
                              spids: [6111 6115 6401]
                            )
                          ]
                          spids: [6102 6104 6407 16777215]
                        )
                      ]
                      spids: [6050 6054 6410]
                    )
                    (C {(func_quote_for_eval)} {(DQ ($ VSub_Name '$lastarg'))})
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:base_compile)
                          op: Equal
                          rhs: 
                            {
                              (DQ ($ VSub_Name '$base_compile') (' ') 
                                ($ VSub_Name '$func_quote_for_eval_result')
                              )
                            }
                          spids: [6428]
                        )
                      ]
                      spids: [6428]
                    )
                  ]
                  spids: [6047 6436]
                )
              spids: [16777215 16777215]
            )
            (Case
              to_match: {($ VSub_Name '$arg_mode')}
              arms: [
                (case_arm
                  pat_list: [{(arg)}]
                  action: [
                    (C {(func_fatal_error)} {(DQ ('you must specify an argument for -Xcompile'))})
                  ]
                  spids: [6450 6451 6461 16777215]
                )
                (case_arm
                  pat_list: [{(target)}]
                  action: [
                    (C {(func_fatal_error)} 
                      {
                        (DQ ('you must specify a target with ') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ("-o'")
                        )
                      }
                    )
                  ]
                  spids: [6464 6465 6477 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*')}]
                  action: [
                    (AndOr
                      children: [
                        (C {(test)} {(-z)} {(DQ ($ VSub_Name '$libobj'))})
                        (BraceGroup
                          children: [
                            (C {(func_basename)} {(DQ ($ VSub_Name '$srcfile'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:libobj)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$func_basename_result'))}
                                  spids: [6508]
                                )
                              ]
                              spids: [6508]
                            )
                          ]
                          spids: [6498]
                        )
                      ]
                      op_id: Op_DAmp
                    )
                  ]
                  spids: [6480 6481 6517 16777215]
                )
              ]
              spids: [6443 6447 6520]
            )
            (Case
              to_match: {($ VSub_Name '$libobj')}
              arms: [
                (case_arm
                  pat_list: [
                    {(Lit_Other '*') (.) (Lit_Other '[') (cCFSifmso) (Lit_Other ']')}
                    {(Lit_Other '*') (.ada)}
                    {(Lit_Other '*') (.adb)}
                    {(Lit_Other '*') (.ads)}
                    {(Lit_Other '*') (.asm)}
                    {(Lit_Other '*') (.c) (Lit_Other '+') (Lit_Other '+')}
                    {(Lit_Other '*') (.cc)}
                    {(Lit_Other '*') (.ii)}
                    {(Lit_Other '*') (.class)}
                    {(Lit_Other '*') (.cpp)}
                    {(Lit_Other '*') (.cxx)}
                    {(Lit_Other '*') (.) (Lit_Other '[') (fF) (Lit_Other ']') (Lit_Other '[') (09) 
                      (Lit_Other ']') (Lit_Other '?')
                    }
                    {(Lit_Other '*') (.for)}
                    {(Lit_Other '*') (.java)}
                    {(Lit_Other '*') (.obj)}
                    {(Lit_Other '*') (.sx)}
                  ]
                  action: [
                    (C {(func_xform)} {(DQ ($ VSub_Name '$libobj'))})
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:libobj)
                          op: Equal
                          rhs: {($ VSub_Name '$func_xform_result')}
                          spids: [6644]
                        )
                      ]
                      spids: [6644]
                    )
                  ]
                  spids: [6539 6634 6648 16777215]
                )
              ]
              spids: [6532 6536 6651]
            )
            (Case
              to_match: {($ VSub_Name '$libobj')}
              arms: [
                (case_arm
                  pat_list: [{(Lit_Other '*') (.lo)}]
                  action: [
                    (Sentence
                      child: (C {(func_lo2o)} {(DQ ($ VSub_Name '$libobj'))})
                      terminator: <Op_Semi ';'>
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:obj)
                          op: Equal
                          rhs: {($ VSub_Name '$func_lo2o_result')}
                          spids: [6673]
                        )
                      ]
                      spids: [6673]
                    )
                  ]
                  spids: [6662 6664 6676 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*')}]
                  action: [
                    (C {(func_fatal_error)} 
                      {
                        (DQ ('cannot determine name of library object from ') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ($ VSub_Name '$libobj') ("'")
                        )
                      }
                    )
                  ]
                  spids: [6679 6680 6693 16777215]
                )
              ]
              spids: [6655 6659 6696]
            )
            (C {(func_infer_tag)} {($ VSub_Name '$base_compile')})
            (ForEach
              iter_name: arg
              iter_words: [{($ VSub_Name '$later')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (Case
                      to_match: {($ VSub_Name '$arg')}
                      arms: [
                        (case_arm
                          pat_list: [{(-shared)}]
                          action: [
                            (AndOr
                              children: [
                                (C {(test)} {(DQ ($ VSub_Name '$build_libtool_libs'))} 
                                  {(KW_Bang '!') (Lit_Other '=')} {(yes)}
                                )
                                (C {(func_fatal_configuration)} 
                                  {(DQ ('can not build a shared library'))}
                                )
                              ]
                              op_id: Op_DAmp
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:build_old_libs)
                                  op: Equal
                                  rhs: {(no)}
                                  spids: [6751]
                                )
                              ]
                              spids: [6751]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [6725 6726 6758 16777215]
                        )
                        (case_arm
                          pat_list: [{(-static)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:build_libtool_libs)
                                  op: Equal
                                  rhs: {(no)}
                                  spids: [6766]
                                )
                              ]
                              spids: [6766]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:build_old_libs)
                                  op: Equal
                                  rhs: {(yes)}
                                  spids: [6770]
                                )
                              ]
                              spids: [6770]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [6762 6763 6777 16777215]
                        )
                        (case_arm
                          pat_list: [{(-prefer-pic)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:pic_mode)
                                  op: Equal
                                  rhs: {(yes)}
                                  spids: [6785]
                                )
                              ]
                              spids: [6785]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [6781 6782 6792 16777215]
                        )
                        (case_arm
                          pat_list: [{(-prefer-non-pic)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:pic_mode)
                                  op: Equal
                                  rhs: {(no)}
                                  spids: [6800]
                                )
                              ]
                              spids: [6800]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [6796 6797 6807 16777215]
                        )
                      ]
                      spids: [6718 6722 6810]
                    )
                  ]
                  spids: [6715 6813]
                )
              spids: [6711 6713]
            )
            (C {(func_quote_for_eval)} {(DQ ($ VSub_Name '$libobj'))})
            (AndOr
              children: [
                (C {(test)} {(DQ (X) ($ VSub_Name '$libobj'))} {(KW_Bang '!') (Lit_Other '=')} 
                  {(DQ (X) ($ VSub_Name '$func_quote_for_eval_result'))}
                )
                (AndOr
                  children: [
                    (Pipeline
                      children: [
                        (C {($ VSub_Name '$ECHO')} {(DQ (X) ($ VSub_Name '$libobj'))})
                        (C {($ VSub_Name '$GREP')} 
                          {(SQ <'[]~#^*{};<>?"'>) (DQ ("'")) (SQ <'\t &()|`$[]'>)}
                        )
                      ]
                      negated: False
                    )
                    (C {(func_warning)} 
                      {
                        (DQ ('libobj name ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                          ($ VSub_Name '$libobj') ("' may not contain shell special characters.")
                        )
                      }
                    )
                  ]
                  op_id: Op_DAmp
                )
              ]
              op_id: Op_DAmp
            )
            (C {(func_dirname_and_basename)} {(DQ ($ VSub_Name '$obj'))} {(DQ (/))} {(DQ )})
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:objname)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$func_basename_result'))}
                  spids: [6892]
                )
              ]
              spids: [6892]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:xdir)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$func_dirname_result'))}
                  spids: [6898]
                )
              ]
              spids: [6898]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:lobj)
                  op: Equal
                  rhs: {(${ VSub_Name xdir) ($ VSub_Name '$objdir') (/) ($ VSub_Name '$objname')}
                  spids: [6904]
                )
              ]
              spids: [6904]
            )
            (AndOr
              children: [
                (C {(test)} {(-z)} {(DQ ($ VSub_Name '$base_compile'))})
                (C {(func_fatal_help)} {(DQ ('you must specify a compilation command'))})
              ]
              op_id: Op_DAmp
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(test)} {(DQ ($ VSub_Name '$build_old_libs'))} {(Lit_Other '=')} {(yes)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:removelist)
                          op: Equal
                          rhs: 
                            {
                              (DQ ($ VSub_Name '$obj') (' ') ($ VSub_Name '$lobj') (' ') 
                                ($ VSub_Name '$libobj') (' ') (${ VSub_Name libobj) (T)
                              )
                            }
                          spids: [6954]
                        )
                      ]
                      spids: [6954]
                    )
                  ]
                  spids: [16777215 6951]
                )
              ]
              else_action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:removelist)
                      op: Equal
                      rhs: 
                        {
                          (DQ ($ VSub_Name '$lobj') (' ') ($ VSub_Name '$libobj') (' ') 
                            (${ VSub_Name libobj) (T)
                          )
                        }
                      spids: [6972]
                    )
                  ]
                  spids: [6972]
                )
              ]
              spids: [6969 6985]
            )
            (Case
              to_match: {($ VSub_Name '$host_os')}
              arms: [
                (case_arm
                  pat_list: [
                    {(cygwin) (Lit_Other '*')}
                    {(mingw) (Lit_Other '*')}
                    {(pw32) (Lit_Other '*')}
                    {(os2) (Lit_Other '*')}
                    {(cegcc) (Lit_Other '*')}
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:pic_mode)
                          op: Equal
                          rhs: {(default)}
                          spids: [7025]
                        )
                      ]
                      spids: [7025]
                    )
                  ]
                  spids: [7000 7022 7029 16777215]
                )
              ]
              spids: [6993 6997 7032]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (AndOr
                          children: [
                            (C {(test)} {(DQ ($ VSub_Name '$pic_mode'))} {(Lit_Other '=')} {(no)})
                            (C {(test)} {(DQ ($ VSub_Name '$deplibs_check_method'))} 
                              {(KW_Bang '!') (Lit_Other '=')} {(pass_all)}
                            )
                          ]
                          op_id: Op_DAmp
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:pic_mode)
                          op: Equal
                          rhs: {(default)}
                          spids: [7068]
                        )
                      ]
                      spids: [7068]
                    )
                  ]
                  spids: [16777215 7061]
                )
              ]
              spids: [16777215 7072]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(DQ ($ VSub_Name '$compiler_c_o'))} {(Lit_Other '=')} {(no)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:output_obj)
                          op: Equal
                          rhs: 
                            {
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (Pipeline
                                        children: [
                                          (C {($ VSub_Name '$ECHO')} {(DQ (X) ($ VSub_Name '$srcfile'))})
                                          (C {($ VSub_Name '$Xsed')} {(-e)} {(SQ <'s%^.*/%%'>)} {(-e)} 
                                            {(SQ <'s%\\.[^.]*$%%'>)}
                                          )
                                        ]
                                        negated: False
                                      )
                                    ]
                                  )
                                left_token: <Left_Backtick '`'>
                                spids: [7101 7124]
                              ) (.) (${ VSub_Name objext)
                            }
                          spids: [7100]
                        )
                      ]
                      spids: [7100]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:lockfile)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$output_obj') (.lock))}
                          spids: [7131]
                        )
                      ]
                      spids: [7131]
                    )
                  ]
                  spids: [16777215 7097]
                )
              ]
              else_action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:output_obj)
                      op: Equal
                      rhs: {(SQ )}
                      spids: [7141]
                    )
                  ]
                  spids: [7141]
                )
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:need_locks)
                      op: Equal
                      rhs: {(no)}
                      spids: [7144]
                    )
                  ]
                  spids: [7144]
                )
                (Assignment
                  keyword: Assign_None
                  pairs: [(assign_pair lhs:(LhsName name:lockfile) op:Equal rhs:{(SQ )} spids:[7148])]
                  spids: [7148]
                )
              ]
              spids: [7138 7151]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(DQ ($ VSub_Name '$need_locks'))} {(Lit_Other '=')} {(yes)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Until
                      cond: [
                        (Sentence
                          child: 
                            (AndOr
                              children: [
                                (C {($ VSub_Name '$opt_dry_run')})
                                (SimpleCommand
                                  words: [
                                    {(ln)}
                                    {(DQ ($ VSub_Name '$progpath'))}
                                    {(DQ ($ VSub_Name '$lockfile'))}
                                  ]
                                  redirects: [
                                    (Redir
                                      op_id: Redir_Great
                                      fd: 2
                                      arg_word: {(/dev/null)}
                                      spids: [7195]
                                    )
                                  ]
                                )
                              ]
                              op_id: Op_DPipe
                            )
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      body: 
                        (DoGroup
                          children: [
                            (C {(func_echo)} 
                              {(DQ ('Waiting for ') ($ VSub_Name '$lockfile') (' to be removed'))}
                            )
                            (C {(sleep)} {(2)})
                          ]
                          spids: [7199 7216]
                        )
                    )
                  ]
                  spids: [16777215 7176]
                )
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(DQ ($ VSub_Name '$need_locks'))} {(Lit_Other '=')} {(warn)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-f)} {(DQ ($ VSub_Name '$lockfile'))})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {($ VSub_Name '$ECHO')} 
                              {
                                (DQ ('*** ERROR, ') ($ VSub_Name '$lockfile') 
                                  (' exists and contains:\n') 
                                  (CommandSubPart
                                    command_list: 
                                      (CommandList
                                        children: [
                                          (SimpleCommand
                                            words: [{(cat)} {($ VSub_Name '$lockfile')}]
                                            redirects: [
                                              (Redir
                                                op_id: Redir_Great
                                                fd: 2
                                                arg_word: {(/dev/null)}
                                                spids: [7261]
                                              )
                                            ]
                                          )
                                        ]
                                      )
                                    left_token: <Left_Backtick '`'>
                                    spids: [7256 7263]
                                  ) ('\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 ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ("-c' and ") 
                                  (EscapedLiteralPart
                                    token: <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.)
                                )
                              }
                            )
                            (AndOr
                              children: [
                                (C {($ VSub_Name '$opt_dry_run')})
                                (C {($ VSub_Name '$RM')} {($ VSub_Name '$removelist')})
                              ]
                              op_id: Op_DPipe
                            )
                            (C {(exit)} {($ VSub_Name '$EXIT_FAILURE')})
                          ]
                          spids: [16777215 7246]
                        )
                      ]
                      spids: [16777215 7294]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:removelist)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$removelist') (' ') ($ VSub_Name '$output_obj'))}
                          spids: [7297]
                        )
                      ]
                      spids: [7297]
                    )
                    (SimpleCommand
                      words: [{($ VSub_Name '$ECHO')} {(DQ ($ VSub_Name '$srcfile'))}]
                      redirects: [
                        (Redir
                          op_id: Redir_Great
                          fd: 16777215
                          arg_word: {(DQ ($ VSub_Name '$lockfile'))}
                          spids: [7311]
                        )
                      ]
                    )
                  ]
                  spids: [7219 7232]
                )
              ]
              spids: [16777215 7318]
            )
            (AndOr
              children: [
                (C {($ VSub_Name '$opt_dry_run')})
                (C {($ VSub_Name '$RM')} {($ VSub_Name '$removelist')})
              ]
              op_id: Op_DPipe
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:removelist)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$removelist') (' ') ($ VSub_Name '$lockfile'))}
                  spids: [7331]
                )
              ]
              spids: [7331]
            )
            (C {(trap)} {(SQ <'$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE'>)} {(1)} {(2)} {(15)})
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$fix_srcfile_path'))})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(eval)} 
                      {(Lit_VarLike 'srcfile=') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                        ($ VSub_Name '$fix_srcfile_path') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                      }
                    )
                  ]
                  spids: [16777215 7364]
                )
              ]
              spids: [16777215 7375]
            )
            (C {(func_quote_for_eval)} {(DQ ($ VSub_Name '$srcfile'))})
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:qsrcfile)
                  op: Equal
                  rhs: {($ VSub_Name '$func_quote_for_eval_result')}
                  spids: [7385]
                )
              ]
              spids: [7385]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(test)} {(DQ ($ VSub_Name '$build_libtool_libs'))} {(Lit_Other '=')} {(yes)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:fbsd_hideous_sh_bug)
                          op: Equal
                          rhs: {($ VSub_Name '$base_compile')}
                          spids: [7414]
                        )
                      ]
                      spids: [7414]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$pic_mode'))} 
                                  {(KW_Bang '!') (Lit_Other '=')} {(no)}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:command)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$base_compile') (' ') ($ VSub_Name '$qsrcfile') 
                                        (' ') ($ VSub_Name '$pic_flag')
                                      )
                                    }
                                  spids: [7436]
                                )
                              ]
                              spids: [7436]
                            )
                          ]
                          spids: [16777215 7433]
                        )
                      ]
                      else_action: [
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:command)
                              op: Equal
                              rhs: {(DQ ($ VSub_Name '$base_compile') (' ') ($ VSub_Name '$qsrcfile'))}
                              spids: [7453]
                            )
                          ]
                          spids: [7453]
                        )
                      ]
                      spids: [7446 7461]
                    )
                    (C {(func_mkdir_p)} {(DQ ($ VSub_Name '$xdir') ($ VSub_Name '$objdir'))})
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-z)} {(DQ ($ VSub_Name '$output_obj'))})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:command)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$command') (' -o ') ($ VSub_Name '$lobj'))}
                                  spids: [7492]
                                )
                              ]
                              spids: [7492]
                            )
                          ]
                          spids: [16777215 7485]
                        )
                      ]
                      spids: [16777215 7500]
                    )
                    (C {(func_show_eval_locale)} {(DQ ($ VSub_Name '$command'))} 
                      {(SQ <'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE'>)}
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (AndOr
                                  children: [
                                    (C {(test)} {(DQ ($ VSub_Name '$need_locks'))} {(Lit_Other '=')} 
                                      {(warn)}
                                    )
                                    (C {(test)} 
                                      {
                                        (DQ (X) 
                                          (CommandSubPart
                                            command_list: 
                                              (CommandList
                                                children: [
                                                  (SimpleCommand
                                                    words: [{(cat)} {($ VSub_Name '$lockfile')}]
                                                    redirects: [
                                                      (Redir
                                                        op_id: Redir_Great
                                                        fd: 2
                                                        arg_word: {(/dev/null)}
                                                        spids: [7542]
                                                      )
                                                    ]
                                                  )
                                                ]
                                              )
                                            left_token: <Left_Backtick '`'>
                                            spids: [7537 7544]
                                          )
                                        )
                                      } {(KW_Bang '!') (Lit_Other '=')} {(DQ (X) ($ VSub_Name '$srcfile'))}
                                    )
                                  ]
                                  op_id: Op_DAmp
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {($ VSub_Name '$ECHO')} 
                              {
                                (DQ ('*** ERROR, ') ($ VSub_Name '$lockfile') (' contains:\n') 
                                  (CommandSubPart
                                    command_list: 
                                      (CommandList
                                        children: [
                                          (SimpleCommand
                                            words: [{(cat)} {($ VSub_Name '$lockfile')}]
                                            redirects: [
                                              (Redir
                                                op_id: Redir_Great
                                                fd: 2
                                                arg_word: {(/dev/null)}
                                                spids: [7571]
                                              )
                                            ]
                                          )
                                        ]
                                      )
                                    left_token: <Left_Backtick '`'>
                                    spids: [7566 7573]
                                  ) ('\n') ('\n') ('but it should contain:\n') ($ VSub_Name '$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 ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ("-c' and ") 
                                  (EscapedLiteralPart
                                    token: <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.)
                                )
                              }
                            )
                            (AndOr
                              children: [
                                (C {($ VSub_Name '$opt_dry_run')})
                                (C {($ VSub_Name '$RM')} {($ VSub_Name '$removelist')})
                              ]
                              op_id: Op_DPipe
                            )
                            (C {(exit)} {($ VSub_Name '$EXIT_FAILURE')})
                          ]
                          spids: [16777215 7556]
                        )
                      ]
                      spids: [16777215 7608]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (AndOr
                                  children: [
                                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$output_obj'))})
                                    (C {(test)} {(DQ (X) ($ VSub_Name '$output_obj'))} 
                                      {(KW_Bang '!') (Lit_Other '=')} {(DQ (X) ($ VSub_Name '$lobj'))}
                                    )
                                  ]
                                  op_id: Op_DAmp
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {(func_show_eval)} {(SQ <'$MV "$output_obj" "$lobj"'>)} 
                              {(SQ <'error=$?; $opt_dry_run || $RM $removelist; exit $error'>)}
                            )
                          ]
                          spids: [16777215 7644]
                        )
                      ]
                      spids: [16777215 7660]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$suppress_opt'))} {(Lit_Other '=')} 
                                  {(yes)}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:suppress_output)
                                  op: Equal
                                  rhs: {(SQ <' >/dev/null 2>&1'>)}
                                  spids: [7684]
                                )
                              ]
                              spids: [7684]
                            )
                          ]
                          spids: [16777215 7681]
                        )
                      ]
                      spids: [16777215 7690]
                    )
                  ]
                  spids: [16777215 7407]
                )
              ]
              spids: [16777215 7693]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(test)} {(DQ ($ VSub_Name '$build_old_libs'))} {(Lit_Other '=')} {(yes)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$pic_mode'))} 
                                  {(KW_Bang '!') (Lit_Other '=')} {(yes)}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:command)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$base_compile') (' ') ($ VSub_Name '$qsrcfile') 
                                        ($ VSub_Name '$pie_flag')
                                      )
                                    }
                                  spids: [7738]
                                )
                              ]
                              spids: [7738]
                            )
                          ]
                          spids: [16777215 7731]
                        )
                      ]
                      else_action: [
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:command)
                              op: Equal
                              rhs: 
                                {
                                  (DQ ($ VSub_Name '$base_compile') (' ') ($ VSub_Name '$qsrcfile') 
                                    (' ') ($ VSub_Name '$pic_flag')
                                  )
                                }
                              spids: [7750]
                            )
                          ]
                          spids: [7750]
                        )
                      ]
                      spids: [7747 7760]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$compiler_c_o'))} {(Lit_Other '=')} 
                                  {(yes)}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:command)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$command') (' -o ') ($ VSub_Name '$obj'))}
                                  spids: [7779]
                                )
                              ]
                              spids: [7779]
                            )
                          ]
                          spids: [16777215 7776]
                        )
                      ]
                      spids: [16777215 7787]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:command)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$command') ($ VSub_Name '$suppress_output'))}
                          spids: [7795]
                        )
                      ]
                      spids: [7795]
                    )
                    (C {(func_show_eval_locale)} {(DQ ($ VSub_Name '$command'))} 
                      {(SQ <'$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE'>)}
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (AndOr
                                  children: [
                                    (C {(test)} {(DQ ($ VSub_Name '$need_locks'))} {(Lit_Other '=')} 
                                      {(warn)}
                                    )
                                    (C {(test)} 
                                      {
                                        (DQ (X) 
                                          (CommandSubPart
                                            command_list: 
                                              (CommandList
                                                children: [
                                                  (SimpleCommand
                                                    words: [{(cat)} {($ VSub_Name '$lockfile')}]
                                                    redirects: [
                                                      (Redir
                                                        op_id: Redir_Great
                                                        fd: 2
                                                        arg_word: {(/dev/null)}
                                                        spids: [7840]
                                                      )
                                                    ]
                                                  )
                                                ]
                                              )
                                            left_token: <Left_Backtick '`'>
                                            spids: [7835 7842]
                                          )
                                        )
                                      } {(KW_Bang '!') (Lit_Other '=')} {(DQ (X) ($ VSub_Name '$srcfile'))}
                                    )
                                  ]
                                  op_id: Op_DAmp
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {($ VSub_Name '$ECHO')} 
                              {
                                (DQ ('*** ERROR, ') ($ VSub_Name '$lockfile') (' contains:\n') 
                                  (CommandSubPart
                                    command_list: 
                                      (CommandList
                                        children: [
                                          (SimpleCommand
                                            words: [{(cat)} {($ VSub_Name '$lockfile')}]
                                            redirects: [
                                              (Redir
                                                op_id: Redir_Great
                                                fd: 2
                                                arg_word: {(/dev/null)}
                                                spids: [7869]
                                              )
                                            ]
                                          )
                                        ]
                                      )
                                    left_token: <Left_Backtick '`'>
                                    spids: [7864 7871]
                                  ) ('\n') ('\n') ('but it should contain:\n') ($ VSub_Name '$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 ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ("-c' and ") 
                                  (EscapedLiteralPart
                                    token: <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.)
                                )
                              }
                            )
                            (AndOr
                              children: [
                                (C {($ VSub_Name '$opt_dry_run')})
                                (C {($ VSub_Name '$RM')} {($ VSub_Name '$removelist')})
                              ]
                              op_id: Op_DPipe
                            )
                            (C {(exit)} {($ VSub_Name '$EXIT_FAILURE')})
                          ]
                          spids: [16777215 7854]
                        )
                      ]
                      spids: [16777215 7906]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (AndOr
                                  children: [
                                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$output_obj'))})
                                    (C {(test)} {(DQ (X) ($ VSub_Name '$output_obj'))} 
                                      {(KW_Bang '!') (Lit_Other '=')} {(DQ (X) ($ VSub_Name '$obj'))}
                                    )
                                  ]
                                  op_id: Op_DAmp
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {(func_show_eval)} {(SQ <'$MV "$output_obj" "$obj"'>)} 
                              {(SQ <'error=$?; $opt_dry_run || $RM $removelist; exit $error'>)}
                            )
                          ]
                          spids: [16777215 7942]
                        )
                      ]
                      spids: [16777215 7958]
                    )
                  ]
                  spids: [16777215 7714]
                )
              ]
              spids: [16777215 7961]
            )
            (AndOr
              children: [
                (C {($ VSub_Name '$opt_dry_run')})
                (BraceGroup
                  children: [
                    (C {(func_write_libtool_object)} {(DQ ($ VSub_Name '$libobj'))} 
                      {(DQ ($ VSub_Name '$objdir') (/) ($ VSub_Name '$objname'))} {(DQ ($ VSub_Name '$objname'))}
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$need_locks'))} 
                                  {(KW_Bang '!') (Lit_Other '=')} {(no)}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:removelist)
                                  op: Equal
                                  rhs: {($ VSub_Name '$lockfile')}
                                  spids: [8011]
                                )
                              ]
                              spids: [8011]
                            )
                            (C {($ VSub_Name '$RM')} {(DQ ($ VSub_Name '$lockfile'))})
                          ]
                          spids: [16777215 8008]
                        )
                      ]
                      spids: [16777215 8022]
                    )
                  ]
                  spids: [7969]
                )
              ]
              op_id: Op_DPipe
            )
            (C {(exit)} {($ VSub_Name '$EXIT_SUCCESS')})
          ]
          spids: [5999]
        )
      spids: [5994 5998]
    )
    (AndOr
      children: [
        (C {($ VSub_Name '$opt_help')})
        (BraceGroup
          children: [
            (AndOr
              children: [
                (C {(test)} {(DQ ($ VSub_Name '$mode'))} {(Lit_Other '=')} {(compile)})
                (C {(func_mode_compile)} 
                  {
                    (BracedVarSub
                      token: <VSub_Number 1>
                      suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
                      spids: [8056 8062]
                    )
                  }
                )
              ]
              op_id: Op_DAmp
            )
          ]
          spids: [8040]
        )
      ]
      op_id: Op_DPipe
    )
    (FuncDef
      name: func_mode_help
      body: 
        (BraceGroup
          children: [
            (Case
              to_match: {($ VSub_Name '$mode')}
              arms: [
                (case_arm
                  pat_list: [{(DQ )}]
                  action: [(C {(func_help)})]
                  spids: [16777215 8088 8102 16777215]
                )
                (case_arm
                  pat_list: [{(clean)}]
                  action: [
                    (C {($ VSub_Name '$ECHO')} 
                      {
                        (DQ ('Usage: ') ($ VSub_Name '$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 ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                          ("/bin/rm').  RM-OPTIONS are options (such as ") (EscapedLiteralPart token:<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: [8106 8107 8133 16777215]
                )
                (case_arm
                  pat_list: [{(compile)}]
                  action: [
                    (C {($ VSub_Name '$ECHO')} 
                      {
                        (DQ ('Usage: ') ($ VSub_Name '$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 ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                          (".o' file suitable for static linking\n") ('  -static           only build a ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                          (".o' file suitable for static linking\n") ('\n') ('COMPILE-COMMAND is a command to be used in creating a ') 
                          (EscapedLiteralPart token:<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 ') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) (".c' with the\n") ('library object suffix, ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                          (".lo'.")
                        )
                      }
                    )
                  ]
                  spids: [8137 8138 8179 16777215]
                )
                (case_arm
                  pat_list: [{(execute)}]
                  action: [
                    (C {($ VSub_Name '$ECHO')} 
                      {
                        (DQ ('Usage: ') ($ VSub_Name '$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 ') (EscapedLiteralPart token:<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: [8183 8184 8214 16777215]
                )
                (case_arm
                  pat_list: [{(finish)}]
                  action: [
                    (C {($ VSub_Name '$ECHO')} 
                      {
                        (DQ ('Usage: ') ($ VSub_Name '$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 ') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ("--dry-run' option if you just want to see what would be executed.")
                        )
                      }
                    )
                  ]
                  spids: [8218 8219 8241 16777215]
                )
                (case_arm
                  pat_list: [{(install)}]
                  action: [
                    (C {($ VSub_Name '$ECHO')} 
                      {
                        (DQ ('Usage: ') ($ VSub_Name '$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 ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ("install' or ") 
                          (EscapedLiteralPart token:<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: [8245 8246 8275 16777215]
                )
                (case_arm
                  pat_list: [{(link)}]
                  action: [
                    (C {($ VSub_Name '$ECHO')} 
                      {
                        (DQ ('Usage: ') ($ VSub_Name '$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      ') 
                          (EscapedLiteralPart token:<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 ') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ("-') are ignored.\n") ('\n') ('Every other argument is treated as a filename.  Files ending in ') 
                          (EscapedLiteralPart token:<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 ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                          (".la', then a libtool library is created,\n") ('only library objects (') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                          (".lo' files) may be specified, and ") (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ("-rpath' is\n") 
                          ('required, except when creating a convenience library.\n') ('\n') ('If OUTPUT-FILE ends in ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) (".a' or ") 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) (".lib', then a standard library is created\n") ('using ') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ("ar' and ") (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ("ranlib', or on Windows using ") 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ("lib'.\n") ('\n') ('If OUTPUT-FILE ends in ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                          (".lo' or ") (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) (.) (${ VSub_Name objext) 
                          ("', then a reloadable object file\n") ('is created, otherwise an executable program is created.')
                        )
                      }
                    )
                  ]
                  spids: [8279 8280 8378 16777215]
                )
                (case_arm
                  pat_list: [{(uninstall)}]
                  action: [
                    (C {($ VSub_Name '$ECHO')} 
                      {
                        (DQ ('Usage: ') ($ VSub_Name '$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 ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                          ("/bin/rm').  RM-OPTIONS are options (such as ") (EscapedLiteralPart token:<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: [8382 8383 8409 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*')}]
                  action: [
                    (C {(func_fatal_help)} 
                      {
                        (DQ ('invalid operation mode ') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ($ VSub_Name '$mode') ("'")
                        )
                      }
                    )
                  ]
                  spids: [8413 8414 8427 16777215]
                )
              ]
              spids: [8079 8083 8430]
            )
            (C {($ VSub_Name '$ECHO')})
            (C {($ VSub_Name '$ECHO')} 
              {
                (DQ ('Try ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                  ($ VSub_Name '$progname') (" --help' for more information about other modes.")
                )
              }
            )
            (C {(exit)} {($ VSub_QMark '$?')})
          ]
          spids: [8072]
        )
      spids: [8067 8071]
    )
    (AndOr children:[(C {($ VSub_Name '$opt_help')}) (C {(func_mode_help)})] op_id:Op_DAmp)
    (FuncDef
      name: func_mode_execute
      body: 
        (BraceGroup
          children: [
            (C {($ VSub_Name '$opt_debug')})
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:cmd)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$nonopt'))}
                  spids: [8486]
                )
              ]
              spids: [8486]
            )
            (AndOr
              children: [
                (C {(test)} {(-z)} {(DQ ($ VSub_Name '$cmd'))})
                (C {(func_fatal_help)} {(DQ ('you must specify a COMMAND'))})
              ]
              op_id: Op_DAmp
            )
            (ForEach
              iter_name: file
              iter_words: [{($ VSub_Name '$execute_dlfiles')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (AndOr
                      children: [
                        (C {(test)} {(-f)} {(DQ ($ VSub_Name '$file'))})
                        (C {(func_fatal_help)} 
                          {
                            (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                              ($ VSub_Name '$file') ("' is not a file")
                            )
                          }
                        )
                      ]
                      op_id: Op_DPipe
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [(assign_pair lhs:(LhsName name:dir) op:Equal rhs:{(SQ )} spids:[8550])]
                      spids: [8550]
                    )
                    (Case
                      to_match: {($ VSub_Name '$file')}
                      arms: [
                        (case_arm
                          pat_list: [{(Lit_Other '*') (.la)}]
                          action: [
                            (AndOr
                              children: [
                                (C {(func_lalib_unsafe_p)} {(DQ ($ VSub_Name '$file'))})
                                (C {(func_fatal_help)} 
                                  {
                                    (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                      ($ VSub_Name '$lib') ("' is not a valid libtool archive")
                                    )
                                  }
                                )
                              ]
                              op_id: Op_DPipe
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:dlname)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [8593]
                                )
                              ]
                              spids: [8593]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:library_names)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [8596]
                                )
                              ]
                              spids: [8596]
                            )
                            (C {(func_source)} {(DQ ($ VSub_Name '$file'))})
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-z)} {(DQ ($ VSub_Name '$dlname'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (AndOr
                                      children: [
                                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$library_names'))})
                                        (C {(func_warning)} 
                                          {
                                            (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                              ($ VSub_Name '$file') ("' was not linked with ") (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ("-export-dynamic'")
                                            )
                                          }
                                        )
                                      ]
                                      op_id: Op_DAmp
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [16777215 8622]
                                )
                              ]
                              spids: [16777215 8655]
                            )
                            (C {(func_dirname)} {(DQ ($ VSub_Name '$file'))} {(DQ )} {(DQ (.))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:dir)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$func_dirname_result'))}
                                  spids: [8673]
                                )
                              ]
                              spids: [8673]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(-f)} 
                                          {
                                            (DQ ($ VSub_Name '$dir') (/) ($ VSub_Name '$objdir') (/) 
                                              ($ VSub_Name '$dlname')
                                            )
                                          }
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:dir)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$dir') (/) ($ VSub_Name '$objdir'))}
                                          spids: [8698]
                                        )
                                      ]
                                      spids: [8698]
                                    )
                                  ]
                                  spids: [16777215 8695]
                                )
                              ]
                              else_action: [
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: 
                                            (C {(test)} {(KW_Bang '!')} {(-f)} 
                                              {(DQ ($ VSub_Name '$dir') (/) ($ VSub_Name '$dlname'))}
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [
                                        (C {(func_fatal_error)} 
                                          {
                                            (DQ ('cannot find ') 
                                              (EscapedLiteralPart
                                                token: <Lit_EscapedChar '\\`'>
                                              ) ($ VSub_Name '$dlname') ("' in ") (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                              ($ VSub_Name '$dir') ("' or ") (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ($ VSub_Name '$dir') (/) 
                                              ($ VSub_Name '$objdir') ("'")
                                            )
                                          }
                                        )
                                      ]
                                      spids: [16777215 8724]
                                    )
                                  ]
                                  spids: [16777215 8745]
                                )
                              ]
                              spids: [8706 8748]
                            )
                          ]
                          spids: [8560 8562 8751 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*') (.lo)}]
                          action: [
                            (C {(func_dirname)} {(DQ ($ VSub_Name '$file'))} {(DQ )} {(DQ (.))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:dir)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$func_dirname_result'))}
                                  spids: [8778]
                                )
                              ]
                              spids: [8778]
                            )
                          ]
                          spids: [8755 8757 8784 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*')}]
                          action: [
                            (C {(func_warning)} 
                              {
                                (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                  ("-dlopen' is ignored for non-libtool libraries and objects")
                                )
                              }
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [8788 8789 8803 16777215]
                        )
                      ]
                      spids: [8553 8557 8806]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:absdir)
                          op: Equal
                          rhs: 
                            {
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (AndOr
                                        children: [(C {(cd)} {(DQ ($ VSub_Name '$dir'))}) (C {(pwd)})]
                                        op_id: Op_DAmp
                                      )
                                    ]
                                  )
                                left_token: <Left_Backtick '`'>
                                spids: [8815 8825]
                              )
                            }
                          spids: [8814]
                        )
                      ]
                      spids: [8814]
                    )
                    (AndOr
                      children: [
                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$absdir'))})
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:dir)
                              op: Equal
                              rhs: {(DQ ($ VSub_Name '$absdir'))}
                              spids: [8838]
                            )
                          ]
                          spids: [8838]
                        )
                      ]
                      op_id: Op_DAmp
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(eval)} 
                                  {
                                    (DQ ('test -z ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                                      (EscapedLiteralPart
                                        token: <Lit_EscapedChar '\\$'>
                                      ) ($ VSub_Name '$shlibpath_var') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                    )
                                  }
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {(eval)} 
                              {
                                (DQ ($ VSub_Name '$shlibpath_var') ('=') 
                                  (EscapedLiteralPart
                                    token: <Lit_EscapedChar '\\"'>
                                  ) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (dir) 
                                  (EscapedLiteralPart
                                    token: <Lit_EscapedChar '\\"'>
                                  )
                                )
                              }
                            )
                          ]
                          spids: [16777215 8862]
                        )
                      ]
                      else_action: [
                        (C {(eval)} 
                          {
                            (DQ ($ VSub_Name '$shlibpath_var') ('=') 
                              (EscapedLiteralPart
                                token: <Lit_EscapedChar '\\"'>
                              ) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('dir:') 
                              (EscapedLiteralPart
                                token: <Lit_EscapedChar '\\$'>
                              ) ($ VSub_Name '$shlibpath_var') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                            )
                          }
                        )
                      ]
                      spids: [8877 8894]
                    )
                  ]
                  spids: [8525 8897]
                )
              spids: [8521 8523]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:libtool_execute_magic)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$magic'))}
                  spids: [8909]
                )
              ]
              spids: [8909]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:args) op:Equal rhs:{(SQ )} spids:[8920])]
              spids: [8920]
            )
            (ForEach
              iter_name: file
              do_arg_iter: True
              body: 
                (DoGroup
                  children: [
                    (Case
                      to_match: {($ VSub_Name '$file')}
                      arms: [
                        (case_arm
                          pat_list: [{(-) (Lit_Other '*')}]
                          spids: [8938 8940 8942 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*')}]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(func_ltwrapper_script_p)} {(DQ ($ VSub_Name '$file'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(func_source)} {(DQ ($ VSub_Name '$file'))})
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:file)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$progdir') (/) ($ VSub_Name '$program'))
                                            }
                                          spids: [8976]
                                        )
                                      ]
                                      spids: [8976]
                                    )
                                  ]
                                  spids: [16777215 8962]
                                )
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(func_ltwrapper_executable_p)} {(DQ ($ VSub_Name '$file'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(func_ltwrapper_scriptname)} {(DQ ($ VSub_Name '$file'))})
                                    (C {(func_source)} 
                                      {(DQ ($ VSub_Name '$func_ltwrapper_scriptname_result'))}
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:file)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$progdir') (/) ($ VSub_Name '$program'))
                                            }
                                          spids: [9014]
                                        )
                                      ]
                                      spids: [9014]
                                    )
                                  ]
                                  spids: [8984 8993]
                                )
                              ]
                              spids: [16777215 9022]
                            )
                          ]
                          spids: [8945 8946 9025 16777215]
                        )
                      ]
                      spids: [8931 8935 9028]
                    )
                    (C {(func_quote_for_eval)} {(DQ ($ VSub_Name '$file'))})
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:args)
                          op: Equal
                          rhs: 
                            {
                              (DQ ($ VSub_Name '$args') (' ') 
                                ($ VSub_Name '$func_quote_for_eval_result')
                              )
                            }
                          spids: [9042]
                        )
                      ]
                      spids: [9042]
                    )
                  ]
                  spids: [8928 9050]
                )
              spids: [16777215 16777215]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(test)} {(DQ (X) ($ VSub_Name '$opt_dry_run'))} {(Lit_Other '=')} {(Xfalse)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$shlibpath_var'))})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [(C {(eval)} {(DQ ('export ') ($ VSub_Name '$shlibpath_var'))})]
                          spids: [16777215 9082]
                        )
                      ]
                      spids: [16777215 9097]
                    )
                    (ForEach
                      iter_name: lt_var
                      iter_words: [
                        {(LANG)}
                        {(LANGUAGE)}
                        {(LC_ALL)}
                        {(LC_CTYPE)}
                        {(LC_COLLATE)}
                        {(LC_MESSAGES)}
                      ]
                      do_arg_iter: False
                      body: 
                        (DoGroup
                          children: [
                            (C {(eval)} 
                              {
                                (DQ ('if test ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                                  (EscapedLiteralPart
                                    token: <Lit_EscapedChar '\\$'>
                                  ) ('{save_') ($ VSub_Name '$lt_var') ('+set}') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                                  (' = set; then\n') ('                ') ($ VSub_Name '$lt_var') ('=') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) 
                                  (save_) ($ VSub_Name '$lt_var') ('; export ') ($ VSub_Name '$lt_var') ('\n') ('\t      else\n') ('\t\t') 
                                  ($ VSub_Name '$lt_unset') (' ') ($ VSub_Name '$lt_var') ('\n') ('\t      fi')
                                )
                              }
                            )
                          ]
                          spids: [9124 9157]
                        )
                      spids: [9110 16777215]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:exec_cmd)
                          op: Equal
                          rhs: 
                            {
                              (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (cmd) 
                                ($ VSub_Name '$args')
                              )
                            }
                          spids: [9165]
                        )
                      ]
                      spids: [9165]
                    )
                  ]
                  spids: [16777215 9068]
                )
              ]
              else_action: [
                (If
                  arms: [
                    (if_arm
                      cond: [
                        (Sentence
                          child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$shlibpath_var'))})
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (C {(eval)} 
                          {
                            (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('ECHO ') 
                              (EscapedLiteralPart
                                token: <Lit_EscapedChar '\\"'>
                              ) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('shlibpath_var=') 
                              (EscapedLiteralPart
                                token: <Lit_EscapedChar '\\$'>
                              ) ($ VSub_Name '$shlibpath_var') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                            )
                          }
                        )
                        (C {($ VSub_Name '$ECHO')} {(DQ ('export ') ($ VSub_Name '$shlibpath_var'))})
                      ]
                      spids: [16777215 9191]
                    )
                  ]
                  spids: [16777215 9216]
                )
                (C {($ VSub_Name '$ECHO')} {(DQ ($ VSub_Name '$cmd') ($ VSub_Name '$args'))})
                (C {(exit)} {($ VSub_Name '$EXIT_SUCCESS')})
              ]
              spids: [9173 9232]
            )
          ]
          spids: [8476]
        )
      spids: [8471 8475]
    )
    (AndOr
      children: [
        (C {(test)} {(DQ ($ VSub_Name '$mode'))} {(Lit_Other '=')} {(execute)})
        (C {(func_mode_execute)} 
          {
            (BracedVarSub
              token: <VSub_Number 1>
              suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
              spids: [9251 9257]
            )
          }
        )
      ]
      op_id: Op_DAmp
    )
    (FuncDef
      name: func_mode_finish
      body: 
        (BraceGroup
          children: [
            (C {($ VSub_Name '$opt_debug')})
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:libdirs)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$nonopt'))}
                  spids: [9275]
                )
              ]
              spids: [9275]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:admincmds) op:Equal rhs:{(SQ )} spids:[9281])]
              spids: [9281]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (AndOr
                          children: [
                            (C {(test)} {(-n)} 
                              {(DQ ($ VSub_Name '$finish_cmds') ($ VSub_Name '$finish_eval'))}
                            )
                            (C {(test)} {(-n)} {(DQ ($ VSub_Name '$libdirs'))})
                          ]
                          op_id: Op_DAmp
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (ForEach
                      iter_name: dir
                      do_arg_iter: True
                      body: 
                        (DoGroup
                          children: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:libdirs)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$libdirs') (' ') ($ VSub_Name '$dir'))}
                                  spids: [9318]
                                )
                              ]
                              spids: [9318]
                            )
                          ]
                          spids: [9315 9326]
                        )
                      spids: [16777215 16777215]
                    )
                    (ForEach
                      iter_name: libdir
                      iter_words: [{($ VSub_Name '$libdirs')}]
                      do_arg_iter: False
                      body: 
                        (DoGroup
                          children: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$finish_cmds'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(func_execute_cmds)} {(DQ ($ VSub_Name '$finish_cmds'))} 
                                      {(SQ <'admincmds="$admincmds\n'>) (DQ ($ VSub_Name '$cmd')) 
                                        (SQ <'"'>)
                                      }
                                    )
                                  ]
                                  spids: [16777215 9353]
                                )
                              ]
                              spids: [16777215 9377]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$finish_eval'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(eval)} 
                                      {(Lit_VarLike 'cmds=') 
                                        (EscapedLiteralPart
                                          token: <Lit_EscapedChar '\\"'>
                                        ) ($ VSub_Name '$finish_eval') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                      }
                                    )
                                    (AndOr
                                      children: [
                                        (C {($ VSub_Name '$opt_dry_run')})
                                        (AndOr
                                          children: [
                                            (C {(eval)} {(DQ ($ VSub_Name '$cmds'))})
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:admincmds)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$admincmds') ('\n') ('       ') 
                                                        ($ VSub_Name '$cmds')
                                                      )
                                                    }
                                                  spids: [9418]
                                                )
                                              ]
                                              spids: [9418]
                                            )
                                          ]
                                          op_id: Op_DPipe
                                        )
                                      ]
                                      op_id: Op_DPipe
                                    )
                                  ]
                                  spids: [16777215 9391]
                                )
                              ]
                              spids: [16777215 9427]
                            )
                          ]
                          spids: [9339 9430]
                        )
                      spids: [9335 9337]
                    )
                  ]
                  spids: [16777215 9307]
                )
              ]
              spids: [16777215 9433]
            )
            (AndOr
              children: [(C {($ VSub_Name '$opt_silent')}) (C {(exit)} {($ VSub_Name '$EXIT_SUCCESS')})]
              op_id: Op_DAmp
            )
            (Pipeline
              children: [
                (C {($ VSub_Name '$ECHO')} 
                  {(DQ (X----------------------------------------------------------------------))}
                )
                (C {($ VSub_Name '$Xsed')})
              ]
              negated: False
            )
            (C {($ VSub_Name '$ECHO')} {(DQ ('Libraries have been installed in:'))})
            (ForEach
              iter_name: libdir
              iter_words: [{($ VSub_Name '$libdirs')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [(C {($ VSub_Name '$ECHO')} {(DQ ('   ') ($ VSub_Name '$libdir'))})]
                  spids: [9478 9489]
                )
              spids: [9474 9476]
            )
            (C {($ VSub_Name '$ECHO')})
            (C {($ VSub_Name '$ECHO')} 
              {(DQ ('If you ever happen to want to link against installed libraries'))}
            )
            (C {($ VSub_Name '$ECHO')} 
              {(DQ ('in a given directory, LIBDIR, you must either use libtool, and'))}
            )
            (C {($ VSub_Name '$ECHO')} 
              {
                (DQ ('specify the full pathname of the library, or use the ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ("-LLIBDIR'")
                )
              }
            )
            (C {($ VSub_Name '$ECHO')} 
              {(DQ ('flag during linking and do at least one of the following:'))}
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$shlibpath_var'))})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {($ VSub_Name '$ECHO')} 
                      {
                        (DQ ('   - add LIBDIR to the ') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ($ VSub_Name '$shlibpath_var') ("' environment variable")
                        )
                      }
                    )
                    (C {($ VSub_Name '$ECHO')} {(DQ ('     during execution'))})
                  ]
                  spids: [16777215 9536]
                )
              ]
              spids: [16777215 9556]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$runpath_var'))})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {($ VSub_Name '$ECHO')} 
                      {
                        (DQ ('   - add LIBDIR to the ') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ($ VSub_Name '$runpath_var') ("' environment variable")
                        )
                      }
                    )
                    (C {($ VSub_Name '$ECHO')} {(DQ ('     during linking'))})
                  ]
                  spids: [16777215 9570]
                )
              ]
              spids: [16777215 9590]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$hardcode_libdir_flag_spec'))})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:libdir)
                          op: Equal
                          rhs: {(LIBDIR)}
                          spids: [9607]
                        )
                      ]
                      spids: [9607]
                    )
                    (C {(eval)} 
                      {(Lit_VarLike 'flag=') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                        ($ VSub_Name '$hardcode_libdir_flag_spec') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                      }
                    )
                    (C {($ VSub_Name '$ECHO')} 
                      {
                        (DQ ('   - use the ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                          ($ VSub_Name '$flag') ("' linker flag")
                        )
                      }
                    )
                  ]
                  spids: [16777215 9604]
                )
              ]
              spids: [16777215 9630]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$admincmds'))})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {($ VSub_Name '$ECHO')} 
                      {
                        (DQ ('   - have your system administrator run these commands:') 
                          ($ VSub_Name '$admincmds')
                        )
                      }
                    )
                  ]
                  spids: [16777215 9644]
                )
              ]
              spids: [16777215 9655]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(-f)} {(/etc/ld.so.conf)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {($ VSub_Name '$ECHO')} 
                      {
                        (DQ ('   - have your system administrator add LIBDIR to ') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ("/etc/ld.so.conf'")
                        )
                      }
                    )
                  ]
                  spids: [16777215 9667]
                )
              ]
              spids: [16777215 9679]
            )
            (C {($ VSub_Name '$ECHO')})
            (C {($ VSub_Name '$ECHO')} 
              {(DQ ('See any operating system documentation about shared libraries for'))}
            )
            (Case
              to_match: {($ VSub_Name '$host')}
              arms: [
                (case_arm
                  pat_list: [
                    {(solaris2.) (Lit_Other '[') (6789) (Lit_Other ']')}
                    {(solaris2.1) (Lit_Other '[') (0-9) (Lit_Other ']')}
                  ]
                  action: [
                    (C {($ VSub_Name '$ECHO')} 
                      {(DQ ('more information, such as the ld(1), crle(1) and ld.so(8) manual'))}
                    )
                    (C {($ VSub_Name '$ECHO')} {(DQ (pages.))})
                  ]
                  spids: [9700 9709 9726 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*')}]
                  action: [
                    (C {($ VSub_Name '$ECHO')} 
                      {(DQ ('more information, such as the ld(1) and ld.so(8) manual pages.'))}
                    )
                  ]
                  spids: [9729 9730 9740 16777215]
                )
              ]
              spids: [9693 9697 9743]
            )
            (Pipeline
              children: [
                (C {($ VSub_Name '$ECHO')} 
                  {(DQ (X----------------------------------------------------------------------))}
                )
                (C {($ VSub_Name '$Xsed')})
              ]
              negated: False
            )
            (C {(exit)} {($ VSub_Name '$EXIT_SUCCESS')})
          ]
          spids: [9269]
        )
      spids: [9264 9268]
    )
    (AndOr
      children: [
        (C {(test)} {(DQ ($ VSub_Name '$mode'))} {(Lit_Other '=')} {(finish)})
        (C {(func_mode_finish)} 
          {
            (BracedVarSub
              token: <VSub_Number 1>
              suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
              spids: [9778 9784]
            )
          }
        )
      ]
      op_id: Op_DAmp
    )
    (FuncDef
      name: func_mode_install
      body: 
        (BraceGroup
          children: [
            (C {($ VSub_Name '$opt_debug')})
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (AndOr
                          children: [
                            (C {(test)} {(DQ ($ VSub_Name '$nonopt'))} {(Lit_Other '=')} 
                              {(DQ ($ VSub_Name '$SHELL'))}
                            )
                            (AndOr
                              children: [
                                (C {(test)} {(DQ ($ VSub_Name '$nonopt'))} {(Lit_Other '=')} {(/bin/sh)})
                                (Pipeline
                                  children: [
                                    (C {($ VSub_Name '$ECHO')} {(DQ (X) ($ VSub_Name '$nonopt'))})
                                    (SimpleCommand
                                      words: [{($ VSub_Name '$GREP')} {(shtool)}]
                                      redirects: [
                                        (Redir
                                          op_id: Redir_Great
                                          fd: 16777215
                                          arg_word: {(/dev/null)}
                                          spids: [9856]
                                        )
                                      ]
                                    )
                                  ]
                                  negated: False
                                )
                              ]
                              op_id: Op_DPipe
                            )
                          ]
                          op_id: Op_DPipe
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(func_quote_for_eval)} {(DQ ($ VSub_Name '$nonopt'))})
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:install_prog)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$func_quote_for_eval_result') (' '))}
                          spids: [9874]
                        )
                      ]
                      spids: [9874]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:arg)
                          op: Equal
                          rhs: {($ VSub_Number '$1')}
                          spids: [9881]
                        )
                      ]
                      spids: [9881]
                    )
                    (C {(shift)})
                  ]
                  spids: [16777215 9860]
                )
              ]
              else_action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:install_prog)
                      op: Equal
                      rhs: {(SQ )}
                      spids: [9891]
                    )
                  ]
                  spids: [9891]
                )
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:arg)
                      op: Equal
                      rhs: {($ VSub_Name '$nonopt')}
                      spids: [9894]
                    )
                  ]
                  spids: [9894]
                )
              ]
              spids: [9888 9898]
            )
            (C {(func_quote_for_eval)} {(DQ ($ VSub_Name '$arg'))})
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:install_prog)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$install_prog') ($ VSub_Name '$func_quote_for_eval_result'))}
                  spids: [9917]
                )
              ]
              spids: [9917]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:dest) op:Equal rhs:{(SQ )} spids:[9929])]
              spids: [9929]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:files) op:Equal rhs:{(SQ )} spids:[9932])]
              spids: [9932]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:opts) op:Equal rhs:{(SQ )} spids:[9935])]
              spids: [9935]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:prev) op:Equal rhs:{(SQ )} spids:[9938])]
              spids: [9938]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:install_type) op:Equal rhs:{(SQ )} spids:[9941])]
              spids: [9941]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:isdir) op:Equal rhs:{(no)} spids:[9944])]
              spids: [9944]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:stripme) op:Equal rhs:{(SQ )} spids:[9948])]
              spids: [9948]
            )
            (ForEach
              iter_name: arg
              do_arg_iter: True
              body: 
                (DoGroup
                  children: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$dest'))})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:files)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$files') (' ') ($ VSub_Name '$dest'))}
                                  spids: [9973]
                                )
                              ]
                              spids: [9973]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:dest)
                                  op: Equal
                                  rhs: {($ VSub_Name '$arg')}
                                  spids: [9981]
                                )
                              ]
                              spids: [9981]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [16777215 9970]
                        )
                      ]
                      spids: [16777215 9988]
                    )
                    (Case
                      to_match: {($ VSub_Name '$arg')}
                      arms: [
                        (case_arm
                          pat_list: [{(-d)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:isdir)
                                  op: Equal
                                  rhs: {(yes)}
                                  spids: [10002]
                                )
                              ]
                              spids: [10002]
                            )
                          ]
                          spids: [9999 10000 10005 16777215]
                        )
                        (case_arm
                          pat_list: [{(-f)}]
                          action: [
                            (Case
                              to_match: {(DQ (' ') ($ VSub_Name '$install_prog') (' '))}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '*') (Lit_Other '[') 
                                      (EscapedLiteralPart
                                        token: <Lit_EscapedChar '\\\\'>
                                      ) (EscapedLiteralPart token:<Lit_EscapedChar '\\ '>) (/) (Lit_Other ']') (cp) 
                                      (EscapedLiteralPart
                                        token: <Lit_EscapedChar '\\ '>
                                      ) (Lit_Other '*')
                                    }
                                  ]
                                  spids: [10023 10032 10034 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prev)
                                          op: Equal
                                          rhs: {($ VSub_Name '$arg')}
                                          spids: [10040]
                                        )
                                      ]
                                      spids: [10040]
                                    )
                                  ]
                                  spids: [10037 10038 10043 16777215]
                                )
                              ]
                              spids: [10012 10020 10046]
                            )
                          ]
                          spids: [10008 10009 10049 16777215]
                        )
                        (case_arm
                          pat_list: [{(-g)} {(-m)} {(-o)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:prev)
                                  op: Equal
                                  rhs: {($ VSub_Name '$arg')}
                                  spids: [10064]
                                )
                              ]
                              spids: [10064]
                            )
                          ]
                          spids: [10052 10061 10068 16777215]
                        )
                        (case_arm
                          pat_list: [{(-s)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:stripme)
                                  op: Equal
                                  rhs: {(DQ (' -s'))}
                                  spids: [10075]
                                )
                              ]
                              spids: [10075]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [10071 10072 10084 16777215]
                        )
                        (case_arm
                          pat_list: [{(-) (Lit_Other '*')}]
                          spids: [10087 10089 10092 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*')}]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$prev'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prev)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [10117]
                                        )
                                      ]
                                      spids: [10117]
                                    )
                                  ]
                                  spids: [16777215 10114]
                                )
                              ]
                              else_action: [
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:dest)
                                      op: Equal
                                      rhs: {($ VSub_Name '$arg')}
                                      spids: [10123]
                                    )
                                  ]
                                  spids: [10123]
                                )
                                (ControlFlow
                                  token: <ControlFlow_Continue continue>
                                )
                              ]
                              spids: [10120 10130]
                            )
                          ]
                          spids: [10095 10096 10133 16777215]
                        )
                      ]
                      spids: [9992 9996 10136]
                    )
                    (C {(func_quote_for_eval)} {(DQ ($ VSub_Name '$arg'))})
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:install_prog)
                          op: Equal
                          rhs: 
                            {
                              (DQ ($ VSub_Name '$install_prog') (' ') 
                                ($ VSub_Name '$func_quote_for_eval_result')
                              )
                            }
                          spids: [10151]
                        )
                      ]
                      spids: [10151]
                    )
                  ]
                  spids: [9956 10159]
                )
              spids: [16777215 16777215]
            )
            (AndOr
              children: [
                (C {(test)} {(-z)} {(DQ ($ VSub_Name '$install_prog'))})
                (C {(func_fatal_help)} {(DQ ('you must specify an install program'))})
              ]
              op_id: Op_DAmp
            )
            (AndOr
              children: [
                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$prev'))})
                (C {(func_fatal_help)} 
                  {
                    (DQ ('the ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                      ($ VSub_Name '$prev') ("' option requires an argument")
                    )
                  }
                )
              ]
              op_id: Op_DAmp
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(-z)} {(DQ ($ VSub_Name '$files'))})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-z)} {(DQ ($ VSub_Name '$dest'))})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [(C {(func_fatal_help)} {(DQ ('no file or destination specified'))})]
                          spids: [16777215 10231]
                        )
                      ]
                      else_action: [(C {(func_fatal_help)} {(DQ ('you must specify a destination'))})]
                      spids: [10241 10251]
                    )
                  ]
                  spids: [16777215 10217]
                )
              ]
              spids: [16777215 10254]
            )
            (C {(func_stripname)} {(SQ )} {(SQ </>)} {(DQ ($ VSub_Name '$dest'))})
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:dest)
                  op: Equal
                  rhs: {($ VSub_Name '$func_stripname_result')}
                  spids: [10276]
                )
              ]
              spids: [10276]
            )
            (AndOr
              children: [
                (C {(test)} {(-d)} {(DQ ($ VSub_Name '$dest'))})
                (Assignment
                  keyword: Assign_None
                  pairs: [(assign_pair lhs:(LhsName name:isdir) op:Equal rhs:{(yes)} spids:[10295])]
                  spids: [10295]
                )
              ]
              op_id: Op_DAmp
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(DQ ($ VSub_Name '$isdir'))} {(Lit_Other '=')} {(yes)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:destdir)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$dest'))}
                          spids: [10315]
                        )
                      ]
                      spids: [10315]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:destname)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [10321]
                        )
                      ]
                      spids: [10321]
                    )
                  ]
                  spids: [16777215 10312]
                )
              ]
              else_action: [
                (C {(func_dirname_and_basename)} {(DQ ($ VSub_Name '$dest'))} {(DQ )} {(DQ (.))})
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:destdir)
                      op: Equal
                      rhs: {(DQ ($ VSub_Name '$func_dirname_result'))}
                      spids: [10341]
                    )
                  ]
                  spids: [10341]
                )
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:destname)
                      op: Equal
                      rhs: {(DQ ($ VSub_Name '$func_basename_result'))}
                      spids: [10347]
                    )
                  ]
                  spids: [10347]
                )
                (Sentence
                  child: (C {(set)} {(dummy)} {($ VSub_Name '$files')})
                  terminator: <Op_Semi ';'>
                )
                (C {(shift)})
                (AndOr
                  children: [
                    (C {(test)} {(DQ ($ VSub_Pound '$#'))} {(-gt)} {(1)})
                    (C {(func_fatal_help)} 
                      {
                        (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ($ VSub_Name '$dest') 
                          ("' is not a directory")
                        )
                      }
                    )
                  ]
                  op_id: Op_DAmp
                )
              ]
              spids: [10324 10391]
            )
            (Case
              to_match: {($ VSub_Name '$destdir')}
              arms: [
                (case_arm
                  pat_list: [
                    {(Lit_Other '[') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (/) 
                      (Lit_Other ']') (Lit_Other '*')
                    }
                    {(Lit_Other '[') (A-Za-z) (Lit_Other ']') (Lit_Other ':') (Lit_Other '[') 
                      (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (/) (Lit_Other ']') (Lit_Other '*')
                    }
                  ]
                  spids: [10401 10418 10420 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*')}]
                  action: [
                    (ForEach
                      iter_name: file
                      iter_words: [{($ VSub_Name '$files')}]
                      do_arg_iter: False
                      body: 
                        (DoGroup
                          children: [
                            (Case
                              to_match: {($ VSub_Name '$file')}
                              arms: [
                                (case_arm
                                  pat_list: [{(Lit_Other '*') (.lo)}]
                                  spids: [10446 10448 10450 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (C {(func_fatal_help)} 
                                      {
                                        (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                          ($ VSub_Name '$destdir') ("' must be an absolute directory name")
                                        )
                                      }
                                    )
                                  ]
                                  spids: [10453 10454 10466 16777215]
                                )
                              ]
                              spids: [10439 10443 10469]
                            )
                          ]
                          spids: [10436 10472]
                        )
                      spids: [10432 10434]
                    )
                  ]
                  spids: [10423 10424 10475 16777215]
                )
              ]
              spids: [10394 10398 10478]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:libtool_install_magic)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$magic'))}
                  spids: [10490]
                )
              ]
              spids: [10490]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:staticlibs) op:Equal rhs:{(SQ )} spids:[10497])]
              spids: [10497]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:future_libdirs)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [10500]
                )
              ]
              spids: [10500]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:current_libdirs)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [10503]
                )
              ]
              spids: [10503]
            )
            (ForEach
              iter_name: file
              iter_words: [{($ VSub_Name '$files')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (Case
                      to_match: {($ VSub_Name '$file')}
                      arms: [
                        (case_arm
                          pat_list: [{(Lit_Other '*') (.) ($ VSub_Name '$libext')}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:staticlibs)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$staticlibs') (' ') ($ VSub_Name '$file'))}
                                  spids: [10540]
                                )
                              ]
                              spids: [10540]
                            )
                          ]
                          spids: [10530 10533 10548 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*') (.la)}]
                          action: [
                            (AndOr
                              children: [
                                (C {(func_lalib_unsafe_p)} {(DQ ($ VSub_Name '$file'))})
                                (C {(func_fatal_help)} 
                                  {
                                    (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                      ($ VSub_Name '$file') ("' is not a valid libtool archive")
                                    )
                                  }
                                )
                              ]
                              op_id: Op_DPipe
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:library_names)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [10581]
                                )
                              ]
                              spids: [10581]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:old_library)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [10584]
                                )
                              ]
                              spids: [10584]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:relink_command)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [10587]
                                )
                              ]
                              spids: [10587]
                            )
                            (C {(func_source)} {(DQ ($ VSub_Name '$file'))})
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ (X) ($ VSub_Name '$destdir'))} 
                                          {(Lit_Other '=')} {(DQ (X) ($ VSub_Name '$libdir'))}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Case
                                      to_match: {(DQ ($ VSub_Name '$current_libdirs') (' '))}
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (DQ (' ') ($ VSub_Name '$libdir') (' ')) 
                                              (Lit_Other '*')
                                            }
                                          ]
                                          spids: [10632 10639 10641 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:current_libdirs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$current_libdirs') (' ') 
                                                        ($ VSub_Name '$libdir')
                                                      )
                                                    }
                                                  spids: [10647]
                                                )
                                              ]
                                              spids: [10647]
                                            )
                                          ]
                                          spids: [10644 10645 10654 16777215]
                                        )
                                      ]
                                      spids: [10622 10629 10657]
                                    )
                                  ]
                                  spids: [16777215 10619]
                                )
                              ]
                              else_action: [
                                (Case
                                  to_match: {(DQ ($ VSub_Name '$future_libdirs') (' '))}
                                  arms: [
                                    (case_arm
                                      pat_list: [
                                        {(Lit_Other '*') (DQ (' ') ($ VSub_Name '$libdir') (' ')) 
                                          (Lit_Other '*')
                                        }
                                      ]
                                      spids: [10677 10684 10686 16777215]
                                    )
                                    (case_arm
                                      pat_list: [{(Lit_Other '*')}]
                                      action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:future_libdirs)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$future_libdirs') (' ') 
                                                    ($ VSub_Name '$libdir')
                                                  )
                                                }
                                              spids: [10692]
                                            )
                                          ]
                                          spids: [10692]
                                        )
                                      ]
                                      spids: [10689 10690 10699 16777215]
                                    )
                                  ]
                                  spids: [10667 10674 10702]
                                )
                              ]
                              spids: [10660 10705]
                            )
                            (C {(func_dirname)} {(DQ ($ VSub_Name '$file'))} {(DQ (/))} {(DQ )})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:dir)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$func_dirname_result'))}
                                  spids: [10723]
                                )
                              ]
                              spids: [10723]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:dir)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$dir') ($ VSub_Name '$objdir'))}
                                  spids: [10729]
                                )
                              ]
                              spids: [10729]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$relink_command'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:inst_prefix_dir)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (Pipeline
                                                        children: [
                                                          (C {($ VSub_Name '$ECHO')} 
                                                            {(DQ (X) ($ VSub_Name '$destdir'))}
                                                          )
                                                          (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                            {
                                                              (DQ ('s%') ($ VSub_Name '$libdir') 
                                                                (EscapedLiteralPart
                                                                  token: <Lit_EscapedChar '\\$'>
                                                                ) ('%%')
                                                              )
                                                            }
                                                          )
                                                        ]
                                                        negated: False
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [10756 10776]
                                              )
                                            }
                                          spids: [10755]
                                        )
                                      ]
                                      spids: [10755]
                                    )
                                    (AndOr
                                      children: [
                                        (C {(test)} {(DQ ($ VSub_Name '$inst_prefix_dir'))} 
                                          {(Lit_Other '=')} {(DQ ($ VSub_Name '$destdir'))}
                                        )
                                        (C {(func_fatal_error)} 
                                          {
                                            (DQ ('error: cannot install ') 
                                              (EscapedLiteralPart
                                                token: <Lit_EscapedChar '\\`'>
                                              ) ($ VSub_Name '$file') ("' to a directory not ending in ") ($ VSub_Name '$libdir')
                                            )
                                          }
                                        )
                                      ]
                                      op_id: Op_DAmp
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(-n)} 
                                                  {(DQ ($ VSub_Name '$inst_prefix_dir'))}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:relink_command)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (CommandSubPart
                                                        command_list: 
                                                          (CommandList
                                                            children: [
                                                              (Pipeline
                                                                children: [
                                                                  (C {($ VSub_Name '$ECHO')} 
                                                                    {
                                                                      (DQ (X) 
                                                                        ($ VSub_Name 
'$relink_command'
                                                                        )
                                                                      )
                                                                    }
                                                                  )
                                                                  (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                                    {
                                                                      (DQ 
                                                                        (
's%@inst_prefix_dir@%-inst-prefix-dir '
                                                                        ) ($ VSub_Name '$inst_prefix_dir') ('%')
                                                                      )
                                                                    }
                                                                  )
                                                                ]
                                                                negated: False
                                                              )
                                                            ]
                                                          )
                                                        left_token: <Left_Backtick '`'>
                                                        spids: [10851 10870]
                                                      )
                                                    }
                                                  spids: [10850]
                                                )
                                              ]
                                              spids: [10850]
                                            )
                                          ]
                                          spids: [16777215 10843]
                                        )
                                      ]
                                      else_action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:relink_command)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (CommandSubPart
                                                    command_list: 
                                                      (CommandList
                                                        children: [
                                                          (Pipeline
                                                            children: [
                                                              (C {($ VSub_Name '$ECHO')} 
                                                                {
                                                                  (DQ (X) 
                                                                    ($ VSub_Name '$relink_command')
                                                                  )
                                                                }
                                                              )
                                                              (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                                {(DQ ('s%@inst_prefix_dir@%%'))}
                                                              )
                                                            ]
                                                            negated: False
                                                          )
                                                        ]
                                                      )
                                                    left_token: <Left_Backtick '`'>
                                                    spids: [10877 10894]
                                                  )
                                                }
                                              spids: [10876]
                                            )
                                          ]
                                          spids: [10876]
                                        )
                                      ]
                                      spids: [10873 10897]
                                    )
                                    (C {(func_warning)} 
                                      {
                                        (DQ ('relinking ') 
                                          (EscapedLiteralPart
                                            token: <Lit_EscapedChar '\\`'>
                                          ) ($ VSub_Name '$file') ("'")
                                        )
                                      }
                                    )
                                    (C {(func_show_eval)} {(DQ ($ VSub_Name '$relink_command'))} 
                                      {(SQ <'func_fatal_error "error: relink \\`$file'>) 
                                        (EscapedLiteralPart
                                          token: <Lit_EscapedChar "\\'">
                                        ) (SQ <' with the above command before installing it"'>)
                                      }
                                    )
                                  ]
                                  spids: [16777215 10748]
                                )
                              ]
                              spids: [16777215 10928]
                            )
                            (Sentence
                              child: (C {(set)} {(dummy)} {($ VSub_Name '$library_names')})
                              terminator: <Op_Semi ';'>
                            )
                            (C {(shift)})
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Number '$1'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:realname)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Number '$1'))}
                                          spids: [10960]
                                        )
                                      ]
                                      spids: [10960]
                                    )
                                    (C {(shift)})
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:srcname)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$realname'))}
                                          spids: [10970]
                                        )
                                      ]
                                      spids: [10970]
                                    )
                                    (AndOr
                                      children: [
                                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$relink_command'))})
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:srcname)
                                              op: Equal
                                              rhs: {(DQ ($ VSub_Name '$realname')) (T)}
                                              spids: [10986]
                                            )
                                          ]
                                          spids: [10986]
                                        )
                                      ]
                                      op_id: Op_DAmp
                                    )
                                    (C {(func_show_eval)} 
                                      {
                                        (DQ ($ VSub_Name '$install_prog') (' ') ($ VSub_Name '$dir') (/) 
                                          ($ VSub_Name '$srcname') (' ') ($ VSub_Name '$destdir') (/) ($ VSub_Name '$realname')
                                        )
                                      } {(SQ <'exit $?'>)}
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:tstripme)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$stripme'))}
                                          spids: [11019]
                                        )
                                      ]
                                      spids: [11019]
                                    )
                                    (Case
                                      to_match: {($ VSub_Name '$host_os')}
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(cygwin) (Lit_Other '*')}
                                            {(mingw) (Lit_Other '*')}
                                            {(pw32) (Lit_Other '*')}
                                            {(cegcc) (Lit_Other '*')}
                                          ]
                                          action: [
                                            (Case
                                              to_match: {($ VSub_Name '$realname')}
                                              arms: [
                                                (case_arm
                                                  pat_list: [{(Lit_Other '*') (.dll.a)}]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:tstripme)
                                                          op: Equal
                                                          rhs: {(DQ )}
                                                          spids: [11064]
                                                        )
                                                      ]
                                                      spids: [11064]
                                                    )
                                                  ]
                                                  spids: [11059 11061 11069 16777215]
                                                )
                                              ]
                                              spids: [11052 11056 11072]
                                            )
                                          ]
                                          spids: [11032 11049 11075 16777215]
                                        )
                                      ]
                                      spids: [11025 11029 11078]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$tstripme'))})
                                                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$striplib'))})
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(func_show_eval)} 
                                              {
                                                (DQ ($ VSub_Name '$striplib') (' ') 
                                                  ($ VSub_Name '$destdir') (/) ($ VSub_Name '$realname')
                                                )
                                              } {(SQ <'exit $?'>)}
                                            )
                                          ]
                                          spids: [16777215 11102]
                                        )
                                      ]
                                      spids: [16777215 11120]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(DQ ($ VSub_Pound '$#'))} {(-gt)} {(0)})
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (ForEach
                                              iter_name: linkname
                                              do_arg_iter: True
                                              body: 
                                                (DoGroup
                                                  children: [
                                                    (AndOr
                                                      children: [
                                                        (C {(test)} {(DQ ($ VSub_Name '$linkname'))} 
                                                          {(KW_Bang '!') (Lit_Other '=')} {(DQ ($ VSub_Name '$realname'))}
                                                        )
                                                        (C {(func_show_eval)} 
                                                          {
                                                            (DQ ('(cd ') ($ VSub_Name '$destdir') 
                                                              (' && { ') ($ VSub_Name '$LN_S') (' -f ') ($ VSub_Name '$realname') (' ') ($ VSub_Name '$linkname') (' || { ') 
                                                              ($ VSub_Name '$RM') (' ') ($ VSub_Name '$linkname') (' && ') ($ VSub_Name '$LN_S') (' ') ($ VSub_Name '$realname') (' ') 
                                                              ($ VSub_Name '$linkname') ('; }; })')
                                                            )
                                                          }
                                                        )
                                                      ]
                                                      op_id: Op_DAmp
                                                    )
                                                  ]
                                                  spids: [11161 11206]
                                                )
                                              spids: [16777215 16777215]
                                            )
                                          ]
                                          spids: [16777215 11137]
                                        )
                                      ]
                                      spids: [16777215 11209]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:lib)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$destdir') (/) 
                                                ($ VSub_Name '$realname')
                                              )
                                            }
                                          spids: [11217]
                                        )
                                      ]
                                      spids: [11217]
                                    )
                                    (C {(func_execute_cmds)} {(DQ ($ VSub_Name '$postinstall_cmds'))} 
                                      {(SQ <'exit $?'>)}
                                    )
                                  ]
                                  spids: [16777215 10957]
                                )
                              ]
                              spids: [16777215 11236]
                            )
                            (C {(func_basename)} {(DQ ($ VSub_Name '$file'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:name)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$func_basename_result'))}
                                  spids: [11251]
                                )
                              ]
                              spids: [11251]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:instname)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$dir') (/) ($ VSub_Name '$name')) (i)}
                                  spids: [11257]
                                )
                              ]
                              spids: [11257]
                            )
                            (C {(func_show_eval)} 
                              {
                                (DQ ($ VSub_Name '$install_prog') (' ') ($ VSub_Name '$instname') (' ') 
                                  ($ VSub_Name '$destdir') (/) ($ VSub_Name '$name')
                                )
                              } {(SQ <'exit $?'>)}
                            )
                            (AndOr
                              children: [
                                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$old_library'))})
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:staticlibs)
                                      op: Equal
                                      rhs: 
                                        {
                                          (DQ ($ VSub_Name '$staticlibs') (' ') ($ VSub_Name '$dir') (/) 
                                            ($ VSub_Name '$old_library')
                                          )
                                        }
                                      spids: [11298]
                                    )
                                  ]
                                  spids: [11298]
                                )
                              ]
                              op_id: Op_DAmp
                            )
                          ]
                          spids: [10552 10554 11308 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*') (.lo)}]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$destname'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:destfile)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$destdir') (/) 
                                                ($ VSub_Name '$destname')
                                              )
                                            }
                                          spids: [11340]
                                        )
                                      ]
                                      spids: [11340]
                                    )
                                  ]
                                  spids: [16777215 11337]
                                )
                              ]
                              else_action: [
                                (C {(func_basename)} {(DQ ($ VSub_Name '$file'))})
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:destfile)
                                      op: Equal
                                      rhs: {(DQ ($ VSub_Name '$func_basename_result'))}
                                      spids: [11358]
                                    )
                                  ]
                                  spids: [11358]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:destfile)
                                      op: Equal
                                      rhs: 
                                        {(DQ ($ VSub_Name '$destdir') (/) ($ VSub_Name '$destfile'))}
                                      spids: [11364]
                                    )
                                  ]
                                  spids: [11364]
                                )
                              ]
                              spids: [11348 11372]
                            )
                            (Case
                              to_match: {($ VSub_Name '$destfile')}
                              arms: [
                                (case_arm
                                  pat_list: [{(Lit_Other '*') (.lo)}]
                                  action: [
                                    (C {(func_lo2o)} {(DQ ($ VSub_Name '$destfile'))})
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:staticdest)
                                          op: Equal
                                          rhs: {($ VSub_Name '$func_lo2o_result')}
                                          spids: [11399]
                                        )
                                      ]
                                      spids: [11399]
                                    )
                                  ]
                                  spids: [11387 11389 11403 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*') (.) ($ VSub_Name '$objext')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:staticdest)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$destfile'))}
                                          spids: [11412]
                                        )
                                      ]
                                      spids: [11412]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:destfile)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [11418]
                                        )
                                      ]
                                      spids: [11418]
                                    )
                                  ]
                                  spids: [11406 11409 11421 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (C {(func_fatal_help)} 
                                      {
                                        (DQ ('cannot copy a libtool object to ') 
                                          (EscapedLiteralPart
                                            token: <Lit_EscapedChar '\\`'>
                                          ) ($ VSub_Name '$destfile') ("'")
                                        )
                                      }
                                    )
                                  ]
                                  spids: [11424 11425 11438 16777215]
                                )
                              ]
                              spids: [11380 11384 11441]
                            )
                            (AndOr
                              children: [
                                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$destfile'))})
                                (C {(func_show_eval)} 
                                  {
                                    (DQ ($ VSub_Name '$install_prog') (' ') ($ VSub_Name '$file') (' ') 
                                      ($ VSub_Name '$destfile')
                                    )
                                  } {(SQ <'exit $?'>)}
                                )
                              ]
                              op_id: Op_DAmp
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$build_old_libs'))} 
                                          {(Lit_Other '=')} {(yes)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(func_lo2o)} {(DQ ($ VSub_Name '$file'))})
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:staticobj)
                                          op: Equal
                                          rhs: {($ VSub_Name '$func_lo2o_result')}
                                          spids: [11508]
                                        )
                                      ]
                                      spids: [11508]
                                    )
                                    (C {(func_show_eval)} 
                                      {
                                        (DQ ($ VSub_Name '$install_prog') (' ') 
                                          (EscapedLiteralPart
                                            token: <Lit_EscapedChar '\\$'>
                                          ) ('staticobj ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (staticdest)
                                        )
                                      } {(SQ <'exit $?'>)}
                                    )
                                  ]
                                  spids: [16777215 11494]
                                )
                              ]
                              spids: [16777215 11528]
                            )
                            (C {(exit)} {($ VSub_Name '$EXIT_SUCCESS')})
                          ]
                          spids: [11312 11314 11536 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*')}]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$destname'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:destfile)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$destdir') (/) 
                                                ($ VSub_Name '$destname')
                                              )
                                            }
                                          spids: [11562]
                                        )
                                      ]
                                      spids: [11562]
                                    )
                                  ]
                                  spids: [16777215 11559]
                                )
                              ]
                              else_action: [
                                (C {(func_basename)} {(DQ ($ VSub_Name '$file'))})
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:destfile)
                                      op: Equal
                                      rhs: {(DQ ($ VSub_Name '$func_basename_result'))}
                                      spids: [11580]
                                    )
                                  ]
                                  spids: [11580]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:destfile)
                                      op: Equal
                                      rhs: 
                                        {(DQ ($ VSub_Name '$destdir') (/) ($ VSub_Name '$destfile'))}
                                      spids: [11586]
                                    )
                                  ]
                                  spids: [11586]
                                )
                              ]
                              spids: [11570 11594]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:stripped_ext)
                                  op: Equal
                                  rhs: {(DQ )}
                                  spids: [11610]
                                )
                              ]
                              spids: [11610]
                            )
                            (Case
                              to_match: {($ VSub_Name '$file')}
                              arms: [
                                (case_arm
                                  pat_list: [{(Lit_Other '*') (.exe)}]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(KW_Bang '!')} {(-f)} 
                                                  {(DQ ($ VSub_Name '$file'))}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(func_stripname)} {(SQ )} {(SQ <.exe>)} 
                                              {(DQ ($ VSub_Name '$file'))}
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:file)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$func_stripname_result')}
                                                  spids: [11657]
                                                )
                                              ]
                                              spids: [11657]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:stripped_ext)
                                                  op: Equal
                                                  rhs: {(DQ (.exe))}
                                                  spids: [11661]
                                                )
                                              ]
                                              spids: [11661]
                                            )
                                          ]
                                          spids: [16777215 11640]
                                        )
                                      ]
                                      spids: [16777215 11667]
                                    )
                                  ]
                                  spids: [11622 11624 11670 16777215]
                                )
                              ]
                              spids: [11615 11619 11673]
                            )
                            (Case
                              to_match: {($ VSub_Name '$host')}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '*') (cygwin) (Lit_Other '*')}
                                    {(Lit_Other '*') (mingw) (Lit_Other '*')}
                                  ]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(func_ltwrapper_executable_p)} 
                                                  {(DQ ($ VSub_Name '$file'))}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(func_ltwrapper_scriptname)} 
                                              {(DQ ($ VSub_Name '$file'))}
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:wrapper)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      ($ VSub_Name 
'$func_ltwrapper_scriptname_result'
                                                      )
                                                    }
                                                  spids: [11719]
                                                )
                                              ]
                                              spids: [11719]
                                            )
                                          ]
                                          spids: [16777215 11709]
                                        )
                                      ]
                                      else_action: [
                                        (C {(func_stripname)} {(SQ )} {(SQ <.exe>)} 
                                          {(DQ ($ VSub_Name '$file'))}
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:wrapper)
                                              op: Equal
                                              rhs: {($ VSub_Name '$func_stripname_result')}
                                              spids: [11740]
                                            )
                                          ]
                                          spids: [11740]
                                        )
                                      ]
                                      spids: [11723 11744]
                                    )
                                  ]
                                  spids: [11688 11697 11747 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:wrapper)
                                          op: Equal
                                          rhs: {($ VSub_Name '$file')}
                                          spids: [11754]
                                        )
                                      ]
                                      spids: [11754]
                                    )
                                  ]
                                  spids: [11750 11751 11758 16777215]
                                )
                              ]
                              spids: [11681 11685 11761]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(func_ltwrapper_script_p)} {(DQ ($ VSub_Name '$wrapper'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:notinst_deplibs)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [11776]
                                        )
                                      ]
                                      spids: [11776]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:relink_command)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [11779]
                                        )
                                      ]
                                      spids: [11779]
                                    )
                                    (C {(func_source)} {(DQ ($ VSub_Name '$wrapper'))})
                                    (AndOr
                                      children: [
                                        (C {(test)} {(-z)} 
                                          {(DQ ($ VSub_Name '$generated_by_libtool_version'))}
                                        )
                                        (C {(func_fatal_error)} 
                                          {
                                            (DQ ('invalid libtool wrapper script ') 
                                              (EscapedLiteralPart
                                                token: <Lit_EscapedChar '\\`'>
                                              ) ($ VSub_Name '$wrapper') ("'")
                                            )
                                          }
                                        )
                                      ]
                                      op_id: Op_DAmp
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:finalize)
                                          op: Equal
                                          rhs: {(yes)}
                                          spids: [11818]
                                        )
                                      ]
                                      spids: [11818]
                                    )
                                    (ForEach
                                      iter_name: lib
                                      iter_words: [{($ VSub_Name '$notinst_deplibs')}]
                                      do_arg_iter: False
                                      body: 
                                        (DoGroup
                                          children: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:libdir)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [11838]
                                                )
                                              ]
                                              spids: [11838]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(-f)} {(DQ ($ VSub_Name '$lib'))})
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (C {(func_source)} {(DQ ($ VSub_Name '$lib'))})
                                                  ]
                                                  spids: [16777215 11852]
                                                )
                                              ]
                                              spids: [16777215 11862]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:libfile)
                                                  op: Equal
                                                  rhs: 
                                                    {(DQ ($ VSub_Name '$libdir') (/)) 
                                                      (CommandSubPart
                                                        command_list: 
                                                          (CommandList
                                                            children: [
                                                              (Pipeline
                                                                children: [
                                                                  (C {($ VSub_Name '$ECHO')} 
                                                                    {(DQ (X) ($ VSub_Name '$lib'))}
                                                                  )
                                                                  (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                                    {(SQ <'s%^.*/%%g'>)}
                                                                  )
                                                                ]
                                                                negated: False
                                                              )
                                                            ]
                                                          )
                                                        left_token: <Left_Backtick '`'>
                                                        spids: [11870 11887]
                                                      )
                                                    }
                                                  spids: [11865]
                                                )
                                              ]
                                              spids: [11865]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (AndOr
                                                          children: [
                                                            (C {(test)} {(-n)} 
                                                              {(DQ ($ VSub_Name '$libdir'))}
                                                            )
                                                            (C {(test)} {(KW_Bang '!')} {(-f)} 
                                                              {(DQ ($ VSub_Name '$libfile'))}
                                                            )
                                                          ]
                                                          op_id: Op_DAmp
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (C {(func_warning)} 
                                                      {
                                                        (DQ 
                                                          (EscapedLiteralPart
                                                            token: <Lit_EscapedChar '\\`'>
                                                          ) ($ VSub_Name '$lib') ("' has not been installed in ") (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                                          ($ VSub_Name '$libdir') ("'")
                                                        )
                                                      }
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:finalize)
                                                          op: Equal
                                                          rhs: {(no)}
                                                          spids: [11931]
                                                        )
                                                      ]
                                                      spids: [11931]
                                                    )
                                                  ]
                                                  spids: [16777215 11916]
                                                )
                                              ]
                                              spids: [16777215 11935]
                                            )
                                          ]
                                          spids: [11831 11938]
                                        )
                                      spids: [11827 11829]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:relink_command)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [11942]
                                        )
                                      ]
                                      spids: [11942]
                                    )
                                    (C {(func_source)} {(DQ ($ VSub_Name '$wrapper'))})
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:outputname)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [11953]
                                        )
                                      ]
                                      spids: [11953]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(DQ ($ VSub_Name '$fast_install'))} 
                                                      {(Lit_Other '=')} {(no)}
                                                    )
                                                    (C {(test)} {(-n)} 
                                                      {(DQ ($ VSub_Name '$relink_command'))}
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (AndOr
                                              children: [
                                                (C {($ VSub_Name '$opt_dry_run')})
                                                (BraceGroup
                                                  children: [
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (C {(test)} 
                                                                  {(DQ ($ VSub_Name '$finalize'))} {(Lit_Other '=')} {(yes)}
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:tmpdir)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (CommandSubPart
                                                                        command_list: 
                                                                          (CommandList
                                                                            children: [
                                                                              (C {(func_mktempdir)})
                                                                            ]
                                                                          )
                                                                        left_token: 
                                                                          <Left_Backtick '`'>
                                                                        spids: [12006 12008]
                                                                      )
                                                                    }
                                                                  spids: [12005]
                                                                )
                                                              ]
                                                              spids: [12005]
                                                            )
                                                            (C {(func_basename)} 
                                                              {
                                                                (DQ ($ VSub_Name '$file') 
                                                                  ($ VSub_Name '$stripped_ext')
                                                                )
                                                              }
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:file)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name 
'$func_basename_result'
                                                                        )
                                                                      )
                                                                    }
                                                                  spids: [12019]
                                                                )
                                                              ]
                                                              spids: [12019]
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:outputname)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ ($ VSub_Name '$tmpdir') (/) 
                                                                        ($ VSub_Name '$file')
                                                                      )
                                                                    }
                                                                  spids: [12025]
                                                                )
                                                              ]
                                                              spids: [12025]
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:relink_command)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (CommandSubPart
                                                                        command_list: 
                                                                          (CommandList
                                                                            children: [
                                                                              (Pipeline
                                                                                children: [
                                                                                  (C 
                                                                                    {
                                                                                      ($ VSub_Name 
'$ECHO'
                                                                                      )
                                                                                    } {(DQ (X) ($ VSub_Name '$relink_command'))}
                                                                                  )
                                                                                  (C 
                                                                                    {
                                                                                      ($ VSub_Name 
'$Xsed'
                                                                                      )
                                                                                    } {(-e)} {(SQ <'s%@OUTPUT@%'>) (DQ ($ VSub_Name '$outputname')) (SQ <'%g'>)}
                                                                                  )
                                                                                ]
                                                                                negated: False
                                                                              )
                                                                            ]
                                                                          )
                                                                        left_token: 
                                                                          <Left_Backtick '`'>
                                                                        spids: [12038 12061]
                                                                      )
                                                                    }
                                                                  spids: [12037]
                                                                )
                                                              ]
                                                              spids: [12037]
                                                            )
                                                            (AndOr
                                                              children: [
                                                                (C {($ VSub_Name '$opt_silent')})
                                                                (BraceGroup
                                                                  children: [
                                                                    (C {(func_quote_for_expand)} 
                                                                      {
                                                                        (DQ 
                                                                          ($ VSub_Name 
'$relink_command'
                                                                          )
                                                                        )
                                                                      }
                                                                    )
                                                                    (C {(eval)} 
                                                                      {
                                                                        (DQ ('func_echo ') 
                                                                          ($ VSub_Name 
'$func_quote_for_expand_result'
                                                                          )
                                                                        )
                                                                      }
                                                                    )
                                                                  ]
                                                                  spids: [12069]
                                                                )
                                                              ]
                                                              op_id: Op_DPipe
                                                            )
                                                            (If
                                                              arms: [
                                                                (if_arm
                                                                  cond: [
                                                                    (Sentence
                                                                      child: 
                                                                        (C {(eval)} 
                                                                          {
                                                                            (DQ 
                                                                              ($ VSub_Name 
'$relink_command'
                                                                              )
                                                                            )
                                                                          }
                                                                        )
                                                                      terminator: <Op_Semi ';'>
                                                                    )
                                                                  ]
                                                                  action: [(C {(Lit_Other ':')})]
                                                                  spids: [16777215 12099]
                                                                )
                                                              ]
                                                              else_action: [
                                                                (C {(func_error)} 
                                                                  {
                                                                    (DQ ('error: relink ') 
                                                                      (EscapedLiteralPart
                                                                        token: 
                                                                          <Lit_EscapedChar '\\`'>
                                                                      ) ($ VSub_Name '$file') ("' with the above command before installing it")
                                                                    )
                                                                  }
                                                                )
                                                                (AndOr
                                                                  children: [
                                                                    (C {($ VSub_Name '$opt_dry_run')})
                                                                    (C {(${ VSub_Name RM) (r)} 
                                                                      {(DQ ($ VSub_Name '$tmpdir'))}
                                                                    )
                                                                  ]
                                                                  op_id: Op_DPipe
                                                                )
                                                                (ControlFlow
                                                                  token: 
                                                                    <ControlFlow_Continue continue>
                                                                )
                                                              ]
                                                              spids: [12104 12134]
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:file)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ ($ VSub_Name '$outputname'))
                                                                    }
                                                                  spids: [12137]
                                                                )
                                                              ]
                                                              spids: [12137]
                                                            )
                                                          ]
                                                          spids: [16777215 12002]
                                                        )
                                                      ]
                                                      else_action: [
                                                        (C {(func_warning)} 
                                                          {
                                                            (DQ ('cannot relink ') 
                                                              (EscapedLiteralPart
                                                                token: <Lit_EscapedChar '\\`'>
                                                              ) ($ VSub_Name '$file') ("'")
                                                            )
                                                          }
                                                        )
                                                      ]
                                                      spids: [12143 12156]
                                                    )
                                                  ]
                                                  spids: [11986]
                                                )
                                              ]
                                              op_id: Op_DPipe
                                            )
                                          ]
                                          spids: [16777215 11979]
                                        )
                                      ]
                                      else_action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:file)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (CommandSubPart
                                                    command_list: 
                                                      (CommandList
                                                        children: [
                                                          (Pipeline
                                                            children: [
                                                              (C {($ VSub_Name '$ECHO')} 
                                                                {
                                                                  (DQ (X) ($ VSub_Name '$file') 
                                                                    ($ VSub_Name '$stripped_ext')
                                                                  )
                                                                }
                                                              )
                                                              (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                                {
                                                                  (DQ ('s%') (Lit_Other '\\') 
                                                                    ('([^/]*') (Lit_Other '\\') (')') (Lit_Other '$') ('%') ($ VSub_Name '$objdir') (/) (Lit_Other '\\') ('1%')
                                                                  )
                                                                }
                                                              )
                                                            ]
                                                            negated: False
                                                          )
                                                        ]
                                                      )
                                                    left_token: <Left_Backtick '`'>
                                                    spids: [12170 12198]
                                                  )
                                                }
                                              spids: [12169]
                                            )
                                          ]
                                          spids: [12169]
                                        )
                                      ]
                                      spids: [12162 12201]
                                    )
                                  ]
                                  spids: [16777215 11773]
                                )
                              ]
                              spids: [16777215 12204]
                            )
                            (Case
                              to_match: 
                                {($ VSub_Name '$install_prog') (Lit_Comma ',') ($ VSub_Name '$host')}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '*') (/usr/bin/install) (Lit_Other '*') 
                                      (Lit_Comma ',') (Lit_Other '*') (cygwin) (Lit_Other '*')
                                    }
                                  ]
                                  action: [
                                    (Case
                                      to_match: 
                                        {($ VSub_Name '$file') (Lit_Other ':') 
                                          ($ VSub_Name '$destfile')
                                        }
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (.exe) (Lit_Other ':') (Lit_Other '*') 
                                              (.exe)
                                            }
                                          ]
                                          spids: [12244 12249 12256 16777215]
                                        )
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (.exe) (Lit_Other ':') (Lit_Other '*')}
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:destfile)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$destfile') (.exe)}
                                                  spids: [12266]
                                                )
                                              ]
                                              spids: [12266]
                                            )
                                          ]
                                          spids: [12259 12263 12271 16777215]
                                        )
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (Lit_Other ':') (Lit_Other '*') (.exe)}
                                          ]
                                          action: [
                                            (C {(func_stripname)} {(SQ )} {(SQ <.exe>)} 
                                              {(DQ ($ VSub_Name '$destfile'))}
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:destfile)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$func_stripname_result')}
                                                  spids: [12295]
                                                )
                                              ]
                                              spids: [12295]
                                            )
                                          ]
                                          spids: [12274 12278 12299 16777215]
                                        )
                                      ]
                                      spids: [12235 12241 12302]
                                    )
                                  ]
                                  spids: [12225 12232 12305 16777215]
                                )
                              ]
                              spids: [12216 12222 12308]
                            )
                            (C {(func_show_eval)} 
                              {
                                (DQ ($ VSub_Name '$install_prog') 
                                  (EscapedLiteralPart
                                    token: <Lit_EscapedChar '\\$'>
                                  ) ('stripme ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('file ') 
                                  (EscapedLiteralPart
                                    token: <Lit_EscapedChar '\\$'>
                                  ) (destfile)
                                )
                              } {(SQ <'exit $?'>)}
                            )
                            (AndOr
                              children: [
                                (C {($ VSub_Name '$opt_dry_run')})
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$outputname'))})
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [
                                        (C {(${ VSub_Name RM) (r)} {(DQ ($ VSub_Name '$tmpdir'))})
                                      ]
                                      spids: [16777215 12343]
                                    )
                                  ]
                                  spids: [16777215 12356]
                                )
                              ]
                              op_id: Op_DPipe
                            )
                          ]
                          spids: [11540 11541 12359 16777215]
                        )
                      ]
                      spids: [10523 10527 12362]
                    )
                  ]
                  spids: [10515 12365]
                )
              spids: [10511 10513]
            )
            (ForEach
              iter_name: file
              iter_words: [{($ VSub_Name '$staticlibs')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (C {(func_basename)} {(DQ ($ VSub_Name '$file'))})
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:name)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$func_basename_result'))}
                          spids: [12388]
                        )
                      ]
                      spids: [12388]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:oldlib)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$destdir') (/) ($ VSub_Name '$name'))}
                          spids: [12399]
                        )
                      ]
                      spids: [12399]
                    )
                    (C {(func_show_eval)} 
                      {
                        (DQ ($ VSub_Name '$install_prog') (' ') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('file ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (oldlib)
                        )
                      } {(SQ <'exit $?'>)}
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (AndOr
                                  children: [
                                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$stripme'))})
                                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$old_striplib'))})
                                  ]
                                  op_id: Op_DAmp
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {(func_show_eval)} 
                              {(DQ ($ VSub_Name '$old_striplib') (' ') ($ VSub_Name '$oldlib'))} {(SQ <'exit $?'>)}
                            )
                          ]
                          spids: [16777215 12446]
                        )
                      ]
                      spids: [16777215 12462]
                    )
                    (C {(func_execute_cmds)} {(DQ ($ VSub_Name '$old_postinstall_cmds'))} 
                      {(SQ <'exit $?'>)}
                    )
                  ]
                  spids: [12378 12481]
                )
              spids: [12374 12376]
            )
            (AndOr
              children: [
                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$future_libdirs'))})
                (C {(func_warning)} 
                  {
                    (DQ ('remember to run ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                      ($ VSub_Name '$progname') (' --finish') ($ VSub_Name '$future_libdirs') ("'")
                    )
                  }
                )
              ]
              op_id: Op_DAmp
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$current_libdirs'))})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (AndOr
                      children: [
                        (C {($ VSub_Name '$opt_dry_run')})
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:current_libdirs)
                              op: Equal
                              rhs: {(DQ (' -n') ($ VSub_Name '$current_libdirs'))}
                              spids: [12532]
                            )
                          ]
                          spids: [12532]
                        )
                      ]
                      op_id: Op_DAmp
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:exec_cmd)
                          op: Equal
                          rhs: {(SQ <'$SHELL $progpath $preserve_args --finish$current_libdirs'>)}
                          spids: [12539]
                        )
                      ]
                      spids: [12539]
                    )
                  ]
                  spids: [16777215 12521]
                )
              ]
              else_action: [(C {(exit)} {($ VSub_Name '$EXIT_SUCCESS')})]
              spids: [12545 12553]
            )
          ]
          spids: [9796]
        )
      spids: [9791 9795]
    )
    (AndOr
      children: [
        (C {(test)} {(DQ ($ VSub_Name '$mode'))} {(Lit_Other '=')} {(install)})
        (C {(func_mode_install)} 
          {
            (BracedVarSub
              token: <VSub_Number 1>
              suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
              spids: [12572 12578]
            )
          }
        )
      ]
      op_id: Op_DAmp
    )
    (FuncDef
      name: func_generate_dlsyms
      body: 
        (BraceGroup
          children: [
            (C {($ VSub_Name '$opt_debug')})
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:my_outputname)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$1'))}
                  spids: [12602]
                )
              ]
              spids: [12602]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:my_originator)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$2'))}
                  spids: [12608]
                )
              ]
              spids: [12608]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:my_pic_p)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (BracedVarSub
                          token: <VSub_Number 3>
                          suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(no)})
                          spids: [12616 12620]
                        )
                      )
                    }
                  spids: [12614]
                )
              ]
              spids: [12614]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:my_prefix)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {($ VSub_Name '$ECHO')} {(DQ ($ VSub_Name '$my_originator'))})
                                  (C {(sed)} {(SQ <'s%[^a-zA-Z0-9]%_%g'>)})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_Backtick '`'>
                        spids: [12625 12639]
                      )
                    }
                  spids: [12624]
                )
              ]
              spids: [12624]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:my_dlsyms) op:Equal rhs:{(SQ )} spids:[12642])]
              spids: [12642]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (AndOr
                          children: [
                            (C {(test)} {(-n)} 
                              {(DQ ($ VSub_Name '$dlfiles') ($ VSub_Name '$dlprefiles'))}
                            )
                            (C {(test)} {(DQ ($ VSub_Name '$dlself'))} {(KW_Bang '!') (Lit_Other '=')} 
                              {(no)}
                            )
                          ]
                          op_id: Op_DPipe
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (AndOr
                                  children: [
                                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$NM'))})
                                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$global_symbol_pipe'))})
                                  ]
                                  op_id: Op_DAmp
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:my_dlsyms)
                                  op: Equal
                                  rhs: {(DQ (${ VSub_Name my_outputname) (S.c))}
                                  spids: [12698]
                                )
                              ]
                              spids: [12698]
                            )
                          ]
                          spids: [16777215 12695]
                        )
                      ]
                      else_action: [
                        (C {(func_error)} 
                          {(DQ ('not configured to extract global symbols from dlpreopened files'))}
                        )
                      ]
                      spids: [12707 12717]
                    )
                  ]
                  spids: [16777215 12671]
                )
              ]
              spids: [16777215 12720]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$my_dlsyms'))})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Case
                      to_match: {($ VSub_Name '$my_dlsyms')}
                      arms: [
                        (case_arm
                          pat_list: [{(DQ )}]
                          spids: [16777215 12747 12749 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*') (.c)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:nlist)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$output_objdir') (/) 
                                        (${ VSub_Name my_outputname) (.nm)
                                      )
                                    }
                                  spids: [12761]
                                )
                              ]
                              spids: [12761]
                            )
                            (C {(func_show_eval)} 
                              {
                                (DQ ($ VSub_Name '$RM') (' ') ($ VSub_Name '$nlist') (' ') 
                                  (${ VSub_Name nlist) ('S ') (${ VSub_Name nlist) (T)
                                )
                              }
                            )
                            (C {(func_verbose)} 
                              {
                                (DQ ('creating ') ($ VSub_Name '$output_objdir') (/) 
                                  ($ VSub_Name '$my_dlsyms')
                                )
                              }
                            )
                            (AndOr
                              children: [
                                (C {($ VSub_Name '$opt_dry_run')})
                                (SimpleCommand
                                  words: [
                                    {($ VSub_Name '$ECHO')}
                                    {
                                      (DQ ('/* ') ($ VSub_Name '$my_dlsyms') 
                                        (' - symbol resolution table for ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ($ VSub_Name '$my_outputname') 
                                        ("' dlsym emulation. */\n") ('/* Generated by ') ($ VSub_Name '$PROGRAM') (' (GNU ') ($ VSub_Name '$PACKAGE') 
                                        ($ VSub_Name '$TIMESTAMP') (') ') ($ VSub_Name '$VERSION') (' */\n') ('\n') ('#ifdef __cplusplus\n') ('extern ') 
                                        (EscapedLiteralPart
                                          token: <Lit_EscapedChar '\\"'>
                                        ) (C) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' {\n') ('#endif\n') ('\n') 
                                        ('/* External symbol declarations for the compiler. */')
                                      )
                                    }
                                  ]
                                  redirects: [
                                    (Redir
                                      op_id: Redir_Great
                                      fd: 16777215
                                      arg_word: 
                                        {
                                          (DQ ($ VSub_Name '$output_objdir') (/) 
                                            ($ VSub_Name '$my_dlsyms')
                                          )
                                        }
                                      spids: [12813]
                                    )
                                  ]
                                )
                              ]
                              op_id: Op_DPipe
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$dlself'))} {(Lit_Other '=')} 
                                          {(yes)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(func_verbose)} 
                                      {
                                        (DQ ('generating symbol list for ') 
                                          (EscapedLiteralPart
                                            token: <Lit_EscapedChar '\\`'>
                                          ) ($ VSub_Name '$output') ("'")
                                        )
                                      }
                                    )
                                    (AndOr
                                      children: [
                                        (C {($ VSub_Name '$opt_dry_run')})
                                        (SimpleCommand
                                          words: [{(echo)} {(SQ <': @PROGRAM@ '>)}]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Great
                                              fd: 16777215
                                              arg_word: {(DQ ($ VSub_Name '$nlist'))}
                                              spids: [12889]
                                            )
                                          ]
                                        )
                                      ]
                                      op_id: Op_DPipe
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:progfiles)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (Pipeline
                                                        children: [
                                                          (C {($ VSub_Name '$ECHO')} 
                                                            {
                                                              (DQ (X) ($ VSub_Name '$objs') 
                                                                ($ VSub_Name '$old_deplibs')
                                                              )
                                                            }
                                                          )
                                                          (C {($ VSub_Name '$SP2NL')})
                                                          (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                            {(DQ ($ VSub_Name '$lo2o'))}
                                                          )
                                                          (C {($ VSub_Name '$NL2SP')})
                                                        ]
                                                        negated: False
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [12902 12928]
                                              )
                                            }
                                          spids: [12901]
                                        )
                                      ]
                                      spids: [12901]
                                    )
                                    (ForEach
                                      iter_name: progfile
                                      iter_words: [{($ VSub_Name '$progfiles')}]
                                      do_arg_iter: False
                                      body: 
                                        (DoGroup
                                          children: [
                                            (C {(func_verbose)} 
                                              {
                                                (DQ ('extracting global C symbols from ') 
                                                  (EscapedLiteralPart
                                                    token: <Lit_EscapedChar '\\`'>
                                                  ) ($ VSub_Name '$progfile') ("'")
                                                )
                                              }
                                            )
                                            (AndOr
                                              children: [
                                                (C {($ VSub_Name '$opt_dry_run')})
                                                (C {(eval)} 
                                                  {
                                                    (DQ ($ VSub_Name '$NM') (' ') 
                                                      ($ VSub_Name '$progfile') (' | ') ($ VSub_Name '$global_symbol_pipe') (" >> '") ($ VSub_Name '$nlist') ("'")
                                                    )
                                                  }
                                                )
                                              ]
                                              op_id: Op_DPipe
                                            )
                                          ]
                                          spids: [12940 12971]
                                        )
                                      spids: [12936 12938]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(-n)} 
                                                  {(DQ ($ VSub_Name '$exclude_expsyms'))}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (AndOr
                                              children: [
                                                (C {($ VSub_Name '$opt_dry_run')})
                                                (BraceGroup
                                                  children: [
                                                    (C {(eval)} 
                                                      {
                                                        (SQ 
                                                          <
'$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T'
                                                          >
                                                        )
                                                      }
                                                    )
                                                    (C {(eval)} {(SQ <'$MV "$nlist"T "$nlist"'>)})
                                                  ]
                                                  spids: [12993]
                                                )
                                              ]
                                              op_id: Op_DPipe
                                            )
                                          ]
                                          spids: [16777215 12986]
                                        )
                                      ]
                                      spids: [16777215 13013]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(-n)} 
                                                  {(DQ ($ VSub_Name '$export_symbols_regex'))}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (AndOr
                                              children: [
                                                (C {($ VSub_Name '$opt_dry_run')})
                                                (BraceGroup
                                                  children: [
                                                    (C {(eval)} 
                                                      {
                                                        (SQ 
                                                          <
'$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T'
                                                          >
                                                        )
                                                      }
                                                    )
                                                    (C {(eval)} {(SQ <'$MV "$nlist"T "$nlist"'>)})
                                                  ]
                                                  spids: [13035]
                                                )
                                              ]
                                              op_id: Op_DPipe
                                            )
                                          ]
                                          spids: [16777215 13028]
                                        )
                                      ]
                                      spids: [16777215 13055]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(-z)} {(DQ ($ VSub_Name '$export_symbols'))})
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:export_symbols)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$output_objdir') (/) 
                                                        ($ VSub_Name '$outputname') (.exp)
                                                      )
                                                    }
                                                  spids: [13077]
                                                )
                                              ]
                                              spids: [13077]
                                            )
                                            (AndOr
                                              children: [
                                                (C {($ VSub_Name '$opt_dry_run')})
                                                (BraceGroup
                                                  children: [
                                                    (C {($ VSub_Name '$RM')} 
                                                      {($ VSub_Name '$export_symbols')}
                                                    )
                                                    (C {(eval)} 
                                                      {
                                                        (DQ (${ VSub_Name SED) 
                                                          (" -n -e '/^: @PROGRAM@ ") (Lit_Other '$') ("/d' -e 's/^.* ") (Lit_Other '\\') ('(.*') (Lit_Other '\\') (')') (Lit_Other '$') (/) 
                                                          (Lit_Other '\\') ("1/p' ")
                                                        ) (SQ <'< "$nlist" > "$export_symbols"'>)
                                                      }
                                                    )
                                                    (Case
                                                      to_match: {($ VSub_Name '$host')}
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [
                                                            {(Lit_Other '*') (cygwin) (Lit_Other '*')}
                                                            {(Lit_Other '*') (mingw) (Lit_Other '*')}
                                                            {(Lit_Other '*') (cegcc) (Lit_Other '*')}
                                                          ]
                                                          action: [
                                                            (C {(eval)} 
                                                              {(DQ ('echo EXPORTS ')) 
                                                                (SQ 
                                                                  <
'> "$output_objdir/$outputname.def"'
                                                                  >
                                                                )
                                                              }
                                                            )
                                                            (C {(eval)} 
                                                              {
                                                                (SQ 
                                                                  <
'cat "$export_symbols" >> "$output_objdir/$outputname.def"'
                                                                  >
                                                                )
                                                              }
                                                            )
                                                          ]
                                                          spids: [13128 13144 13164 16777215]
                                                        )
                                                      ]
                                                      spids: [13121 13125 13167]
                                                    )
                                                  ]
                                                  spids: [13090]
                                                )
                                              ]
                                              op_id: Op_DPipe
                                            )
                                          ]
                                          spids: [16777215 13074]
                                        )
                                      ]
                                      else_action: [
                                        (AndOr
                                          children: [
                                            (C {($ VSub_Name '$opt_dry_run')})
                                            (BraceGroup
                                              children: [
                                                (C {(eval)} 
                                                  {
                                                    (DQ (${ VSub_Name SED) (" -e 's/") (Lit_Other '\\') 
                                                      ('([].[*^') (Lit_Other '$') (']') (Lit_Other '\\') (')/') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) 
                                                      (EscapedLiteralPart
                                                        token: <Lit_EscapedChar '\\\\'>
                                                      ) (Lit_Other '\\') ("1/g' -e 's/^/ /' -e 's/") (Lit_Other '$') (/) (Lit_Other '$') ("/'")
                                                    ) (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"'>)})
                                                (Case
                                                  to_match: {($ VSub_Name '$host')}
                                                  arms: [
                                                    (case_arm
                                                      pat_list: [
                                                        {(Lit_Other '*') (cygwin)}
                                                        {(Lit_Other '*') (mingw) (Lit_Other '*')}
                                                        {(Lit_Other '*') (cegcc) (Lit_Other '*')}
                                                      ]
                                                      action: [
                                                        (C {(eval)} 
                                                          {(DQ ('echo EXPORTS ')) 
                                                            (SQ 
                                                              <
'> "$output_objdir/$outputname.def"'
                                                              >
                                                            )
                                                          }
                                                        )
                                                        (C {(eval)} 
                                                          {
                                                            (SQ 
                                                              <
'cat "$nlist" >> "$output_objdir/$outputname.def"'
                                                              >
                                                            )
                                                          }
                                                        )
                                                      ]
                                                      spids: [13231 13246 13266 16777215]
                                                    )
                                                  ]
                                                  spids: [13224 13228 13269]
                                                )
                                              ]
                                              spids: [13180]
                                            )
                                          ]
                                          op_id: Op_DPipe
                                        )
                                      ]
                                      spids: [13173 13275]
                                    )
                                  ]
                                  spids: [16777215 12865]
                                )
                              ]
                              spids: [16777215 13278]
                            )
                            (ForEach
                              iter_name: dlprefile
                              iter_words: [{($ VSub_Name '$dlprefiles')}]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (C {(func_verbose)} 
                                      {
                                        (DQ ('extracting global C symbols from ') 
                                          (EscapedLiteralPart
                                            token: <Lit_EscapedChar '\\`'>
                                          ) ($ VSub_Name '$dlprefile') ("'")
                                        )
                                      }
                                    )
                                    (C {(func_basename)} {(DQ ($ VSub_Name '$dlprefile'))})
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:name)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$func_basename_result'))}
                                          spids: [13311]
                                        )
                                      ]
                                      spids: [13311]
                                    )
                                    (AndOr
                                      children: [
                                        (C {($ VSub_Name '$opt_dry_run')})
                                        (BraceGroup
                                          children: [
                                            (C {(eval)} {(SQ <'$ECHO ": $name " >> "$nlist"'>)})
                                            (C {(eval)} 
                                              {
                                                (DQ ($ VSub_Name '$NM') (' ') 
                                                  ($ VSub_Name '$dlprefile') (' 2>/dev/null | ') ($ VSub_Name '$global_symbol_pipe') (" >> '") ($ VSub_Name '$nlist') ("'")
                                                )
                                              }
                                            )
                                          ]
                                          spids: [13321]
                                        )
                                      ]
                                      op_id: Op_DPipe
                                    )
                                  ]
                                  spids: [13291 13348]
                                )
                              spids: [13287 13289]
                            )
                            (AndOr
                              children: [
                                (C {($ VSub_Name '$opt_dry_run')})
                                (BraceGroup
                                  children: [
                                    (AndOr
                                      children: [
                                        (C {(test)} {(-f)} {(DQ ($ VSub_Name '$nlist'))})
                                        (SimpleCommand
                                          words: [{(Lit_Other ':')}]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Great
                                              fd: 16777215
                                              arg_word: {(DQ ($ VSub_Name '$nlist'))}
                                              spids: [13375]
                                            )
                                          ]
                                        )
                                      ]
                                      op_id: Op_DPipe
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(-n)} 
                                                  {(DQ ($ VSub_Name '$exclude_expsyms'))}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (SimpleCommand
                                              words: [
                                                {($ VSub_Name '$EGREP')}
                                                {(-v)}
                                                {
                                                  (DQ (' (') ($ VSub_Name '$exclude_expsyms') (')') 
                                                    (Lit_Other '$')
                                                  )
                                                }
                                                {(DQ ($ VSub_Name '$nlist'))}
                                              ]
                                              redirects: [
                                                (Redir
                                                  op_id: Redir_Great
                                                  fd: 16777215
                                                  arg_word: {(DQ ($ VSub_Name '$nlist')) (T)}
                                                  spids: [13412]
                                                )
                                              ]
                                            )
                                            (C {($ VSub_Name '$MV')} {(DQ ($ VSub_Name '$nlist')) (T)} 
                                              {(DQ ($ VSub_Name '$nlist'))}
                                            )
                                          ]
                                          spids: [16777215 13394]
                                        )
                                      ]
                                      spids: [16777215 13432]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (Pipeline
                                                  children: [
                                                    (SimpleCommand
                                                      words: [
                                                        {($ VSub_Name '$GREP')}
                                                        {(-v)}
                                                        {(DQ ('^: '))}
                                                      ]
                                                      redirects: [
                                                        (Redir
                                                          op_id: Redir_Less
                                                          fd: 16777215
                                                          arg_word: {(DQ ($ VSub_Name '$nlist'))}
                                                          spids: [13450]
                                                        )
                                                      ]
                                                    )
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (SimpleCommand
                                                                  words: [{(sort)} {(-k)} {(3)}]
                                                                  redirects: [
                                                                    (Redir
                                                                      op_id: Redir_Less
                                                                      fd: 16777215
                                                                      arg_word: {(/dev/null)}
                                                                      spids: [13467]
                                                                    )
                                                                    (Redir
                                                                      op_id: Redir_Great
                                                                      fd: 16777215
                                                                      arg_word: {(/dev/null)}
                                                                      spids: [13470]
                                                                    )
                                                                    (Redir
                                                                      op_id: Redir_GreatAnd
                                                                      fd: 2
                                                                      arg_word: {(1)}
                                                                      spids: [13473]
                                                                    )
                                                                  ]
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [(C {(sort)} {(-k)} {(3)})]
                                                          spids: [16777215 13477]
                                                        )
                                                      ]
                                                      else_action: [(C {(sort)} {(Lit_Other '+') (2)})]
                                                      spids: [13487 13496]
                                                    )
                                                    (SimpleCommand
                                                      words: [{(uniq)}]
                                                      redirects: [
                                                        (Redir
                                                          op_id: Redir_Great
                                                          fd: 16777215
                                                          arg_word: {(DQ ($ VSub_Name '$nlist')) (S)}
                                                          spids: [13503]
                                                        )
                                                      ]
                                                    )
                                                  ]
                                                  negated: False
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [(C {(Lit_Other ':')})]
                                          spids: [16777215 13511]
                                        )
                                      ]
                                      else_action: [
                                        (SimpleCommand
                                          words: [{($ VSub_Name '$GREP')} {(-v)} {(DQ ('^: '))}]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Less
                                              fd: 16777215
                                              arg_word: {(DQ ($ VSub_Name '$nlist'))}
                                              spids: [13528]
                                            )
                                            (Redir
                                              op_id: Redir_Great
                                              fd: 16777215
                                              arg_word: {(DQ ($ VSub_Name '$nlist')) (S)}
                                              spids: [13534]
                                            )
                                          ]
                                        )
                                      ]
                                      spids: [13517 13542]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(-f)} {(DQ ($ VSub_Name '$nlist')) (S)})
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(eval)} 
                                              {(DQ ($ VSub_Name '$global_symbol_to_cdecl')) 
                                                (SQ <' < "$nlist"S >> "$output_objdir/$my_dlsyms"'>)
                                              }
                                            )
                                          ]
                                          spids: [16777215 13558]
                                        )
                                      ]
                                      else_action: [
                                        (SimpleCommand
                                          words: [{($ VSub_Name '$ECHO')} {(SQ <'/* NONE */'>)}]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_DGreat
                                              fd: 16777215
                                              arg_word: 
                                                {
                                                  (DQ ($ VSub_Name '$output_objdir') (/) 
                                                    ($ VSub_Name '$my_dlsyms')
                                                  )
                                                }
                                              spids: [13580]
                                            )
                                          ]
                                        )
                                      ]
                                      spids: [13571 13589]
                                    )
                                    (SimpleCommand
                                      words: [
                                        {($ VSub_Name '$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
                                          fd: 16777215
                                          arg_word: 
                                            {
                                              (DQ ($ VSub_Name '$output_objdir') (/) 
                                                ($ VSub_Name '$my_dlsyms')
                                              )
                                            }
                                          spids: [13595]
                                        )
                                      ]
                                    )
                                    (Case
                                      to_match: {($ VSub_Name '$host')}
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (cygwin) (Lit_Other '*')}
                                            {(Lit_Other '*') (mingw) (Lit_Other '*')}
                                            {(Lit_Other '*') (cegcc) (Lit_Other '*')}
                                          ]
                                          action: [
                                            (SimpleCommand
                                              words: [
                                                {($ VSub_Name '$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
                                                  fd: 16777215
                                                  arg_word: 
                                                    {
                                                      (DQ ($ VSub_Name '$output_objdir') (/) 
                                                        ($ VSub_Name '$my_dlsyms')
                                                      )
                                                    }
                                                  spids: [13642]
                                                )
                                              ]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:lt_dlsym_const)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [13658]
                                                )
                                              ]
                                              spids: [13658]
                                            )
                                          ]
                                          spids: [13621 13637 13660 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*') (osf5) (Lit_Other '*')}]
                                          action: [
                                            (SimpleCommand
                                              words: [
                                                {(echo)}
                                                {
                                                  (DQ 
                                                    (
'/* This system does not cope well with relocations in const data */'
                                                    )
                                                  )
                                                }
                                              ]
                                              redirects: [
                                                (Redir
                                                  op_id: Redir_DGreat
                                                  fd: 16777215
                                                  arg_word: 
                                                    {
                                                      (DQ ($ VSub_Name '$output_objdir') (/) 
                                                        ($ VSub_Name '$my_dlsyms')
                                                      )
                                                    }
                                                  spids: [13671]
                                                )
                                              ]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:lt_dlsym_const)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [13685]
                                                )
                                              ]
                                              spids: [13685]
                                            )
                                          ]
                                          spids: [13663 13666 13687 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:lt_dlsym_const)
                                                  op: Equal
                                                  rhs: {(const)}
                                                  spids: [13694]
                                                )
                                              ]
                                              spids: [13694]
                                            )
                                          ]
                                          spids: [13690 13691 13697 16777215]
                                        )
                                      ]
                                      spids: [13614 13618 13700]
                                    )
                                    (SimpleCommand
                                      words: [
                                        {($ VSub_Name '$ECHO')}
                                        {
                                          (DQ ('extern ') ($ VSub_Name '$lt_dlsym_const') 
                                            (' lt_dlsymlist\n') (lt_) (${ VSub_Name my_prefix) ('_LTX_preloaded_symbols[];\n') ($ VSub_Name '$lt_dlsym_const') 
                                            (' lt_dlsymlist\n') (lt_) (${ VSub_Name my_prefix) ('_LTX_preloaded_symbols[] =\n') ('{') ('  { ') 
                                            (EscapedLiteralPart
                                              token: <Lit_EscapedChar '\\"'>
                                            ) ($ VSub_Name '$my_originator') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (', (void *) 0 },')
                                          )
                                        }
                                      ]
                                      redirects: [
                                        (Redir
                                          op_id: Redir_DGreat
                                          fd: 16777215
                                          arg_word: 
                                            {
                                              (DQ ($ VSub_Name '$output_objdir') (/) 
                                                ($ VSub_Name '$my_dlsyms')
                                              )
                                            }
                                          spids: [13706]
                                        )
                                      ]
                                    )
                                    (Case
                                      to_match: {($ VSub_Name '$need_lib_prefix')}
                                      arms: [
                                        (case_arm
                                          pat_list: [{(no)}]
                                          action: [
                                            (SimpleCommand
                                              words: [
                                                {(eval)}
                                                {
                                                  (DQ 
                                                    ($ VSub_Name '$global_symbol_to_c_name_address')
                                                  )
                                                }
                                              ]
                                              redirects: [
                                                (Redir
                                                  op_id: Redir_Less
                                                  fd: 16777215
                                                  arg_word: {(DQ ($ VSub_Name '$nlist'))}
                                                  spids: [13759]
                                                )
                                                (Redir
                                                  op_id: Redir_DGreat
                                                  fd: 16777215
                                                  arg_word: 
                                                    {
                                                      (DQ ($ VSub_Name '$output_objdir') (/) 
                                                        ($ VSub_Name '$my_dlsyms')
                                                      )
                                                    }
                                                  spids: [13765]
                                                )
                                              ]
                                            )
                                          ]
                                          spids: [13749 13750 13774 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (SimpleCommand
                                              words: [
                                                {(eval)}
                                                {
                                                  (DQ 
                                                    ($ VSub_Name 
'$global_symbol_to_c_name_address_lib_prefix'
                                                    )
                                                  )
                                                }
                                              ]
                                              redirects: [
                                                (Redir
                                                  op_id: Redir_Less
                                                  fd: 16777215
                                                  arg_word: {(DQ ($ VSub_Name '$nlist'))}
                                                  spids: [13787]
                                                )
                                                (Redir
                                                  op_id: Redir_DGreat
                                                  fd: 16777215
                                                  arg_word: 
                                                    {
                                                      (DQ ($ VSub_Name '$output_objdir') (/) 
                                                        ($ VSub_Name '$my_dlsyms')
                                                      )
                                                    }
                                                  spids: [13793]
                                                )
                                              ]
                                            )
                                          ]
                                          spids: [13777 13778 13802 16777215]
                                        )
                                      ]
                                      spids: [13742 13746 13805]
                                    )
                                    (SimpleCommand
                                      words: [
                                        {($ VSub_Name '$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_') 
                                            (${ VSub_Name my_prefix) ('_LTX_preloaded_symbols;\n') ('}\n') ('#endif\n') ('\n') ('#ifdef __cplusplus\n') ('}\n') ('#endif')
                                          )
                                        }
                                      ]
                                      redirects: [
                                        (Redir
                                          op_id: Redir_DGreat
                                          fd: 16777215
                                          arg_word: 
                                            {
                                              (DQ ($ VSub_Name '$output_objdir') (/) 
                                                ($ VSub_Name '$my_dlsyms')
                                              )
                                            }
                                          spids: [13810]
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [13356]
                                )
                              ]
                              op_id: Op_DPipe
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:pic_flag_for_symtable)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [13848]
                                )
                              ]
                              spids: [13848]
                            )
                            (Case
                              to_match: {(DQ ($ VSub_Name '$compile_command') (' '))}
                              arms: [
                                (case_arm
                                  pat_list: [{(Lit_Other '*') (DQ (' -static ')) (Lit_Other '*')}]
                                  spids: [13861 13866 13868 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Case
                                      to_match: {($ VSub_Name '$host')}
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-freebsd2) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-freebsd3.0) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-freebsdelf3.0) 
                                              (Lit_Other '*')
                                            }
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:pic_flag_for_symtable)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ (' ') ($ VSub_Name '$pic_flag') 
                                                        (' -DFREEBSD_WORKAROUND')
                                                      )
                                                    }
                                                  spids: [13922]
                                                )
                                              ]
                                              spids: [13922]
                                            )
                                          ]
                                          spids: [13902 13919 13929 16777215]
                                        )
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-hpux) 
                                              (Lit_Other '*')
                                            }
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:pic_flag_for_symtable)
                                                  op: Equal
                                                  rhs: {(DQ (' ') ($ VSub_Name '$pic_flag'))}
                                                  spids: [13940]
                                                )
                                              ]
                                              spids: [13940]
                                            )
                                          ]
                                          spids: [13932 13937 13946 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(DQ (X) ($ VSub_Name '$my_pic_p'))} 
                                                          {(KW_Bang '!') (Lit_Other '=')} {(Xno)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:pic_flag_for_symtable)
                                                          op: Equal
                                                          rhs: {(DQ (' ') ($ VSub_Name '$pic_flag'))}
                                                          spids: [13971]
                                                        )
                                                      ]
                                                      spids: [13971]
                                                    )
                                                  ]
                                                  spids: [16777215 13968]
                                                )
                                              ]
                                              spids: [16777215 13978]
                                            )
                                          ]
                                          spids: [13949 13950 13981 16777215]
                                        )
                                      ]
                                      spids: [13875 13879 13984]
                                    )
                                  ]
                                  spids: [13871 13872 13987 16777215]
                                )
                              ]
                              spids: [13851 13858 13990]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:symtab_cflags)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [13993]
                                )
                              ]
                              spids: [13993]
                            )
                            (ForEach
                              iter_name: arg
                              iter_words: [{($ VSub_Name '$LTCFLAGS')}]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (Case
                                      to_match: {($ VSub_Name '$arg')}
                                      arms: [
                                        (case_arm
                                          pat_list: [{(-pie)} {(-fpie)} {(-fPIE)}]
                                          spids: [14015 14024 14026 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:symtab_cflags)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$symtab_cflags') (' ') 
                                                        ($ VSub_Name '$arg')
                                                      )
                                                    }
                                                  spids: [14032]
                                                )
                                              ]
                                              spids: [14032]
                                            )
                                          ]
                                          spids: [14029 14030 14039 16777215]
                                        )
                                      ]
                                      spids: [14008 14012 14042]
                                    )
                                  ]
                                  spids: [14005 14045]
                                )
                              spids: [14001 14003]
                            )
                            (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"'
                                  >
                                )
                              }
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:symfileobj)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$output_objdir') (/) 
                                        (${ VSub_Name my_outputname) (S.) ($ VSub_Name '$objext')
                                      )
                                    }
                                  spids: [14081]
                                )
                              ]
                              spids: [14081]
                            )
                            (Case
                              to_match: {($ VSub_Name '$host')}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '*') (cygwin) (Lit_Other '*')}
                                    {(Lit_Other '*') (mingw) (Lit_Other '*')}
                                    {(Lit_Other '*') (cegcc) (Lit_Other '*')}
                                  ]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(-f)} 
                                                  {
                                                    (DQ ($ VSub_Name '$output_objdir') (/) 
                                                      ($ VSub_Name '$my_outputname') (.def)
                                                    )
                                                  }
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:compile_command)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (CommandSubPart
                                                        command_list: 
                                                          (CommandList
                                                            children: [
                                                              (Pipeline
                                                                children: [
                                                                  (C {($ VSub_Name '$ECHO')} 
                                                                    {
                                                                      (DQ (X) 
                                                                        ($ VSub_Name 
'$compile_command'
                                                                        )
                                                                      )
                                                                    }
                                                                  )
                                                                  (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                                    {
                                                                      (DQ ('s%@SYMFILE@%') 
                                                                        ($ VSub_Name '$output_objdir') (/) ($ VSub_Name '$my_outputname') ('.def ') ($ VSub_Name '$symfileobj') ('%')
                                                                      )
                                                                    }
                                                                  )
                                                                ]
                                                                negated: False
                                                              )
                                                            ]
                                                          )
                                                        left_token: <Left_Backtick '`'>
                                                        spids: [14137 14160]
                                                      )
                                                    }
                                                  spids: [14136]
                                                )
                                              ]
                                              spids: [14136]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:finalize_command)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (CommandSubPart
                                                        command_list: 
                                                          (CommandList
                                                            children: [
                                                              (Pipeline
                                                                children: [
                                                                  (C {($ VSub_Name '$ECHO')} 
                                                                    {
                                                                      (DQ (X) 
                                                                        ($ VSub_Name 
'$finalize_command'
                                                                        )
                                                                      )
                                                                    }
                                                                  )
                                                                  (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                                    {
                                                                      (DQ ('s%@SYMFILE@%') 
                                                                        ($ VSub_Name '$output_objdir') (/) ($ VSub_Name '$my_outputname') ('.def ') ($ VSub_Name '$symfileobj') ('%')
                                                                      )
                                                                    }
                                                                  )
                                                                ]
                                                                negated: False
                                                              )
                                                            ]
                                                          )
                                                        left_token: <Left_Backtick '`'>
                                                        spids: [14164 14187]
                                                      )
                                                    }
                                                  spids: [14163]
                                                )
                                              ]
                                              spids: [14163]
                                            )
                                          ]
                                          spids: [16777215 14133]
                                        )
                                      ]
                                      else_action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:compile_command)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (CommandSubPart
                                                    command_list: 
                                                      (CommandList
                                                        children: [
                                                          (Pipeline
                                                            children: [
                                                              (C {($ VSub_Name '$ECHO')} 
                                                                {
                                                                  (DQ (X) 
                                                                    ($ VSub_Name '$compile_command')
                                                                  )
                                                                }
                                                              )
                                                              (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                                {
                                                                  (DQ ('s%@SYMFILE@%') 
                                                                    ($ VSub_Name '$symfileobj') ('%')
                                                                  )
                                                                }
                                                              )
                                                            ]
                                                            negated: False
                                                          )
                                                        ]
                                                      )
                                                    left_token: <Left_Backtick '`'>
                                                    spids: [14194 14213]
                                                  )
                                                }
                                              spids: [14193]
                                            )
                                          ]
                                          spids: [14193]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:finalize_command)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (CommandSubPart
                                                    command_list: 
                                                      (CommandList
                                                        children: [
                                                          (Pipeline
                                                            children: [
                                                              (C {($ VSub_Name '$ECHO')} 
                                                                {
                                                                  (DQ (X) 
                                                                    ($ VSub_Name '$finalize_command')
                                                                  )
                                                                }
                                                              )
                                                              (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                                {
                                                                  (DQ ('s%@SYMFILE@%') 
                                                                    ($ VSub_Name '$symfileobj') ('%')
                                                                  )
                                                                }
                                                              )
                                                            ]
                                                            negated: False
                                                          )
                                                        ]
                                                      )
                                                    left_token: <Left_Backtick '`'>
                                                    spids: [14217 14236]
                                                  )
                                                }
                                              spids: [14216]
                                            )
                                          ]
                                          spids: [14216]
                                        )
                                      ]
                                      spids: [14190 14239]
                                    )
                                  ]
                                  spids: [14100 14116 14242 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:compile_command)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (Pipeline
                                                        children: [
                                                          (C {($ VSub_Name '$ECHO')} 
                                                            {
                                                              (DQ (X) ($ VSub_Name '$compile_command'))
                                                            }
                                                          )
                                                          (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                            {
                                                              (DQ ('s%@SYMFILE@%') 
                                                                ($ VSub_Name '$symfileobj') ('%')
                                                              )
                                                            }
                                                          )
                                                        ]
                                                        negated: False
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [14250 14269]
                                              )
                                            }
                                          spids: [14249]
                                        )
                                      ]
                                      spids: [14249]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:finalize_command)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (Pipeline
                                                        children: [
                                                          (C {($ VSub_Name '$ECHO')} 
                                                            {
                                                              (DQ (X) 
                                                                ($ VSub_Name '$finalize_command')
                                                              )
                                                            }
                                                          )
                                                          (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                            {
                                                              (DQ ('s%@SYMFILE@%') 
                                                                ($ VSub_Name '$symfileobj') ('%')
                                                              )
                                                            }
                                                          )
                                                        ]
                                                        negated: False
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [14273 14292]
                                              )
                                            }
                                          spids: [14272]
                                        )
                                      ]
                                      spids: [14272]
                                    )
                                  ]
                                  spids: [14245 14246 14295 16777215]
                                )
                              ]
                              spids: [14093 14097 14298]
                            )
                          ]
                          spids: [12752 12754 14301 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*')}]
                          action: [
                            (C {(func_fatal_error)} 
                              {
                                (DQ ('unknown suffix for ') 
                                  (EscapedLiteralPart
                                    token: <Lit_EscapedChar '\\`'>
                                  ) ($ VSub_Name '$my_dlsyms') ("'")
                                )
                              }
                            )
                          ]
                          spids: [14304 14305 14318 16777215]
                        )
                      ]
                      spids: [12738 12742 14321]
                    )
                  ]
                  spids: [16777215 12735]
                )
              ]
              else_action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:compile_command)
                      op: Equal
                      rhs: 
                        {
                          (CommandSubPart
                            command_list: 
                              (CommandList
                                children: [
                                  (Pipeline
                                    children: [
                                      (C {($ VSub_Name '$ECHO')} 
                                        {(DQ (X) ($ VSub_Name '$compile_command'))}
                                      )
                                      (C {($ VSub_Name '$Xsed')} {(-e)} {(DQ ('s% @SYMFILE@%%'))})
                                    ]
                                    negated: False
                                  )
                                ]
                              )
                            left_token: <Left_Backtick '`'>
                            spids: [14345 14362]
                          )
                        }
                      spids: [14344]
                    )
                  ]
                  spids: [14344]
                )
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:finalize_command)
                      op: Equal
                      rhs: 
                        {
                          (CommandSubPart
                            command_list: 
                              (CommandList
                                children: [
                                  (Pipeline
                                    children: [
                                      (C {($ VSub_Name '$ECHO')} 
                                        {(DQ (X) ($ VSub_Name '$finalize_command'))}
                                      )
                                      (C {($ VSub_Name '$Xsed')} {(-e)} {(DQ ('s% @SYMFILE@%%'))})
                                    ]
                                    negated: False
                                  )
                                ]
                              )
                            left_token: <Left_Backtick '`'>
                            spids: [14366 14383]
                          )
                        }
                      spids: [14365]
                    )
                  ]
                  spids: [14365]
                )
              ]
              spids: [14324 14386]
            )
          ]
          spids: [12596]
        )
      spids: [12591 12595]
    )
    (FuncDef
      name: func_win32_libid
      body: 
        (BraceGroup
          children: [
            (C {($ VSub_Name '$opt_debug')})
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:win32_libid_type)
                  op: Equal
                  rhs: {(DQ (unknown))}
                  spids: [14420]
                )
              ]
              spids: [14420]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:win32_fileres)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (SimpleCommand
                                words: [{(file)} {(-L)} {($ VSub_Number '$1')}]
                                redirects: [
                                  (Redir
                                    op_id: Redir_Great
                                    fd: 2
                                    arg_word: {(/dev/null)}
                                    spids: [14434]
                                  )
                                ]
                              )
                            ]
                          )
                        left_token: <Left_Backtick '`'>
                        spids: [14427 14436]
                      )
                    }
                  spids: [14426]
                )
              ]
              spids: [14426]
            )
            (Case
              to_match: {($ VSub_Name '$win32_fileres')}
              arms: [
                (case_arm
                  pat_list: [
                    {(Lit_Other '*') (ar) (EscapedLiteralPart token:<Lit_EscapedChar '\\ '>) (archive) 
                      (EscapedLiteralPart token:<Lit_EscapedChar '\\ '>) (import) (EscapedLiteralPart token:<Lit_EscapedChar '\\ '>) (library) (Lit_Other '*')
                    }
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:win32_libid_type)
                          op: Equal
                          rhs: {(DQ ('x86 archive import'))}
                          spids: [14461]
                        )
                      ]
                      spids: [14461]
                    )
                  ]
                  spids: [14446 14455 14467 16777215]
                )
                (case_arm
                  pat_list: [
                    {(Lit_Other '*') (ar) (EscapedLiteralPart token:<Lit_EscapedChar '\\ '>) (archive) 
                      (Lit_Other '*')
                    }
                  ]
                  action: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (Pipeline
                                  children: [
                                    (C {(eval)} {($ VSub_Name '$OBJDUMP')} {(-f)} {($ VSub_Number '$1')})
                                    (SimpleCommand
                                      words: [{($ VSub_Name '$SED')} {(-e)} {(SQ <10q>)}]
                                      redirects: [
                                        (Redir
                                          op_id: Redir_Great
                                          fd: 2
                                          arg_word: {(/dev/null)}
                                          spids: [14501]
                                        )
                                      ]
                                    )
                                    (SimpleCommand
                                      words: [
                                        {($ VSub_Name '$EGREP')}
                                        {(SQ <'file format pe-i386(.*architecture: i386)?'>)}
                                      ]
                                      redirects: [
                                        (Redir
                                          op_id: Redir_Great
                                          fd: 16777215
                                          arg_word: {(/dev/null)}
                                          spids: [14513]
                                        )
                                      ]
                                    )
                                  ]
                                  negated: False
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:win32_nmres)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (Pipeline
                                                children: [
                                                  (C {(eval)} {($ VSub_Name '$NM')} {(-f)} {(posix)} 
                                                    {(-A)} {($ VSub_Number '$1')}
                                                  )
                                                  (C {($ VSub_Name '$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: False
                                              )
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [14522 14554]
                                      )
                                    }
                                  spids: [14521]
                                )
                              ]
                              spids: [14521]
                            )
                            (Case
                              to_match: {($ VSub_Name '$win32_nmres')}
                              arms: [
                                (case_arm
                                  pat_list: [{(import) (Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:win32_libid_type)
                                          op: Equal
                                          rhs: {(DQ ('x86 archive import'))}
                                          spids: [14568]
                                        )
                                      ]
                                      spids: [14568]
                                    )
                                  ]
                                  spids: [14564 14566 14572 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:win32_libid_type)
                                          op: Equal
                                          rhs: {(DQ ('x86 archive static'))}
                                          spids: [14578]
                                        )
                                      ]
                                      spids: [14578]
                                    )
                                  ]
                                  spids: [14575 14576 14582 16777215]
                                )
                              ]
                              spids: [14557 14561 14585]
                            )
                          ]
                          spids: [16777215 14518]
                        )
                      ]
                      spids: [16777215 14588]
                    )
                  ]
                  spids: [14470 14475 14591 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*') (DLL) (Lit_Other '*')}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:win32_libid_type)
                          op: Equal
                          rhs: {(DQ ('x86 DLL'))}
                          spids: [14600]
                        )
                      ]
                      spids: [14600]
                    )
                  ]
                  spids: [14594 14597 14606 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*') (executable) (Lit_Other '*')}]
                  action: [
                    (Case
                      to_match: {($ VSub_Name '$win32_fileres')}
                      arms: [
                        (case_arm
                          pat_list: [
                            {(Lit_Other '*') (MS) (EscapedLiteralPart token:<Lit_EscapedChar '\\ '>) 
                              (Windows) (EscapedLiteralPart token:<Lit_EscapedChar '\\ '>) (PE) 
                              (EscapedLiteralPart
                                token: <Lit_EscapedChar '\\ '>
                              ) (Intel) (Lit_Other '*')
                            }
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:win32_libid_type)
                                  op: Equal
                                  rhs: {(DQ ('x86 DLL'))}
                                  spids: [14637]
                                )
                              ]
                              spids: [14637]
                            )
                          ]
                          spids: [14625 14634 14643 16777215]
                        )
                      ]
                      spids: [14618 14622 14646]
                    )
                  ]
                  spids: [14609 14612 14649 16777215]
                )
              ]
              spids: [14439 14443 14652]
            )
            (C {($ VSub_Name '$ECHO')} {(DQ ($ VSub_Name '$win32_libid_type'))})
          ]
          spids: [14414]
        )
      spids: [14409 14413]
    )
    (FuncDef
      name: func_extract_an_archive
      body: 
        (BraceGroup
          children: [
            (C {($ VSub_Name '$opt_debug')})
            (Sentence
              child: 
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:f_ex_an_ar_dir)
                      op: Equal
                      rhs: {(DQ ($ VSub_Number '$1'))}
                      spids: [14680]
                    )
                  ]
                  spids: [14680]
                )
              terminator: <Op_Semi ';'>
            )
            (C {(shift)})
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:f_ex_an_ar_oldlib)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$1'))}
                  spids: [14689]
                )
              ]
              spids: [14689]
            )
            (C {(func_show_eval)} 
              {
                (DQ ('(cd ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('f_ex_an_ar_dir && ') 
                  ($ VSub_Name '$AR') (' x ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (f_ex_an_ar_oldlib) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (')')
                )
              } {(SQ <'exit $?'>)}
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (Subshell
                          child: 
                            (Pipeline
                              children: [
                                (C {($ VSub_Name '$AR')} {(t)} {(DQ ($ VSub_Name '$f_ex_an_ar_oldlib'))})
                                (C {(sort)})
                                (SimpleCommand
                                  words: [{(sort)} {(-uc)}]
                                  redirects: [
                                    (Redir
                                      op_id: Redir_Great
                                      fd: 16777215
                                      arg_word: {(/dev/null)}
                                      spids: [14736]
                                    )
                                    (Redir
                                      op_id: Redir_GreatAnd
                                      fd: 2
                                      arg_word: {(1)}
                                      spids: [14739]
                                    )
                                  ]
                                )
                              ]
                              negated: False
                            )
                          spids: [14717 14741]
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(Lit_Other ':')})]
                  spids: [16777215 14744]
                )
              ]
              else_action: [
                (C {(func_fatal_error)} 
                  {
                    (DQ ('object name conflicts in archive: ') ($ VSub_Name '$f_ex_an_ar_dir') (/) 
                      ($ VSub_Name '$f_ex_an_ar_oldlib')
                    )
                  }
                )
              ]
              spids: [14750 14763]
            )
          ]
          spids: [14674]
        )
      spids: [14669 14673]
    )
    (FuncDef
      name: func_extract_archives
      body: 
        (BraceGroup
          children: [
            (C {($ VSub_Name '$opt_debug')})
            (Sentence
              child: 
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:my_gentop)
                      op: Equal
                      rhs: {(DQ ($ VSub_Number '$1'))}
                      spids: [14783]
                    )
                  ]
                  spids: [14783]
                )
              terminator: <Op_Semi ';'>
            )
            (C {(shift)})
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:my_oldlibs)
                  op: Equal
                  rhs: 
                    {
                      (BracedVarSub
                        token: <VSub_Number 1>
                        suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
                        spids: [14793 14799]
                      )
                    }
                  spids: [14792]
                )
              ]
              spids: [14792]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:my_oldobjs) op:Equal rhs:{(DQ )} spids:[14802])]
              spids: [14802]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:my_xlib) op:Equal rhs:{(DQ )} spids:[14807])]
              spids: [14807]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:my_xabs) op:Equal rhs:{(DQ )} spids:[14812])]
              spids: [14812]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:my_xdir) op:Equal rhs:{(DQ )} spids:[14817])]
              spids: [14817]
            )
            (ForEach
              iter_name: my_xlib
              iter_words: [{($ VSub_Name '$my_oldlibs')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (Case
                      to_match: {($ VSub_Name '$my_xlib')}
                      arms: [
                        (case_arm
                          pat_list: [
                            {(Lit_Other '[') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (/) 
                              (Lit_Other ']') (Lit_Other '*')
                            }
                            {(Lit_Other '[') (A-Za-z) (Lit_Other ']') (Lit_Other ':') (Lit_Other '[') 
                              (EscapedLiteralPart
                                token: <Lit_EscapedChar '\\\\'>
                              ) (/) (Lit_Other ']') (Lit_Other '*')
                            }
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:my_xabs)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$my_xlib'))}
                                  spids: [14865]
                                )
                              ]
                              spids: [14865]
                            )
                          ]
                          spids: [14846 14863 14870 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*')}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:my_xabs)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: (CommandList children:[(C {(pwd)})])
                                        left_token: <Left_Backtick '`'>
                                        spids: [14877 14879]
                                      ) (DQ (/) ($ VSub_Name '$my_xlib'))
                                    }
                                  spids: [14876]
                                )
                              ]
                              spids: [14876]
                            )
                          ]
                          spids: [14873 14874 14885 16777215]
                        )
                      ]
                      spids: [14839 14843 14888]
                    )
                    (C {(func_basename)} {(DQ ($ VSub_Name '$my_xlib'))})
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:my_xlib)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$func_basename_result'))}
                          spids: [14898]
                        )
                      ]
                      spids: [14898]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:my_xlib_u)
                          op: Equal
                          rhs: {($ VSub_Name '$my_xlib')}
                          spids: [14904]
                        )
                      ]
                      spids: [14904]
                    )
                    (While
                      cond: [(Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)]
                      body: 
                        (DoGroup
                          children: [
                            (Case
                              to_match: {(DQ (' ') ($ VSub_Name '$extracted_archives') (' '))}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '*') (DQ (' ') ($ VSub_Name '$my_xlib_u') (' ')) 
                                      (Lit_Other '*')
                                    }
                                  ]
                                  action: [
                                    (C {(func_arith)} {($ VSub_Name '$extracted_serial')} 
                                      {(Lit_Other '+')} {(1)}
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:extracted_serial)
                                          op: Equal
                                          rhs: {($ VSub_Name '$func_arith_result')}
                                          spids: [14946]
                                        )
                                      ]
                                      spids: [14946]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:my_xlib_u)
                                          op: Equal
                                          rhs: 
                                            {(lt) ($ VSub_Name '$extracted_serial') (-) 
                                              ($ VSub_Name '$my_xlib')
                                            }
                                          spids: [14950]
                                        )
                                      ]
                                      spids: [14950]
                                    )
                                  ]
                                  spids: [14927 14934 14956 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [(ControlFlow token:<ControlFlow_Break break>)]
                                  spids: [14959 14960 14964 16777215]
                                )
                              ]
                              spids: [14916 14924 14967]
                            )
                          ]
                          spids: [14913 14970]
                        )
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:extracted_archives)
                          op: Equal
                          rhs: 
                            {
                              (DQ ($ VSub_Name '$extracted_archives') (' ') ($ VSub_Name '$my_xlib_u'))
                            }
                          spids: [14973]
                        )
                      ]
                      spids: [14973]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:my_xdir)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$my_gentop') (/) ($ VSub_Name '$my_xlib_u'))}
                          spids: [14981]
                        )
                      ]
                      spids: [14981]
                    )
                    (C {(func_mkdir_p)} {(DQ ($ VSub_Name '$my_xdir'))})
                    (Case
                      to_match: {($ VSub_Name '$host')}
                      arms: [
                        (case_arm
                          pat_list: [{(Lit_Other '*') (-darwin) (Lit_Other '*')}]
                          action: [
                            (C {(func_verbose)} {(DQ ('Extracting ') ($ VSub_Name '$my_xabs'))})
                            (AndOr
                              children: [
                                (C {($ VSub_Name '$opt_dry_run')})
                                (BraceGroup
                                  children: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:darwin_orig_dir)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: (CommandList children:[(C {(pwd)})])
                                                left_token: <Left_Backtick '`'>
                                                spids: [15031 15033]
                                              )
                                            }
                                          spids: [15030]
                                        )
                                      ]
                                      spids: [15030]
                                    )
                                    (AndOr
                                      children: [
                                        (C {(cd)} {($ VSub_Name '$my_xdir')})
                                        (C {(exit)} {($ VSub_QMark '$?')})
                                      ]
                                      op_id: Op_DPipe
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:darwin_archive)
                                          op: Equal
                                          rhs: {($ VSub_Name '$my_xabs')}
                                          spids: [15047]
                                        )
                                      ]
                                      spids: [15047]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:darwin_curdir)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: (CommandList children:[(C {(pwd)})])
                                                left_token: <Left_Backtick '`'>
                                                spids: [15052 15054]
                                              )
                                            }
                                          spids: [15051]
                                        )
                                      ]
                                      spids: [15051]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:darwin_base_archive)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (C {(basename)} 
                                                        {(DQ ($ VSub_Name '$darwin_archive'))}
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [15058 15064]
                                              )
                                            }
                                          spids: [15057]
                                        )
                                      ]
                                      spids: [15057]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:darwin_arches)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (AndOr
                                                        children: [
                                                          (Pipeline
                                                            children: [
                                                              (SimpleCommand
                                                                words: [
                                                                  {($ VSub_Name '$LIPO')}
                                                                  {(-info)}
                                                                  {
                                                                    (DQ 
                                                                      ($ VSub_Name '$darwin_archive')
                                                                    )
                                                                  }
                                                                ]
                                                                redirects: [
                                                                  (Redir
                                                                    op_id: Redir_Great
                                                                    fd: 2
                                                                    arg_word: {(/dev/null)}
                                                                    spids: [15077]
                                                                  )
                                                                ]
                                                              )
                                                              (SimpleCommand
                                                                words: [
                                                                  {($ VSub_Name '$GREP')}
                                                                  {(Architectures)}
                                                                ]
                                                                redirects: [
                                                                  (Redir
                                                                    op_id: Redir_Great
                                                                    fd: 2
                                                                    arg_word: {(/dev/null)}
                                                                    spids: [15086]
                                                                  )
                                                                ]
                                                              )
                                                            ]
                                                            negated: False
                                                          )
                                                          (C {(true)})
                                                        ]
                                                        op_id: Op_DPipe
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [15068 15092]
                                              )
                                            }
                                          spids: [15067]
                                        )
                                      ]
                                      spids: [15067]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$darwin_arches'))})
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:darwin_arches)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (CommandSubPart
                                                        command_list: 
                                                          (CommandList
                                                            children: [
                                                              (Pipeline
                                                                children: [
                                                                  (C {($ VSub_Name '$ECHO')} 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name '$darwin_arches')
                                                                      )
                                                                    }
                                                                  )
                                                                  (C {($ VSub_Name '$SED')} {(-e)} 
                                                                    {(SQ <'s/.*are://'>)}
                                                                  )
                                                                ]
                                                                negated: False
                                                              )
                                                            ]
                                                          )
                                                        left_token: <Left_Backtick '`'>
                                                        spids: [15110 15126]
                                                      )
                                                    }
                                                  spids: [15109]
                                                )
                                              ]
                                              spids: [15109]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:darwin_arch)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [15129]
                                                )
                                              ]
                                              spids: [15129]
                                            )
                                            (C {(func_verbose)} 
                                              {
                                                (DQ ($ VSub_Name '$darwin_base_archive') 
                                                  (' has multiple architectures ') ($ VSub_Name '$darwin_arches')
                                                )
                                              }
                                            )
                                            (ForEach
                                              iter_name: darwin_arch
                                              iter_words: [{($ VSub_Name '$darwin_arches')}]
                                              do_arg_iter: False
                                              body: 
                                                (DoGroup
                                                  children: [
                                                    (C {(func_mkdir_p)} 
                                                      {
                                                        (DQ (unfat-) ($ VSub_Dollar '$$') (/) 
                                                          (${ VSub_Name darwin_base_archive) (-) (${ VSub_Name darwin_arch)
                                                        )
                                                      }
                                                    )
                                                    (C {($ VSub_Name '$LIPO')} {(-thin)} 
                                                      {($ VSub_Name '$darwin_arch')} {(-output)} 
                                                      {
                                                        (DQ (unfat-) ($ VSub_Dollar '$$') (/) 
                                                          (${ VSub_Name darwin_base_archive) (-) (${ VSub_Name darwin_arch) (/) (${ VSub_Name darwin_base_archive)
                                                        )
                                                      } {(DQ (${ VSub_Name darwin_archive))}
                                                    )
                                                    (C {(cd)} 
                                                      {
                                                        (DQ (unfat-) ($ VSub_Dollar '$$') (/) 
                                                          (${ VSub_Name darwin_base_archive) (-) (${ VSub_Name darwin_arch)
                                                        )
                                                      }
                                                    )
                                                    (C {(func_extract_an_archive)} 
                                                      {
                                                        (DQ 
                                                          (CommandSubPart
                                                            command_list: 
                                                              (CommandList
                                                                children: [(C {(pwd)})]
                                                              )
                                                            left_token: <Left_Backtick '`'>
                                                            spids: [15221 15223]
                                                          )
                                                        )
                                                      } {(DQ (${ VSub_Name darwin_base_archive))}
                                                    )
                                                    (C {(cd)} {(DQ ($ VSub_Name '$darwin_curdir'))})
                                                    (C {($ VSub_Name '$RM')} 
                                                      {
                                                        (DQ (unfat-) ($ VSub_Dollar '$$') (/) 
                                                          (${ VSub_Name darwin_base_archive) (-) (${ VSub_Name darwin_arch) (/) (${ VSub_Name darwin_base_archive)
                                                        )
                                                      }
                                                    )
                                                  ]
                                                  spids: [15151 15260]
                                                )
                                              spids: [15146 15149]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:darwin_filelist)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (CommandSubPart
                                                        command_list: 
                                                          (CommandList
                                                            children: [
                                                              (Pipeline
                                                                children: [
                                                                  (C {(find)} 
                                                                    {(unfat-) ($ VSub_Dollar '$$')} {(-type)} {(f)} {(-name)} {(EscapedLiteralPart token:<Lit_EscapedChar '\\*'>) (.o)} {(-print)} {(-o)} 
                                                                    {(-name)} {(EscapedLiteralPart token:<Lit_EscapedChar '\\*'>) (.lo)} {(-print)}
                                                                  )
                                                                  (C {($ VSub_Name '$SED')} {(-e)} 
                                                                    {(DQ ($ VSub_Name '$basename'))}
                                                                  )
                                                                  (C {(sort)} {(-u)})
                                                                ]
                                                                negated: False
                                                              )
                                                            ]
                                                          )
                                                        left_token: <Left_Backtick '`'>
                                                        spids: [15271 15312]
                                                      )
                                                    }
                                                  spids: [15270]
                                                )
                                              ]
                                              spids: [15270]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:darwin_file)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [15315]
                                                )
                                              ]
                                              spids: [15315]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:darwin_files)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [15318]
                                                )
                                              ]
                                              spids: [15318]
                                            )
                                            (ForEach
                                              iter_name: darwin_file
                                              iter_words: [{($ VSub_Name '$darwin_filelist')}]
                                              do_arg_iter: False
                                              body: 
                                                (DoGroup
                                                  children: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:darwin_files)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (CommandSubPart
                                                                command_list: 
                                                                  (CommandList
                                                                    children: [
                                                                      (Pipeline
                                                                        children: [
                                                                          (C {(find)} 
                                                                            {(unfat-) 
                                                                              ($ VSub_Dollar '$$')
                                                                            } {(-name)} {($ VSub_Name '$darwin_file')} {(-print)}
                                                                          )
                                                                          (C {($ VSub_Name '$NL2SP')})
                                                                        ]
                                                                        negated: False
                                                                      )
                                                                    ]
                                                                  )
                                                                left_token: <Left_Backtick '`'>
                                                                spids: [15334 15349]
                                                              )
                                                            }
                                                          spids: [15333]
                                                        )
                                                      ]
                                                      spids: [15333]
                                                    )
                                                    (C {($ VSub_Name '$LIPO')} {(-create)} {(-output)} 
                                                      {(DQ ($ VSub_Name '$darwin_file'))} {($ VSub_Name '$darwin_files')}
                                                    )
                                                  ]
                                                  spids: [15330 15365]
                                                )
                                              spids: [15326 15328]
                                            )
                                            (C {($ VSub_Name '$RM')} {(-rf)} 
                                              {(unfat-) ($ VSub_Dollar '$$')}
                                            )
                                            (C {(cd)} {(DQ ($ VSub_Name '$darwin_orig_dir'))})
                                          ]
                                          spids: [16777215 15106]
                                        )
                                      ]
                                      else_action: [
                                        (C {(cd)} {($ VSub_Name '$darwin_orig_dir')})
                                        (C {(func_extract_an_archive)} {(DQ ($ VSub_Name '$my_xdir'))} 
                                          {(DQ ($ VSub_Name '$my_xabs'))}
                                        )
                                      ]
                                      spids: [15386 15405]
                                    )
                                  ]
                                  spids: [15027]
                                )
                              ]
                              op_id: Op_DPipe
                            )
                          ]
                          spids: [15005 15008 15417 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*')}]
                          action: [
                            (C {(func_extract_an_archive)} {(DQ ($ VSub_Name '$my_xdir'))} 
                              {(DQ ($ VSub_Name '$my_xabs'))}
                            )
                          ]
                          spids: [15420 15421 15435 16777215]
                        )
                      ]
                      spids: [14998 15002 15438]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:my_oldobjs)
                          op: Equal
                          rhs: 
                            {(DQ ($ VSub_Name '$my_oldobjs') (' ')) 
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (Pipeline
                                        children: [
                                          (C {(find)} {($ VSub_Name '$my_xdir')} {(-name)} 
                                            {(EscapedLiteralPart token:<Lit_EscapedChar '\\*'>) (.) 
                                              ($ VSub_Name '$objext')
                                            } {(-print)} {(-o)} {(-name)} {(EscapedLiteralPart token:<Lit_EscapedChar '\\*'>) (.lo)} {(-print)}
                                          )
                                          (C {($ VSub_Name '$NL2SP')})
                                        ]
                                        negated: False
                                      )
                                    ]
                                  )
                                left_token: <Left_Backtick '`'>
                                spids: [15446 15471]
                              )
                            }
                          spids: [15441]
                        )
                      ]
                      spids: [15441]
                    )
                  ]
                  spids: [14832 15474]
                )
              spids: [14828 14830]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:func_extract_archives_result)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$my_oldobjs'))}
                  spids: [15478]
                )
              ]
              spids: [15478]
            )
          ]
          spids: [14777]
        )
      spids: [14772 14776]
    )
    (FuncDef
      name: func_emit_wrapper_part1
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:func_emit_wrapper_part1_arg1)
                  op: Equal
                  rhs: {(no)}
                  spids: [15511]
                )
              ]
              spids: [15511]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Number '$1'))})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:func_emit_wrapper_part1_arg1)
                          op: Equal
                          rhs: {($ VSub_Number '$1')}
                          spids: [15530]
                        )
                      ]
                      spids: [15530]
                    )
                  ]
                  spids: [16777215 15527]
                )
              ]
              spids: [16777215 15534]
            )
            (C {($ VSub_Name '$ECHO')} 
              {
                (DQ ('#! ') ($ VSub_Name '$SHELL') ('\n') ('\n') ('# ') ($ VSub_Name '$output') 
                  (' - temporary wrapper script for ') ($ VSub_Name '$objdir') (/) ($ VSub_Name '$outputname') ('\n') ('# Generated by ') 
                  ($ VSub_Name '$PROGRAM') (' (GNU ') ($ VSub_Name '$PACKAGE') ($ VSub_Name '$TIMESTAMP') (') ') ($ VSub_Name '$VERSION') ('\n') 
                  ('#\n') ('# The ') ($ VSub_Name '$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='") (${ VSub_Name SED) (" -e 1s/^X//'\n") ("sed_quote_subst='") ($ VSub_Name '$sed_quote_subst') 
                  ("'\n") ('\n') ('# Be Bourne compatible\n') ('if test -n ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{ZSH_VERSION+set}') (EscapedLiteralPart token:<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 ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{1+') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('@') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('}, which\n') 
                  ('  # is contrary to our usage.  Disable this feature.\n') ("  alias -g '") (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{1+') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('@') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ("}'='") (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('@') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ("'\n") ('  setopt NO_GLOB_SUBST\n') ('else\n') 
                  ('  case ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ('(set -o) 2>/dev/null') 
                  (EscapedLiteralPart token:<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=') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ($ VSub_Name '$relink_command') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('\n') ('\n') 
                  ('# This environment variable determines our operation mode.\n') ('if test ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (libtool_install_magic) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' = ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ($ VSub_Name '$magic') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('; then\n') 
                  ('  # install mode needs the following variables:\n') ("  generated_by_libtool_version='") ($ VSub_Name '$macro_version') ("'\n") ("  notinst_deplibs='") 
                  ($ VSub_Name '$notinst_deplibs') ("'\n") ('else\n') ('  # When we are sourced in execute mode, ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('file and ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('ECHO are already set.\n') 
                  ('  if test ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) 
                  (libtool_execute_magic) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' != ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ($ VSub_Name '$magic') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('; then\n') ('    ECHO=') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ($ VSub_Name '$qecho') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('\n') ('    file=') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (0) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('\n') ('    # Make sure echo works.\n') ('    if test ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (X) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (1) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' = X--no-reexec; then\n') ('      # Discard the --no-reexec flag, and continue.\n') ('      shift\n') 
                  ('    elif test ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (X) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ('{ ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ("ECHO '") (Lit_Other '\\') 
                  ("t'; } 2>/dev/null") (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                  (" = 'X") (Lit_Other '\\') ("t'; then\n") ('      # Yippee, ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) 
                  ('ECHO works!\n') ('      :\n') ('    else\n') ('      # Restart under the correct shell, and then maybe ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('ECHO will work.\n') ('      exec ') ($ VSub_Name '$SHELL') (' ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (0) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' --no-reexec ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{1+') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('@') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('}\n') ('    fi\n') ('  fi')
                )
              }
            )
            (C {($ VSub_Name '$ECHO')} 
              {
                (DQ ('\n') ('  # Find the directory that this script lives in.\n') ('  thisdir=') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('ECHO ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (X) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (file) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' | ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ("Xsed -e 's%/[^/]*") (Lit_Other '$') ("%%'") 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ('\n') ('  test ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (x) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (thisdir) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' = ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (x) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (file) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' && thisdir=.\n') ('\n') ('  # Follow symbolic links until we get to the real thisdir.\n') ('  file=') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ('ls -ld ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (file) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' | ') (${ VSub_Name SED) (" -n 's/.*-> //p'") 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ('\n') ('  while test -n ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (file) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('; do\n') ('    destdir=') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('ECHO ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (X) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (file) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' | ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ("Xsed -e 's%/[^/]*") 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ("%%'") (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ('\n') ('\n') 
                  ('    # If there was a directory component, then change thisdir.\n') ('    if test ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (x) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (destdir) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' != ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (x) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (file) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('; then\n') ('      case ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (destdir) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' in\n') ('      [') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('/]* | [A-Za-z]:[') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('/]*) thisdir=') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (destdir) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' ;;\n') ('      *) thisdir=') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (thisdir/) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (destdir) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' ;;\n') ('      esac\n') ('    fi\n') ('\n') ('    file=') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('ECHO ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (X) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (file) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' | ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ("Xsed -e 's%^.*/%%'") 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ('\n') ('    file=') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ('ls -ld ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (thisdir/) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (file) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' | ') (${ VSub_Name SED) (" -n 's/.*-> //p'") 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ('\n') ('  done\n')
                )
              }
            )
          ]
          spids: [15508]
        )
      spids: [15503 15507]
    )
    (FuncDef
      name: func_emit_wrapper_part2
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:func_emit_wrapper_part2_arg1)
                  op: Equal
                  rhs: {(no)}
                  spids: [15910]
                )
              ]
              spids: [15910]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Number '$1'))})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:func_emit_wrapper_part2_arg1)
                          op: Equal
                          rhs: {($ VSub_Number '$1')}
                          spids: [15929]
                        )
                      ]
                      spids: [15929]
                    )
                  ]
                  spids: [16777215 15926]
                )
              ]
              spids: [16777215 15933]
            )
            (C {($ VSub_Name '$ECHO')} 
              {
                (DQ ('\n') ("  # Usually 'no', except on cygwin/mingw when embedded into\n") 
                  ('  # the cwrapper.\n') ('  WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=') ($ VSub_Name '$func_emit_wrapper_part2_arg1') ('\n') 
                  ('  if test ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) 
                  (WRAPPER_SCRIPT_BELONGS_IN_OBJDIR) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' = ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (yes) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('; then\n') ("    # special case for '.'\n") 
                  ('    if test ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) 
                  (thisdir) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' = ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (.) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('; then\n') ('      thisdir=') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) (pwd) (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ('\n') ('    fi\n') 
                  ('    # remove .libs from thisdir\n') ('    case ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (thisdir) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' in\n') ('    *[') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('/]') ($ VSub_Name '$objdir') (' ) thisdir=') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('ECHO ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (X) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (thisdir) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' | ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ("Xsed -e 's%[") 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('/][^') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('/]*') (Lit_Other '$') ("%%'") 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) (' ;;\n') ('    ') ($ VSub_Name '$objdir') (' )   thisdir=. ;;\n') ('    esac\n') ('  fi\n') ('\n') 
                  ('  # Try to get the absolute directory name.\n') ('  absdir=') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ('cd ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (thisdir) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' && pwd') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ('\n') ('  test -n ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (absdir) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' && thisdir=') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (absdir) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('\n')
                )
              }
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(test)} {(DQ ($ VSub_Name '$fast_install'))} {(Lit_Other '=')} {(yes)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {($ VSub_Name '$ECHO')} 
                      {
                        (DQ ("  program=lt-'") ($ VSub_Name '$outputname') ("'") ($ VSub_Name '$exeext') 
                          ('\n') ('  progdir=') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (thisdir/) ($ VSub_Name '$objdir') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('\n') ('\n') 
                          ('  if test ! -f ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) 
                          (progdir/) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (program) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' ||\n') ('     { file=') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ('ls -1dt ') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (progdir/) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (program) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' ') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (progdir/../) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (program) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' 2>/dev/null | ') (${ VSub_Name SED) 
                          (' 1q') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ('; ') 
                          (EscapedLiteralPart
                            token: <Lit_EscapedChar '\\\\'>
                          ) ('\n') ('       test ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (X) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (file) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' != ') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (X) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (progdir/) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (program) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('; }; then\n') ('\n') ('    file=') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) 
                          (-) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (program) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('\n') ('\n') ('    if test ! -d ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (progdir) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('; then\n') ('      ') 
                          ($ VSub_Name '$MKDIR') (' ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (progdir) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('\n') ('    else\n') ('      ') 
                          ($ VSub_Name '$RM') (' ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (progdir/) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (file) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('\n') ('    fi')
                        )
                      }
                    )
                    (C {($ VSub_Name '$ECHO')} 
                      {
                        (DQ ('\n') ('    # relink executable if necessary\n') ('    if test -n ') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (relink_command) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('; then\n') ('      if relink_command_output=') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                          ('eval ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('relink_command 2>&1') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ('; then :\n') ('      else\n') ('\t') ($ VSub_Name '$ECHO') (' ') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (relink_command_output) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' >&2\n') ('\t') ($ VSub_Name '$RM') (' ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (progdir/) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (file) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('\n') ('\texit 1\n') ('      fi\n') ('    fi\n') ('\n') ('    ') ($ VSub_Name '$MV') (' ') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (progdir/) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (file) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' ') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (progdir/) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (program) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' 2>/dev/null ||\n') ('    { ') 
                          ($ VSub_Name '$RM') (' ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (progdir/) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (program) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (';\n') ('      ') ($ VSub_Name '$MV') (' ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (progdir/) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (file) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (progdir/) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (program) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('; }\n') ('    ') ($ VSub_Name '$RM') (' ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (progdir/) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (file) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('\n') ('  fi')
                        )
                      }
                    )
                  ]
                  spids: [16777215 16053]
                )
              ]
              else_action: [
                (C {($ VSub_Name '$ECHO')} 
                  {
                    (DQ ("  program='") ($ VSub_Name '$outputname') ("'\n") ('  progdir=') 
                      (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (thisdir/) ($ VSub_Name '$objdir') 
                      (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('\n')
                    )
                  }
                )
              ]
              spids: [16262 16282]
            )
            (C {($ VSub_Name '$ECHO')} 
              {
                (DQ ('\n') ('  if test -f ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (progdir/) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (program) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('; then')
                )
              }
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (AndOr
                          children: [
                            (C {(test)} {(DQ ($ VSub_Name '$shlibpath_overrides_runpath'))} 
                              {(Lit_Other '=')} {(yes)}
                            )
                            (AndOr
                              children: [
                                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$shlibpath_var'))})
                                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$temp_rpath'))})
                              ]
                              op_id: Op_DAmp
                            )
                          ]
                          op_id: Op_DAmp
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {($ VSub_Name '$ECHO')} 
                      {
                        (DQ ('    # Add our own library path to ') ($ VSub_Name '$shlibpath_var') 
                          ('\n') ('    ') ($ VSub_Name '$shlibpath_var') ('=') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                          ($ VSub_Name '$temp_rpath') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ($ VSub_Name '$shlibpath_var') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('\n') ('\n') ('    # Some systems cannot cope with colon-terminated ') ($ VSub_Name '$shlibpath_var') 
                          ('\n') ('    # The second colon is a workaround for a bug in BeOS R4 sed\n') ('    ') 
                          ($ VSub_Name '$shlibpath_var') ('=') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('ECHO ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (X) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ($ VSub_Name '$shlibpath_var') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' | ') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ("Xsed -e 's/::*") (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ("//'") 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ('\n') ('\n') ('    export ') ($ VSub_Name '$shlibpath_var') ('\n')
                        )
                      }
                    )
                  ]
                  spids: [16777215 16340]
                )
              ]
              spids: [16777215 16389]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$dllsearchpath'))})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {($ VSub_Name '$ECHO')} 
                      {
                        (DQ ('    # Add the dll search path components to the executable PATH\n') 
                          ('    PATH=') ($ VSub_Name '$dllsearchpath') (':') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('PATH\n')
                        )
                      }
                    )
                  ]
                  spids: [16777215 16408]
                )
              ]
              spids: [16777215 16424]
            )
            (C {($ VSub_Name '$ECHO')} 
              {
                (DQ ('    if test ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (libtool_execute_magic) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' != ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ($ VSub_Name '$magic') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('; then\n') 
                  ('      # Run the actual program with our arguments.\n')
                )
              }
            )
            (Case
              to_match: {($ VSub_Name '$host')}
              arms: [
                (case_arm
                  pat_list: [
                    {(Lit_Other '*') (-) (Lit_Other '*') (-mingw)}
                    {(Lit_Other '*') (-) (Lit_Other '*') (-os2) (Lit_Other '*')}
                    {(Lit_Other '*') (-cegcc) (Lit_Other '*')}
                  ]
                  action: [
                    (C {($ VSub_Name '$ECHO')} 
                      {
                        (DQ ('      exec ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (progdir) (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) 
                          (EscapedLiteralPart
                            token: <Lit_EscapedChar '\\\\'>
                          ) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (program) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{1+') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('@') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('}\n')
                        )
                      }
                    )
                  ]
                  spids: [16457 16475 16502 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*')}]
                  action: [
                    (C {($ VSub_Name '$ECHO')} 
                      {
                        (DQ ('      exec ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (progdir/) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (program) 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{1+') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('@') 
                          (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('}\n')
                        )
                      }
                    )
                  ]
                  spids: [16506 16507 16532 16777215]
                )
              ]
              spids: [16446 16450 16535]
            )
            (C {($ VSub_Name '$ECHO')} 
              {
                (DQ ('      ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('ECHO ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('0: cannot exec ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('program ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('*') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' 1>&2\n') ('      exit 1\n') ('    fi\n') ('  else\n') ("    # The program doesn't exist.\n") ('    ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('ECHO ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('0: error: ') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (progdir/) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ("program' does not exist") (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' 1>&2\n') ('    ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('ECHO ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('This script is just a wrapper for ') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (program.) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' 1>&2\n') ('    ') ($ VSub_Name '$ECHO') 
                  (' ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('See the ') ($ VSub_Name '$PACKAGE') 
                  (' documentation for more information.') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' 1>&2\n') ('    exit 1\n') ('  fi\n') (fi)
                )
              }
            )
          ]
          spids: [15907]
        )
      spids: [15902 15906]
    )
    (FuncDef
      name: func_emit_wrapper
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:func_emit_wrapper_arg1)
                  op: Equal
                  rhs: {(no)}
                  spids: [16653]
                )
              ]
              spids: [16653]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Number '$1'))})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:func_emit_wrapper_arg1)
                          op: Equal
                          rhs: {($ VSub_Number '$1')}
                          spids: [16672]
                        )
                      ]
                      spids: [16672]
                    )
                  ]
                  spids: [16777215 16669]
                )
              ]
              spids: [16777215 16676]
            )
            (C {(func_emit_wrapper_part1)} {(DQ (${ VSub_Name func_emit_wrapper_arg1))})
            (C {(func_emit_wrapper_part2)} {(DQ (${ VSub_Name func_emit_wrapper_arg1))})
          ]
          spids: [16650]
        )
      spids: [16645 16649]
    )
    (FuncDef
      name: func_to_host_path
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:func_to_host_path_result)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$1'))}
                  spids: [16780]
                )
              ]
              spids: [16780]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Number '$1'))})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Case
                      to_match: {($ VSub_Name '$host')}
                      arms: [
                        (case_arm
                          pat_list: [{(Lit_Other '*') (mingw) (Lit_Other '*')}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:lt_sed_naive_backslashify)
                                  op: Equal
                                  rhs: {(SQ <'s|\\\\\\\\*|\\\\|g;s|/|\\\\|g;s|\\\\|\\\\\\\\|g'>)}
                                  spids: [16815]
                                )
                              ]
                              spids: [16815]
                            )
                            (Case
                              to_match: {($ VSub_Name '$build')}
                              arms: [
                                (case_arm
                                  pat_list: [{(Lit_Other '*') (mingw) (Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:lt_sed_strip_trailing_spaces)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ('s/[ ]*') 
                                                (EscapedLiteralPart
                                                  token: <Lit_EscapedChar '\\$'>
                                                ) (//)
                                              )
                                            }
                                          spids: [16842]
                                        )
                                      ]
                                      spids: [16842]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:func_to_host_path_tmp1)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (AndOr
                                                        children: [
                                                          (Subshell
                                                            child: 
                                                              (Pipeline
                                                                children: [
                                                                  (C {(cmd)} {(//c)} {(echo)} 
                                                                    {(DQ ($ VSub_Number '$1'))}
                                                                  )
                                                                  (C {($ VSub_Name '$SED')} {(-e)} 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name 
'$lt_sed_strip_trailing_spaces'
                                                                        )
                                                                      )
                                                                    }
                                                                  )
                                                                ]
                                                                negated: False
                                                              )
                                                            redirects: [
                                                              (Redir
                                                                op_id: Redir_Great
                                                                fd: 2
                                                                arg_word: {(/dev/null)}
                                                                spids: [16877]
                                                              )
                                                            ]
                                                            spids: [16852 16875]
                                                          )
                                                          (C {(echo)} {(DQ )})
                                                        ]
                                                        op_id: Op_DPipe
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [16851 16886]
                                              )
                                            }
                                          spids: [16850]
                                        )
                                      ]
                                      spids: [16850]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:func_to_host_path_result)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (Pipeline
                                                        children: [
                                                          (C {(echo)} 
                                                            {
                                                              (DQ 
                                                                ($ VSub_Name 
'$func_to_host_path_tmp1'
                                                                )
                                                              )
                                                            }
                                                          )
                                                          (C {($ VSub_Name '$SED')} {(-e)} 
                                                            {
                                                              (DQ 
                                                                ($ VSub_Name 
'$lt_sed_naive_backslashify'
                                                                )
                                                              )
                                                            }
                                                          )
                                                        ]
                                                        negated: False
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [16890 16907]
                                              )
                                            }
                                          spids: [16889]
                                        )
                                      ]
                                      spids: [16889]
                                    )
                                  ]
                                  spids: [16828 16832 16910 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*') (cygwin) (Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:func_to_host_path_tmp1)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (C {(cygpath)} {(-w)} {(DQ ($ VSub_Number '$1'))})
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [16921 16929]
                                              )
                                            }
                                          spids: [16920]
                                        )
                                      ]
                                      spids: [16920]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:func_to_host_path_result)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (Pipeline
                                                        children: [
                                                          (C {(echo)} 
                                                            {
                                                              (DQ 
                                                                ($ VSub_Name 
'$func_to_host_path_tmp1'
                                                                )
                                                              )
                                                            }
                                                          )
                                                          (C {($ VSub_Name '$SED')} {(-e)} 
                                                            {
                                                              (DQ 
                                                                ($ VSub_Name 
'$lt_sed_naive_backslashify'
                                                                )
                                                              )
                                                            }
                                                          )
                                                        ]
                                                        negated: False
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [16933 16950]
                                              )
                                            }
                                          spids: [16932]
                                        )
                                      ]
                                      spids: [16932]
                                    )
                                  ]
                                  spids: [16913 16917 16953 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:func_to_host_path_tmp1)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (SimpleCommand
                                                        words: [
                                                          {(winepath)}
                                                          {(-w)}
                                                          {(DQ ($ VSub_Number '$1'))}
                                                        ]
                                                        redirects: [
                                                          (Redir
                                                            op_id: Redir_Great
                                                            fd: 2
                                                            arg_word: {(/dev/null)}
                                                            spids: [16999]
                                                          )
                                                        ]
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [16990 17001]
                                              )
                                            }
                                          spids: [16989]
                                        )
                                      ]
                                      spids: [16989]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(DQ ($ VSub_QMark '$?'))} {(-eq)} {(0)})
                                                    (C {(test)} {(-n)} 
                                                      {(DQ (${ VSub_Name func_to_host_path_tmp1))}
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:func_to_host_path_result)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (CommandSubPart
                                                        command_list: 
                                                          (CommandList
                                                            children: [
                                                              (Pipeline
                                                                children: [
                                                                  (C {(echo)} 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name 
'$func_to_host_path_tmp1'
                                                                        )
                                                                      )
                                                                    }
                                                                  )
                                                                  (C {($ VSub_Name '$SED')} {(-e)} 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name 
'$lt_sed_naive_backslashify'
                                                                        )
                                                                      )
                                                                    }
                                                                  )
                                                                ]
                                                                negated: False
                                                              )
                                                            ]
                                                          )
                                                        left_token: <Left_Backtick '`'>
                                                        spids: [17033 17050]
                                                      )
                                                    }
                                                  spids: [17032]
                                                )
                                              ]
                                              spids: [17032]
                                            )
                                          ]
                                          spids: [16777215 17029]
                                        )
                                      ]
                                      else_action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:func_to_host_path_result)
                                              op: Equal
                                              rhs: {(DQ )}
                                              spids: [17060]
                                            )
                                          ]
                                          spids: [17060]
                                        )
                                      ]
                                      spids: [17053 17065]
                                    )
                                  ]
                                  spids: [16956 16958 17068 16777215]
                                )
                              ]
                              spids: [16821 16825 17071]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(-z)} 
                                          {(DQ ($ VSub_Name '$func_to_host_path_result'))}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(func_error)} 
                                      {(DQ ('Could not determine host path corresponding to'))}
                                    )
                                    (C {(func_error)} {(DQ ("  '") ($ VSub_Number '$1') ("'"))})
                                    (C {(func_error)} 
                                      {
                                        (DQ ('Continuing, but uninstalled executables may not work.'))
                                      }
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:func_to_host_path_result)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Number '$1'))}
                                          spids: [17116]
                                        )
                                      ]
                                      spids: [17116]
                                    )
                                  ]
                                  spids: [16777215 17086]
                                )
                              ]
                              spids: [16777215 17122]
                            )
                          ]
                          spids: [16808 16812 17125 16777215]
                        )
                      ]
                      spids: [16801 16805 17128]
                    )
                  ]
                  spids: [16777215 16798]
                )
              ]
              spids: [16777215 17131]
            )
          ]
          spids: [16777]
        )
      spids: [16772 16776]
    )
    (FuncDef
      name: func_to_host_pathlist
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:func_to_host_pathlist_result)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number '$1'))}
                  spids: [17204]
                )
              ]
              spids: [17204]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Number '$1'))})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Case
                      to_match: {($ VSub_Name '$host')}
                      arms: [
                        (case_arm
                          pat_list: [{(Lit_Other '*') (mingw) (Lit_Other '*')}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:lt_sed_naive_backslashify)
                                  op: Equal
                                  rhs: {(SQ <'s|\\\\\\\\*|\\\\|g;s|/|\\\\|g;s|\\\\|\\\\\\\\|g'>)}
                                  spids: [17239]
                                )
                              ]
                              spids: [17239]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:func_to_host_pathlist_tmp2)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Number '$1'))}
                                  spids: [17257]
                                )
                              ]
                              spids: [17257]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:func_to_host_pathlist_tmp1)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (Pipeline
                                                children: [
                                                  (C {(echo)} 
                                                    {
                                                      (DQ ($ VSub_Name '$func_to_host_pathlist_tmp2'))
                                                    }
                                                  )
                                                  (C {($ VSub_Name '$SED')} {(-e)} {(SQ <'s|^:*||'>)} 
                                                    {(-e)} {(SQ <'s|:*$||'>)}
                                                  )
                                                ]
                                                negated: False
                                              )
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [17272 17295]
                                      )
                                    }
                                  spids: [17271]
                                )
                              ]
                              spids: [17271]
                            )
                            (Case
                              to_match: {($ VSub_Name '$build')}
                              arms: [
                                (case_arm
                                  pat_list: [{(Lit_Other '*') (mingw) (Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:lt_sed_strip_trailing_spaces)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ('s/[ ]*') 
                                                (EscapedLiteralPart
                                                  token: <Lit_EscapedChar '\\$'>
                                                ) (//)
                                              )
                                            }
                                          spids: [17319]
                                        )
                                      ]
                                      spids: [17319]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:func_to_host_pathlist_tmp2)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (AndOr
                                                        children: [
                                                          (Subshell
                                                            child: 
                                                              (Pipeline
                                                                children: [
                                                                  (C {(cmd)} {(//c)} {(echo)} 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name 
'$func_to_host_pathlist_tmp1'
                                                                        )
                                                                      )
                                                                    }
                                                                  )
                                                                  (C {($ VSub_Name '$SED')} {(-e)} 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name 
'$lt_sed_strip_trailing_spaces'
                                                                        )
                                                                      )
                                                                    }
                                                                  )
                                                                ]
                                                                negated: False
                                                              )
                                                            redirects: [
                                                              (Redir
                                                                op_id: Redir_Great
                                                                fd: 2
                                                                arg_word: {(/dev/null)}
                                                                spids: [17354]
                                                              )
                                                            ]
                                                            spids: [17329 17352]
                                                          )
                                                          (C {(echo)} {(DQ )})
                                                        ]
                                                        op_id: Op_DPipe
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [17328 17363]
                                              )
                                            }
                                          spids: [17327]
                                        )
                                      ]
                                      spids: [17327]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:func_to_host_pathlist_result)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (Pipeline
                                                        children: [
                                                          (C {(echo)} 
                                                            {
                                                              (DQ 
                                                                ($ VSub_Name 
'$func_to_host_pathlist_tmp2'
                                                                )
                                                              )
                                                            }
                                                          )
                                                          (C {($ VSub_Name '$SED')} {(-e)} 
                                                            {
                                                              (DQ 
                                                                ($ VSub_Name 
'$lt_sed_naive_backslashify'
                                                                )
                                                              )
                                                            }
                                                          )
                                                        ]
                                                        negated: False
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [17367 17384]
                                              )
                                            }
                                          spids: [17366]
                                        )
                                      ]
                                      spids: [17366]
                                    )
                                  ]
                                  spids: [17305 17309 17387 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*') (cygwin) (Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:func_to_host_pathlist_tmp2)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (C {(cygpath)} {(-w)} {(-p)} 
                                                        {
                                                          (DQ 
                                                            ($ VSub_Name 
'$func_to_host_pathlist_tmp1'
                                                            )
                                                          )
                                                        }
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [17398 17408]
                                              )
                                            }
                                          spids: [17397]
                                        )
                                      ]
                                      spids: [17397]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:func_to_host_pathlist_result)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (Pipeline
                                                        children: [
                                                          (C {(echo)} 
                                                            {
                                                              (DQ 
                                                                ($ VSub_Name 
'$func_to_host_pathlist_tmp2'
                                                                )
                                                              )
                                                            }
                                                          )
                                                          (C {($ VSub_Name '$SED')} {(-e)} 
                                                            {
                                                              (DQ 
                                                                ($ VSub_Name 
'$lt_sed_naive_backslashify'
                                                                )
                                                              )
                                                            }
                                                          )
                                                        ]
                                                        negated: False
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [17412 17429]
                                              )
                                            }
                                          spids: [17411]
                                        )
                                      ]
                                      spids: [17411]
                                    )
                                  ]
                                  spids: [17390 17394 17432 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:func_to_host_pathlist_result)
                                          op: Equal
                                          rhs: {(DQ )}
                                          spids: [17444]
                                        )
                                      ]
                                      spids: [17444]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:func_to_host_pathlist_oldIFS)
                                          op: Equal
                                          rhs: {($ VSub_Name '$IFS')}
                                          spids: [17449]
                                        )
                                      ]
                                      spids: [17449]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:IFS)
                                          op: Equal
                                          rhs: {(Lit_Other ':')}
                                          spids: [17453]
                                        )
                                      ]
                                      spids: [17453]
                                    )
                                    (ForEach
                                      iter_name: func_to_host_pathlist_f
                                      iter_words: [{($ VSub_Name '$func_to_host_pathlist_tmp1')}]
                                      do_arg_iter: False
                                      body: 
                                        (DoGroup
                                          children: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:IFS)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$func_to_host_pathlist_oldIFS')}
                                                  spids: [17470]
                                                )
                                              ]
                                              spids: [17470]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(-n)} 
                                                          {
                                                            (DQ 
                                                              ($ VSub_Name '$func_to_host_pathlist_f')
                                                            )
                                                          }
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (C {(func_to_host_path)} 
                                                      {(DQ ($ VSub_Name '$func_to_host_pathlist_f'))}
                                                    )
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (C {(test)} {(-n)} 
                                                                  {
                                                                    (DQ 
                                                                      ($ VSub_Name 
'$func_to_host_path_result'
                                                                      )
                                                                    )
                                                                  }
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (If
                                                              arms: [
                                                                (if_arm
                                                                  cond: [
                                                                    (Sentence
                                                                      child: 
                                                                        (C {(test)} {(-z)} 
                                                                          {
                                                                            (DQ 
                                                                              ($ VSub_Name 
'$func_to_host_pathlist_result'
                                                                              )
                                                                            )
                                                                          }
                                                                        )
                                                                      terminator: <Op_Semi ';'>
                                                                    )
                                                                  ]
                                                                  action: [
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: 
                                                                            (LhsName
                                                                              name: 
func_to_host_pathlist_result
                                                                            )
                                                                          op: Equal
                                                                          rhs: 
                                                                            {
                                                                              (DQ 
                                                                                ($ VSub_Name 
'$func_to_host_path_result'
                                                                                )
                                                                              )
                                                                            }
                                                                          spids: [17526]
                                                                        )
                                                                      ]
                                                                      spids: [17526]
                                                                    )
                                                                  ]
                                                                  spids: [16777215 17523]
                                                                )
                                                              ]
                                                              else_action: [
                                                                (Assignment
                                                                  keyword: Assign_None
                                                                  pairs: [
                                                                    (assign_pair
                                                                      lhs: 
                                                                        (LhsName
                                                                          name: 
func_to_host_pathlist_result
                                                                        )
                                                                      op: Equal
                                                                      rhs: 
                                                                        {
                                                                          (DQ 
                                                                            ($ VSub_Name 
'$func_to_host_pathlist_result'
                                                                            ) (';') ($ VSub_Name '$func_to_host_path_result')
                                                                          )
                                                                        }
                                                                      spids: [17535]
                                                                    )
                                                                  ]
                                                                  spids: [17535]
                                                                )
                                                              ]
                                                              spids: [17532 17543]
                                                            )
                                                          ]
                                                          spids: [16777215 17508]
                                                        )
                                                      ]
                                                      spids: [16777215 17546]
                                                    )
                                                  ]
                                                  spids: [16777215 17486]
                                                )
                                              ]
                                              spids: [16777215 17549]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:IFS)
                                                  op: Equal
                                                  rhs: {(Lit_Other ':')}
                                                  spids: [17552]
                                                )
                                              ]
                                              spids: [17552]
                                            )
                                          ]
                                          spids: [17467 17556]
                                        )
                                      spids: [17462 17465]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:IFS)
                                          op: Equal
                                          rhs: {($ VSub_Name '$func_to_host_pathlist_oldIFS')}
                                          spids: [17559]
                                        )
                                      ]
                                      spids: [17559]
                                    )
                                  ]
                                  spids: [17435 17437 17563 16777215]
                                )
                              ]
                              spids: [17298 17302 17566]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(-z)} 
                                          {(DQ ($ VSub_Name '$func_to_host_pathlist_result'))}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(func_error)} 
                                      {
                                        (DQ ('Could not determine the host path(s) corresponding to'))
                                      }
                                    )
                                    (C {(func_error)} {(DQ ("  '") ($ VSub_Number '$1') ("'"))})
                                    (C {(func_error)} 
                                      {
                                        (DQ ('Continuing, but uninstalled executables may not work.'))
                                      }
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:lt_replace_pathsep_nix_to_dos)
                                          op: Equal
                                          rhs: {(DQ ('s|:|;|g'))}
                                          spids: [17627]
                                        )
                                      ]
                                      spids: [17627]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:func_to_host_pathlist_result)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (Pipeline
                                                        children: [
                                                          (C {(echo)} 
                                                            {
                                                              (DQ 
                                                                ($ VSub_Name 
'$func_to_host_pathlist_tmp1'
                                                                )
                                                              )
                                                            }
                                                          )
                                                          (C {($ VSub_Name '$SED')} {(-e)} 
                                                            {
                                                              (DQ 
                                                                ($ VSub_Name 
'$lt_replace_pathsep_nix_to_dos'
                                                                )
                                                              )
                                                            }
                                                          )
                                                        ]
                                                        negated: False
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [17634 17651]
                                              )
                                            }
                                          spids: [17633]
                                        )
                                      ]
                                      spids: [17633]
                                    )
                                  ]
                                  spids: [16777215 17581]
                                )
                              ]
                              spids: [16777215 17654]
                            )
                            (Case
                              to_match: {(DQ ($ VSub_Number '$1'))}
                              arms: [
                                (case_arm
                                  pat_list: [{(Lit_Other ':') (Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:func_to_host_pathlist_result)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ (';') ($ VSub_Name '$func_to_host_pathlist_result'))
                                            }
                                          spids: [17675]
                                        )
                                      ]
                                      spids: [17675]
                                    )
                                  ]
                                  spids: [17670 17673 17682 16777215]
                                )
                              ]
                              spids: [17661 17667 17685]
                            )
                            (Case
                              to_match: {(DQ ($ VSub_Number '$1'))}
                              arms: [
                                (case_arm
                                  pat_list: [{(Lit_Other '*') (Lit_Other ':')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:func_to_host_pathlist_result)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$func_to_host_pathlist_result') (';'))
                                            }
                                          spids: [17702]
                                        )
                                      ]
                                      spids: [17702]
                                    )
                                  ]
                                  spids: [17697 17700 17709 16777215]
                                )
                              ]
                              spids: [17688 17694 17712]
                            )
                          ]
                          spids: [17232 17236 17715 16777215]
                        )
                      ]
                      spids: [17225 17229 17718]
                    )
                  ]
                  spids: [16777215 17222]
                )
              ]
              spids: [16777215 17721]
            )
          ]
          spids: [17201]
        )
      spids: [17196 17200]
    )
    (FuncDef
      name: func_emit_cwrapperexe_src
      body: 
        (BraceGroup
          children: [
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (HereDoc
                  op_id: Redir_DLess
                  fd: 16777215
                  body: 
                    {
                      (DQ ('\n') ('/* ') ($ VSub_Name '$cwrappersource') 
                        (' - temporary wrapper executable for ') ($ VSub_Name '$objdir') (/) ($ VSub_Name '$outputname') ('\n') ('   Generated by ') 
                        ($ VSub_Name '$PROGRAM') (' (GNU ') ($ VSub_Name '$PACKAGE') ($ VSub_Name '$TIMESTAMP') (') ') ($ VSub_Name '$VERSION') ('\n') 
                        ('\n') ('   The ') ($ VSub_Name '$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* ') (Right_DoubleQuote '"') 
                        ($ VSub_Name '$SHELL') (' ') ($ VSub_Name '$output') (Right_DoubleQuote '"') (',\n') 
                        ('   but could eventually absorb all of the scripts functionality and\n') ('   exec ') ($ VSub_Name '$objdir') (/) ($ VSub_Name '$outputname') (' directly.\n') ('*/\n')
                      )
                    }
                  do_expansion: True
                  here_end: EOF
                  was_filled: True
                  spids: [17751]
                )
              ]
            )
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (HereDoc
                  op_id: Redir_DLess
                  fd: 16777215
                  body: 
                    {('#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_expansion: False
                  here_end: EOF
                  was_filled: True
                  spids: [17797]
                )
              ]
            )
            (Pipeline
              children: [
                (C {(func_emit_wrapper_part1)} {(yes)})
                (C {($ VSub_Name '$SED')} {(-e)} {(SQ <'s/\\([\\\\"]\\)/\\\\\\1/g'>)} {(-e)} 
                  {(SQ <'s/^/  "/'>)} {(-e)} {(SQ <'s/$/\\\\n"/'>)}
                )
              ]
              negated: False
            )
            (C {(echo)} {(DQ (';'))})
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (HereDoc
                  op_id: Redir_DLess
                  fd: 16777215
                  body: {(DQ ('\n') ('static const char *script_text_part2 =\n'))}
                  do_expansion: True
                  here_end: EOF
                  was_filled: True
                  spids: [17843]
                )
              ]
            )
            (Pipeline
              children: [
                (C {(func_emit_wrapper_part2)} {(yes)})
                (C {($ VSub_Name '$SED')} {(-e)} {(SQ <'s/\\([\\\\"]\\)/\\\\\\1/g'>)} {(-e)} 
                  {(SQ <'s/^/  "/'>)} {(-e)} {(SQ <'s/$/\\\\n"/'>)}
                )
              ]
              negated: False
            )
            (C {(echo)} {(DQ (';'))})
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (HereDoc
                  op_id: Redir_DLess
                  fd: 16777215
                  body: 
                    {
                      (DQ ('const char * MAGIC_EXE = ') (Right_DoubleQuote '"') 
                        ($ VSub_Name '$magic_exe') (Right_DoubleQuote '"') (';\n') ('const char * LIB_PATH_VARNAME = ') (Right_DoubleQuote '"') 
                        ($ VSub_Name '$shlibpath_var') (Right_DoubleQuote '"') (';\n')
                      )
                    }
                  do_expansion: True
                  here_end: EOF
                  was_filled: True
                  spids: [17890]
                )
              ]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (AndOr
                          children: [
                            (C {(test)} {(DQ ($ VSub_Name '$shlibpath_overrides_runpath'))} 
                              {(Lit_Other '=')} {(yes)}
                            )
                            (AndOr
                              children: [
                                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$shlibpath_var'))})
                                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$temp_rpath'))})
                              ]
                              op_id: Op_DAmp
                            )
                          ]
                          op_id: Op_DAmp
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(func_to_host_pathlist)} {(DQ ($ VSub_Name '$temp_rpath'))})
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('const char * LIB_PATH_VALUE   = ') (Right_DoubleQuote '"') 
                                ($ VSub_Name '$func_to_host_pathlist_result') (Right_DoubleQuote '"') (';\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [17951]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 17939]
                )
              ]
              else_action: [
                (SimpleCommand
                  words: [{(cat)}]
                  redirects: [
                    (HereDoc
                      op_id: Redir_DLess
                      fd: 16777215
                      body: {('const char * LIB_PATH_VALUE   = "";\n')}
                      do_expansion: False
                      here_end: EOF
                      was_filled: True
                      spids: [17966]
                    )
                  ]
                )
              ]
              spids: [17961 17972]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$dllsearchpath'))})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(func_to_host_pathlist)} {(DQ ($ VSub_Name '$dllsearchpath') (':'))})
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('const char * EXE_PATH_VARNAME = ') (Right_DoubleQuote '"') (PATH) 
                                (Right_DoubleQuote '"') (';\n') ('const char * EXE_PATH_VALUE   = ') (Right_DoubleQuote '"') 
                                ($ VSub_Name '$func_to_host_pathlist_result') (Right_DoubleQuote '"') (';\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [18000]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 17987]
                )
              ]
              else_action: [
                (SimpleCommand
                  words: [{(cat)}]
                  redirects: [
                    (HereDoc
                      op_id: Redir_DLess
                      fd: 16777215
                      body: 
                        {('const char * EXE_PATH_VARNAME = "";\n') 
                          ('const char * EXE_PATH_VALUE   = "";\n')
                        }
                      do_expansion: False
                      here_end: EOF
                      was_filled: True
                      spids: [18020]
                    )
                  ]
                )
              ]
              spids: [18015 18026]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(test)} {(DQ ($ VSub_Name '$fast_install'))} {(Lit_Other '=')} {(yes)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {
                              (DQ ('const char * TARGET_PROGRAM_NAME = ') (Right_DoubleQuote '"') (lt-) 
                                ($ VSub_Name '$outputname') (Right_DoubleQuote '"') ('; /* hopefully, no .exe */\n')
                              )
                            }
                          do_expansion: True
                          here_end: EOF
                          was_filled: True
                          spids: [18048]
                        )
                      ]
                    )
                  ]
                  spids: [16777215 18043]
                )
              ]
              else_action: [
                (SimpleCommand
                  words: [{(cat)}]
                  redirects: [
                    (HereDoc
                      op_id: Redir_DLess
                      fd: 16777215
                      body: 
                        {
                          (DQ ('const char * TARGET_PROGRAM_NAME = ') (Right_DoubleQuote '"') 
                            ($ VSub_Name '$outputname') (Right_DoubleQuote '"') ('; /* hopefully, no .exe */\n')
                          )
                        }
                      do_expansion: True
                      here_end: EOF
                      was_filled: True
                      spids: [18064]
                    )
                  ]
                )
              ]
              spids: [18059 18074]
            )
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (HereDoc
                  op_id: Redir_DLess
                  fd: 16777215
                  body: 
                    {('\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_expansion: False
                  here_end: EOF
                  was_filled: True
                  spids: [18081]
                )
              ]
            )
            (Case
              to_match: {(DQ ($ VSub_Name '$host'))}
              arms: [
                (case_arm
                  pat_list: [
                    {(Lit_Other '*') (mingw) (Lit_Other '*')}
                    {(Lit_Other '*') (cygwin) (Lit_Other '*')}
                  ]
                  action: [(C {(echo)} {(DQ ('          setmode(1,_O_BINARY);'))})]
                  spids: [18096 18106 18120 16777215]
                )
              ]
              spids: [18087 18093 18123]
            )
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (HereDoc
                  op_id: Redir_DLess
                  fd: 16777215
                  body: 
                    {('\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_expansion: False
                  here_end: EOF
                  was_filled: True
                  spids: [18129]
                )
              ]
            )
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (HereDoc
                  op_id: Redir_DLess
                  fd: 16777215
                  body: 
                    {
                      (DQ ('  newargz[0] =\n') 
                        ('    XMALLOC (char, (strlen (actual_cwrapper_path) +\n') ('\t\t    strlen (') (Right_DoubleQuote '"') ($ VSub_Name '$objdir') (Right_DoubleQuote '"') 
                        (') + 1 + strlen (actual_cwrapper_name) + 1));\n') ('  strcpy (newargz[0], actual_cwrapper_path);\n') ('  strcat (newargz[0], ') (Right_DoubleQuote '"') 
                        ($ VSub_Name '$objdir') (Right_DoubleQuote '"') (');\n') ('  strcat (newargz[0], ') (Right_DoubleQuote '"') (/) 
                        (Right_DoubleQuote '"') (');\n')
                      )
                    }
                  do_expansion: True
                  here_end: EOF
                  was_filled: True
                  spids: [18138]
                )
              ]
            )
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (HereDoc
                  op_id: Redir_DLess
                  fd: 16777215
                  body: 
                    {("  /* 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_expansion: False
                  here_end: EOF
                  was_filled: True
                  spids: [18164]
                )
              ]
            )
            (Case
              to_match: {($ VSub_Name '$host_os')}
              arms: [
                (case_arm
                  pat_list: [{(mingw) (Lit_Other '*')}]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {('  {\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_expansion: False
                          here_end: EOF
                          was_filled: True
                          spids: [18185]
                        )
                      ]
                    )
                  ]
                  spids: [18178 18180 18191 16777215]
                )
              ]
              spids: [18171 18175 18194]
            )
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (HereDoc
                  op_id: Redir_DLess
                  fd: 16777215
                  body: 
                    {('  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_expansion: False
                  here_end: EOF
                  was_filled: True
                  spids: [18200]
                )
              ]
            )
            (Case
              to_match: {($ VSub_Name '$host_os')}
              arms: [
                (case_arm
                  pat_list: [{(mingw) (Lit_Other '*')}]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {("  /* 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_expansion: False
                          here_end: EOF
                          was_filled: True
                          spids: [18221]
                        )
                      ]
                    )
                  ]
                  spids: [18214 18216 18227 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*')}]
                  action: [
                    (SimpleCommand
                      words: [{(cat)}]
                      redirects: [
                        (HereDoc
                          op_id: Redir_DLess
                          fd: 16777215
                          body: 
                            {('  execv (lt_argv_zero, newargz);\n') 
                              ('  return rval; /* =127, but avoids unused variable warning */\n')
                            }
                          do_expansion: False
                          here_end: EOF
                          was_filled: True
                          spids: [18236]
                        )
                      ]
                    )
                  ]
                  spids: [18230 18231 18242 16777215]
                )
              ]
              spids: [18207 18211 18245]
            )
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (HereDoc
                  op_id: Redir_DLess
                  fd: 16777215
                  body: 
                    {('}\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_expansion: False
                  here_end: EOF
                  was_filled: True
                  spids: [18251]
                )
              ]
            )
          ]
          spids: [17746]
        )
      spids: [17741 17745]
    )
    (FuncDef
      name: func_mode_link
      body: 
        (BraceGroup
          children: [
            (C {($ VSub_Name '$opt_debug')})
            (Case
              to_match: {($ VSub_Name '$host')}
              arms: [
                (case_arm
                  pat_list: [
                    {(Lit_Other '*') (-) (Lit_Other '*') (-cygwin) (Lit_Other '*')}
                    {(Lit_Other '*') (-) (Lit_Other '*') (-mingw) (Lit_Other '*')}
                    {(Lit_Other '*') (-) (Lit_Other '*') (-pw32) (Lit_Other '*')}
                    {(Lit_Other '*') (-) (Lit_Other '*') (-os2) (Lit_Other '*')}
                    {(Lit_Other '*') (-cegcc) (Lit_Other '*')}
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:allow_undefined)
                          op: Equal
                          rhs: {(yes)}
                          spids: [18362]
                        )
                      ]
                      spids: [18362]
                    )
                  ]
                  spids: [18283 18318 18366 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*')}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:allow_undefined)
                          op: Equal
                          rhs: {(yes)}
                          spids: [18373]
                        )
                      ]
                      spids: [18373]
                    )
                  ]
                  spids: [18369 18370 18377 16777215]
                )
              ]
              spids: [18276 18280 18380]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:libtool_args)
                  op: Equal
                  rhs: {($ VSub_Name '$nonopt')}
                  spids: [18383]
                )
              ]
              spids: [18383]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:base_compile)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$nonopt') (' ') ($ VSub_At '$@'))}
                  spids: [18387]
                )
              ]
              spids: [18387]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:compile_command)
                  op: Equal
                  rhs: {($ VSub_Name '$nonopt')}
                  spids: [18395]
                )
              ]
              spids: [18395]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:finalize_command)
                  op: Equal
                  rhs: {($ VSub_Name '$nonopt')}
                  spids: [18399]
                )
              ]
              spids: [18399]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:compile_rpath)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [18404]
                )
              ]
              spids: [18404]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:finalize_rpath)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [18407]
                )
              ]
              spids: [18407]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:compile_shlibpath)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [18410]
                )
              ]
              spids: [18410]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:finalize_shlibpath)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [18413]
                )
              ]
              spids: [18413]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:convenience) op:Equal rhs:{(SQ )} spids:[18416])]
              spids: [18416]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:old_convenience)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [18419]
                )
              ]
              spids: [18419]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:deplibs) op:Equal rhs:{(SQ )} spids:[18422])]
              spids: [18422]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:old_deplibs) op:Equal rhs:{(SQ )} spids:[18425])]
              spids: [18425]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:compiler_flags)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [18428]
                )
              ]
              spids: [18428]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:linker_flags)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [18431]
                )
              ]
              spids: [18431]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:dllsearchpath)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [18434]
                )
              ]
              spids: [18434]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:lib_search_path)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: (CommandList children:[(C {(pwd)})])
                        left_token: <Left_Backtick '`'>
                        spids: [18438 18440]
                      )
                    }
                  spids: [18437]
                )
              ]
              spids: [18437]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:inst_prefix_dir)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [18443]
                )
              ]
              spids: [18443]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:new_inherited_linker_flags)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [18446]
                )
              ]
              spids: [18446]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:avoid_version)
                  op: Equal
                  rhs: {(no)}
                  spids: [18450]
                )
              ]
              spids: [18450]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:dlfiles) op:Equal rhs:{(SQ )} spids:[18454])]
              spids: [18454]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:dlprefiles) op:Equal rhs:{(SQ )} spids:[18457])]
              spids: [18457]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:dlself) op:Equal rhs:{(no)} spids:[18460])]
              spids: [18460]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:export_dynamic)
                  op: Equal
                  rhs: {(no)}
                  spids: [18464]
                )
              ]
              spids: [18464]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:export_symbols)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [18468]
                )
              ]
              spids: [18468]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:export_symbols_regex)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [18471]
                )
              ]
              spids: [18471]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:generated) op:Equal rhs:{(SQ )} spids:[18474])]
              spids: [18474]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:libobjs) op:Equal rhs:{(SQ )} spids:[18477])]
              spids: [18477]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:ltlibs) op:Equal rhs:{(SQ )} spids:[18480])]
              spids: [18480]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:module) op:Equal rhs:{(no)} spids:[18483])]
              spids: [18483]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:no_install) op:Equal rhs:{(no)} spids:[18487])]
              spids: [18487]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:objs) op:Equal rhs:{(SQ )} spids:[18491])]
              spids: [18491]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:non_pic_objects)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [18494]
                )
              ]
              spids: [18494]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:precious_files_regex)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [18497]
                )
              ]
              spids: [18497]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:prefer_static_libs)
                  op: Equal
                  rhs: {(no)}
                  spids: [18500]
                )
              ]
              spids: [18500]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:preload) op:Equal rhs:{(no)} spids:[18504])]
              spids: [18504]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:prev) op:Equal rhs:{(SQ )} spids:[18508])]
              spids: [18508]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:prevarg) op:Equal rhs:{(SQ )} spids:[18511])]
              spids: [18511]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:release) op:Equal rhs:{(SQ )} spids:[18514])]
              spids: [18514]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:rpath) op:Equal rhs:{(SQ )} spids:[18517])]
              spids: [18517]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:xrpath) op:Equal rhs:{(SQ )} spids:[18520])]
              spids: [18520]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:perm_rpath) op:Equal rhs:{(SQ )} spids:[18523])]
              spids: [18523]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:temp_rpath) op:Equal rhs:{(SQ )} spids:[18526])]
              spids: [18526]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:thread_safe) op:Equal rhs:{(no)} spids:[18529])]
              spids: [18529]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:vinfo) op:Equal rhs:{(SQ )} spids:[18533])]
              spids: [18533]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:vinfo_number) op:Equal rhs:{(no)} spids:[18536])]
              spids: [18536]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:weak_libs) op:Equal rhs:{(SQ )} spids:[18540])]
              spids: [18540]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:single_module)
                  op: Equal
                  rhs: {(DQ (${ VSub_Name wl) (-single_module))}
                  spids: [18543]
                )
              ]
              spids: [18543]
            )
            (C {(func_infer_tag)} {($ VSub_Name '$base_compile')})
            (ForEach
              iter_name: arg
              do_arg_iter: True
              body: 
                (DoGroup
                  children: [
                    (Case
                      to_match: {($ VSub_Name '$arg')}
                      arms: [
                        (case_arm
                          pat_list: [{(-shared)}]
                          action: [
                            (AndOr
                              children: [
                                (C {(test)} {(DQ ($ VSub_Name '$build_libtool_libs'))} 
                                  {(KW_Bang '!') (Lit_Other '=')} {(yes)}
                                )
                                (C {(func_fatal_configuration)} 
                                  {(DQ ('can not build a shared library'))}
                                )
                              ]
                              op_id: Op_DAmp
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:build_old_libs)
                                  op: Equal
                                  rhs: {(no)}
                                  spids: [18603]
                                )
                              ]
                              spids: [18603]
                            )
                            (ControlFlow token:<ControlFlow_Break break>)
                          ]
                          spids: [18577 18578 18610 16777215]
                        )
                        (case_arm
                          pat_list: [{(-all-static)} {(-static)} {(-static-libtool-libs)}]
                          action: [
                            (Case
                              to_match: {($ VSub_Name '$arg')}
                              arms: [
                                (case_arm
                                  pat_list: [{(-all-static)}]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} 
                                                      {(DQ ($ VSub_Name '$build_libtool_libs'))} {(Lit_Other '=')} {(yes)}
                                                    )
                                                    (C {(test)} {(-z)} 
                                                      {(DQ ($ VSub_Name '$link_static_flag'))}
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(func_warning)} 
                                              {
                                                (DQ 
                                                  (
'complete static linking is impossible in this configuration'
                                                  )
                                                )
                                              }
                                            )
                                          ]
                                          spids: [16777215 18659]
                                        )
                                      ]
                                      spids: [16777215 18669]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(-n)} 
                                                  {(DQ ($ VSub_Name '$link_static_flag'))}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:dlopen_self)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$dlopen_self_static')}
                                                  spids: [18686]
                                                )
                                              ]
                                              spids: [18686]
                                            )
                                          ]
                                          spids: [16777215 18683]
                                        )
                                      ]
                                      spids: [16777215 18690]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prefer_static_libs)
                                          op: Equal
                                          rhs: {(yes)}
                                          spids: [18693]
                                        )
                                      ]
                                      spids: [18693]
                                    )
                                  ]
                                  spids: [18632 18633 18697 16777215]
                                )
                                (case_arm
                                  pat_list: [{(-static)}]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-z)} {(DQ ($ VSub_Name '$pic_flag'))})
                                                    (C {(test)} {(-n)} 
                                                      {(DQ ($ VSub_Name '$link_static_flag'))}
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:dlopen_self)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$dlopen_self_static')}
                                                  spids: [18728]
                                                )
                                              ]
                                              spids: [18728]
                                            )
                                          ]
                                          spids: [16777215 18725]
                                        )
                                      ]
                                      spids: [16777215 18732]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prefer_static_libs)
                                          op: Equal
                                          rhs: {(built)}
                                          spids: [18735]
                                        )
                                      ]
                                      spids: [18735]
                                    )
                                  ]
                                  spids: [18700 18701 18739 16777215]
                                )
                                (case_arm
                                  pat_list: [{(-static-libtool-libs)}]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-z)} {(DQ ($ VSub_Name '$pic_flag'))})
                                                    (C {(test)} {(-n)} 
                                                      {(DQ ($ VSub_Name '$link_static_flag'))}
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:dlopen_self)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$dlopen_self_static')}
                                                  spids: [18770]
                                                )
                                              ]
                                              spids: [18770]
                                            )
                                          ]
                                          spids: [16777215 18767]
                                        )
                                      ]
                                      spids: [16777215 18774]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prefer_static_libs)
                                          op: Equal
                                          rhs: {(yes)}
                                          spids: [18777]
                                        )
                                      ]
                                      spids: [18777]
                                    )
                                  ]
                                  spids: [18742 18743 18781 16777215]
                                )
                              ]
                              spids: [18625 18629 18784]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:build_libtool_libs)
                                  op: Equal
                                  rhs: {(no)}
                                  spids: [18787]
                                )
                              ]
                              spids: [18787]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:build_old_libs)
                                  op: Equal
                                  rhs: {(yes)}
                                  spids: [18791]
                                )
                              ]
                              spids: [18791]
                            )
                            (ControlFlow token:<ControlFlow_Break break>)
                          ]
                          spids: [18613 18622 18798 16777215]
                        )
                      ]
                      spids: [18570 18574 18801]
                    )
                  ]
                  spids: [18567 18804]
                )
              spids: [16777215 16777215]
            )
            (AndOr
              children: [
                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$old_archive_from_new_cmds'))})
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:build_old_libs)
                      op: Equal
                      rhs: {(yes)}
                      spids: [18822]
                    )
                  ]
                  spids: [18822]
                )
              ]
              op_id: Op_DAmp
            )
            (While
              cond: [
                (Sentence
                  child: (C {(test)} {(DQ ($ VSub_Pound '$#'))} {(-gt)} {(0)})
                  terminator: <Op_Semi ';'>
                )
              ]
              body: 
                (DoGroup
                  children: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:arg)
                          op: Equal
                          rhs: {(DQ ($ VSub_Number '$1'))}
                          spids: [18847]
                        )
                      ]
                      spids: [18847]
                    )
                    (C {(shift)})
                    (C {(func_quote_for_eval)} {(DQ ($ VSub_Name '$arg'))})
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:qarg)
                          op: Equal
                          rhs: {($ VSub_Name '$func_quote_for_eval_unquoted_result')}
                          spids: [18863]
                        )
                      ]
                      spids: [18863]
                    )
                    (C {(func_append)} {(libtool_args)} 
                      {(DQ (' ') ($ VSub_Name '$func_quote_for_eval_result'))}
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$prev'))})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Case
                              to_match: {($ VSub_Name '$prev')}
                              arms: [
                                (case_arm
                                  pat_list: [{(output)}]
                                  action: [
                                    (C {(func_append)} {(compile_command)} {(DQ (' @OUTPUT@'))})
                                    (C {(func_append)} {(finalize_command)} {(DQ (' @OUTPUT@'))})
                                  ]
                                  spids: [18903 18904 18925 16777215]
                                )
                              ]
                              spids: [18896 18900 18928]
                            )
                            (Case
                              to_match: {($ VSub_Name '$prev')}
                              arms: [
                                (case_arm
                                  pat_list: [{(dlfiles)} {(dlprefiles)}]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(DQ ($ VSub_Name '$preload'))} 
                                                  {(Lit_Other '=')} {(no)}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(func_append)} {(compile_command)} {(DQ (' @SYMFILE@'))})
                                            (C {(func_append)} {(finalize_command)} {(DQ (' @SYMFILE@'))})
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:preload)
                                                  op: Equal
                                                  rhs: {(yes)}
                                                  spids: [18983]
                                                )
                                              ]
                                              spids: [18983]
                                            )
                                          ]
                                          spids: [16777215 18958]
                                        )
                                      ]
                                      spids: [16777215 18987]
                                    )
                                    (Case
                                      to_match: {($ VSub_Name '$arg')}
                                      arms: [
                                        (case_arm
                                          pat_list: [{(Lit_Other '*') (.la)} {(Lit_Other '*') (.lo)}]
                                          spids: [18997 19004 19006 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(force)}]
                                          action: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(DQ ($ VSub_Name '$dlself'))} 
                                                          {(Lit_Other '=')} {(no)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:dlself)
                                                          op: Equal
                                                          rhs: {(needless)}
                                                          spids: [19032]
                                                        )
                                                      ]
                                                      spids: [19032]
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:export_dynamic)
                                                          op: Equal
                                                          rhs: {(yes)}
                                                          spids: [19036]
                                                        )
                                                      ]
                                                      spids: [19036]
                                                    )
                                                  ]
                                                  spids: [16777215 19029]
                                                )
                                              ]
                                              spids: [16777215 19040]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:prev)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [19043]
                                                )
                                              ]
                                              spids: [19043]
                                            )
                                            (ControlFlow
                                              token: <ControlFlow_Continue continue>
                                            )
                                          ]
                                          spids: [19012 19013 19049 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(self)}]
                                          action: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(DQ ($ VSub_Name '$prev'))} 
                                                          {(Lit_Other '=')} {(dlprefiles)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:dlself)
                                                          op: Equal
                                                          rhs: {(yes)}
                                                          spids: [19072]
                                                        )
                                                      ]
                                                      spids: [19072]
                                                    )
                                                  ]
                                                  spids: [16777215 19069]
                                                )
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (AndOr
                                                          children: [
                                                            (C {(test)} {(DQ ($ VSub_Name '$prev'))} 
                                                              {(Lit_Other '=')} {(dlfiles)}
                                                            )
                                                            (C {(test)} 
                                                              {(DQ ($ VSub_Name '$dlopen_self'))} {(KW_Bang '!') (Lit_Other '=')} {(yes)}
                                                            )
                                                          ]
                                                          op_id: Op_DAmp
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:dlself)
                                                          op: Equal
                                                          rhs: {(yes)}
                                                          spids: [19105]
                                                        )
                                                      ]
                                                      spids: [19105]
                                                    )
                                                  ]
                                                  spids: [19076 19102]
                                                )
                                              ]
                                              else_action: [
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:dlself)
                                                      op: Equal
                                                      rhs: {(needless)}
                                                      spids: [19112]
                                                    )
                                                  ]
                                                  spids: [19112]
                                                )
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:export_dynamic)
                                                      op: Equal
                                                      rhs: {(yes)}
                                                      spids: [19116]
                                                    )
                                                  ]
                                                  spids: [19116]
                                                )
                                              ]
                                              spids: [19109 19120]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:prev)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [19123]
                                                )
                                              ]
                                              spids: [19123]
                                            )
                                            (ControlFlow
                                              token: <ControlFlow_Continue continue>
                                            )
                                          ]
                                          spids: [19052 19053 19129 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(DQ ($ VSub_Name '$prev'))} 
                                                          {(Lit_Other '=')} {(dlfiles)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:dlfiles)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$dlfiles') (' ') 
                                                                ($ VSub_Name '$arg')
                                                              )
                                                            }
                                                          spids: [19152]
                                                        )
                                                      ]
                                                      spids: [19152]
                                                    )
                                                  ]
                                                  spids: [16777215 19149]
                                                )
                                              ]
                                              else_action: [
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:dlprefiles)
                                                      op: Equal
                                                      rhs: 
                                                        {
                                                          (DQ ($ VSub_Name '$dlprefiles') (' ') 
                                                            ($ VSub_Name '$arg')
                                                          )
                                                        }
                                                      spids: [19163]
                                                    )
                                                  ]
                                                  spids: [19163]
                                                )
                                              ]
                                              spids: [19160 19171]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:prev)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [19174]
                                                )
                                              ]
                                              spids: [19174]
                                            )
                                            (ControlFlow
                                              token: <ControlFlow_Continue continue>
                                            )
                                          ]
                                          spids: [19132 19133 19180 16777215]
                                        )
                                      ]
                                      spids: [18990 18994 19183]
                                    )
                                  ]
                                  spids: [18939 18942 19186 16777215]
                                )
                                (case_arm
                                  pat_list: [{(expsyms)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:export_symbols)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$arg'))}
                                          spids: [19193]
                                        )
                                      ]
                                      spids: [19193]
                                    )
                                    (AndOr
                                      children: [
                                        (C {(test)} {(-f)} {(DQ ($ VSub_Name '$arg'))})
                                        (C {(func_fatal_error)} 
                                          {
                                            (DQ ('symbol file ') 
                                              (EscapedLiteralPart
                                                token: <Lit_EscapedChar '\\`'>
                                              ) ($ VSub_Name '$arg') ("' does not exist")
                                            )
                                          }
                                        )
                                      ]
                                      op_id: Op_DPipe
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prev)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [19221]
                                        )
                                      ]
                                      spids: [19221]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [19189 19190 19227 16777215]
                                )
                                (case_arm
                                  pat_list: [{(expsyms_regex)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:export_symbols_regex)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$arg'))}
                                          spids: [19234]
                                        )
                                      ]
                                      spids: [19234]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prev)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [19240]
                                        )
                                      ]
                                      spids: [19240]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [19230 19231 19246 16777215]
                                )
                                (case_arm
                                  pat_list: [{(framework)}]
                                  action: [
                                    (Case
                                      to_match: {($ VSub_Name '$host')}
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-darwin) 
                                              (Lit_Other '*')
                                            }
                                          ]
                                          action: [
                                            (Case
                                              to_match: {(DQ ($ VSub_Name '$deplibs') (' '))}
                                              arms: [
                                                (case_arm
                                                  pat_list: [
                                                    {(Lit_Other '*') 
                                                      (DQ (' ') ($ VSub_Name '$qarg') ('.ltframework ')) (Lit_Other '*')
                                                    }
                                                  ]
                                                  spids: [19278 19285 19287 16777215]
                                                )
                                                (case_arm
                                                  pat_list: [{(Lit_Other '*')}]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:deplibs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$deplibs') (' ') 
                                                                ($ VSub_Name '$qarg') (.ltframework)
                                                              )
                                                            }
                                                          spids: [19293]
                                                        )
                                                      ]
                                                      spids: [19293]
                                                    )
                                                  ]
                                                  spids: [19290 19291 19305 16777215]
                                                )
                                              ]
                                              spids: [19268 19275 19308]
                                            )
                                          ]
                                          spids: [19260 19265 19311 16777215]
                                        )
                                      ]
                                      spids: [19253 19257 19314]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prev)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [19317]
                                        )
                                      ]
                                      spids: [19317]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [19249 19250 19323 16777215]
                                )
                                (case_arm
                                  pat_list: [{(inst_prefix)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:inst_prefix_dir)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$arg'))}
                                          spids: [19330]
                                        )
                                      ]
                                      spids: [19330]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prev)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [19336]
                                        )
                                      ]
                                      spids: [19336]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [19326 19327 19342 16777215]
                                )
                                (case_arm
                                  pat_list: [{(objectlist)}]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: (C {(test)} {(-f)} {(DQ ($ VSub_Name '$arg'))})
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:save_arg)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$arg')}
                                                  spids: [19363]
                                                )
                                              ]
                                              spids: [19363]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:moreargs)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [19367]
                                                )
                                              ]
                                              spids: [19367]
                                            )
                                            (ForEach
                                              iter_name: fil
                                              iter_words: [
                                                {
                                                  (CommandSubPart
                                                    command_list: 
                                                      (CommandList
                                                        children: [
                                                          (C {(cat)} {(DQ ($ VSub_Name '$save_arg'))})
                                                        ]
                                                      )
                                                    left_token: <Left_Backtick '`'>
                                                    spids: [19376 19382]
                                                  )
                                                }
                                              ]
                                              do_arg_iter: False
                                              body: 
                                                (DoGroup
                                                  children: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:arg)
                                                          op: Equal
                                                          rhs: {($ VSub_Name '$fil')}
                                                          spids: [19391]
                                                        )
                                                      ]
                                                      spids: [19391]
                                                    )
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (C {(func_lalib_unsafe_p)} 
                                                                  {(DQ ($ VSub_Name '$arg'))}
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:pic_object)
                                                                  op: Equal
                                                                  rhs: {(SQ )}
                                                                  spids: [19416]
                                                                )
                                                              ]
                                                              spids: [19416]
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:non_pic_object)
                                                                  op: Equal
                                                                  rhs: {(SQ )}
                                                                  spids: [19419]
                                                                )
                                                              ]
                                                              spids: [19419]
                                                            )
                                                            (C {(func_source)} 
                                                              {(DQ ($ VSub_Name '$arg'))}
                                                            )
                                                            (If
                                                              arms: [
                                                                (if_arm
                                                                  cond: [
                                                                    (Sentence
                                                                      child: 
                                                                        (AndOr
                                                                          children: [
                                                                            (C {(test)} {(-z)} 
                                                                              {
                                                                                (DQ 
                                                                                  ($ VSub_Name 
'$pic_object'
                                                                                  )
                                                                                )
                                                                              }
                                                                            )
                                                                            (AndOr
                                                                              children: [
                                                                                (C {(test)} {(-z)} 
                                                                                  {
                                                                                    (DQ 
                                                                                      ($ VSub_Name 
'$non_pic_object'
                                                                                      )
                                                                                    )
                                                                                  }
                                                                                )
                                                                                (AndOr
                                                                                  children: [
                                                                                    (C {(test)} 
                                                                                      {
                                                                                        (DQ 
                                                                                          ($ 
VSub_Name '$pic_object'
                                                                                          )
                                                                                        )
                                                                                      } {(Lit_Other '=')} {(none)}
                                                                                    )
                                                                                    (C {(test)} 
                                                                                      {
                                                                                        (DQ 
                                                                                          ($ 
VSub_Name '$non_pic_object'
                                                                                          )
                                                                                        )
                                                                                      } {(Lit_Other '=')} {(none)}
                                                                                    )
                                                                                  ]
                                                                                  op_id: Op_DAmp
                                                                                )
                                                                              ]
                                                                              op_id: Op_DPipe
                                                                            )
                                                                          ]
                                                                          op_id: Op_DPipe
                                                                        )
                                                                      terminator: <Op_Semi ';'>
                                                                    )
                                                                  ]
                                                                  action: [
                                                                    (C {(func_fatal_error)} 
                                                                      {
                                                                        (DQ 
                                                                          (
'cannot find name of object for '
                                                                          ) (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ($ VSub_Name '$arg') ("'")
                                                                        )
                                                                      }
                                                                    )
                                                                  ]
                                                                  spids: [16777215 19483]
                                                                )
                                                              ]
                                                              spids: [16777215 19496]
                                                            )
                                                            (C {(func_dirname)} 
                                                              {(DQ ($ VSub_Name '$arg'))} {(DQ (/))} {(DQ )}
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:xdir)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name 
'$func_dirname_result'
                                                                        )
                                                                      )
                                                                    }
                                                                  spids: [19518]
                                                                )
                                                              ]
                                                              spids: [19518]
                                                            )
                                                            (If
                                                              arms: [
                                                                (if_arm
                                                                  cond: [
                                                                    (Sentence
                                                                      child: 
                                                                        (C {(test)} 
                                                                          {
                                                                            (DQ 
                                                                              ($ VSub_Name 
'$pic_object'
                                                                              )
                                                                            )
                                                                          } {(KW_Bang '!') (Lit_Other '=')} {(none)}
                                                                        )
                                                                      terminator: <Op_Semi ';'>
                                                                    )
                                                                  ]
                                                                  action: [
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: 
                                                                            (LhsName
                                                                              name: pic_object
                                                                            )
                                                                          op: Equal
                                                                          rhs: 
                                                                            {
                                                                              (DQ 
                                                                                ($ VSub_Name '$xdir') ($ VSub_Name '$pic_object')
                                                                              )
                                                                            }
                                                                          spids: [19546]
                                                                        )
                                                                      ]
                                                                      spids: [19546]
                                                                    )
                                                                    (If
                                                                      arms: [
                                                                        (if_arm
                                                                          cond: [
                                                                            (Sentence
                                                                              child: 
                                                                                (C {(test)} 
                                                                                  {
                                                                                    (DQ 
                                                                                      ($ VSub_Name 
'$prev'
                                                                                      )
                                                                                    )
                                                                                  } {(Lit_Other '=')} {(dlfiles)}
                                                                                )
                                                                              terminator: 
                                                                                <Op_Semi ';'>
                                                                            )
                                                                          ]
                                                                          action: [
                                                                            (If
                                                                              arms: [
                                                                                (if_arm
                                                                                  cond: [
                                                                                    (Sentence
                                                                                      child: 
                                                                                        (AndOr
                                                                                          children: [
                                                                                            (C 
                                                                                              {
                                                                                                (
test
                                                                                                )
                                                                                              } {(DQ ($ VSub_Name '$build_libtool_libs'))} {(Lit_Other '=')} {(yes)}
                                                                                            )
                                                                                            (C 
                                                                                              {
                                                                                                (
test
                                                                                                )
                                                                                              } {(DQ ($ VSub_Name '$dlopen_support'))} {(Lit_Other '=')} {(yes)}
                                                                                            )
                                                                                          ]
                                                                                          op_id: 
Op_DAmp
                                                                                        )
                                                                                      terminator: 
                                                                                        <Op_Semi 
';'
                                                                                        >
                                                                                    )
                                                                                  ]
                                                                                  action: [
                                                                                    (Assignment
                                                                                      keyword: 
Assign_None
                                                                                      pairs: [
                                                                                        (assign_pair
                                                                                          lhs: 
                                                                                            (LhsName
                                                                                              name: 
dlfiles
                                                                                            )
                                                                                          op: Equal
                                                                                          rhs: 
                                                                                            {
                                                                                              (DQ 
                                                                                                ($ 
VSub_Name '$dlfiles'
                                                                                                ) (' ') ($ VSub_Name '$pic_object')
                                                                                              )
                                                                                            }
                                                                                          spids: [
19598
                                                                                          ]
                                                                                        )
                                                                                      ]
                                                                                      spids: [19598]
                                                                                    )
                                                                                    (Assignment
                                                                                      keyword: 
Assign_None
                                                                                      pairs: [
                                                                                        (assign_pair
                                                                                          lhs: 
                                                                                            (LhsName
                                                                                              name: 
prev
                                                                                            )
                                                                                          op: Equal
                                                                                          rhs: {(SQ )}
                                                                                          spids: [
19606
                                                                                          ]
                                                                                        )
                                                                                      ]
                                                                                      spids: [19606]
                                                                                    )
                                                                                    (ControlFlow
                                                                                      token: 
                                                                                        <
ControlFlow_Continue continue
                                                                                        >
                                                                                    )
                                                                                  ]
                                                                                  spids: [
16777215
19595
                                                                                  ]
                                                                                )
                                                                              ]
                                                                              else_action: [
                                                                                (Assignment
                                                                                  keyword: 
Assign_None
                                                                                  pairs: [
                                                                                    (assign_pair
                                                                                      lhs: 
                                                                                        (LhsName
                                                                                          name: prev
                                                                                        )
                                                                                      op: Equal
                                                                                      rhs: 
                                                                                        {
                                                                                          (
dlprefiles
                                                                                          )
                                                                                        }
                                                                                      spids: [19619]
                                                                                    )
                                                                                  ]
                                                                                  spids: [19619]
                                                                                )
                                                                              ]
                                                                              spids: [19612 19623]
                                                                            )
                                                                          ]
                                                                          spids: [16777215 19567]
                                                                        )
                                                                      ]
                                                                      spids: [16777215 19626]
                                                                    )
                                                                    (If
                                                                      arms: [
                                                                        (if_arm
                                                                          cond: [
                                                                            (Sentence
                                                                              child: 
                                                                                (C {(test)} 
                                                                                  {
                                                                                    (DQ 
                                                                                      ($ VSub_Name 
'$prev'
                                                                                      )
                                                                                    )
                                                                                  } {(Lit_Other '=')} {(dlprefiles)}
                                                                                )
                                                                              terminator: 
                                                                                <Op_Semi ';'>
                                                                            )
                                                                          ]
                                                                          action: [
                                                                            (Assignment
                                                                              keyword: Assign_None
                                                                              pairs: [
                                                                                (assign_pair
                                                                                  lhs: 
                                                                                    (LhsName
                                                                                      name: 
dlprefiles
                                                                                    )
                                                                                  op: Equal
                                                                                  rhs: 
                                                                                    {
                                                                                      (DQ 
                                                                                        ($ VSub_Name 
'$dlprefiles'
                                                                                        ) (' ') ($ VSub_Name '$pic_object')
                                                                                      )
                                                                                    }
                                                                                  spids: [19654]
                                                                                )
                                                                              ]
                                                                              spids: [19654]
                                                                            )
                                                                            (Assignment
                                                                              keyword: Assign_None
                                                                              pairs: [
                                                                                (assign_pair
                                                                                  lhs: 
                                                                                    (LhsName
                                                                                      name: prev
                                                                                    )
                                                                                  op: Equal
                                                                                  rhs: {(SQ )}
                                                                                  spids: [19662]
                                                                                )
                                                                              ]
                                                                              spids: [19662]
                                                                            )
                                                                          ]
                                                                          spids: [16777215 19647]
                                                                        )
                                                                      ]
                                                                      spids: [16777215 19665]
                                                                    )
                                                                    (C {(func_append)} {(libobjs)} 
                                                                      {
                                                                        (DQ (' ') 
                                                                          ($ VSub_Name '$pic_object')
                                                                        )
                                                                      }
                                                                    )
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: (LhsName name:arg)
                                                                          op: Equal
                                                                          rhs: 
                                                                            {
                                                                              (DQ 
                                                                                ($ VSub_Name 
'$pic_object'
                                                                                )
                                                                              )
                                                                            }
                                                                          spids: [19683]
                                                                        )
                                                                      ]
                                                                      spids: [19683]
                                                                    )
                                                                  ]
                                                                  spids: [16777215 19539]
                                                                )
                                                              ]
                                                              spids: [16777215 19689]
                                                            )
                                                            (If
                                                              arms: [
                                                                (if_arm
                                                                  cond: [
                                                                    (Sentence
                                                                      child: 
                                                                        (C {(test)} 
                                                                          {
                                                                            (DQ 
                                                                              ($ VSub_Name 
'$non_pic_object'
                                                                              )
                                                                            )
                                                                          } {(KW_Bang '!') (Lit_Other '=')} {(none)}
                                                                        )
                                                                      terminator: <Op_Semi ';'>
                                                                    )
                                                                  ]
                                                                  action: [
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: 
                                                                            (LhsName
                                                                              name: non_pic_object
                                                                            )
                                                                          op: Equal
                                                                          rhs: 
                                                                            {
                                                                              (DQ 
                                                                                ($ VSub_Name '$xdir') ($ VSub_Name '$non_pic_object')
                                                                              )
                                                                            }
                                                                          spids: [19718]
                                                                        )
                                                                      ]
                                                                      spids: [19718]
                                                                    )
                                                                    (C {(func_append)} 
                                                                      {(non_pic_objects)} {(DQ (' ') ($ VSub_Name '$non_pic_object'))}
                                                                    )
                                                                    (If
                                                                      arms: [
                                                                        (if_arm
                                                                          cond: [
                                                                            (Sentence
                                                                              child: 
                                                                                (AndOr
                                                                                  children: [
                                                                                    (C {(test)} {(-z)} 
                                                                                      {
                                                                                        (DQ 
                                                                                          ($ 
VSub_Name '$pic_object'
                                                                                          )
                                                                                        )
                                                                                      }
                                                                                    )
                                                                                    (C {(test)} 
                                                                                      {
                                                                                        (DQ 
                                                                                          ($ 
VSub_Name '$pic_object'
                                                                                          )
                                                                                        )
                                                                                      } {(Lit_Other '=')} {(none)}
                                                                                    )
                                                                                  ]
                                                                                  op_id: Op_DPipe
                                                                                )
                                                                              terminator: 
                                                                                <Op_Semi ';'>
                                                                            )
                                                                          ]
                                                                          action: [
                                                                            (Assignment
                                                                              keyword: Assign_None
                                                                              pairs: [
                                                                                (assign_pair
                                                                                  lhs: 
                                                                                    (LhsName
                                                                                      name: arg
                                                                                    )
                                                                                  op: Equal
                                                                                  rhs: 
                                                                                    {
                                                                                      (DQ 
                                                                                        ($ VSub_Name 
'$non_pic_object'
                                                                                        )
                                                                                      )
                                                                                    }
                                                                                  spids: [19767]
                                                                                )
                                                                              ]
                                                                              spids: [19767]
                                                                            )
                                                                          ]
                                                                          spids: [16777215 19764]
                                                                        )
                                                                      ]
                                                                      spids: [16777215 19773]
                                                                    )
                                                                  ]
                                                                  spids: [16777215 19711]
                                                                )
                                                              ]
                                                              else_action: [
                                                                (Assignment
                                                                  keyword: Assign_None
                                                                  pairs: [
                                                                    (assign_pair
                                                                      lhs: 
                                                                        (LhsName
                                                                          name: non_pic_object
                                                                        )
                                                                      op: Equal
                                                                      rhs: 
                                                                        {
                                                                          (DQ 
                                                                            ($ VSub_Name 
'$pic_object'
                                                                            )
                                                                          )
                                                                        }
                                                                      spids: [19787]
                                                                    )
                                                                  ]
                                                                  spids: [19787]
                                                                )
                                                                (C {(func_append)} {(non_pic_objects)} 
                                                                  {
                                                                    (DQ (' ') 
                                                                      ($ VSub_Name '$non_pic_object')
                                                                    )
                                                                  }
                                                                )
                                                              ]
                                                              spids: [19776 19803]
                                                            )
                                                          ]
                                                          spids: [16777215 19413]
                                                        )
                                                      ]
                                                      else_action: [
                                                        (If
                                                          arms: [
                                                            (if_arm
                                                              cond: [
                                                                (Sentence
                                                                  child: 
                                                                    (C {($ VSub_Name '$opt_dry_run')})
                                                                  terminator: <Op_Semi ';'>
                                                                )
                                                              ]
                                                              action: [
                                                                (C {(func_dirname)} 
                                                                  {(DQ ($ VSub_Name '$arg'))} {(DQ (/))} {(DQ )}
                                                                )
                                                                (Assignment
                                                                  keyword: Assign_None
                                                                  pairs: [
                                                                    (assign_pair
                                                                      lhs: (LhsName name:xdir)
                                                                      op: Equal
                                                                      rhs: 
                                                                        {
                                                                          (DQ 
                                                                            ($ VSub_Name 
'$func_dirname_result'
                                                                            )
                                                                          )
                                                                        }
                                                                      spids: [19839]
                                                                    )
                                                                  ]
                                                                  spids: [19839]
                                                                )
                                                                (C {(func_lo2o)} 
                                                                  {(DQ ($ VSub_Name '$arg'))}
                                                                )
                                                                (Assignment
                                                                  keyword: Assign_None
                                                                  pairs: [
                                                                    (assign_pair
                                                                      lhs: (LhsName name:pic_object)
                                                                      op: Equal
                                                                      rhs: 
                                                                        {($ VSub_Name '$xdir') 
                                                                          ($ VSub_Name '$objdir') (/) ($ VSub_Name '$func_lo2o_result')
                                                                        }
                                                                      spids: [19853]
                                                                    )
                                                                  ]
                                                                  spids: [19853]
                                                                )
                                                                (Assignment
                                                                  keyword: Assign_None
                                                                  pairs: [
                                                                    (assign_pair
                                                                      lhs: 
                                                                        (LhsName
                                                                          name: non_pic_object
                                                                        )
                                                                      op: Equal
                                                                      rhs: 
                                                                        {($ VSub_Name '$xdir') 
                                                                          ($ VSub_Name 
'$func_lo2o_result'
                                                                          )
                                                                        }
                                                                      spids: [19860]
                                                                    )
                                                                  ]
                                                                  spids: [19860]
                                                                )
                                                                (C {(func_append)} {(libobjs)} 
                                                                  {
                                                                    (DQ (' ') 
                                                                      ($ VSub_Name '$pic_object')
                                                                    )
                                                                  }
                                                                )
                                                                (C {(func_append)} {(non_pic_objects)} 
                                                                  {
                                                                    (DQ (' ') 
                                                                      ($ VSub_Name '$non_pic_object')
                                                                    )
                                                                  }
                                                                )
                                                              ]
                                                              spids: [16777215 19818]
                                                            )
                                                          ]
                                                          else_action: [
                                                            (C {(func_fatal_error)} 
                                                              {
                                                                (DQ 
                                                                  (EscapedLiteralPart
                                                                    token: <Lit_EscapedChar '\\`'>
                                                                  ) ($ VSub_Name '$arg') ("' is not a valid libtool object")
                                                                )
                                                              }
                                                            )
                                                          ]
                                                          spids: [19885 19897]
                                                        )
                                                      ]
                                                      spids: [19806 19900]
                                                    )
                                                  ]
                                                  spids: [19385 19903]
                                                )
                                              spids: [19375 16777215]
                                            )
                                          ]
                                          spids: [16777215 19360]
                                        )
                                      ]
                                      else_action: [
                                        (C {(func_fatal_error)} 
                                          {
                                            (DQ ('link input file ') 
                                              (EscapedLiteralPart
                                                token: <Lit_EscapedChar '\\`'>
                                              ) ($ VSub_Name '$arg') ("' does not exist")
                                            )
                                          }
                                        )
                                      ]
                                      spids: [19906 19919]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:arg)
                                          op: Equal
                                          rhs: {($ VSub_Name '$save_arg')}
                                          spids: [19922]
                                        )
                                      ]
                                      spids: [19922]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prev)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [19926]
                                        )
                                      ]
                                      spids: [19926]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [19345 19346 19932 16777215]
                                )
                                (case_arm
                                  pat_list: [{(precious_regex)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:precious_files_regex)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$arg'))}
                                          spids: [19939]
                                        )
                                      ]
                                      spids: [19939]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prev)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [19945]
                                        )
                                      ]
                                      spids: [19945]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [19935 19936 19951 16777215]
                                )
                                (case_arm
                                  pat_list: [{(release)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:release)
                                          op: Equal
                                          rhs: {(DQ (-) ($ VSub_Name '$arg'))}
                                          spids: [19958]
                                        )
                                      ]
                                      spids: [19958]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prev)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [19965]
                                        )
                                      ]
                                      spids: [19965]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [19954 19955 19971 16777215]
                                )
                                (case_arm
                                  pat_list: [{(rpath)} {(xrpath)}]
                                  action: [
                                    (Case
                                      to_match: {($ VSub_Name '$arg')}
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '[') 
                                              (EscapedLiteralPart
                                                token: <Lit_EscapedChar '\\\\'>
                                              ) (/) (Lit_Other ']') (Lit_Other '*')
                                            }
                                            {(Lit_Other '[') (A-Za-z) (Lit_Other ']') (Lit_Other ':') 
                                              (Lit_Other '[') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (/) (Lit_Other ']') (Lit_Other '*')
                                            }
                                          ]
                                          spids: [19993 20010 20012 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (C {(func_fatal_error)} 
                                              {(DQ ('only absolute run-paths are allowed'))}
                                            )
                                          ]
                                          spids: [20015 20016 20026 16777215]
                                        )
                                      ]
                                      spids: [19986 19990 20029]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(DQ ($ VSub_Name '$prev'))} 
                                                  {(Lit_Other '=')} {(rpath)}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Case
                                              to_match: {(DQ ($ VSub_Name '$rpath') (' '))}
                                              arms: [
                                                (case_arm
                                                  pat_list: [
                                                    {(Lit_Other '*') 
                                                      (DQ (' ') ($ VSub_Name '$arg') (' ')) (Lit_Other '*')
                                                    }
                                                  ]
                                                  spids: [20058 20065 20067 16777215]
                                                )
                                                (case_arm
                                                  pat_list: [{(Lit_Other '*')}]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:rpath)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$rpath') (' ') 
                                                                ($ VSub_Name '$arg')
                                                              )
                                                            }
                                                          spids: [20073]
                                                        )
                                                      ]
                                                      spids: [20073]
                                                    )
                                                  ]
                                                  spids: [20070 20071 20080 16777215]
                                                )
                                              ]
                                              spids: [20048 20055 20083]
                                            )
                                          ]
                                          spids: [16777215 20045]
                                        )
                                      ]
                                      else_action: [
                                        (Case
                                          to_match: {(DQ ($ VSub_Name '$xrpath') (' '))}
                                          arms: [
                                            (case_arm
                                              pat_list: [
                                                {(Lit_Other '*') 
                                                  (DQ (' ') ($ VSub_Name '$arg') (' ')) (Lit_Other '*')
                                                }
                                              ]
                                              spids: [20099 20106 20108 16777215]
                                            )
                                            (case_arm
                                              pat_list: [{(Lit_Other '*')}]
                                              action: [
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:xrpath)
                                                      op: Equal
                                                      rhs: 
                                                        {
                                                          (DQ ($ VSub_Name '$xrpath') (' ') 
                                                            ($ VSub_Name '$arg')
                                                          )
                                                        }
                                                      spids: [20114]
                                                    )
                                                  ]
                                                  spids: [20114]
                                                )
                                              ]
                                              spids: [20111 20112 20121 16777215]
                                            )
                                          ]
                                          spids: [20089 20096 20124]
                                        )
                                      ]
                                      spids: [20086 20127]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prev)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [20130]
                                        )
                                      ]
                                      spids: [20130]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [19974 19979 20136 16777215]
                                )
                                (case_arm
                                  pat_list: [{(shrext)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:shrext_cmds)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$arg'))}
                                          spids: [20143]
                                        )
                                      ]
                                      spids: [20143]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prev)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [20149]
                                        )
                                      ]
                                      spids: [20149]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [20139 20140 20155 16777215]
                                )
                                (case_arm
                                  pat_list: [{(weak)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:weak_libs)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$weak_libs') (' ') ($ VSub_Name '$arg'))
                                            }
                                          spids: [20162]
                                        )
                                      ]
                                      spids: [20162]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prev)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [20170]
                                        )
                                      ]
                                      spids: [20170]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [20158 20159 20176 16777215]
                                )
                                (case_arm
                                  pat_list: [{(xcclinker)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:linker_flags)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$linker_flags') (' ') 
                                                ($ VSub_Name '$qarg')
                                              )
                                            }
                                          spids: [20183]
                                        )
                                      ]
                                      spids: [20183]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:compiler_flags)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$compiler_flags') (' ') 
                                                ($ VSub_Name '$qarg')
                                              )
                                            }
                                          spids: [20191]
                                        )
                                      ]
                                      spids: [20191]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prev)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [20199]
                                        )
                                      ]
                                      spids: [20199]
                                    )
                                    (C {(func_append)} {(compile_command)} 
                                      {(DQ (' ') ($ VSub_Name '$qarg'))}
                                    )
                                    (C {(func_append)} {(finalize_command)} 
                                      {(DQ (' ') ($ VSub_Name '$qarg'))}
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [20179 20180 20225 16777215]
                                )
                                (case_arm
                                  pat_list: [{(xcompiler)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:compiler_flags)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$compiler_flags') (' ') 
                                                ($ VSub_Name '$qarg')
                                              )
                                            }
                                          spids: [20232]
                                        )
                                      ]
                                      spids: [20232]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prev)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [20240]
                                        )
                                      ]
                                      spids: [20240]
                                    )
                                    (C {(func_append)} {(compile_command)} 
                                      {(DQ (' ') ($ VSub_Name '$qarg'))}
                                    )
                                    (C {(func_append)} {(finalize_command)} 
                                      {(DQ (' ') ($ VSub_Name '$qarg'))}
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [20228 20229 20266 16777215]
                                )
                                (case_arm
                                  pat_list: [{(xlinker)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:linker_flags)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$linker_flags') (' ') 
                                                ($ VSub_Name '$qarg')
                                              )
                                            }
                                          spids: [20273]
                                        )
                                      ]
                                      spids: [20273]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:compiler_flags)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$compiler_flags') (' ') 
                                                ($ VSub_Name '$wl') ($ VSub_Name '$qarg')
                                              )
                                            }
                                          spids: [20281]
                                        )
                                      ]
                                      spids: [20281]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prev)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [20290]
                                        )
                                      ]
                                      spids: [20290]
                                    )
                                    (C {(func_append)} {(compile_command)} 
                                      {(DQ (' ') ($ VSub_Name '$wl') ($ VSub_Name '$qarg'))}
                                    )
                                    (C {(func_append)} {(finalize_command)} 
                                      {(DQ (' ') ($ VSub_Name '$wl') ($ VSub_Name '$qarg'))}
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [20269 20270 20318 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (C {(eval)} 
                                      {
                                        (DQ ($ VSub_Name '$prev') ('=') 
                                          (EscapedLiteralPart
                                            token: <Lit_EscapedChar '\\"'>
                                          ) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (arg) 
                                          (EscapedLiteralPart
                                            token: <Lit_EscapedChar '\\"'>
                                          )
                                        )
                                      }
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prev)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [20337]
                                        )
                                      ]
                                      spids: [20337]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [20321 20322 20343 16777215]
                                )
                              ]
                              spids: [18932 18936 20346]
                            )
                          ]
                          spids: [16777215 18893]
                        )
                      ]
                      spids: [16777215 20349]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:prevarg)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$arg'))}
                          spids: [20356]
                        )
                      ]
                      spids: [20356]
                    )
                    (Case
                      to_match: {($ VSub_Name '$arg')}
                      arms: [
                        (case_arm
                          pat_list: [{(-all-static)}]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$link_static_flag'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(func_append)} {(compile_command)} 
                                      {(DQ (' ') ($ VSub_Name '$link_static_flag'))}
                                    )
                                    (C {(func_append)} {(finalize_command)} 
                                      {(DQ (' ') ($ VSub_Name '$link_static_flag'))}
                                    )
                                  ]
                                  spids: [16777215 20385]
                                )
                              ]
                              spids: [16777215 20412]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [20370 20371 20418 16777215]
                        )
                        (case_arm
                          pat_list: [{(-allow-undefined)}]
                          action: [
                            (C {(func_fatal_error)} 
                              {
                                (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                  ("-allow-undefined' must not be used because it is the default")
                                )
                              }
                            )
                          ]
                          spids: [20422 20423 20438 16777215]
                        )
                        (case_arm
                          pat_list: [{(-avoid-version)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:avoid_version)
                                  op: Equal
                                  rhs: {(yes)}
                                  spids: [20446]
                                )
                              ]
                              spids: [20446]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [20442 20443 20453 16777215]
                        )
                        (case_arm
                          pat_list: [{(-dlopen)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:prev)
                                  op: Equal
                                  rhs: {(dlfiles)}
                                  spids: [20461]
                                )
                              ]
                              spids: [20461]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [20457 20458 20468 16777215]
                        )
                        (case_arm
                          pat_list: [{(-dlpreopen)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:prev)
                                  op: Equal
                                  rhs: {(dlprefiles)}
                                  spids: [20476]
                                )
                              ]
                              spids: [20476]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [20472 20473 20483 16777215]
                        )
                        (case_arm
                          pat_list: [{(-export-dynamic)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:export_dynamic)
                                  op: Equal
                                  rhs: {(yes)}
                                  spids: [20491]
                                )
                              ]
                              spids: [20491]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [20487 20488 20498 16777215]
                        )
                        (case_arm
                          pat_list: [{(-export-symbols)} {(-export-symbols-regex)}]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          children: [
                                            (C {(test)} {(-n)} {(DQ ($ VSub_Name '$export_symbols'))})
                                            (C {(test)} {(-n)} 
                                              {(DQ ($ VSub_Name '$export_symbols_regex'))}
                                            )
                                          ]
                                          op_id: Op_DPipe
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(func_fatal_error)} 
                                      {
                                        (DQ 
                                          (
'more than one -exported-symbols argument is not allowed'
                                          )
                                        )
                                      }
                                    )
                                  ]
                                  spids: [16777215 20531]
                                )
                              ]
                              spids: [16777215 20541]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ (X) ($ VSub_Name '$arg'))} {(Lit_Other '=')} 
                                          {(DQ (X-export-symbols))}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prev)
                                          op: Equal
                                          rhs: {(expsyms)}
                                          spids: [20563]
                                        )
                                      ]
                                      spids: [20563]
                                    )
                                  ]
                                  spids: [16777215 20560]
                                )
                              ]
                              else_action: [
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:prev)
                                      op: Equal
                                      rhs: {(expsyms_regex)}
                                      spids: [20570]
                                    )
                                  ]
                                  spids: [20570]
                                )
                              ]
                              spids: [20567 20574]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [20502 20507 20580 16777215]
                        )
                        (case_arm
                          pat_list: [{(-framework)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:prev)
                                  op: Equal
                                  rhs: {(framework)}
                                  spids: [20588]
                                )
                              ]
                              spids: [20588]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [20584 20585 20595 16777215]
                        )
                        (case_arm
                          pat_list: [{(-inst-prefix-dir)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:prev)
                                  op: Equal
                                  rhs: {(inst_prefix)}
                                  spids: [20603]
                                )
                              ]
                              spids: [20603]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [20599 20600 20610 16777215]
                        )
                        (case_arm
                          pat_list: [
                            {(-L) (Lit_Other '[') (A-Z) (Lit_Other ']') (Lit_Other '[') (A-Z) 
                              (Lit_Other ']') (Lit_Other '*') (Lit_Other ':') (Lit_Other '*')
                            }
                          ]
                          action: [
                            (Case
                              to_match: {($ VSub_Name '$with_gcc') (/) ($ VSub_Name '$host')}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(no/) (Lit_Other '*') (-) (Lit_Other '*') (-irix) (Lit_Other '*')}
                                    {(/) (Lit_Other '*') (-) (Lit_Other '*') (-irix) (Lit_Other '*')}
                                  ]
                                  action: [
                                    (C {(func_append)} {(compile_command)} 
                                      {(DQ (' ') ($ VSub_Name '$arg'))}
                                    )
                                    (C {(func_append)} {(finalize_command)} 
                                      {(DQ (' ') ($ VSub_Name '$arg'))}
                                    )
                                  ]
                                  spids: [20644 20659 20682 16777215]
                                )
                              ]
                              spids: [20635 20641 20685]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [20622 20632 20691 16777215]
                        )
                        (case_arm
                          pat_list: [{(-L) (Lit_Other '*')}]
                          action: [
                            (C {(func_stripname)} {(SQ <-L>)} {(SQ )} {(DQ ($ VSub_Name '$arg'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:dir)
                                  op: Equal
                                  rhs: {($ VSub_Name '$func_stripname_result')}
                                  spids: [20714]
                                )
                              ]
                              spids: [20714]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-z)} {(DQ ($ VSub_Name '$dir'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(DQ ($ VSub_Pound '$#'))} {(-gt)} {(0)})
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(func_fatal_error)} 
                                              {
                                                (DQ ('require no space between ') 
                                                  (EscapedLiteralPart
                                                    token: <Lit_EscapedChar '\\`'>
                                                  ) ("-L' and ") (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ($ VSub_Number '$1') ("'")
                                                )
                                              }
                                            )
                                          ]
                                          spids: [16777215 20745]
                                        )
                                      ]
                                      else_action: [
                                        (C {(func_fatal_error)} 
                                          {
                                            (DQ ('need path for ') 
                                              (EscapedLiteralPart
                                                token: <Lit_EscapedChar '\\`'>
                                              ) ("-L' option")
                                            )
                                          }
                                        )
                                      ]
                                      spids: [20760 20772]
                                    )
                                  ]
                                  spids: [16777215 20729]
                                )
                              ]
                              spids: [16777215 20775]
                            )
                            (Case
                              to_match: {($ VSub_Name '$dir')}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '[') 
                                      (EscapedLiteralPart
                                        token: <Lit_EscapedChar '\\\\'>
                                      ) (/) (Lit_Other ']') (Lit_Other '*')
                                    }
                                    {(Lit_Other '[') (A-Za-z) (Lit_Other ']') (Lit_Other ':') 
                                      (Lit_Other '[') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (/) (Lit_Other ']') (Lit_Other '*')
                                    }
                                  ]
                                  spids: [20789 20806 20808 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:absdir)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (AndOr
                                                        children: [
                                                          (C {(cd)} {(DQ ($ VSub_Name '$dir'))})
                                                          (C {(pwd)})
                                                        ]
                                                        op_id: Op_DAmp
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [20816 20826]
                                              )
                                            }
                                          spids: [20815]
                                        )
                                      ]
                                      spids: [20815]
                                    )
                                    (AndOr
                                      children: [
                                        (C {(test)} {(-z)} {(DQ ($ VSub_Name '$absdir'))})
                                        (C {(func_fatal_error)} 
                                          {
                                            (DQ ('cannot determine absolute directory name of ') 
                                              (EscapedLiteralPart
                                                token: <Lit_EscapedChar '\\`'>
                                              ) ($ VSub_Name '$dir') ("'")
                                            )
                                          }
                                        )
                                      ]
                                      op_id: Op_DAmp
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:dir)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$absdir'))}
                                          spids: [20851]
                                        )
                                      ]
                                      spids: [20851]
                                    )
                                  ]
                                  spids: [20811 20812 20857 16777215]
                                )
                              ]
                              spids: [20782 20786 20860]
                            )
                            (Case
                              to_match: {(DQ ($ VSub_Name '$deplibs') (' '))}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '*') (DQ (' -L') ($ VSub_Name '$dir') (' ')) 
                                      (Lit_Other '*')
                                    }
                                  ]
                                  spids: [20873 20880 20882 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:deplibs)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$deplibs') (' -L') ($ VSub_Name '$dir'))
                                            }
                                          spids: [20889]
                                        )
                                      ]
                                      spids: [20889]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:lib_search_path)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$lib_search_path') (' ') 
                                                ($ VSub_Name '$dir')
                                              )
                                            }
                                          spids: [20897]
                                        )
                                      ]
                                      spids: [20897]
                                    )
                                  ]
                                  spids: [20885 20886 20905 16777215]
                                )
                              ]
                              spids: [20863 20870 20908]
                            )
                            (Case
                              to_match: {($ VSub_Name '$host')}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '*') (-) (Lit_Other '*') (-cygwin) (Lit_Other '*')}
                                    {(Lit_Other '*') (-) (Lit_Other '*') (-mingw) (Lit_Other '*')}
                                    {(Lit_Other '*') (-) (Lit_Other '*') (-pw32) (Lit_Other '*')}
                                    {(Lit_Other '*') (-) (Lit_Other '*') (-os2) (Lit_Other '*')}
                                    {(Lit_Other '*') (-cegcc) (Lit_Other '*')}
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:testbindir)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (Pipeline
                                                        children: [
                                                          (C {($ VSub_Name '$ECHO')} 
                                                            {(DQ (X) ($ VSub_Name '$dir'))}
                                                          )
                                                          (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                            {(SQ <'s*/lib$*/bin*'>)}
                                                          )
                                                        ]
                                                        negated: False
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [20957 20974]
                                              )
                                            }
                                          spids: [20956]
                                        )
                                      ]
                                      spids: [20956]
                                    )
                                    (Case
                                      to_match: 
                                        {(Lit_Other ':') ($ VSub_Name '$dllsearchpath') 
                                          (Lit_Other ':')
                                        }
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (DQ (':') ($ VSub_Name '$dir') (':')) 
                                              (Lit_Other '*')
                                            }
                                          ]
                                          spids: [20986 20993 20995 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other ':') (Lit_Other ':')}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:dllsearchpath)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$dir')}
                                                  spids: [21002]
                                                )
                                              ]
                                              spids: [21002]
                                            )
                                          ]
                                          spids: [20998 21000 21004 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:dllsearchpath)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$dllsearchpath') (':') 
                                                        ($ VSub_Name '$dir')
                                                      )
                                                    }
                                                  spids: [21010]
                                                )
                                              ]
                                              spids: [21010]
                                            )
                                          ]
                                          spids: [21007 21008 21016 16777215]
                                        )
                                      ]
                                      spids: [20977 20983 21019]
                                    )
                                    (Case
                                      to_match: 
                                        {(Lit_Other ':') ($ VSub_Name '$dllsearchpath') 
                                          (Lit_Other ':')
                                        }
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') 
                                              (DQ (':') ($ VSub_Name '$testbindir') (':')) (Lit_Other '*')
                                            }
                                          ]
                                          spids: [21031 21038 21040 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other ':') (Lit_Other ':')}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:dllsearchpath)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$testbindir')}
                                                  spids: [21047]
                                                )
                                              ]
                                              spids: [21047]
                                            )
                                          ]
                                          spids: [21043 21045 21049 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:dllsearchpath)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$dllsearchpath') (':') 
                                                        ($ VSub_Name '$testbindir')
                                                      )
                                                    }
                                                  spids: [21055]
                                                )
                                              ]
                                              spids: [21055]
                                            )
                                          ]
                                          spids: [21052 21053 21061 16777215]
                                        )
                                      ]
                                      spids: [21022 21028 21064]
                                    )
                                  ]
                                  spids: [20918 20953 21067 16777215]
                                )
                              ]
                              spids: [20911 20915 21070]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [20695 20697 21076 16777215]
                        )
                        (case_arm
                          pat_list: [{(-l) (Lit_Other '*')}]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          children: [
                                            (C {(test)} {(DQ (X) ($ VSub_Name '$arg'))} 
                                              {(Lit_Other '=')} {(DQ (X-lc))}
                                            )
                                            (C {(test)} {(DQ (X) ($ VSub_Name '$arg'))} 
                                              {(Lit_Other '=')} {(DQ (X-lm))}
                                            )
                                          ]
                                          op_id: Op_DPipe
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Case
                                      to_match: {($ VSub_Name '$host')}
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-cygwin) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-mingw) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-pw32) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-beos) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-cegcc) (Lit_Other '*')}
                                          ]
                                          action: [(ControlFlow token:<ControlFlow_Continue continue>)]
                                          spids: [21126 21161 21171 16777215]
                                        )
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-os2) (Lit_Other '*')}
                                          ]
                                          action: [
                                            (AndOr
                                              children: [
                                                (C {(test)} {(DQ (X) ($ VSub_Name '$arg'))} 
                                                  {(Lit_Other '=')} {(DQ (X-lc))}
                                                )
                                                (ControlFlow
                                                  token: <ControlFlow_Continue continue>
                                                )
                                              ]
                                              op_id: Op_DAmp
                                            )
                                          ]
                                          spids: [21174 21179 21204 16777215]
                                        )
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-openbsd) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-freebsd) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-dragonfly) 
                                              (Lit_Other '*')
                                            }
                                          ]
                                          action: [
                                            (AndOr
                                              children: [
                                                (C {(test)} {(DQ (X) ($ VSub_Name '$arg'))} 
                                                  {(Lit_Other '=')} {(DQ (X-lc))}
                                                )
                                                (ControlFlow
                                                  token: <ControlFlow_Continue continue>
                                                )
                                              ]
                                              op_id: Op_DAmp
                                            )
                                          ]
                                          spids: [21207 21228 21253 16777215]
                                        )
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-rhapsody) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-darwin1.) 
                                              (Lit_Other '[') (012) (Lit_Other ']')
                                            }
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:deplibs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$deplibs') 
                                                        (' System.ltframework')
                                                      )
                                                    }
                                                  spids: [21278]
                                                )
                                              ]
                                              spids: [21278]
                                            )
                                            (ControlFlow
                                              token: <ControlFlow_Continue continue>
                                            )
                                          ]
                                          spids: [21256 21271 21288 16777215]
                                        )
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-sco3.2v5) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-sco5v6) 
                                              (Lit_Other '*')
                                            }
                                          ]
                                          action: [
                                            (AndOr
                                              children: [
                                                (C {(test)} {(DQ (X) ($ VSub_Name '$arg'))} 
                                                  {(Lit_Other '=')} {(DQ (X-lc))}
                                                )
                                                (ControlFlow
                                                  token: <ControlFlow_Continue continue>
                                                )
                                              ]
                                              op_id: Op_DAmp
                                            )
                                          ]
                                          spids: [21291 21304 21329 16777215]
                                        )
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-sysv4.2uw2) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-sysv5) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-unixware) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-OpenUNIX) 
                                              (Lit_Other '*')
                                            }
                                          ]
                                          action: [
                                            (AndOr
                                              children: [
                                                (C {(test)} {(DQ (X) ($ VSub_Name '$arg'))} 
                                                  {(Lit_Other '=')} {(DQ (X-lc))}
                                                )
                                                (ControlFlow
                                                  token: <ControlFlow_Continue continue>
                                                )
                                              ]
                                              op_id: Op_DAmp
                                            )
                                          ]
                                          spids: [21332 21361 21386 16777215]
                                        )
                                      ]
                                      spids: [21119 21123 21389]
                                    )
                                  ]
                                  spids: [16777215 21116]
                                )
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ (X) ($ VSub_Name '$arg'))} {(Lit_Other '=')} 
                                          {(DQ (X-lc_r))}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Case
                                      to_match: {($ VSub_Name '$host')}
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-openbsd) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-freebsd) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-dragonfly) 
                                              (Lit_Other '*')
                                            }
                                          ]
                                          action: [(ControlFlow token:<ControlFlow_Continue continue>)]
                                          spids: [21418 21439 21449 16777215]
                                        )
                                      ]
                                      spids: [21411 21415 21452]
                                    )
                                  ]
                                  spids: [21392 21408]
                                )
                              ]
                              spids: [16777215 21455]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:deplibs)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$deplibs') (' ') ($ VSub_Name '$arg'))}
                                  spids: [21458]
                                )
                              ]
                              spids: [21458]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [21080 21082 21469 16777215]
                        )
                        (case_arm
                          pat_list: [{(-module)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:module)
                                  op: Equal
                                  rhs: {(yes)}
                                  spids: [21477]
                                )
                              ]
                              spids: [21477]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [21473 21474 21484 16777215]
                        )
                        (case_arm
                          pat_list: [{(-model)} {(-arch)} {(-isysroot)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:compiler_flags)
                                  op: Equal
                                  rhs: 
                                    {(DQ ($ VSub_Name '$compiler_flags') (' ') ($ VSub_Name '$arg'))}
                                  spids: [21508]
                                )
                              ]
                              spids: [21508]
                            )
                            (C {(func_append)} {(compile_command)} {(DQ (' ') ($ VSub_Name '$arg'))})
                            (C {(func_append)} {(finalize_command)} {(DQ (' ') ($ VSub_Name '$arg'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:prev)
                                  op: Equal
                                  rhs: {(xcompiler)}
                                  spids: [21536]
                                )
                              ]
                              spids: [21536]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [21500 21505 21543 16777215]
                        )
                        (case_arm
                          pat_list: [
                            {(-mt)}
                            {(-mthreads)}
                            {(-kthread)}
                            {(-Kthread)}
                            {(-pthread)}
                            {(-pthreads)}
                            {(--thread-safe)}
                            {(-threads)}
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:compiler_flags)
                                  op: Equal
                                  rhs: 
                                    {(DQ ($ VSub_Name '$compiler_flags') (' ') ($ VSub_Name '$arg'))}
                                  spids: [21565]
                                )
                              ]
                              spids: [21565]
                            )
                            (C {(func_append)} {(compile_command)} {(DQ (' ') ($ VSub_Name '$arg'))})
                            (C {(func_append)} {(finalize_command)} {(DQ (' ') ($ VSub_Name '$arg'))})
                            (Case
                              to_match: {(DQ ($ VSub_Name '$new_inherited_linker_flags') (' '))}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '*') (DQ (' ') ($ VSub_Name '$arg') (' ')) 
                                      (Lit_Other '*')
                                    }
                                  ]
                                  spids: [21603 21610 21612 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:new_inherited_linker_flags)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$new_inherited_linker_flags') (' ') 
                                                ($ VSub_Name '$arg')
                                              )
                                            }
                                          spids: [21619]
                                        )
                                      ]
                                      spids: [21619]
                                    )
                                  ]
                                  spids: [21615 21617 21626 16777215]
                                )
                              ]
                              spids: [21593 21600 21629]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [21547 21562 21635 16777215]
                        )
                        (case_arm
                          pat_list: [{(-multi_module)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:single_module)
                                  op: Equal
                                  rhs: {(DQ (${ VSub_Name wl) (-multi_module))}
                                  spids: [21643]
                                )
                              ]
                              spids: [21643]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [21639 21640 21655 16777215]
                        )
                        (case_arm
                          pat_list: [{(-no-fast-install)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:fast_install)
                                  op: Equal
                                  rhs: {(no)}
                                  spids: [21663]
                                )
                              ]
                              spids: [21663]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [21659 21660 21670 16777215]
                        )
                        (case_arm
                          pat_list: [{(-no-install)}]
                          action: [
                            (Case
                              to_match: {($ VSub_Name '$host')}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '*') (-) (Lit_Other '*') (-cygwin) (Lit_Other '*')}
                                    {(Lit_Other '*') (-) (Lit_Other '*') (-mingw) (Lit_Other '*')}
                                    {(Lit_Other '*') (-) (Lit_Other '*') (-pw32) (Lit_Other '*')}
                                    {(Lit_Other '*') (-) (Lit_Other '*') (-os2) (Lit_Other '*')}
                                    {(Lit_Other '*') (-) (Lit_Other '*') (-darwin) (Lit_Other '*')}
                                    {(Lit_Other '*') (-cegcc) (Lit_Other '*')}
                                  ]
                                  action: [
                                    (C {(func_warning)} 
                                      {
                                        (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                          ("-no-install' is ignored for ") ($ VSub_Name '$host')
                                        )
                                      }
                                    )
                                    (C {(func_warning)} 
                                      {
                                        (DQ ('assuming ') 
                                          (EscapedLiteralPart
                                            token: <Lit_EscapedChar '\\`'>
                                          ) ("-no-fast-install' instead")
                                        )
                                      }
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:fast_install)
                                          op: Equal
                                          rhs: {(no)}
                                          spids: [21757]
                                        )
                                      ]
                                      spids: [21757]
                                    )
                                  ]
                                  spids: [21685 21728 21761 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:no_install)
                                          op: Equal
                                          rhs: {(yes)}
                                          spids: [21767]
                                        )
                                      ]
                                      spids: [21767]
                                    )
                                  ]
                                  spids: [21764 21765 21770 16777215]
                                )
                              ]
                              spids: [21678 21682 21773]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [21674 21675 21779 16777215]
                        )
                        (case_arm
                          pat_list: [{(-no-undefined)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:allow_undefined)
                                  op: Equal
                                  rhs: {(no)}
                                  spids: [21787]
                                )
                              ]
                              spids: [21787]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [21783 21784 21794 16777215]
                        )
                        (case_arm
                          pat_list: [{(-objectlist)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:prev)
                                  op: Equal
                                  rhs: {(objectlist)}
                                  spids: [21802]
                                )
                              ]
                              spids: [21802]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [21798 21799 21809 16777215]
                        )
                        (case_arm
                          pat_list: [{(-o)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:prev)
                                  op: Equal
                                  rhs: {(output)}
                                  spids: [21816]
                                )
                              ]
                              spids: [21816]
                            )
                          ]
                          spids: [21813 21814 21819 16777215]
                        )
                        (case_arm
                          pat_list: [{(-precious-files-regex)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:prev)
                                  op: Equal
                                  rhs: {(precious_regex)}
                                  spids: [21827]
                                )
                              ]
                              spids: [21827]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [21823 21824 21834 16777215]
                        )
                        (case_arm
                          pat_list: [{(-release)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:prev)
                                  op: Equal
                                  rhs: {(release)}
                                  spids: [21842]
                                )
                              ]
                              spids: [21842]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [21838 21839 21849 16777215]
                        )
                        (case_arm
                          pat_list: [{(-rpath)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:prev)
                                  op: Equal
                                  rhs: {(rpath)}
                                  spids: [21857]
                                )
                              ]
                              spids: [21857]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [21853 21854 21864 16777215]
                        )
                        (case_arm
                          pat_list: [{(-R)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:prev)
                                  op: Equal
                                  rhs: {(xrpath)}
                                  spids: [21872]
                                )
                              ]
                              spids: [21872]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [21868 21869 21879 16777215]
                        )
                        (case_arm
                          pat_list: [{(-R) (Lit_Other '*')}]
                          action: [
                            (C {(func_stripname)} {(SQ <-R>)} {(SQ )} {(DQ ($ VSub_Name '$arg'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:dir)
                                  op: Equal
                                  rhs: {($ VSub_Name '$func_stripname_result')}
                                  spids: [21902]
                                )
                              ]
                              spids: [21902]
                            )
                            (Case
                              to_match: {($ VSub_Name '$dir')}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '[') 
                                      (EscapedLiteralPart
                                        token: <Lit_EscapedChar '\\\\'>
                                      ) (/) (Lit_Other ']') (Lit_Other '*')
                                    }
                                    {(Lit_Other '[') (A-Za-z) (Lit_Other ']') (Lit_Other ':') 
                                      (Lit_Other '[') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (/) (Lit_Other ']') (Lit_Other '*')
                                    }
                                  ]
                                  spids: [21917 21934 21936 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (C {(func_fatal_error)} 
                                      {(DQ ('only absolute run-paths are allowed'))}
                                    )
                                  ]
                                  spids: [21939 21940 21950 16777215]
                                )
                              ]
                              spids: [21910 21914 21953]
                            )
                            (Case
                              to_match: {(DQ ($ VSub_Name '$xrpath') (' '))}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '*') (DQ (' ') ($ VSub_Name '$dir') (' ')) 
                                      (Lit_Other '*')
                                    }
                                  ]
                                  spids: [21966 21973 21975 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:xrpath)
                                          op: Equal
                                          rhs: 
                                            {(DQ ($ VSub_Name '$xrpath') (' ') ($ VSub_Name '$dir'))}
                                          spids: [21981]
                                        )
                                      ]
                                      spids: [21981]
                                    )
                                  ]
                                  spids: [21978 21979 21988 16777215]
                                )
                              ]
                              spids: [21956 21963 21991]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [21883 21885 21997 16777215]
                        )
                        (case_arm
                          pat_list: [{(-shared)}]
                          action: [(ControlFlow token:<ControlFlow_Continue continue>)]
                          spids: [22001 22002 22012 16777215]
                        )
                        (case_arm
                          pat_list: [{(-shrext)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:prev)
                                  op: Equal
                                  rhs: {(shrext)}
                                  spids: [22020]
                                )
                              ]
                              spids: [22020]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [22016 22017 22027 16777215]
                        )
                        (case_arm
                          pat_list: [{(-static)} {(-static-libtool-libs)}]
                          action: [(ControlFlow token:<ControlFlow_Continue continue>)]
                          spids: [22031 22036 22062 16777215]
                        )
                        (case_arm
                          pat_list: [{(-thread-safe)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:thread_safe)
                                  op: Equal
                                  rhs: {(yes)}
                                  spids: [22070]
                                )
                              ]
                              spids: [22070]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [22066 22067 22077 16777215]
                        )
                        (case_arm
                          pat_list: [{(-version-info)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:prev)
                                  op: Equal
                                  rhs: {(vinfo)}
                                  spids: [22085]
                                )
                              ]
                              spids: [22085]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [22081 22082 22092 16777215]
                        )
                        (case_arm
                          pat_list: [{(-version-number)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:prev)
                                  op: Equal
                                  rhs: {(vinfo)}
                                  spids: [22100]
                                )
                              ]
                              spids: [22100]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:vinfo_number)
                                  op: Equal
                                  rhs: {(yes)}
                                  spids: [22104]
                                )
                              ]
                              spids: [22104]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [22096 22097 22111 16777215]
                        )
                        (case_arm
                          pat_list: [{(-weak)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:prev)
                                  op: Equal
                                  rhs: {(weak)}
                                  spids: [22119]
                                )
                              ]
                              spids: [22119]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [22115 22116 22126 16777215]
                        )
                        (case_arm
                          pat_list: [{(-Wc) (Lit_Comma ',') (Lit_Other '*')}]
                          action: [
                            (C {(func_stripname)} {(SQ <'-Wc,'>)} {(SQ )} {(DQ ($ VSub_Name '$arg'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:args)
                                  op: Equal
                                  rhs: {($ VSub_Name '$func_stripname_result')}
                                  spids: [22150]
                                )
                              ]
                              spids: [22150]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:arg)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [22154]
                                )
                              ]
                              spids: [22154]
                            )
                            (Sentence
                              child: 
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:save_ifs)
                                      op: Equal
                                      rhs: {(DQ ($ VSub_Name '$IFS'))}
                                      spids: [22157]
                                    )
                                  ]
                                  spids: [22157]
                                )
                              terminator: <Op_Semi ';'>
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:IFS)
                                  op: Equal
                                  rhs: {(SQ <','>)}
                                  spids: [22163]
                                )
                              ]
                              spids: [22163]
                            )
                            (ForEach
                              iter_name: flag
                              iter_words: [{($ VSub_Name '$args')}]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:IFS)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$save_ifs'))}
                                          spids: [22181]
                                        )
                                      ]
                                      spids: [22181]
                                    )
                                    (C {(func_quote_for_eval)} {(DQ ($ VSub_Name '$flag'))})
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:arg)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$arg') (' ') ($ VSub_Name '$wl') 
                                                ($ VSub_Name '$func_quote_for_eval_result')
                                              )
                                            }
                                          spids: [22194]
                                        )
                                      ]
                                      spids: [22194]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:compiler_flags)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$compiler_flags') (' ') 
                                                ($ VSub_Name '$func_quote_for_eval_result')
                                              )
                                            }
                                          spids: [22203]
                                        )
                                      ]
                                      spids: [22203]
                                    )
                                  ]
                                  spids: [22178 22211]
                                )
                              spids: [22174 22176]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:IFS)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$save_ifs'))}
                                  spids: [22214]
                                )
                              ]
                              spids: [22214]
                            )
                            (C {(func_stripname)} {(SQ <' '>)} {(SQ )} {(DQ ($ VSub_Name '$arg'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:arg)
                                  op: Equal
                                  rhs: {($ VSub_Name '$func_stripname_result')}
                                  spids: [22234]
                                )
                              ]
                              spids: [22234]
                            )
                          ]
                          spids: [22130 22133 22238 16777215]
                        )
                        (case_arm
                          pat_list: [{(-Wl) (Lit_Comma ',') (Lit_Other '*')}]
                          action: [
                            (C {(func_stripname)} {(SQ <'-Wl,'>)} {(SQ )} {(DQ ($ VSub_Name '$arg'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:args)
                                  op: Equal
                                  rhs: {($ VSub_Name '$func_stripname_result')}
                                  spids: [22262]
                                )
                              ]
                              spids: [22262]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:arg)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [22266]
                                )
                              ]
                              spids: [22266]
                            )
                            (Sentence
                              child: 
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:save_ifs)
                                      op: Equal
                                      rhs: {(DQ ($ VSub_Name '$IFS'))}
                                      spids: [22269]
                                    )
                                  ]
                                  spids: [22269]
                                )
                              terminator: <Op_Semi ';'>
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:IFS)
                                  op: Equal
                                  rhs: {(SQ <','>)}
                                  spids: [22275]
                                )
                              ]
                              spids: [22275]
                            )
                            (ForEach
                              iter_name: flag
                              iter_words: [{($ VSub_Name '$args')}]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:IFS)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$save_ifs'))}
                                          spids: [22293]
                                        )
                                      ]
                                      spids: [22293]
                                    )
                                    (C {(func_quote_for_eval)} {(DQ ($ VSub_Name '$flag'))})
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:arg)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$arg') (' ') ($ VSub_Name '$wl') 
                                                ($ VSub_Name '$func_quote_for_eval_result')
                                              )
                                            }
                                          spids: [22306]
                                        )
                                      ]
                                      spids: [22306]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:compiler_flags)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$compiler_flags') (' ') 
                                                ($ VSub_Name '$wl') ($ VSub_Name '$func_quote_for_eval_result')
                                              )
                                            }
                                          spids: [22315]
                                        )
                                      ]
                                      spids: [22315]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:linker_flags)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$linker_flags') (' ') 
                                                ($ VSub_Name '$func_quote_for_eval_result')
                                              )
                                            }
                                          spids: [22324]
                                        )
                                      ]
                                      spids: [22324]
                                    )
                                  ]
                                  spids: [22290 22332]
                                )
                              spids: [22286 22288]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:IFS)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$save_ifs'))}
                                  spids: [22335]
                                )
                              ]
                              spids: [22335]
                            )
                            (C {(func_stripname)} {(SQ <' '>)} {(SQ )} {(DQ ($ VSub_Name '$arg'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:arg)
                                  op: Equal
                                  rhs: {($ VSub_Name '$func_stripname_result')}
                                  spids: [22355]
                                )
                              ]
                              spids: [22355]
                            )
                          ]
                          spids: [22242 22245 22359 16777215]
                        )
                        (case_arm
                          pat_list: [{(-Xcompiler)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:prev)
                                  op: Equal
                                  rhs: {(xcompiler)}
                                  spids: [22367]
                                )
                              ]
                              spids: [22367]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [22363 22364 22374 16777215]
                        )
                        (case_arm
                          pat_list: [{(-Xlinker)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:prev)
                                  op: Equal
                                  rhs: {(xlinker)}
                                  spids: [22382]
                                )
                              ]
                              spids: [22382]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [22378 22379 22389 16777215]
                        )
                        (case_arm
                          pat_list: [{(-XCClinker)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:prev)
                                  op: Equal
                                  rhs: {(xcclinker)}
                                  spids: [22397]
                                )
                              ]
                              spids: [22397]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [22393 22394 22404 16777215]
                        )
                        (case_arm
                          pat_list: [{(-msg_) (Lit_Other '*')}]
                          action: [
                            (C {(func_quote_for_eval)} {(DQ ($ VSub_Name '$arg'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:arg)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$func_quote_for_eval_result'))}
                                  spids: [22424]
                                )
                              ]
                              spids: [22424]
                            )
                          ]
                          spids: [22412 22414 22430 16777215]
                        )
                        (case_arm
                          pat_list: [
                            {(-64)}
                            {(-mips) (Lit_Other '[') (0-9) (Lit_Other ']')}
                            {(-r) (Lit_Other '[') (0-9) (Lit_Other ']') (Lit_Other '[') (0-9) 
                              (Lit_Other ']') (Lit_Other '*')
                            }
                            {(-xarch) (Lit_Other '=') (Lit_Other '*')}
                            {(-xtarget) (Lit_Other '=') (Lit_Other '*')}
                            {(Lit_Other '+') (DA) (Lit_Other '*')}
                            {(Lit_Other '+') (DD) (Lit_Other '*')}
                            {(-q) (Lit_Other '*')}
                            {(-m) (Lit_Other '*')}
                            {(-t) (Lit_Other '[') (45) (Lit_Other ']') (Lit_Other '*')}
                            {(-txscale) (Lit_Other '*')}
                            {(-p)}
                            {(-pg)}
                            {(--coverage)}
                            {(-fprofile-) (Lit_Other '*')}
                            {(-F) (Lit_Other '*')}
                            {(Lit_Other '@') (Lit_Other '*')}
                          ]
                          action: [
                            (C {(func_quote_for_eval)} {(DQ ($ VSub_Name '$arg'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:arg)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$func_quote_for_eval_result'))}
                                  spids: [22548]
                                )
                              ]
                              spids: [22548]
                            )
                            (C {(func_append)} {(compile_command)} {(DQ (' ') ($ VSub_Name '$arg'))})
                            (C {(func_append)} {(finalize_command)} {(DQ (' ') ($ VSub_Name '$arg'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:compiler_flags)
                                  op: Equal
                                  rhs: 
                                    {(DQ ($ VSub_Name '$compiler_flags') (' ') ($ VSub_Name '$arg'))}
                                  spids: [22574]
                                )
                              ]
                              spids: [22574]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [22474 22538 22585 16777215]
                        )
                        (case_arm
                          pat_list: [{(-) (Lit_Other '*')} {(Lit_Other '+') (Lit_Other '*')}]
                          action: [
                            (C {(func_quote_for_eval)} {(DQ ($ VSub_Name '$arg'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:arg)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$func_quote_for_eval_result'))}
                                  spids: [22610]
                                )
                              ]
                              spids: [22610]
                            )
                          ]
                          spids: [22593 22600 22616 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*') (.) ($ VSub_Name '$objext')}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:objs)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$objs') (' ') ($ VSub_Name '$arg'))}
                                  spids: [22630]
                                )
                              ]
                              spids: [22630]
                            )
                          ]
                          spids: [22620 22623 22638 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*') (.lo)}]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(func_lalib_unsafe_p)} {(DQ ($ VSub_Name '$arg'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:pic_object)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [22668]
                                        )
                                      ]
                                      spids: [22668]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:non_pic_object)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [22671]
                                        )
                                      ]
                                      spids: [22671]
                                    )
                                    (C {(func_source)} {(DQ ($ VSub_Name '$arg'))})
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-z)} {(DQ ($ VSub_Name '$pic_object'))})
                                                    (AndOr
                                                      children: [
                                                        (C {(test)} {(-z)} 
                                                          {(DQ ($ VSub_Name '$non_pic_object'))}
                                                        )
                                                        (AndOr
                                                          children: [
                                                            (C {(test)} 
                                                              {(DQ ($ VSub_Name '$pic_object'))} {(Lit_Other '=')} {(none)}
                                                            )
                                                            (C {(test)} 
                                                              {(DQ ($ VSub_Name '$non_pic_object'))} {(Lit_Other '=')} {(none)}
                                                            )
                                                          ]
                                                          op_id: Op_DAmp
                                                        )
                                                      ]
                                                      op_id: Op_DPipe
                                                    )
                                                  ]
                                                  op_id: Op_DPipe
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(func_fatal_error)} 
                                              {
                                                (DQ ('cannot find name of object for ') 
                                                  (EscapedLiteralPart
                                                    token: <Lit_EscapedChar '\\`'>
                                                  ) ($ VSub_Name '$arg') ("'")
                                                )
                                              }
                                            )
                                          ]
                                          spids: [16777215 22735]
                                        )
                                      ]
                                      spids: [16777215 22748]
                                    )
                                    (C {(func_dirname)} {(DQ ($ VSub_Name '$arg'))} {(DQ (/))} {(DQ )})
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:xdir)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$func_dirname_result'))}
                                          spids: [22770]
                                        )
                                      ]
                                      spids: [22770]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(DQ ($ VSub_Name '$pic_object'))} 
                                                  {(KW_Bang '!') (Lit_Other '=')} {(none)}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:pic_object)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$xdir') 
                                                        ($ VSub_Name '$pic_object')
                                                      )
                                                    }
                                                  spids: [22798]
                                                )
                                              ]
                                              spids: [22798]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(DQ ($ VSub_Name '$prev'))} 
                                                          {(Lit_Other '=')} {(dlfiles)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (AndOr
                                                                  children: [
                                                                    (C {(test)} 
                                                                      {
                                                                        (DQ 
                                                                          ($ VSub_Name 
'$build_libtool_libs'
                                                                          )
                                                                        )
                                                                      } {(Lit_Other '=')} {(yes)}
                                                                    )
                                                                    (C {(test)} 
                                                                      {
                                                                        (DQ 
                                                                          ($ VSub_Name 
'$dlopen_support'
                                                                          )
                                                                        )
                                                                      } {(Lit_Other '=')} {(yes)}
                                                                    )
                                                                  ]
                                                                  op_id: Op_DAmp
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:dlfiles)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ ($ VSub_Name '$dlfiles') 
                                                                        (' ') ($ VSub_Name '$pic_object')
                                                                      )
                                                                    }
                                                                  spids: [22850]
                                                                )
                                                              ]
                                                              spids: [22850]
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:prev)
                                                                  op: Equal
                                                                  rhs: {(SQ )}
                                                                  spids: [22858]
                                                                )
                                                              ]
                                                              spids: [22858]
                                                            )
                                                            (ControlFlow
                                                              token: <ControlFlow_Continue continue>
                                                            )
                                                          ]
                                                          spids: [16777215 22847]
                                                        )
                                                      ]
                                                      else_action: [
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:prev)
                                                              op: Equal
                                                              rhs: {(dlprefiles)}
                                                              spids: [22871]
                                                            )
                                                          ]
                                                          spids: [22871]
                                                        )
                                                      ]
                                                      spids: [22864 22875]
                                                    )
                                                  ]
                                                  spids: [16777215 22819]
                                                )
                                              ]
                                              spids: [16777215 22878]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(DQ ($ VSub_Name '$prev'))} 
                                                          {(Lit_Other '=')} {(dlprefiles)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:dlprefiles)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$dlprefiles') (' ') 
                                                                ($ VSub_Name '$pic_object')
                                                              )
                                                            }
                                                          spids: [22906]
                                                        )
                                                      ]
                                                      spids: [22906]
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:prev)
                                                          op: Equal
                                                          rhs: {(SQ )}
                                                          spids: [22914]
                                                        )
                                                      ]
                                                      spids: [22914]
                                                    )
                                                  ]
                                                  spids: [16777215 22899]
                                                )
                                              ]
                                              spids: [16777215 22917]
                                            )
                                            (C {(func_append)} {(libobjs)} 
                                              {(DQ (' ') ($ VSub_Name '$pic_object'))}
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:arg)
                                                  op: Equal
                                                  rhs: {(DQ ($ VSub_Name '$pic_object'))}
                                                  spids: [22935]
                                                )
                                              ]
                                              spids: [22935]
                                            )
                                          ]
                                          spids: [16777215 22791]
                                        )
                                      ]
                                      spids: [16777215 22941]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(DQ ($ VSub_Name '$non_pic_object'))} 
                                                  {(KW_Bang '!') (Lit_Other '=')} {(none)}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:non_pic_object)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$xdir') 
                                                        ($ VSub_Name '$non_pic_object')
                                                      )
                                                    }
                                                  spids: [22970]
                                                )
                                              ]
                                              spids: [22970]
                                            )
                                            (C {(func_append)} {(non_pic_objects)} 
                                              {(DQ (' ') ($ VSub_Name '$non_pic_object'))}
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (AndOr
                                                          children: [
                                                            (C {(test)} {(-z)} 
                                                              {(DQ ($ VSub_Name '$pic_object'))}
                                                            )
                                                            (C {(test)} 
                                                              {(DQ ($ VSub_Name '$pic_object'))} {(Lit_Other '=')} {(none)}
                                                            )
                                                          ]
                                                          op_id: Op_DPipe
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:arg)
                                                          op: Equal
                                                          rhs: {(DQ ($ VSub_Name '$non_pic_object'))}
                                                          spids: [23019]
                                                        )
                                                      ]
                                                      spids: [23019]
                                                    )
                                                  ]
                                                  spids: [16777215 23016]
                                                )
                                              ]
                                              spids: [16777215 23025]
                                            )
                                          ]
                                          spids: [16777215 22963]
                                        )
                                      ]
                                      else_action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:non_pic_object)
                                              op: Equal
                                              rhs: {(DQ ($ VSub_Name '$pic_object'))}
                                              spids: [23039]
                                            )
                                          ]
                                          spids: [23039]
                                        )
                                        (C {(func_append)} {(non_pic_objects)} 
                                          {(DQ (' ') ($ VSub_Name '$non_pic_object'))}
                                        )
                                      ]
                                      spids: [23028 23055]
                                    )
                                  ]
                                  spids: [16777215 22665]
                                )
                              ]
                              else_action: [
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: (C {($ VSub_Name '$opt_dry_run')})
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [
                                        (C {(func_dirname)} {(DQ ($ VSub_Name '$arg'))} {(DQ (/))} {(DQ )})
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:xdir)
                                              op: Equal
                                              rhs: {(DQ ($ VSub_Name '$func_dirname_result'))}
                                              spids: [23091]
                                            )
                                          ]
                                          spids: [23091]
                                        )
                                        (C {(func_lo2o)} {(DQ ($ VSub_Name '$arg'))})
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:pic_object)
                                              op: Equal
                                              rhs: 
                                                {($ VSub_Name '$xdir') ($ VSub_Name '$objdir') (/) 
                                                  ($ VSub_Name '$func_lo2o_result')
                                                }
                                              spids: [23105]
                                            )
                                          ]
                                          spids: [23105]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:non_pic_object)
                                              op: Equal
                                              rhs: 
                                                {($ VSub_Name '$xdir') 
                                                  ($ VSub_Name '$func_lo2o_result')
                                                }
                                              spids: [23112]
                                            )
                                          ]
                                          spids: [23112]
                                        )
                                        (C {(func_append)} {(libobjs)} 
                                          {(DQ (' ') ($ VSub_Name '$pic_object'))}
                                        )
                                        (C {(func_append)} {(non_pic_objects)} 
                                          {(DQ (' ') ($ VSub_Name '$non_pic_object'))}
                                        )
                                      ]
                                      spids: [16777215 23070]
                                    )
                                  ]
                                  else_action: [
                                    (C {(func_fatal_error)} 
                                      {
                                        (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                          ($ VSub_Name '$arg') ("' is not a valid libtool object")
                                        )
                                      }
                                    )
                                  ]
                                  spids: [23137 23149]
                                )
                              ]
                              spids: [23058 23152]
                            )
                          ]
                          spids: [22642 22644 23155 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*') (.) ($ VSub_Name '$libext')}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:deplibs)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$deplibs') (' ') ($ VSub_Name '$arg'))}
                                  spids: [23169]
                                )
                              ]
                              spids: [23169]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:old_deplibs)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$old_deplibs') (' ') ($ VSub_Name '$arg'))}
                                  spids: [23177]
                                )
                              ]
                              spids: [23177]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [23159 23162 23188 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*') (.la)}]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$prev'))} {(Lit_Other '=')} 
                                          {(dlfiles)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:dlfiles)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$dlfiles') (' ') ($ VSub_Name '$arg'))
                                            }
                                          spids: [23222]
                                        )
                                      ]
                                      spids: [23222]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prev)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [23230]
                                        )
                                      ]
                                      spids: [23230]
                                    )
                                  ]
                                  spids: [16777215 23215]
                                )
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$prev'))} {(Lit_Other '=')} 
                                          {(dlprefiles)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:dlprefiles)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$dlprefiles') (' ') 
                                                ($ VSub_Name '$arg')
                                              )
                                            }
                                          spids: [23253]
                                        )
                                      ]
                                      spids: [23253]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:prev)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [23261]
                                        )
                                      ]
                                      spids: [23261]
                                    )
                                  ]
                                  spids: [23233 23246]
                                )
                              ]
                              else_action: [
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:deplibs)
                                      op: Equal
                                      rhs: {(DQ ($ VSub_Name '$deplibs') (' ') ($ VSub_Name '$arg'))}
                                      spids: [23267]
                                    )
                                  ]
                                  spids: [23267]
                                )
                              ]
                              spids: [23264 23275]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [23192 23194 23281 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*')}]
                          action: [
                            (C {(func_quote_for_eval)} {(DQ ($ VSub_Name '$arg'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:arg)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$func_quote_for_eval_result'))}
                                  spids: [23308]
                                )
                              ]
                              spids: [23308]
                            )
                          ]
                          spids: [23289 23290 23314 16777215]
                        )
                      ]
                      spids: [20363 20367 23317]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$arg'))})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {(func_append)} {(compile_command)} {(DQ (' ') ($ VSub_Name '$arg'))})
                            (C {(func_append)} {(finalize_command)} {(DQ (' ') ($ VSub_Name '$arg'))})
                          ]
                          spids: [16777215 23339]
                        )
                      ]
                      spids: [16777215 23362]
                    )
                  ]
                  spids: [18844 23365]
                )
            )
            (AndOr
              children: [
                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$prev'))})
                (C {(func_fatal_help)} 
                  {
                    (DQ ('the ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                      ($ VSub_Name '$prevarg') ("' option requires an argument")
                    )
                  }
                )
              ]
              op_id: Op_DAmp
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (AndOr
                          children: [
                            (C {(test)} {(DQ ($ VSub_Name '$export_dynamic'))} {(Lit_Other '=')} {(yes)})
                            (C {(test)} {(-n)} {(DQ ($ VSub_Name '$export_dynamic_flag_spec'))})
                          ]
                          op_id: Op_DAmp
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(eval)} 
                      {(Lit_VarLike 'arg=') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                        ($ VSub_Name '$export_dynamic_flag_spec') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                      }
                    )
                    (C {(func_append)} {(compile_command)} {(DQ (' ') ($ VSub_Name '$arg'))})
                    (C {(func_append)} {(finalize_command)} {(DQ (' ') ($ VSub_Name '$arg'))})
                  ]
                  spids: [16777215 23418]
                )
              ]
              spids: [16777215 23449]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:oldlibs) op:Equal rhs:{(SQ )} spids:[23453])]
              spids: [23453]
            )
            (C {(func_basename)} {(DQ ($ VSub_Name '$output'))})
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:outputname)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$func_basename_result'))}
                  spids: [23467]
                )
              ]
              spids: [23467]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:libobjs_save)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$libobjs'))}
                  spids: [23473]
                )
              ]
              spids: [23473]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$shlibpath_var'))})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(eval)} 
                      {(Lit_VarLike 'shlib_search_path=') 
                        (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (ECHO)
                      } 
                      {(EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (X) 
                        (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (Lit_LBrace '{') ($ VSub_Name '$shlibpath_var') (Lit_RBrace '}') 
                        (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                      } {(EscapedLiteralPart token:<Lit_EscapedChar '\\|'>)} 
                      {(EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (Xsed)} {(-e)} {(EscapedLiteralPart token:<Lit_EscapedChar "\\'">) (s/) (Lit_Other ':') (/)} 
                      {(/g) (EscapedLiteralPart token:<Lit_EscapedChar "\\'">) 
                        (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>)
                      }
                    )
                  ]
                  spids: [16777215 23491]
                )
              ]
              else_action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:shlib_search_path)
                      op: Equal
                      rhs: {(SQ )}
                      spids: [23533]
                    )
                  ]
                  spids: [23533]
                )
              ]
              spids: [23530 23536]
            )
            (C {(eval)} 
              {(Lit_VarLike 'sys_lib_search_path=') 
                (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ($ VSub_Name '$sys_lib_search_path_spec') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
              }
            )
            (C {(eval)} 
              {(Lit_VarLike 'sys_lib_dlsearch_path=') 
                (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ($ VSub_Name '$sys_lib_dlsearch_path_spec') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
              }
            )
            (C {(func_dirname)} {(DQ ($ VSub_Name '$output'))} {(DQ (/))} {(DQ )})
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:output_objdir)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$func_dirname_result') ($ VSub_Name '$objdir'))}
                  spids: [23570]
                )
              ]
              spids: [23570]
            )
            (C {(func_mkdir_p)} {(DQ ($ VSub_Name '$output_objdir'))})
            (Case
              to_match: {($ VSub_Name '$output')}
              arms: [
                (case_arm
                  pat_list: [{(DQ )}]
                  action: [(C {(func_fatal_help)} {(DQ ('you must specify an output file'))})]
                  spids: [16777215 23602 23612 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*') (.) ($ VSub_Name '$libext')}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:linkmode)
                          op: Equal
                          rhs: {(oldlib)}
                          spids: [23620]
                        )
                      ]
                      spids: [23620]
                    )
                  ]
                  spids: [23615 23618 23623 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*') (.lo)} {(Lit_Other '*') (.) ($ VSub_Name '$objext')}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:linkmode)
                          op: Equal
                          rhs: {(obj)}
                          spids: [23636]
                        )
                      ]
                      spids: [23636]
                    )
                  ]
                  spids: [23626 23634 23639 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*') (.la)}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:linkmode)
                          op: Equal
                          rhs: {(lib)}
                          spids: [23646]
                        )
                      ]
                      spids: [23646]
                    )
                  ]
                  spids: [23642 23644 23649 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*')}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:linkmode)
                          op: Equal
                          rhs: {(prog)}
                          spids: [23655]
                        )
                      ]
                      spids: [23655]
                    )
                  ]
                  spids: [23652 23653 23658 16777215]
                )
              ]
              spids: [23593 23597 23664]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:specialdeplibs)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [23668]
                )
              ]
              spids: [23668]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:libs) op:Equal rhs:{(SQ )} spids:[23672])]
              spids: [23672]
            )
            (ForEach
              iter_name: deplib
              iter_words: [{($ VSub_Name '$deplibs')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {($ VSub_Name '$opt_duplicate_deps')})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Case
                              to_match: {(DQ ($ VSub_Name '$libs') (' '))}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '*') (DQ (' ') ($ VSub_Name '$deplib') (' ')) 
                                      (Lit_Other '*')
                                    }
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:specialdeplibs)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$specialdeplibs') (' ') 
                                                ($ VSub_Name '$deplib')
                                              )
                                            }
                                          spids: [23723]
                                        )
                                      ]
                                      spids: [23723]
                                    )
                                  ]
                                  spids: [23714 23721 23730 16777215]
                                )
                              ]
                              spids: [23704 23711 23733]
                            )
                          ]
                          spids: [16777215 23701]
                        )
                      ]
                      spids: [16777215 23736]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:libs)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$libs') (' ') ($ VSub_Name '$deplib'))}
                          spids: [23739]
                        )
                      ]
                      spids: [23739]
                    )
                  ]
                  spids: [23692 23747]
                )
              spids: [23688 23690]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} {(Lit_Other '=')} {(lib)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:libs)
                          op: Equal
                          rhs: 
                            {
                              (DQ ($ VSub_Name '$predeps') (' ') ($ VSub_Name '$libs') (' ') 
                                ($ VSub_Name '$compiler_lib_search_path') (' ') ($ VSub_Name '$postdeps')
                              )
                            }
                          spids: [23767]
                        )
                      ]
                      spids: [23767]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:pre_post_deps)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [23792]
                        )
                      ]
                      spids: [23792]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {($ VSub_Name '$opt_duplicate_compiler_generated_deps')})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (ForEach
                              iter_name: pre_post_dep
                              iter_words: [{($ VSub_Name '$predeps')} {($ VSub_Name '$postdeps')}]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (Case
                                      to_match: {(DQ ($ VSub_Name '$pre_post_deps') (' '))}
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') 
                                              (DQ (' ') ($ VSub_Name '$pre_post_dep') (' ')) (Lit_Other '*')
                                            }
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:specialdeplibs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$specialdeplibs') (' ') 
                                                        ($ VSub_Name '$pre_post_deps')
                                                      )
                                                    }
                                                  spids: [23836]
                                                )
                                              ]
                                              spids: [23836]
                                            )
                                          ]
                                          spids: [23827 23834 23843 16777215]
                                        )
                                      ]
                                      spids: [23817 23824 23846]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:pre_post_deps)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$pre_post_deps') (' ') 
                                                ($ VSub_Name '$pre_post_dep')
                                              )
                                            }
                                          spids: [23849]
                                        )
                                      ]
                                      spids: [23849]
                                    )
                                  ]
                                  spids: [23814 23857]
                                )
                              spids: [23808 23812]
                            )
                          ]
                          spids: [16777215 23800]
                        )
                      ]
                      spids: [16777215 23860]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:pre_post_deps)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [23863]
                        )
                      ]
                      spids: [23863]
                    )
                  ]
                  spids: [16777215 23764]
                )
              ]
              spids: [16777215 23866]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:deplibs) op:Equal rhs:{(SQ )} spids:[23870])]
              spids: [23870]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:newdependency_libs)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [23873]
                )
              ]
              spids: [23873]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:newlib_search_path)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [23876]
                )
              ]
              spids: [23876]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:need_relink) op:Equal rhs:{(no)} spids:[23879])]
              spids: [23879]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:notinst_deplibs)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [23886]
                )
              ]
              spids: [23886]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:notinst_path)
                  op: Equal
                  rhs: {(SQ )}
                  spids: [23892]
                )
              ]
              spids: [23892]
            )
            (Case
              to_match: {($ VSub_Name '$linkmode')}
              arms: [
                (case_arm
                  pat_list: [{(lib)}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:passes)
                          op: Equal
                          rhs: {(DQ ('conv dlpreopen link'))}
                          spids: [23910]
                        )
                      ]
                      spids: [23910]
                    )
                    (ForEach
                      iter_name: file
                      iter_words: [{($ VSub_Name '$dlfiles')} {($ VSub_Name '$dlprefiles')}]
                      do_arg_iter: False
                      body: 
                        (DoGroup
                          children: [
                            (Case
                              to_match: {($ VSub_Name '$file')}
                              arms: [
                                (case_arm
                                  pat_list: [{(Lit_Other '*') (.la)}]
                                  spids: [23937 23939 23941 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (C {(func_fatal_help)} 
                                      {
                                        (DQ ('libraries can ') 
                                          (EscapedLiteralPart
                                            token: <Lit_EscapedChar '\\`'>
                                          ) ("-dlopen' only libtool libraries: ") ($ VSub_Name '$file')
                                        )
                                      }
                                    )
                                  ]
                                  spids: [23944 23945 23958 16777215]
                                )
                              ]
                              spids: [23930 23934 23961]
                            )
                          ]
                          spids: [23927 23964]
                        )
                      spids: [23921 23925]
                    )
                  ]
                  spids: [23906 23907 23967 16777215]
                )
                (case_arm
                  pat_list: [{(prog)}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:compile_deplibs)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [23974]
                        )
                      ]
                      spids: [23974]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:finalize_deplibs)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [23977]
                        )
                      ]
                      spids: [23977]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:alldeplibs)
                          op: Equal
                          rhs: {(no)}
                          spids: [23980]
                        )
                      ]
                      spids: [23980]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:newdlfiles)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [23984]
                        )
                      ]
                      spids: [23984]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:newdlprefiles)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [23987]
                        )
                      ]
                      spids: [23987]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:passes)
                          op: Equal
                          rhs: {(DQ ('conv scan dlopen dlpreopen link'))}
                          spids: [23990]
                        )
                      ]
                      spids: [23990]
                    )
                  ]
                  spids: [23970 23971 23996 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*')}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:passes)
                          op: Equal
                          rhs: {(DQ (conv))}
                          spids: [24002]
                        )
                      ]
                      spids: [24002]
                    )
                  ]
                  spids: [23999 24000 24008 16777215]
                )
              ]
              spids: [23899 23903 24011]
            )
            (ForEach
              iter_name: pass
              iter_words: [{($ VSub_Name '$passes')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$linkmode') (',') ($ VSub_Name '$pass'))} 
                                  {(Lit_Other '=')} {(DQ ('lib,link'))}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:tmp_deplibs)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [24063]
                                )
                              ]
                              spids: [24063]
                            )
                            (ForEach
                              iter_name: deplib
                              iter_words: [{($ VSub_Name '$deplibs')}]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:tmp_deplibs)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$deplib') (' ') 
                                                ($ VSub_Name '$tmp_deplibs')
                                              )
                                            }
                                          spids: [24078]
                                        )
                                      ]
                                      spids: [24078]
                                    )
                                  ]
                                  spids: [24075 24086]
                                )
                              spids: [24071 24073]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:deplibs)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$tmp_deplibs'))}
                                  spids: [24089]
                                )
                              ]
                              spids: [24089]
                            )
                          ]
                          spids: [16777215 24052]
                        )
                      ]
                      spids: [16777215 24095]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (AndOr
                                  children: [
                                    (C {(test)} 
                                      {(DQ ($ VSub_Name '$linkmode') (',') ($ VSub_Name '$pass'))} {(Lit_Other '=')} {(DQ ('lib,link'))}
                                    )
                                    (C {(test)} 
                                      {(DQ ($ VSub_Name '$linkmode') (',') ($ VSub_Name '$pass'))} {(Lit_Other '=')} {(DQ ('prog,scan'))}
                                    )
                                  ]
                                  op_id: Op_DPipe
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:libs)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$deplibs'))}
                                  spids: [24136]
                                )
                              ]
                              spids: [24136]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:deplibs)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [24142]
                                )
                              ]
                              spids: [24142]
                            )
                          ]
                          spids: [16777215 24133]
                        )
                      ]
                      spids: [16777215 24145]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} {(Lit_Other '=')} {(prog)})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Case
                              to_match: {($ VSub_Name '$pass')}
                              arms: [
                                (case_arm
                                  pat_list: [{(dlopen)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:libs)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$dlfiles'))}
                                          spids: [24174]
                                        )
                                      ]
                                      spids: [24174]
                                    )
                                  ]
                                  spids: [24171 24172 24179 16777215]
                                )
                                (case_arm
                                  pat_list: [{(dlpreopen)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:libs)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$dlprefiles'))}
                                          spids: [24185]
                                        )
                                      ]
                                      spids: [24185]
                                    )
                                  ]
                                  spids: [24182 24183 24190 16777215]
                                )
                                (case_arm
                                  pat_list: [{(link)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:libs)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$deplibs') (' %DEPLIBS%'))}
                                          spids: [24197]
                                        )
                                      ]
                                      spids: [24197]
                                    )
                                    (AndOr
                                      children: [
                                        (C {(test)} {(DQ (X) ($ VSub_Name '$link_all_deplibs'))} 
                                          {(KW_Bang '!') (Lit_Other '=')} {(Xno)}
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:libs)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$libs') (' ') 
                                                    ($ VSub_Name '$dependency_libs')
                                                  )
                                                }
                                              spids: [24218]
                                            )
                                          ]
                                          spids: [24218]
                                        )
                                      ]
                                      op_id: Op_DAmp
                                    )
                                  ]
                                  spids: [24193 24194 24226 16777215]
                                )
                              ]
                              spids: [24164 24168 24229]
                            )
                          ]
                          spids: [16777215 24161]
                        )
                      ]
                      spids: [16777215 24232]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$linkmode') (',') ($ VSub_Name '$pass'))} 
                                  {(Lit_Other '=')} {(DQ ('lib,dlpreopen'))}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (ForEach
                              iter_name: lib
                              iter_words: [{($ VSub_Name '$dlprefiles')}]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:dependency_libs)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [24275]
                                        )
                                      ]
                                      spids: [24275]
                                    )
                                    (Case
                                      to_match: {($ VSub_Name '$lib')}
                                      arms: [
                                        (case_arm
                                          pat_list: [{(Lit_Other '*') (.la)}]
                                          action: [(C {(func_source)} {(DQ ($ VSub_Name '$lib'))})]
                                          spids: [24285 24287 24295 16777215]
                                        )
                                      ]
                                      spids: [24278 24282 24298]
                                    )
                                    (ForEach
                                      iter_name: deplib
                                      iter_words: [{($ VSub_Name '$dependency_libs')}]
                                      do_arg_iter: False
                                      body: 
                                        (DoGroup
                                          children: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:deplib_base)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (CommandSubPart
                                                        command_list: 
                                                          (CommandList
                                                            children: [
                                                              (Pipeline
                                                                children: [
                                                                  (C {($ VSub_Name '$ECHO')} 
                                                                    {
                                                                      (DQ (X) ($ VSub_Name '$deplib'))
                                                                    }
                                                                  )
                                                                  (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                                    {(DQ ($ VSub_Name '$basename'))}
                                                                  )
                                                                ]
                                                                negated: False
                                                              )
                                                            ]
                                                          )
                                                        left_token: <Left_Backtick '`'>
                                                        spids: [24323 24340]
                                                      )
                                                    }
                                                  spids: [24322]
                                                )
                                              ]
                                              spids: [24322]
                                            )
                                            (Case
                                              to_match: {(DQ (' ') ($ VSub_Name '$weak_libs') (' '))}
                                              arms: [
                                                (case_arm
                                                  pat_list: [
                                                    {(Lit_Other '*') 
                                                      (DQ (' ') ($ VSub_Name '$deplib_base') (' ')) (Lit_Other '*')
                                                    }
                                                  ]
                                                  spids: [24354 24361 24363 16777215]
                                                )
                                                (case_arm
                                                  pat_list: [{(Lit_Other '*')}]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:deplibs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$deplibs') (' ') 
                                                                ($ VSub_Name '$deplib')
                                                              )
                                                            }
                                                          spids: [24369]
                                                        )
                                                      ]
                                                      spids: [24369]
                                                    )
                                                  ]
                                                  spids: [24366 24367 24376 16777215]
                                                )
                                              ]
                                              spids: [24343 24351 24379]
                                            )
                                          ]
                                          spids: [24319 24382]
                                        )
                                      spids: [24315 24317]
                                    )
                                  ]
                                  spids: [24268 24385]
                                )
                              spids: [24264 24266]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:libs)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$dlprefiles'))}
                                  spids: [24388]
                                )
                              ]
                              spids: [24388]
                            )
                          ]
                          spids: [16777215 24252]
                        )
                      ]
                      spids: [16777215 24394]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$pass'))} {(Lit_Other '=')} {(dlopen)})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:save_deplibs)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$deplibs'))}
                                  spids: [24417]
                                )
                              ]
                              spids: [24417]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:deplibs)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [24423]
                                )
                              ]
                              spids: [24423]
                            )
                          ]
                          spids: [16777215 24410]
                        )
                      ]
                      spids: [16777215 24426]
                    )
                    (ForEach
                      iter_name: deplib
                      iter_words: [{($ VSub_Name '$libs')}]
                      do_arg_iter: False
                      body: 
                        (DoGroup
                          children: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:lib)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [24442]
                                )
                              ]
                              spids: [24442]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:found)
                                  op: Equal
                                  rhs: {(no)}
                                  spids: [24445]
                                )
                              ]
                              spids: [24445]
                            )
                            (Case
                              to_match: {($ VSub_Name '$deplib')}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(-mt)}
                                    {(-mthreads)}
                                    {(-kthread)}
                                    {(-Kthread)}
                                    {(-pthread)}
                                    {(-pthreads)}
                                    {(--thread-safe)}
                                    {(-threads)}
                                  ]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} 
                                                  {
                                                    (DQ ($ VSub_Name '$linkmode') (',') 
                                                      ($ VSub_Name '$pass')
                                                    )
                                                  } {(Lit_Other '=')} {(DQ ('prog,link'))}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:compile_deplibs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$deplib') (' ') 
                                                        ($ VSub_Name '$compile_deplibs')
                                                      )
                                                    }
                                                  spids: [24494]
                                                )
                                              ]
                                              spids: [24494]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:finalize_deplibs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$deplib') (' ') 
                                                        ($ VSub_Name '$finalize_deplibs')
                                                      )
                                                    }
                                                  spids: [24502]
                                                )
                                              ]
                                              spids: [24502]
                                            )
                                          ]
                                          spids: [16777215 24491]
                                        )
                                      ]
                                      else_action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:compiler_flags)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$compiler_flags') (' ') 
                                                    ($ VSub_Name '$deplib')
                                                  )
                                                }
                                              spids: [24513]
                                            )
                                          ]
                                          spids: [24513]
                                        )
                                        (If
                                          arms: [
                                            (if_arm
                                              cond: [
                                                (Sentence
                                                  child: 
                                                    (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} 
                                                      {(Lit_Other '=')} {(lib)}
                                                    )
                                                  terminator: <Op_Semi ';'>
                                                )
                                              ]
                                              action: [
                                                (Case
                                                  to_match: 
                                                    {
                                                      (DQ ($ VSub_Name '$new_inherited_linker_flags') 
                                                        (' ')
                                                      )
                                                    }
                                                  arms: [
                                                    (case_arm
                                                      pat_list: [
                                                        {(Lit_Other '*') 
                                                          (DQ (' ') ($ VSub_Name '$deplib') (' ')) (Lit_Other '*')
                                                        }
                                                      ]
                                                      spids: [24548 24555 24557 16777215]
                                                    )
                                                    (case_arm
                                                      pat_list: [{(Lit_Other '*')}]
                                                      action: [
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: 
                                                                (LhsName
                                                                  name: new_inherited_linker_flags
                                                                )
                                                              op: Equal
                                                              rhs: 
                                                                {
                                                                  (DQ 
                                                                    ($ VSub_Name 
'$new_inherited_linker_flags'
                                                                    ) (' ') ($ VSub_Name '$deplib')
                                                                  )
                                                                }
                                                              spids: [24564]
                                                            )
                                                          ]
                                                          spids: [24564]
                                                        )
                                                      ]
                                                      spids: [24560 24562 24571 16777215]
                                                    )
                                                  ]
                                                  spids: [24538 24545 24574]
                                                )
                                              ]
                                              spids: [16777215 24535]
                                            )
                                          ]
                                          spids: [16777215 24577]
                                        )
                                      ]
                                      spids: [24510 24580]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [24456 24471 24586 16777215]
                                )
                                (case_arm
                                  pat_list: [{(-l) (Lit_Other '*')}]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} 
                                                      {(KW_Bang '!') (Lit_Other '=')} {(lib)}
                                                    )
                                                    (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} 
                                                      {(KW_Bang '!') (Lit_Other '=')} {(prog)}
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(func_warning)} 
                                              {
                                                (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                                  ("-l' is ignored for archives/objects")
                                                )
                                              }
                                            )
                                            (ControlFlow
                                              token: <ControlFlow_Continue continue>
                                            )
                                          ]
                                          spids: [16777215 24621]
                                        )
                                      ]
                                      spids: [16777215 24635]
                                    )
                                    (C {(func_stripname)} {(SQ <-l>)} {(SQ )} 
                                      {(DQ ($ VSub_Name '$deplib'))}
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:name)
                                          op: Equal
                                          rhs: {($ VSub_Name '$func_stripname_result')}
                                          spids: [24652]
                                        )
                                      ]
                                      spids: [24652]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} 
                                                  {(Lit_Other '=')} {(lib)}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:searchdirs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$newlib_search_path') (' ') 
                                                        ($ VSub_Name '$lib_search_path') (' ') ($ VSub_Name '$compiler_lib_search_dirs') (' ') ($ VSub_Name '$sys_lib_search_path') (' ') 
                                                        ($ VSub_Name '$shlib_search_path')
                                                      )
                                                    }
                                                  spids: [24672]
                                                )
                                              ]
                                              spids: [24672]
                                            )
                                          ]
                                          spids: [16777215 24669]
                                        )
                                      ]
                                      else_action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:searchdirs)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$newlib_search_path') (' ') 
                                                    ($ VSub_Name '$lib_search_path') (' ') ($ VSub_Name '$sys_lib_search_path') (' ') ($ VSub_Name '$shlib_search_path')
                                                  )
                                                }
                                              spids: [24689]
                                            )
                                          ]
                                          spids: [24689]
                                        )
                                      ]
                                      spids: [24686 24701]
                                    )
                                    (ForEach
                                      iter_name: searchdir
                                      iter_words: [{($ VSub_Name '$searchdirs')}]
                                      do_arg_iter: False
                                      body: 
                                        (DoGroup
                                          children: [
                                            (ForEach
                                              iter_name: search_ext
                                              iter_words: [
                                                {(.la)}
                                                {($ VSub_Name '$std_shrext')}
                                                {(.so)}
                                                {(.a)}
                                              ]
                                              do_arg_iter: False
                                              body: 
                                                (DoGroup
                                                  children: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:lib)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$searchdir') (/lib) 
                                                                (${ VSub_Name name) (${ VSub_Name search_ext)
                                                              )
                                                            }
                                                          spids: [24738]
                                                        )
                                                      ]
                                                      spids: [24738]
                                                    )
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (C {(test)} {(-f)} 
                                                                  {(DQ ($ VSub_Name '$lib'))}
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (If
                                                              arms: [
                                                                (if_arm
                                                                  cond: [
                                                                    (Sentence
                                                                      child: 
                                                                        (C {(test)} 
                                                                          {
                                                                            (DQ 
                                                                              ($ VSub_Name 
'$search_ext'
                                                                              )
                                                                            )
                                                                          } {(Lit_Other '=')} {(DQ (.la))}
                                                                        )
                                                                      terminator: <Op_Semi ';'>
                                                                    )
                                                                  ]
                                                                  action: [
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: (LhsName name:found)
                                                                          op: Equal
                                                                          rhs: {(yes)}
                                                                          spids: [24783]
                                                                        )
                                                                      ]
                                                                      spids: [24783]
                                                                    )
                                                                  ]
                                                                  spids: [16777215 24780]
                                                                )
                                                              ]
                                                              else_action: [
                                                                (Assignment
                                                                  keyword: Assign_None
                                                                  pairs: [
                                                                    (assign_pair
                                                                      lhs: (LhsName name:found)
                                                                      op: Equal
                                                                      rhs: {(no)}
                                                                      spids: [24790]
                                                                    )
                                                                  ]
                                                                  spids: [24790]
                                                                )
                                                              ]
                                                              spids: [24787 24794]
                                                            )
                                                            (ControlFlow
                                                              token: <ControlFlow_Break break>
                                                              arg_word: {(2)}
                                                            )
                                                          ]
                                                          spids: [16777215 24762]
                                                        )
                                                      ]
                                                      spids: [16777215 24802]
                                                    )
                                                  ]
                                                  spids: [24731 24805]
                                                )
                                              spids: [24721 24729]
                                            )
                                          ]
                                          spids: [24713 24808]
                                        )
                                      spids: [24709 24711]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(DQ ($ VSub_Name '$found'))} 
                                                  {(KW_Bang '!') (Lit_Other '=')} {(yes)}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} 
                                                          {
                                                            (DQ ($ VSub_Name '$linkmode') (',') 
                                                              ($ VSub_Name '$pass')
                                                            )
                                                          } {(Lit_Other '=')} {(DQ ('prog,link'))}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:compile_deplibs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$deplib') (' ') 
                                                                ($ VSub_Name '$compile_deplibs')
                                                              )
                                                            }
                                                          spids: [24852]
                                                        )
                                                      ]
                                                      spids: [24852]
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:finalize_deplibs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$deplib') (' ') 
                                                                ($ VSub_Name '$finalize_deplibs')
                                                              )
                                                            }
                                                          spids: [24860]
                                                        )
                                                      ]
                                                      spids: [24860]
                                                    )
                                                  ]
                                                  spids: [16777215 24849]
                                                )
                                              ]
                                              else_action: [
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:deplibs)
                                                      op: Equal
                                                      rhs: 
                                                        {
                                                          (DQ ($ VSub_Name '$deplib') (' ') 
                                                            ($ VSub_Name '$deplibs')
                                                          )
                                                        }
                                                      spids: [24871]
                                                    )
                                                  ]
                                                  spids: [24871]
                                                )
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} 
                                                      {(Lit_Other '=')} {(lib)}
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:newdependency_libs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$deplib') (' ') 
                                                                ($ VSub_Name '$newdependency_libs')
                                                              )
                                                            }
                                                          spids: [24891]
                                                        )
                                                      ]
                                                      spids: [24891]
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              ]
                                              spids: [24868 24899]
                                            )
                                            (ControlFlow
                                              token: <ControlFlow_Continue continue>
                                            )
                                          ]
                                          spids: [16777215 24825]
                                        )
                                      ]
                                      else_action: [
                                        (If
                                          arms: [
                                            (if_arm
                                              cond: [
                                                (Sentence
                                                  child: 
                                                    (C {(test)} 
                                                      {
                                                        (DQ (X) 
                                                          ($ VSub_Name 
'$allow_libtool_libs_with_static_runtimes'
                                                          )
                                                        )
                                                      } {(Lit_Other '=')} {(DQ (Xyes))}
                                                    )
                                                  terminator: <Op_Semi ';'>
                                                )
                                              ]
                                              action: [
                                                (Case
                                                  to_match: 
                                                    {
                                                      (DQ (' ') ($ VSub_Name '$predeps') (' ') 
                                                        ($ VSub_Name '$postdeps') (' ')
                                                      )
                                                    }
                                                  arms: [
                                                    (case_arm
                                                      pat_list: [
                                                        {(Lit_Other '*') 
                                                          (DQ (' ') ($ VSub_Name '$deplib') (' ')) (Lit_Other '*')
                                                        }
                                                      ]
                                                      action: [
                                                        (If
                                                          arms: [
                                                            (if_arm
                                                              cond: [
                                                                (Sentence
                                                                  child: 
                                                                    (C {(func_lalib_p)} 
                                                                      {(DQ ($ VSub_Name '$lib'))}
                                                                    )
                                                                  terminator: <Op_Semi ';'>
                                                                )
                                                              ]
                                                              action: [
                                                                (Assignment
                                                                  keyword: Assign_None
                                                                  pairs: [
                                                                    (assign_pair
                                                                      lhs: 
                                                                        (LhsName
                                                                          name: library_names
                                                                        )
                                                                      op: Equal
                                                                      rhs: {(SQ )}
                                                                      spids: [24974]
                                                                    )
                                                                  ]
                                                                  spids: [24974]
                                                                )
                                                                (Assignment
                                                                  keyword: Assign_None
                                                                  pairs: [
                                                                    (assign_pair
                                                                      lhs: (LhsName name:old_library)
                                                                      op: Equal
                                                                      rhs: {(SQ )}
                                                                      spids: [24977]
                                                                    )
                                                                  ]
                                                                  spids: [24977]
                                                                )
                                                                (C {(func_source)} 
                                                                  {(DQ ($ VSub_Name '$lib'))}
                                                                )
                                                                (ForEach
                                                                  iter_name: l
                                                                  iter_words: [
                                                                    {($ VSub_Name '$old_library')}
                                                                    {($ VSub_Name '$library_names')}
                                                                  ]
                                                                  do_arg_iter: False
                                                                  body: 
                                                                    (DoGroup
                                                                      children: [
                                                                        (Assignment
                                                                          keyword: Assign_None
                                                                          pairs: [
                                                                            (assign_pair
                                                                              lhs: (LhsName name:ll)
                                                                              op: Equal
                                                                              rhs: 
                                                                                {
                                                                                  (DQ 
                                                                                    ($ VSub_Name '$l')
                                                                                  )
                                                                                }
                                                                              spids: [25001]
                                                                            )
                                                                          ]
                                                                          spids: [25001]
                                                                        )
                                                                      ]
                                                                      spids: [24998 25007]
                                                                    )
                                                                  spids: [24992 24996]
                                                                )
                                                                (If
                                                                  arms: [
                                                                    (if_arm
                                                                      cond: [
                                                                        (Sentence
                                                                          child: 
                                                                            (C {(test)} 
                                                                              {
                                                                                (DQ (X) 
                                                                                  ($ VSub_Name '$ll')
                                                                                )
                                                                              } {(Lit_Other '=')} {(DQ (X) ($ VSub_Name '$old_library'))}
                                                                            )
                                                                          terminator: <Op_Semi ';'>
                                                                        )
                                                                      ]
                                                                      action: [
                                                                        (Assignment
                                                                          keyword: Assign_None
                                                                          pairs: [
                                                                            (assign_pair
                                                                              lhs: 
                                                                                (LhsName
                                                                                  name: found
                                                                                )
                                                                              op: Equal
                                                                              rhs: {(no)}
                                                                              spids: [25034]
                                                                            )
                                                                          ]
                                                                          spids: [25034]
                                                                        )
                                                                        (C {(func_dirname)} 
                                                                          {(DQ ($ VSub_Name '$lib'))} {(DQ )} {(DQ (.))}
                                                                        )
                                                                        (Assignment
                                                                          keyword: Assign_None
                                                                          pairs: [
                                                                            (assign_pair
                                                                              lhs: 
                                                                                (LhsName
                                                                                  name: ladir
                                                                                )
                                                                              op: Equal
                                                                              rhs: 
                                                                                {
                                                                                  (DQ 
                                                                                    ($ VSub_Name 
'$func_dirname_result'
                                                                                    )
                                                                                  )
                                                                                }
                                                                              spids: [25052]
                                                                            )
                                                                          ]
                                                                          spids: [25052]
                                                                        )
                                                                        (Assignment
                                                                          keyword: Assign_None
                                                                          pairs: [
                                                                            (assign_pair
                                                                              lhs: (LhsName name:lib)
                                                                              op: Equal
                                                                              rhs: 
                                                                                {
                                                                                  ($ VSub_Name 
'$ladir'
                                                                                  ) (/) ($ VSub_Name '$old_library')
                                                                                }
                                                                              spids: [25058]
                                                                            )
                                                                          ]
                                                                          spids: [25058]
                                                                        )
                                                                        (If
                                                                          arms: [
                                                                            (if_arm
                                                                              cond: [
                                                                                (Sentence
                                                                                  child: 
                                                                                    (C {(test)} 
                                                                                      {
                                                                                        (DQ 
                                                                                          ($ 
VSub_Name '$linkmode'
                                                                                          ) (',') ($ VSub_Name '$pass')
                                                                                        )
                                                                                      } {(Lit_Other '=')} {(DQ ('prog,link'))}
                                                                                    )
                                                                                  terminator: 
                                                                                    <Op_Semi ';'>
                                                                                )
                                                                              ]
                                                                              action: [
                                                                                (Assignment
                                                                                  keyword: 
Assign_None
                                                                                  pairs: [
                                                                                    (assign_pair
                                                                                      lhs: 
                                                                                        (LhsName
                                                                                          name: 
compile_deplibs
                                                                                        )
                                                                                      op: Equal
                                                                                      rhs: 
                                                                                        {
                                                                                          (DQ 
                                                                                            ($ 
VSub_Name '$deplib'
                                                                                            ) (' ') ($ VSub_Name '$compile_deplibs')
                                                                                          )
                                                                                        }
                                                                                      spids: [25084]
                                                                                    )
                                                                                  ]
                                                                                  spids: [25084]
                                                                                )
                                                                                (Assignment
                                                                                  keyword: 
Assign_None
                                                                                  pairs: [
                                                                                    (assign_pair
                                                                                      lhs: 
                                                                                        (LhsName
                                                                                          name: 
finalize_deplibs
                                                                                        )
                                                                                      op: Equal
                                                                                      rhs: 
                                                                                        {
                                                                                          (DQ 
                                                                                            ($ 
VSub_Name '$deplib'
                                                                                            ) (' ') ($ VSub_Name '$finalize_deplibs')
                                                                                          )
                                                                                        }
                                                                                      spids: [25092]
                                                                                    )
                                                                                  ]
                                                                                  spids: [25092]
                                                                                )
                                                                              ]
                                                                              spids: [16777215 25081]
                                                                            )
                                                                          ]
                                                                          else_action: [
                                                                            (Assignment
                                                                              keyword: Assign_None
                                                                              pairs: [
                                                                                (assign_pair
                                                                                  lhs: 
                                                                                    (LhsName
                                                                                      name: deplibs
                                                                                    )
                                                                                  op: Equal
                                                                                  rhs: 
                                                                                    {
                                                                                      (DQ 
                                                                                        ($ VSub_Name 
'$deplib'
                                                                                        ) (' ') ($ VSub_Name '$deplibs')
                                                                                      )
                                                                                    }
                                                                                  spids: [25103]
                                                                                )
                                                                              ]
                                                                              spids: [25103]
                                                                            )
                                                                            (AndOr
                                                                              children: [
                                                                                (C {(test)} 
                                                                                  {
                                                                                    (DQ 
                                                                                      ($ VSub_Name 
'$linkmode'
                                                                                      )
                                                                                    )
                                                                                  } {(Lit_Other '=')} {(lib)}
                                                                                )
                                                                                (Assignment
                                                                                  keyword: 
Assign_None
                                                                                  pairs: [
                                                                                    (assign_pair
                                                                                      lhs: 
                                                                                        (LhsName
                                                                                          name: 
newdependency_libs
                                                                                        )
                                                                                      op: Equal
                                                                                      rhs: 
                                                                                        {
                                                                                          (DQ 
                                                                                            ($ 
VSub_Name '$deplib'
                                                                                            ) (' ') ($ VSub_Name '$newdependency_libs')
                                                                                          )
                                                                                        }
                                                                                      spids: [25123]
                                                                                    )
                                                                                  ]
                                                                                  spids: [25123]
                                                                                )
                                                                              ]
                                                                              op_id: Op_DAmp
                                                                            )
                                                                          ]
                                                                          spids: [25100 25131]
                                                                        )
                                                                        (ControlFlow
                                                                          token: 
                                                                            <ControlFlow_Continue 
continue
                                                                            >
                                                                        )
                                                                      ]
                                                                      spids: [16777215 25028]
                                                                    )
                                                                  ]
                                                                  spids: [16777215 25137]
                                                                )
                                                              ]
                                                              spids: [16777215 24971]
                                                            )
                                                          ]
                                                          spids: [16777215 25140]
                                                        )
                                                      ]
                                                      spids: [24952 24959 25143 16777215]
                                                    )
                                                    (case_arm
                                                      pat_list: [{(Lit_Other '*')}]
                                                      spids: [25146 25147 25149 16777215]
                                                    )
                                                  ]
                                                  spids: [24939 24949 25152]
                                                )
                                              ]
                                              spids: [16777215 24936]
                                            )
                                          ]
                                          spids: [16777215 25155]
                                        )
                                      ]
                                      spids: [24905 25158]
                                    )
                                  ]
                                  spids: [24589 24591 25161 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*') (.ltframework)}]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} 
                                                  {
                                                    (DQ ($ VSub_Name '$linkmode') (',') 
                                                      ($ VSub_Name '$pass')
                                                    )
                                                  } {(Lit_Other '=')} {(DQ ('prog,link'))}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:compile_deplibs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$deplib') (' ') 
                                                        ($ VSub_Name '$compile_deplibs')
                                                      )
                                                    }
                                                  spids: [25192]
                                                )
                                              ]
                                              spids: [25192]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:finalize_deplibs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$deplib') (' ') 
                                                        ($ VSub_Name '$finalize_deplibs')
                                                      )
                                                    }
                                                  spids: [25200]
                                                )
                                              ]
                                              spids: [25200]
                                            )
                                          ]
                                          spids: [16777215 25189]
                                        )
                                      ]
                                      else_action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:deplibs)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$deplib') (' ') 
                                                    ($ VSub_Name '$deplibs')
                                                  )
                                                }
                                              spids: [25211]
                                            )
                                          ]
                                          spids: [25211]
                                        )
                                        (If
                                          arms: [
                                            (if_arm
                                              cond: [
                                                (Sentence
                                                  child: 
                                                    (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} 
                                                      {(Lit_Other '=')} {(lib)}
                                                    )
                                                  terminator: <Op_Semi ';'>
                                                )
                                              ]
                                              action: [
                                                (Case
                                                  to_match: 
                                                    {
                                                      (DQ ($ VSub_Name '$new_inherited_linker_flags') 
                                                        (' ')
                                                      )
                                                    }
                                                  arms: [
                                                    (case_arm
                                                      pat_list: [
                                                        {(Lit_Other '*') 
                                                          (DQ (' ') ($ VSub_Name '$deplib') (' ')) (Lit_Other '*')
                                                        }
                                                      ]
                                                      spids: [25246 25253 25255 16777215]
                                                    )
                                                    (case_arm
                                                      pat_list: [{(Lit_Other '*')}]
                                                      action: [
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: 
                                                                (LhsName
                                                                  name: new_inherited_linker_flags
                                                                )
                                                              op: Equal
                                                              rhs: 
                                                                {
                                                                  (DQ 
                                                                    ($ VSub_Name 
'$new_inherited_linker_flags'
                                                                    ) (' ') ($ VSub_Name '$deplib')
                                                                  )
                                                                }
                                                              spids: [25262]
                                                            )
                                                          ]
                                                          spids: [25262]
                                                        )
                                                      ]
                                                      spids: [25258 25260 25269 16777215]
                                                    )
                                                  ]
                                                  spids: [25236 25243 25272]
                                                )
                                              ]
                                              spids: [16777215 25233]
                                            )
                                          ]
                                          spids: [16777215 25275]
                                        )
                                      ]
                                      spids: [25208 25278]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [25167 25169 25284 16777215]
                                )
                                (case_arm
                                  pat_list: [{(-L) (Lit_Other '*')}]
                                  action: [
                                    (Case
                                      to_match: {($ VSub_Name '$linkmode')}
                                      arms: [
                                        (case_arm
                                          pat_list: [{(lib)}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:deplibs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$deplib') (' ') 
                                                        ($ VSub_Name '$deplibs')
                                                      )
                                                    }
                                                  spids: [25303]
                                                )
                                              ]
                                              spids: [25303]
                                            )
                                            (AndOr
                                              children: [
                                                (C {(test)} {(DQ ($ VSub_Name '$pass'))} 
                                                  {(Lit_Other '=')} {(conv)}
                                                )
                                                (ControlFlow
                                                  token: <ControlFlow_Continue continue>
                                                )
                                              ]
                                              op_id: Op_DAmp
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:newdependency_libs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$deplib') (' ') 
                                                        ($ VSub_Name '$newdependency_libs')
                                                      )
                                                    }
                                                  spids: [25326]
                                                )
                                              ]
                                              spids: [25326]
                                            )
                                            (C {(func_stripname)} {(SQ <-L>)} {(SQ )} 
                                              {(DQ ($ VSub_Name '$deplib'))}
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:newlib_search_path)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$newlib_search_path') (' ') 
                                                        ($ VSub_Name '$func_stripname_result')
                                                      )
                                                    }
                                                  spids: [25348]
                                                )
                                              ]
                                              spids: [25348]
                                            )
                                          ]
                                          spids: [25299 25300 25356 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(prog)}]
                                          action: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(DQ ($ VSub_Name '$pass'))} 
                                                          {(Lit_Other '=')} {(conv)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:deplibs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$deplib') (' ') 
                                                                ($ VSub_Name '$deplibs')
                                                              )
                                                            }
                                                          spids: [25379]
                                                        )
                                                      ]
                                                      spids: [25379]
                                                    )
                                                    (ControlFlow
                                                      token: <ControlFlow_Continue continue>
                                                    )
                                                  ]
                                                  spids: [16777215 25376]
                                                )
                                              ]
                                              spids: [16777215 25390]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(DQ ($ VSub_Name '$pass'))} 
                                                          {(Lit_Other '=')} {(scan)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:deplibs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$deplib') (' ') 
                                                                ($ VSub_Name '$deplibs')
                                                              )
                                                            }
                                                          spids: [25409]
                                                        )
                                                      ]
                                                      spids: [25409]
                                                    )
                                                  ]
                                                  spids: [16777215 25406]
                                                )
                                              ]
                                              else_action: [
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:compile_deplibs)
                                                      op: Equal
                                                      rhs: 
                                                        {
                                                          (DQ ($ VSub_Name '$deplib') (' ') 
                                                            ($ VSub_Name '$compile_deplibs')
                                                          )
                                                        }
                                                      spids: [25420]
                                                    )
                                                  ]
                                                  spids: [25420]
                                                )
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:finalize_deplibs)
                                                      op: Equal
                                                      rhs: 
                                                        {
                                                          (DQ ($ VSub_Name '$deplib') (' ') 
                                                            ($ VSub_Name '$finalize_deplibs')
                                                          )
                                                        }
                                                      spids: [25428]
                                                    )
                                                  ]
                                                  spids: [25428]
                                                )
                                              ]
                                              spids: [25417 25436]
                                            )
                                            (C {(func_stripname)} {(SQ <-L>)} {(SQ )} 
                                              {(DQ ($ VSub_Name '$deplib'))}
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:newlib_search_path)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$newlib_search_path') (' ') 
                                                        ($ VSub_Name '$func_stripname_result')
                                                      )
                                                    }
                                                  spids: [25453]
                                                )
                                              ]
                                              spids: [25453]
                                            )
                                          ]
                                          spids: [25359 25360 25461 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (C {(func_warning)} 
                                              {
                                                (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                                  ("-L' is ignored for archives/objects")
                                                )
                                              }
                                            )
                                          ]
                                          spids: [25464 25465 25476 16777215]
                                        )
                                      ]
                                      spids: [25292 25296 25479]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [25287 25289 25488 16777215]
                                )
                                (case_arm
                                  pat_list: [{(-R) (Lit_Other '*')}]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(DQ ($ VSub_Name '$pass'))} 
                                                  {(Lit_Other '=')} {(link)}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(func_stripname)} {(SQ <-R>)} {(SQ )} 
                                              {(DQ ($ VSub_Name '$deplib'))}
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:dir)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$func_stripname_result')}
                                                  spids: [25529]
                                                )
                                              ]
                                              spids: [25529]
                                            )
                                            (Case
                                              to_match: {(DQ ($ VSub_Name '$xrpath') (' '))}
                                              arms: [
                                                (case_arm
                                                  pat_list: [
                                                    {(Lit_Other '*') 
                                                      (DQ (' ') ($ VSub_Name '$dir') (' ')) (Lit_Other '*')
                                                    }
                                                  ]
                                                  spids: [25547 25554 25556 16777215]
                                                )
                                                (case_arm
                                                  pat_list: [{(Lit_Other '*')}]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:xrpath)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$xrpath') (' ') 
                                                                ($ VSub_Name '$dir')
                                                              )
                                                            }
                                                          spids: [25562]
                                                        )
                                                      ]
                                                      spids: [25562]
                                                    )
                                                  ]
                                                  spids: [25559 25560 25569 16777215]
                                                )
                                              ]
                                              spids: [25537 25544 25572]
                                            )
                                          ]
                                          spids: [16777215 25512]
                                        )
                                      ]
                                      spids: [16777215 25575]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:deplibs)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$deplib') (' ') 
                                                ($ VSub_Name '$deplibs')
                                              )
                                            }
                                          spids: [25578]
                                        )
                                      ]
                                      spids: [25578]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [25494 25496 25589 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*') (.la)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:lib)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$deplib'))}
                                          spids: [25596]
                                        )
                                      ]
                                      spids: [25596]
                                    )
                                  ]
                                  spids: [25592 25594 25601 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*') (.) ($ VSub_Name '$libext')}]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(DQ ($ VSub_Name '$pass'))} 
                                                  {(Lit_Other '=')} {(conv)}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:deplibs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$deplib') (' ') 
                                                        ($ VSub_Name '$deplibs')
                                                      )
                                                    }
                                                  spids: [25626]
                                                )
                                              ]
                                              spids: [25626]
                                            )
                                            (ControlFlow
                                              token: <ControlFlow_Continue continue>
                                            )
                                          ]
                                          spids: [16777215 25623]
                                        )
                                      ]
                                      spids: [16777215 25637]
                                    )
                                    (Case
                                      to_match: {($ VSub_Name '$linkmode')}
                                      arms: [
                                        (case_arm
                                          pat_list: [{(lib)}]
                                          action: [
                                            (Case
                                              to_match: 
                                                {
                                                  (DQ (' ') ($ VSub_Name '$dlpreconveniencelibs') (' '))
                                                }
                                              arms: [
                                                (case_arm
                                                  pat_list: [
                                                    {(Lit_Other '*') 
                                                      (DQ (' ') ($ VSub_Name '$deplib') (' ')) (Lit_Other '*')
                                                    }
                                                  ]
                                                  spids: [25670 25677 25679 16777215]
                                                )
                                                (case_arm
                                                  pat_list: [{(Lit_Other '*')}]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:valid_a_lib)
                                                          op: Equal
                                                          rhs: {(no)}
                                                          spids: [25686]
                                                        )
                                                      ]
                                                      spids: [25686]
                                                    )
                                                    (Case
                                                      to_match: 
                                                        {($ VSub_Name '$deplibs_check_method')}
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [{(match_pattern) (Lit_Other '*')}]
                                                          action: [
                                                            (Sentence
                                                              child: 
                                                                (C {(set)} {(dummy)} 
                                                                  {
                                                                    ($ VSub_Name 
'$deplibs_check_method'
                                                                    )
                                                                  }
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                            (C {(shift)})
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: 
                                                                    (LhsName
                                                                      name: match_pattern_regex
                                                                    )
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (CommandSubPart
                                                                        command_list: 
                                                                          (CommandList
                                                                            children: [
                                                                              (C {(expr)} 
                                                                                {
                                                                                  (DQ 
                                                                                    ($ VSub_Name 
'$deplibs_check_method'
                                                                                    )
                                                                                  )
                                                                                } {(Lit_Other ':')} {(DQ ($ VSub_Number '$1') (' ') (Lit_Other '\\') ('(.*') (Lit_Other '\\') (')'))}
                                                                              )
                                                                            ]
                                                                          )
                                                                        left_token: 
                                                                          <Left_Backtick '`'>
                                                                        spids: [25713 25730]
                                                                      )
                                                                    }
                                                                  spids: [25712]
                                                                )
                                                              ]
                                                              spids: [25712]
                                                            )
                                                            (If
                                                              arms: [
                                                                (if_arm
                                                                  cond: [
                                                                    (Sentence
                                                                      child: 
                                                                        (Pipeline
                                                                          children: [
                                                                            (SimpleCommand
                                                                              words: [
                                                                                {(eval)}
                                                                                {
                                                                                  (DQ 
                                                                                    (EscapedLiteralPart
                                                                                      token: 
                                                                                        <
Lit_EscapedChar '\\$'
                                                                                        >
                                                                                    ) ('ECHO ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (X) ($ VSub_Name '$deplib') 
                                                                                    (EscapedLiteralPart
                                                                                      token: 
                                                                                        <
Lit_EscapedChar '\\"'
                                                                                        >
                                                                                    )
                                                                                  )
                                                                                }
                                                                              ]
                                                                              redirects: [
                                                                                (Redir
                                                                                  op_id: Redir_Great
                                                                                  fd: 2
                                                                                  arg_word: 
                                                                                    {(/dev/null)}
                                                                                  spids: [25746]
                                                                                )
                                                                              ]
                                                                            )
                                                                            (C {($ VSub_Name '$Xsed')} 
                                                                              {(-e)} {(10q)}
                                                                            )
                                                                            (SimpleCommand
                                                                              words: [
                                                                                {
                                                                                  ($ VSub_Name 
'$EGREP'
                                                                                  )
                                                                                }
                                                                                {
                                                                                  (DQ 
                                                                                    ($ VSub_Name 
'$match_pattern_regex'
                                                                                    )
                                                                                  )
                                                                                }
                                                                              ]
                                                                              redirects: [
                                                                                (Redir
                                                                                  op_id: Redir_Great
                                                                                  fd: 16777215
                                                                                  arg_word: 
                                                                                    {(/dev/null)}
                                                                                  spids: [25767]
                                                                                )
                                                                              ]
                                                                            )
                                                                          ]
                                                                          negated: False
                                                                        )
                                                                      terminator: <Op_Semi ';'>
                                                                    )
                                                                  ]
                                                                  action: [
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: 
                                                                            (LhsName
                                                                              name: valid_a_lib
                                                                            )
                                                                          op: Equal
                                                                          rhs: {(yes)}
                                                                          spids: [25775]
                                                                        )
                                                                      ]
                                                                      spids: [25775]
                                                                    )
                                                                  ]
                                                                  spids: [16777215 25772]
                                                                )
                                                              ]
                                                              spids: [16777215 25779]
                                                            )
                                                          ]
                                                          spids: [25697 25699 25782 16777215]
                                                        )
                                                        (case_arm
                                                          pat_list: [{(pass_all)}]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:valid_a_lib)
                                                                  op: Equal
                                                                  rhs: {(yes)}
                                                                  spids: [25789]
                                                                )
                                                              ]
                                                              spids: [25789]
                                                            )
                                                          ]
                                                          spids: [25785 25786 25793 16777215]
                                                        )
                                                      ]
                                                      spids: [25690 25694 25796]
                                                    )
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (C {(test)} 
                                                                  {(DQ ($ VSub_Name '$valid_a_lib'))} {(KW_Bang '!') (Lit_Other '=')} {(yes)}
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (C {($ VSub_Name '$ECHO')})
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** Warning: Trying to link with static lib archive '
                                                                  ) ($ VSub_Name '$deplib') (.)
                                                                )
                                                              }
                                                            )
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** I have the capability to make that library automatically link in when'
                                                                  )
                                                                )
                                                              }
                                                            )
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** you link to this library.  But I can only do this if you have a'
                                                                  )
                                                                )
                                                              }
                                                            )
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** shared version of the library, which you do not appear to have'
                                                                  )
                                                                )
                                                              }
                                                            )
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** because the file extensions .'
                                                                  ) ($ VSub_Name '$libext') (' of this argument makes me believe')
                                                                )
                                                              }
                                                            )
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** that it is just a static archive that I should not use here.'
                                                                  )
                                                                )
                                                              }
                                                            )
                                                          ]
                                                          spids: [16777215 25813]
                                                        )
                                                      ]
                                                      else_action: [
                                                        (C {($ VSub_Name '$ECHO')})
                                                        (C {($ VSub_Name '$ECHO')} 
                                                          {
                                                            (DQ 
                                                              (
'*** Warning: Linking the shared library '
                                                              ) ($ VSub_Name '$output') (' against the')
                                                            )
                                                          }
                                                        )
                                                        (C {($ VSub_Name '$ECHO')} 
                                                          {
                                                            (DQ ('*** static library ') 
                                                              ($ VSub_Name '$deplib') (' is not portable!')
                                                            )
                                                          }
                                                        )
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:deplibs)
                                                              op: Equal
                                                              rhs: 
                                                                {
                                                                  (DQ ($ VSub_Name '$deplib') (' ') 
                                                                    ($ VSub_Name '$deplibs')
                                                                  )
                                                                }
                                                              spids: [25889]
                                                            )
                                                          ]
                                                          spids: [25889]
                                                        )
                                                      ]
                                                      spids: [25865 25897]
                                                    )
                                                  ]
                                                  spids: [25682 25683 25900 16777215]
                                                )
                                              ]
                                              spids: [25659 25667 25903]
                                            )
                                            (ControlFlow
                                              token: <ControlFlow_Continue continue>
                                            )
                                          ]
                                          spids: [25647 25648 25909 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(prog)}]
                                          action: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(DQ ($ VSub_Name '$pass'))} 
                                                          {(KW_Bang '!') (Lit_Other '=')} {(link)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:deplibs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$deplib') (' ') 
                                                                ($ VSub_Name '$deplibs')
                                                              )
                                                            }
                                                          spids: [25933]
                                                        )
                                                      ]
                                                      spids: [25933]
                                                    )
                                                  ]
                                                  spids: [16777215 25930]
                                                )
                                              ]
                                              else_action: [
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:compile_deplibs)
                                                      op: Equal
                                                      rhs: 
                                                        {
                                                          (DQ ($ VSub_Name '$deplib') (' ') 
                                                            ($ VSub_Name '$compile_deplibs')
                                                          )
                                                        }
                                                      spids: [25944]
                                                    )
                                                  ]
                                                  spids: [25944]
                                                )
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:finalize_deplibs)
                                                      op: Equal
                                                      rhs: 
                                                        {
                                                          (DQ ($ VSub_Name '$deplib') (' ') 
                                                            ($ VSub_Name '$finalize_deplibs')
                                                          )
                                                        }
                                                      spids: [25952]
                                                    )
                                                  ]
                                                  spids: [25952]
                                                )
                                              ]
                                              spids: [25941 25960]
                                            )
                                            (ControlFlow
                                              token: <ControlFlow_Continue continue>
                                            )
                                          ]
                                          spids: [25912 25913 25966 16777215]
                                        )
                                      ]
                                      spids: [25640 25644 25969]
                                    )
                                  ]
                                  spids: [25604 25607 25975 16777215]
                                )
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '*') (.lo)}
                                    {(Lit_Other '*') (.) ($ VSub_Name '$objext')}
                                  ]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(DQ ($ VSub_Name '$pass'))} 
                                                  {(Lit_Other '=')} {(conv)}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:deplibs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$deplib') (' ') 
                                                        ($ VSub_Name '$deplibs')
                                                      )
                                                    }
                                                  spids: [26008]
                                                )
                                              ]
                                              spids: [26008]
                                            )
                                          ]
                                          spids: [16777215 26005]
                                        )
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} 
                                                  {(Lit_Other '=')} {(prog)}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (AndOr
                                                          children: [
                                                            (C {(test)} {(DQ ($ VSub_Name '$pass'))} 
                                                              {(Lit_Other '=')} {(dlpreopen)}
                                                            )
                                                            (AndOr
                                                              children: [
                                                                (C {(test)} 
                                                                  {
                                                                    (DQ 
                                                                      ($ VSub_Name '$dlopen_support')
                                                                    )
                                                                  } {(KW_Bang '!') (Lit_Other '=')} {(yes)}
                                                                )
                                                                (C {(test)} 
                                                                  {
                                                                    (DQ 
                                                                      ($ VSub_Name 
'$build_libtool_libs'
                                                                      )
                                                                    )
                                                                  } {(Lit_Other '=')} {(no)}
                                                                )
                                                              ]
                                                              op_id: Op_DPipe
                                                            )
                                                          ]
                                                          op_id: Op_DPipe
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:newdlprefiles)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$newdlprefiles') (' ') 
                                                                ($ VSub_Name '$deplib')
                                                              )
                                                            }
                                                          spids: [26081]
                                                        )
                                                      ]
                                                      spids: [26081]
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:compile_deplibs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$deplib') (' ') 
                                                                ($ VSub_Name '$compile_deplibs')
                                                              )
                                                            }
                                                          spids: [26089]
                                                        )
                                                      ]
                                                      spids: [26089]
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:finalize_deplibs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$deplib') (' ') 
                                                                ($ VSub_Name '$finalize_deplibs')
                                                              )
                                                            }
                                                          spids: [26097]
                                                        )
                                                      ]
                                                      spids: [26097]
                                                    )
                                                  ]
                                                  spids: [16777215 26070]
                                                )
                                              ]
                                              else_action: [
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:newdlfiles)
                                                      op: Equal
                                                      rhs: 
                                                        {
                                                          (DQ ($ VSub_Name '$newdlfiles') (' ') 
                                                            ($ VSub_Name '$deplib')
                                                          )
                                                        }
                                                      spids: [26108]
                                                    )
                                                  ]
                                                  spids: [26108]
                                                )
                                              ]
                                              spids: [26105 26116]
                                            )
                                          ]
                                          spids: [26016 26029]
                                        )
                                      ]
                                      spids: [16777215 26119]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [25981 25989 26125 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '%') (DEPLIBS) (Lit_Other '%')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:alldeplibs)
                                          op: Equal
                                          rhs: {(yes)}
                                          spids: [26134]
                                        )
                                      ]
                                      spids: [26134]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [26128 26131 26141 16777215]
                                )
                              ]
                              spids: [24449 24453 26144]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          children: [
                                            (C {(test)} {(DQ ($ VSub_Name '$found'))} {(Lit_Other '=')} 
                                              {(yes)}
                                            )
                                            (C {(test)} {(-f)} {(DQ ($ VSub_Name '$lib'))})
                                          ]
                                          op_id: Op_DPipe
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [(C {(Lit_Other ':')})]
                                  spids: [16777215 26174]
                                )
                              ]
                              else_action: [
                                (C {(func_fatal_error)} 
                                  {
                                    (DQ ('cannot find the library ') 
                                      (EscapedLiteralPart
                                        token: <Lit_EscapedChar '\\`'>
                                      ) ($ VSub_Name '$lib') ("' or unhandled argument ") (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                      ($ VSub_Name '$deplib') ("'")
                                    )
                                  }
                                )
                              ]
                              spids: [26179 26195]
                            )
                            (AndOr
                              children: [
                                (C {(func_lalib_unsafe_p)} {(DQ ($ VSub_Name '$lib'))})
                                (C {(func_fatal_error)} 
                                  {
                                    (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                      ($ VSub_Name '$lib') ("' is not a valid libtool archive")
                                    )
                                  }
                                )
                              ]
                              op_id: Op_DPipe
                            )
                            (C {(func_dirname)} {(DQ ($ VSub_Name '$lib'))} {(DQ )} {(DQ (.))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:ladir)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$func_dirname_result'))}
                                  spids: [26237]
                                )
                              ]
                              spids: [26237]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:dlname)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [26244]
                                )
                              ]
                              spids: [26244]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:dlopen)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [26247]
                                )
                              ]
                              spids: [26247]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:dlpreopen)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [26250]
                                )
                              ]
                              spids: [26250]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:libdir)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [26253]
                                )
                              ]
                              spids: [26253]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:library_names)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [26256]
                                )
                              ]
                              spids: [26256]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:old_library)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [26259]
                                )
                              ]
                              spids: [26259]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:inherited_linker_flags)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [26262]
                                )
                              ]
                              spids: [26262]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:installed)
                                  op: Equal
                                  rhs: {(yes)}
                                  spids: [26273]
                                )
                              ]
                              spids: [26273]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:shouldnotlink)
                                  op: Equal
                                  rhs: {(no)}
                                  spids: [26277]
                                )
                              ]
                              spids: [26277]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:avoidtemprpath)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [26281]
                                )
                              ]
                              spids: [26281]
                            )
                            (C {(func_source)} {(DQ ($ VSub_Name '$lib'))})
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$inherited_linker_flags'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:tmp_inherited_linker_flags)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (Pipeline
                                                        children: [
                                                          (C {($ VSub_Name '$ECHO')} 
                                                            {
                                                              (DQ (X) 
                                                                ($ VSub_Name 
'$inherited_linker_flags'
                                                                )
                                                              )
                                                            }
                                                          )
                                                          (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                            {
                                                              (SQ 
                                                                <
's/-framework \\([^ $]*\\)/\\1.ltframework/g'
                                                                >
                                                              )
                                                            }
                                                          )
                                                        ]
                                                        negated: False
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [26317 26334]
                                              )
                                            }
                                          spids: [26316]
                                        )
                                      ]
                                      spids: [26316]
                                    )
                                    (ForEach
                                      iter_name: tmp_inherited_linker_flag
                                      iter_words: [{($ VSub_Name '$tmp_inherited_linker_flags')}]
                                      do_arg_iter: False
                                      body: 
                                        (DoGroup
                                          children: [
                                            (Case
                                              to_match: 
                                                {
                                                  (DQ (' ') 
                                                    ($ VSub_Name '$new_inherited_linker_flags') (' ')
                                                  )
                                                }
                                              arms: [
                                                (case_arm
                                                  pat_list: [
                                                    {(Lit_Other '*') 
                                                      (DQ (' ') 
                                                        ($ VSub_Name '$tmp_inherited_linker_flag') (' ')
                                                      ) (Lit_Other '*')
                                                    }
                                                  ]
                                                  spids: [26360 26367 26369 16777215]
                                                )
                                                (case_arm
                                                  pat_list: [{(Lit_Other '*')}]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: 
                                                            (LhsName
                                                              name: new_inherited_linker_flags
                                                            )
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ 
                                                                ($ VSub_Name 
'$new_inherited_linker_flags'
                                                                ) (' ') ($ VSub_Name '$tmp_inherited_linker_flag')
                                                              )
                                                            }
                                                          spids: [26375]
                                                        )
                                                      ]
                                                      spids: [26375]
                                                    )
                                                  ]
                                                  spids: [26372 26373 26381 16777215]
                                                )
                                              ]
                                              spids: [26349 26357 26384]
                                            )
                                          ]
                                          spids: [26346 26387]
                                        )
                                      spids: [26342 26344]
                                    )
                                  ]
                                  spids: [16777215 26313]
                                )
                              ]
                              spids: [16777215 26390]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:dependency_libs)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (Pipeline
                                                children: [
                                                  (C {($ VSub_Name '$ECHO')} 
                                                    {(DQ ('X ') ($ VSub_Name '$dependency_libs'))}
                                                  )
                                                  (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                    {
                                                      (SQ 
                                                        <
's% \\([^ $]*\\).ltframework% -framework \\1%g'
                                                        >
                                                      )
                                                    }
                                                  )
                                                ]
                                                negated: False
                                              )
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [26394 26411]
                                      )
                                    }
                                  spids: [26393]
                                )
                              ]
                              spids: [26393]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          children: [
                                            (C {(test)} 
                                              {
                                                (DQ ($ VSub_Name '$linkmode') (',') 
                                                  ($ VSub_Name '$pass')
                                                )
                                              } {(Lit_Other '=')} {(DQ ('lib,link'))}
                                            )
                                            (AndOr
                                              children: [
                                                (C {(test)} 
                                                  {
                                                    (DQ ($ VSub_Name '$linkmode') (',') 
                                                      ($ VSub_Name '$pass')
                                                    )
                                                  } {(Lit_Other '=')} {(DQ ('prog,scan'))}
                                                )
                                                (BraceGroup
                                                  children: [
                                                    (Sentence
                                                      child: 
                                                        (AndOr
                                                          children: [
                                                            (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} 
                                                              {(KW_Bang '!') (Lit_Other '=')} {(prog)}
                                                            )
                                                            (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} 
                                                              {(KW_Bang '!') (Lit_Other '=')} {(lib)}
                                                            )
                                                          ]
                                                          op_id: Op_DAmp
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  spids: [26450]
                                                )
                                              ]
                                              op_id: Op_DPipe
                                            )
                                          ]
                                          op_id: Op_DPipe
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (AndOr
                                      children: [
                                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$dlopen'))})
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:dlfiles)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$dlfiles') (' ') 
                                                    ($ VSub_Name '$dlopen')
                                                  )
                                                }
                                              spids: [26493]
                                            )
                                          ]
                                          spids: [26493]
                                        )
                                      ]
                                      op_id: Op_DAmp
                                    )
                                    (AndOr
                                      children: [
                                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$dlpreopen'))})
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:dlprefiles)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$dlprefiles') (' ') 
                                                    ($ VSub_Name '$dlpreopen')
                                                  )
                                                }
                                              spids: [26511]
                                            )
                                          ]
                                          spids: [26511]
                                        )
                                      ]
                                      op_id: Op_DAmp
                                    )
                                  ]
                                  spids: [16777215 26480]
                                )
                              ]
                              spids: [16777215 26519]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$pass'))} {(Lit_Other '=')} 
                                          {(conv)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:deplibs)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$lib') (' ') ($ VSub_Name '$deplibs'))
                                            }
                                          spids: [26543]
                                        )
                                      ]
                                      spids: [26543]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: (C {(test)} {(-z)} {(DQ ($ VSub_Name '$libdir'))})
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(-z)} 
                                                          {(DQ ($ VSub_Name '$old_library'))}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (C {(func_fatal_error)} 
                                                      {
                                                        (DQ ('cannot find name of link library for ') 
                                                          (EscapedLiteralPart
                                                            token: <Lit_EscapedChar '\\`'>
                                                          ) ($ VSub_Name '$lib') ("'")
                                                        )
                                                      }
                                                    )
                                                  ]
                                                  spids: [16777215 26576]
                                                )
                                              ]
                                              spids: [16777215 26589]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:convenience)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$convenience') (' ') 
                                                        ($ VSub_Name '$ladir') (/) ($ VSub_Name '$objdir') (/) ($ VSub_Name '$old_library')
                                                      )
                                                    }
                                                  spids: [26596]
                                                )
                                              ]
                                              spids: [26596]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:old_convenience)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$old_convenience') (' ') 
                                                        ($ VSub_Name '$ladir') (/) ($ VSub_Name '$objdir') (/) ($ VSub_Name '$old_library')
                                                      )
                                                    }
                                                  spids: [26608]
                                                )
                                              ]
                                              spids: [26608]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:tmp_libs)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [26620]
                                                )
                                              ]
                                              spids: [26620]
                                            )
                                            (ForEach
                                              iter_name: deplib
                                              iter_words: [{($ VSub_Name '$dependency_libs')}]
                                              do_arg_iter: False
                                              body: 
                                                (DoGroup
                                                  children: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:deplibs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$deplib') (' ') 
                                                                ($ VSub_Name '$deplibs')
                                                              )
                                                            }
                                                          spids: [26635]
                                                        )
                                                      ]
                                                      spids: [26635]
                                                    )
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (C 
                                                                  {
                                                                    ($ VSub_Name 
'$opt_duplicate_deps'
                                                                    )
                                                                  }
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (Case
                                                              to_match: 
                                                                {
                                                                  (DQ ($ VSub_Name '$tmp_libs') (' '))
                                                                }
                                                              arms: [
                                                                (case_arm
                                                                  pat_list: [
                                                                    {(Lit_Other '*') 
                                                                      (DQ (' ') 
                                                                        ($ VSub_Name '$deplib') (' ')
                                                                      ) (Lit_Other '*')
                                                                    }
                                                                  ]
                                                                  action: [
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: 
                                                                            (LhsName
                                                                              name: specialdeplibs
                                                                            )
                                                                          op: Equal
                                                                          rhs: 
                                                                            {
                                                                              (DQ 
                                                                                ($ VSub_Name 
'$specialdeplibs'
                                                                                ) (' ') ($ VSub_Name '$deplib')
                                                                              )
                                                                            }
                                                                          spids: [26671]
                                                                        )
                                                                      ]
                                                                      spids: [26671]
                                                                    )
                                                                  ]
                                                                  spids: [26662 26669 26678 16777215]
                                                                )
                                                              ]
                                                              spids: [26652 26659 26681]
                                                            )
                                                          ]
                                                          spids: [16777215 26649]
                                                        )
                                                      ]
                                                      spids: [16777215 26684]
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:tmp_libs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$tmp_libs') (' ') 
                                                                ($ VSub_Name '$deplib')
                                                              )
                                                            }
                                                          spids: [26687]
                                                        )
                                                      ]
                                                      spids: [26687]
                                                    )
                                                  ]
                                                  spids: [26632 26695]
                                                )
                                              spids: [26628 26630]
                                            )
                                          ]
                                          spids: [16777215 26562]
                                        )
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} 
                                                      {(KW_Bang '!') (Lit_Other '=')} {(prog)}
                                                    )
                                                    (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} 
                                                      {(KW_Bang '!') (Lit_Other '=')} {(lib)}
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(func_fatal_error)} 
                                              {
                                                (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                                  ($ VSub_Name '$lib') ("' is not a convenience library")
                                                )
                                              }
                                            )
                                          ]
                                          spids: [26698 26725]
                                        )
                                      ]
                                      spids: [16777215 26737]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [16777215 26536]
                                )
                              ]
                              spids: [16777215 26743]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:linklib)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [26755]
                                )
                              ]
                              spids: [26755]
                            )
                            (ForEach
                              iter_name: l
                              iter_words: [
                                {($ VSub_Name '$old_library')}
                                {($ VSub_Name '$library_names')}
                              ]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:linklib)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$l'))}
                                          spids: [26772]
                                        )
                                      ]
                                      spids: [26772]
                                    )
                                  ]
                                  spids: [26769 26778]
                                )
                              spids: [26763 26767]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-z)} {(DQ ($ VSub_Name '$linklib'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(func_fatal_error)} 
                                      {
                                        (DQ ('cannot find name of link library for ') 
                                          (EscapedLiteralPart
                                            token: <Lit_EscapedChar '\\`'>
                                          ) ($ VSub_Name '$lib') ("'")
                                        )
                                      }
                                    )
                                  ]
                                  spids: [16777215 26792]
                                )
                              ]
                              spids: [16777215 26805]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$pass'))} {(Lit_Other '=')} 
                                          {(dlopen)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: (C {(test)} {(-z)} {(DQ ($ VSub_Name '$libdir'))})
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(func_fatal_error)} 
                                              {
                                                (DQ ('cannot -dlopen a convenience library: ') 
                                                  (EscapedLiteralPart
                                                    token: <Lit_EscapedChar '\\`'>
                                                  ) ($ VSub_Name '$lib') ("'")
                                                )
                                              }
                                            )
                                          ]
                                          spids: [16777215 26840]
                                        )
                                      ]
                                      spids: [16777215 26853]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-z)} {(DQ ($ VSub_Name '$dlname'))})
                                                    (AndOr
                                                      children: [
                                                        (C {(test)} 
                                                          {(DQ ($ VSub_Name '$dlopen_support'))} {(KW_Bang '!') (Lit_Other '=')} {(yes)}
                                                        )
                                                        (C {(test)} 
                                                          {(DQ ($ VSub_Name '$build_libtool_libs'))} {(Lit_Other '=')} {(no)}
                                                        )
                                                      ]
                                                      op_id: Op_DPipe
                                                    )
                                                  ]
                                                  op_id: Op_DPipe
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:dlprefiles)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$dlprefiles') (' ') 
                                                        ($ VSub_Name '$lib') (' ') ($ VSub_Name '$dependency_libs')
                                                      )
                                                    }
                                                  spids: [26913]
                                                )
                                              ]
                                              spids: [26913]
                                            )
                                          ]
                                          spids: [16777215 26894]
                                        )
                                      ]
                                      else_action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:newdlfiles)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$newdlfiles') (' ') 
                                                    ($ VSub_Name '$lib')
                                                  )
                                                }
                                              spids: [26926]
                                            )
                                          ]
                                          spids: [26926]
                                        )
                                      ]
                                      spids: [26923 26934]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [16777215 26826]
                                )
                              ]
                              spids: [16777215 26940]
                            )
                            (Case
                              to_match: {($ VSub_Name '$ladir')}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '[') 
                                      (EscapedLiteralPart
                                        token: <Lit_EscapedChar '\\\\'>
                                      ) (/) (Lit_Other ']') (Lit_Other '*')
                                    }
                                    {(Lit_Other '[') (A-Za-z) (Lit_Other ']') (Lit_Other ':') 
                                      (Lit_Other '[') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (/) (Lit_Other ']') (Lit_Other '*')
                                    }
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:abs_ladir)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$ladir'))}
                                          spids: [26977]
                                        )
                                      ]
                                      spids: [26977]
                                    )
                                  ]
                                  spids: [26958 26975 26982 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:abs_ladir)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (AndOr
                                                        children: [
                                                          (C {(cd)} {(DQ ($ VSub_Name '$ladir'))})
                                                          (C {(pwd)})
                                                        ]
                                                        op_id: Op_DAmp
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [26990 27000]
                                              )
                                            }
                                          spids: [26989]
                                        )
                                      ]
                                      spids: [26989]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(-z)} {(DQ ($ VSub_Name '$abs_ladir'))})
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(func_warning)} 
                                              {
                                                (DQ ('cannot determine absolute directory name of ') 
                                                  (EscapedLiteralPart
                                                    token: <Lit_EscapedChar '\\`'>
                                                  ) ($ VSub_Name '$ladir') ("'")
                                                )
                                              }
                                            )
                                            (C {(func_warning)} 
                                              {
                                                (DQ 
                                                  (
'passing it literally to the linker, although it might fail'
                                                  )
                                                )
                                              }
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:abs_ladir)
                                                  op: Equal
                                                  rhs: {(DQ ($ VSub_Name '$ladir'))}
                                                  spids: [27034]
                                                )
                                              ]
                                              spids: [27034]
                                            )
                                          ]
                                          spids: [16777215 27014]
                                        )
                                      ]
                                      spids: [16777215 27040]
                                    )
                                  ]
                                  spids: [26985 26986 27043 16777215]
                                )
                              ]
                              spids: [26951 26955 27046]
                            )
                            (C {(func_basename)} {(DQ ($ VSub_Name '$lib'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:laname)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$func_basename_result'))}
                                  spids: [27056]
                                )
                              ]
                              spids: [27056]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ (X) ($ VSub_Name '$installed'))} 
                                          {(Lit_Other '=')} {(Xyes)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(KW_Bang '!')} {(-f)} 
                                                      {
                                                        (DQ ($ VSub_Name '$libdir') (/) 
                                                          ($ VSub_Name '$linklib')
                                                        )
                                                      }
                                                    )
                                                    (C {(test)} {(-f)} 
                                                      {
                                                        (DQ ($ VSub_Name '$abs_ladir') (/) 
                                                          ($ VSub_Name '$linklib')
                                                        )
                                                      }
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(func_warning)} 
                                              {
                                                (DQ ('library ') 
                                                  (EscapedLiteralPart
                                                    token: <Lit_EscapedChar '\\`'>
                                                  ) ($ VSub_Name '$lib') ("' was moved.")
                                                )
                                              }
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:dir)
                                                  op: Equal
                                                  rhs: {(DQ ($ VSub_Name '$ladir'))}
                                                  spids: [27124]
                                                )
                                              ]
                                              spids: [27124]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:absdir)
                                                  op: Equal
                                                  rhs: {(DQ ($ VSub_Name '$abs_ladir'))}
                                                  spids: [27130]
                                                )
                                              ]
                                              spids: [27130]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:libdir)
                                                  op: Equal
                                                  rhs: {(DQ ($ VSub_Name '$abs_ladir'))}
                                                  spids: [27136]
                                                )
                                              ]
                                              spids: [27136]
                                            )
                                          ]
                                          spids: [16777215 27111]
                                        )
                                      ]
                                      else_action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:dir)
                                              op: Equal
                                              rhs: {(DQ ($ VSub_Name '$libdir'))}
                                              spids: [27145]
                                            )
                                          ]
                                          spids: [27145]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:absdir)
                                              op: Equal
                                              rhs: {(DQ ($ VSub_Name '$libdir'))}
                                              spids: [27151]
                                            )
                                          ]
                                          spids: [27151]
                                        )
                                      ]
                                      spids: [27142 27157]
                                    )
                                    (AndOr
                                      children: [
                                        (C {(test)} {(DQ (X) ($ VSub_Name '$hardcode_automatic'))} 
                                          {(Lit_Other '=')} {(Xyes)}
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:avoidtemprpath)
                                              op: Equal
                                              rhs: {(yes)}
                                              spids: [27173]
                                            )
                                          ]
                                          spids: [27173]
                                        )
                                      ]
                                      op_id: Op_DAmp
                                    )
                                  ]
                                  spids: [16777215 27081]
                                )
                              ]
                              else_action: [
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: 
                                            (AndOr
                                              children: [
                                                (C {(test)} {(KW_Bang '!')} {(-f)} 
                                                  {
                                                    (DQ ($ VSub_Name '$ladir') (/) 
                                                      ($ VSub_Name '$objdir') (/) ($ VSub_Name '$linklib')
                                                    )
                                                  }
                                                )
                                                (C {(test)} {(-f)} 
                                                  {
                                                    (DQ ($ VSub_Name '$abs_ladir') (/) 
                                                      ($ VSub_Name '$linklib')
                                                    )
                                                  }
                                                )
                                              ]
                                              op_id: Op_DAmp
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:dir)
                                              op: Equal
                                              rhs: {(DQ ($ VSub_Name '$ladir'))}
                                              spids: [27212]
                                            )
                                          ]
                                          spids: [27212]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:absdir)
                                              op: Equal
                                              rhs: {(DQ ($ VSub_Name '$abs_ladir'))}
                                              spids: [27218]
                                            )
                                          ]
                                          spids: [27218]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:notinst_path)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$notinst_path') (' ') 
                                                    ($ VSub_Name '$abs_ladir')
                                                  )
                                                }
                                              spids: [27228]
                                            )
                                          ]
                                          spids: [27228]
                                        )
                                      ]
                                      spids: [16777215 27209]
                                    )
                                  ]
                                  else_action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:dir)
                                          op: Equal
                                          rhs: 
                                            {(DQ ($ VSub_Name '$ladir') (/) ($ VSub_Name '$objdir'))}
                                          spids: [27239]
                                        )
                                      ]
                                      spids: [27239]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:absdir)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$abs_ladir') (/) 
                                                ($ VSub_Name '$objdir')
                                              )
                                            }
                                          spids: [27247]
                                        )
                                      ]
                                      spids: [27247]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:notinst_path)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$notinst_path') (' ') 
                                                ($ VSub_Name '$abs_ladir')
                                              )
                                            }
                                          spids: [27259]
                                        )
                                      ]
                                      spids: [27259]
                                    )
                                  ]
                                  spids: [27236 27267]
                                )
                              ]
                              spids: [27177 27270]
                            )
                            (C {(func_stripname)} {(SQ <lib>)} {(SQ <.la>)} {(DQ ($ VSub_Name '$laname'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:name)
                                  op: Equal
                                  rhs: {($ VSub_Name '$func_stripname_result')}
                                  spids: [27291]
                                )
                              ]
                              spids: [27291]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$pass'))} {(Lit_Other '=')} 
                                          {(dlpreopen)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-z)} {(DQ ($ VSub_Name '$libdir'))})
                                                    (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} 
                                                      {(Lit_Other '=')} {(prog)}
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(func_fatal_error)} 
                                              {
                                                (DQ 
                                                  (
'only libraries may -dlpreopen a convenience library: '
                                                  ) (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ($ VSub_Name '$lib') ("'")
                                                )
                                              }
                                            )
                                          ]
                                          spids: [16777215 27339]
                                        )
                                      ]
                                      spids: [16777215 27352]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$old_library'))})
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:newdlprefiles)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$newdlprefiles') (' ') 
                                                        ($ VSub_Name '$dir') (/) ($ VSub_Name '$old_library')
                                                      )
                                                    }
                                                  spids: [27377]
                                                )
                                              ]
                                              spids: [27377]
                                            )
                                            (AndOr
                                              children: [
                                                (C {(test)} {(-z)} {(DQ ($ VSub_Name '$libdir'))})
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:dlpreconveniencelibs)
                                                      op: Equal
                                                      rhs: 
                                                        {
                                                          (DQ ($ VSub_Name '$dlpreconveniencelibs') 
                                                            (' ') ($ VSub_Name '$dir') (/) ($ VSub_Name '$old_library')
                                                          )
                                                        }
                                                      spids: [27407]
                                                    )
                                                  ]
                                                  spids: [27407]
                                                )
                                              ]
                                              op_id: Op_DAmp
                                            )
                                          ]
                                          spids: [16777215 27374]
                                        )
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$dlname'))})
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:newdlprefiles)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$newdlprefiles') (' ') 
                                                        ($ VSub_Name '$dir') (/) ($ VSub_Name '$dlname')
                                                      )
                                                    }
                                                  spids: [27435]
                                                )
                                              ]
                                              spids: [27435]
                                            )
                                          ]
                                          spids: [27421 27432]
                                        )
                                      ]
                                      else_action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:newdlprefiles)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$newdlprefiles') (' ') 
                                                    ($ VSub_Name '$dir') (/) ($ VSub_Name '$linklib')
                                                  )
                                                }
                                              spids: [27448]
                                            )
                                          ]
                                          spids: [27448]
                                        )
                                      ]
                                      spids: [27445 27458]
                                    )
                                  ]
                                  spids: [16777215 27313]
                                )
                              ]
                              spids: [16777215 27461]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-z)} {(DQ ($ VSub_Name '$libdir'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} 
                                                  {(Lit_Other '=')} {(lib)}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:deplibs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$dir') (/) 
                                                        ($ VSub_Name '$old_library') (' ') ($ VSub_Name '$deplibs')
                                                      )
                                                    }
                                                  spids: [27502]
                                                )
                                              ]
                                              spids: [27502]
                                            )
                                          ]
                                          spids: [16777215 27499]
                                        )
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} 
                                                  {
                                                    (DQ ($ VSub_Name '$linkmode') (',') 
                                                      ($ VSub_Name '$pass')
                                                    )
                                                  } {(Lit_Other '=')} {(DQ ('prog,link'))}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:compile_deplibs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$dir') (/) 
                                                        ($ VSub_Name '$old_library') (' ') ($ VSub_Name '$compile_deplibs')
                                                      )
                                                    }
                                                  spids: [27532]
                                                )
                                              ]
                                              spids: [27532]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:finalize_deplibs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$dir') (/) 
                                                        ($ VSub_Name '$old_library') (' ') ($ VSub_Name '$finalize_deplibs')
                                                      )
                                                    }
                                                  spids: [27542]
                                                )
                                              ]
                                              spids: [27542]
                                            )
                                          ]
                                          spids: [27512 27529]
                                        )
                                      ]
                                      else_action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:deplibs)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$lib') (' ') 
                                                    ($ VSub_Name '$deplibs')
                                                  )
                                                }
                                              spids: [27555]
                                            )
                                          ]
                                          spids: [27555]
                                        )
                                      ]
                                      spids: [27552 27566]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [16777215 27479]
                                )
                              ]
                              spids: [16777215 27572]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          children: [
                                            (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} 
                                              {(Lit_Other '=')} {(prog)}
                                            )
                                            (C {(test)} {(DQ ($ VSub_Name '$pass'))} 
                                              {(KW_Bang '!') (Lit_Other '=')} {(link)}
                                            )
                                          ]
                                          op_id: Op_DAmp
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:newlib_search_path)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$newlib_search_path') (' ') 
                                                ($ VSub_Name '$ladir')
                                              )
                                            }
                                          spids: [27606]
                                        )
                                      ]
                                      spids: [27606]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:deplibs)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$lib') (' ') ($ VSub_Name '$deplibs'))
                                            }
                                          spids: [27614]
                                        )
                                      ]
                                      spids: [27614]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:linkalldeplibs)
                                          op: Equal
                                          rhs: {(no)}
                                          spids: [27623]
                                        )
                                      ]
                                      spids: [27623]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(DQ ($ VSub_Name '$link_all_deplibs'))} 
                                                      {(KW_Bang '!') (Lit_Other '=')} {(no)}
                                                    )
                                                    (AndOr
                                                      children: [
                                                        (C {(test)} {(-z)} 
                                                          {(DQ ($ VSub_Name '$library_names'))}
                                                        )
                                                        (C {(test)} 
                                                          {(DQ ($ VSub_Name '$build_libtool_libs'))} {(Lit_Other '=')} {(no)}
                                                        )
                                                      ]
                                                      op_id: Op_DPipe
                                                    )
                                                  ]
                                                  op_id: Op_DPipe
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:linkalldeplibs)
                                                  op: Equal
                                                  rhs: {(yes)}
                                                  spids: [27667]
                                                )
                                              ]
                                              spids: [27667]
                                            )
                                          ]
                                          spids: [16777215 27664]
                                        )
                                      ]
                                      spids: [16777215 27671]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:tmp_libs)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [27675]
                                        )
                                      ]
                                      spids: [27675]
                                    )
                                    (ForEach
                                      iter_name: deplib
                                      iter_words: [{($ VSub_Name '$dependency_libs')}]
                                      do_arg_iter: False
                                      body: 
                                        (DoGroup
                                          children: [
                                            (Case
                                              to_match: {($ VSub_Name '$deplib')}
                                              arms: [
                                                (case_arm
                                                  pat_list: [{(-L) (Lit_Other '*')}]
                                                  action: [
                                                    (C {(func_stripname)} {(SQ <-L>)} {(SQ )} 
                                                      {(DQ ($ VSub_Name '$deplib'))}
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:newlib_search_path)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$newlib_search_path') 
                                                                (' ') ($ VSub_Name '$func_stripname_result')
                                                              )
                                                            }
                                                          spids: [27715]
                                                        )
                                                      ]
                                                      spids: [27715]
                                                    )
                                                  ]
                                                  spids: [27697 27699 27723 16777215]
                                                )
                                              ]
                                              spids: [27690 27694 27726]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} 
                                                          {(DQ ($ VSub_Name '$linkalldeplibs'))} {(Lit_Other '=')} {(yes)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:deplibs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$deplib') (' ') 
                                                                ($ VSub_Name '$deplibs')
                                                              )
                                                            }
                                                          spids: [27749]
                                                        )
                                                      ]
                                                      spids: [27749]
                                                    )
                                                  ]
                                                  spids: [16777215 27746]
                                                )
                                              ]
                                              else_action: [
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:newdependency_libs)
                                                      op: Equal
                                                      rhs: 
                                                        {
                                                          (DQ ($ VSub_Name '$deplib') (' ') 
                                                            ($ VSub_Name '$newdependency_libs')
                                                          )
                                                        }
                                                      spids: [27768]
                                                    )
                                                  ]
                                                  spids: [27768]
                                                )
                                              ]
                                              spids: [27757 27776]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: (C {($ VSub_Name '$opt_duplicate_deps')})
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Case
                                                      to_match: {(DQ ($ VSub_Name '$tmp_libs') (' '))}
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [
                                                            {(Lit_Other '*') 
                                                              (DQ (' ') ($ VSub_Name '$deplib') (' ')) (Lit_Other '*')
                                                            }
                                                          ]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:specialdeplibs)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name 
'$specialdeplibs'
                                                                        ) (' ') ($ VSub_Name '$deplib')
                                                                      )
                                                                    }
                                                                  spids: [27807]
                                                                )
                                                              ]
                                                              spids: [27807]
                                                            )
                                                          ]
                                                          spids: [27798 27805 27814 16777215]
                                                        )
                                                      ]
                                                      spids: [27788 27795 27817]
                                                    )
                                                  ]
                                                  spids: [16777215 27785]
                                                )
                                              ]
                                              spids: [16777215 27820]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:tmp_libs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$tmp_libs') (' ') 
                                                        ($ VSub_Name '$deplib')
                                                      )
                                                    }
                                                  spids: [27823]
                                                )
                                              ]
                                              spids: [27823]
                                            )
                                          ]
                                          spids: [27687 27831]
                                        )
                                      spids: [27683 27685]
                                    )
                                    (ControlFlow
                                      token: <ControlFlow_Continue continue>
                                    )
                                  ]
                                  spids: [16777215 27603]
                                )
                              ]
                              spids: [16777215 27840]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} 
                                          {
                                            (DQ ($ VSub_Name '$linkmode') (',') ($ VSub_Name '$pass'))
                                          } {(Lit_Other '=')} {(DQ ('prog,link'))}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-n)} 
                                                      {(DQ ($ VSub_Name '$library_names'))}
                                                    )
                                                    (BraceGroup
                                                      children: [
                                                        (Sentence
                                                          child: 
                                                            (AndOr
                                                              children: [
                                                                (BraceGroup
                                                                  children: [
                                                                    (Sentence
                                                                      child: 
                                                                        (AndOr
                                                                          children: [
                                                                            (C {(test)} 
                                                                              {
                                                                                (DQ 
                                                                                  ($ VSub_Name 
'$prefer_static_libs'
                                                                                  )
                                                                                )
                                                                              } {(Lit_Other '=')} {(no)}
                                                                            )
                                                                            (C {(test)} 
                                                                              {
                                                                                (DQ 
                                                                                  ($ VSub_Name 
'$prefer_static_libs'
                                                                                  ) (',') ($ VSub_Name '$installed')
                                                                                )
                                                                              } {(Lit_Other '=')} {(DQ ('built,yes'))}
                                                                            )
                                                                          ]
                                                                          op_id: Op_DPipe
                                                                        )
                                                                      terminator: <Op_Semi ';'>
                                                                    )
                                                                  ]
                                                                  spids: [27882]
                                                                )
                                                                (C {(test)} {(-z)} 
                                                                  {(DQ ($ VSub_Name '$old_library'))}
                                                                )
                                                              ]
                                                              op_id: Op_DPipe
                                                            )
                                                          terminator: <Op_Semi ';'>
                                                        )
                                                      ]
                                                      spids: [27880]
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (AndOr
                                                          children: [
                                                            (C {(test)} {(-n)} 
                                                              {(DQ ($ VSub_Name '$shlibpath_var'))}
                                                            )
                                                            (C {(test)} {(-z)} 
                                                              {(DQ ($ VSub_Name '$avoidtemprpath'))}
                                                            )
                                                          ]
                                                          op_id: Op_DAmp
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Case
                                                      to_match: 
                                                        {(DQ ($ VSub_Name '$temp_rpath') (':'))}
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [
                                                            {(Lit_Other '*') 
                                                              (DQ ($ VSub_Name '$absdir') (':')) (Lit_Other '*')
                                                            }
                                                          ]
                                                          spids: [27975 27981 27983 16777215]
                                                        )
                                                        (case_arm
                                                          pat_list: [{(Lit_Other '*')}]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:temp_rpath)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ ($ VSub_Name '$temp_rpath') 
                                                                        ($ VSub_Name '$absdir') (':')
                                                                      )
                                                                    }
                                                                  spids: [27989]
                                                                )
                                                              ]
                                                              spids: [27989]
                                                            )
                                                          ]
                                                          spids: [27986 27987 27996 16777215]
                                                        )
                                                      ]
                                                      spids: [27965 27972 27999]
                                                    )
                                                  ]
                                                  spids: [16777215 27958]
                                                )
                                              ]
                                              spids: [16777215 28002]
                                            )
                                            (Case
                                              to_match: 
                                                {
                                                  (DQ (' ') ($ VSub_Name '$sys_lib_dlsearch_path') 
                                                    (' ')
                                                  )
                                                }
                                              arms: [
                                                (case_arm
                                                  pat_list: [
                                                    {(Lit_Other '*') 
                                                      (DQ (' ') ($ VSub_Name '$absdir') (' ')) (Lit_Other '*')
                                                    }
                                                  ]
                                                  spids: [28029 28036 28038 16777215]
                                                )
                                                (case_arm
                                                  pat_list: [{(Lit_Other '*')}]
                                                  action: [
                                                    (Case
                                                      to_match: 
                                                        {(DQ ($ VSub_Name '$compile_rpath') (' '))}
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [
                                                            {(Lit_Other '*') 
                                                              (DQ (' ') ($ VSub_Name '$absdir') (' ')) (Lit_Other '*')
                                                            }
                                                          ]
                                                          spids: [28055 28062 28064 16777215]
                                                        )
                                                        (case_arm
                                                          pat_list: [{(Lit_Other '*')}]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:compile_rpath)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name '$compile_rpath') (' ') ($ VSub_Name '$absdir')
                                                                      )
                                                                    }
                                                                  spids: [28070]
                                                                )
                                                              ]
                                                              spids: [28070]
                                                            )
                                                          ]
                                                          spids: [28067 28068 16777215 28078]
                                                        )
                                                      ]
                                                      spids: [28045 28052 28078]
                                                    )
                                                  ]
                                                  spids: [28041 28042 28081 16777215]
                                                )
                                              ]
                                              spids: [28018 28026 28084]
                                            )
                                            (Case
                                              to_match: 
                                                {
                                                  (DQ (' ') ($ VSub_Name '$sys_lib_dlsearch_path') 
                                                    (' ')
                                                  )
                                                }
                                              arms: [
                                                (case_arm
                                                  pat_list: [
                                                    {(Lit_Other '*') 
                                                      (DQ (' ') ($ VSub_Name '$libdir') (' ')) (Lit_Other '*')
                                                    }
                                                  ]
                                                  spids: [28098 28105 28107 16777215]
                                                )
                                                (case_arm
                                                  pat_list: [{(Lit_Other '*')}]
                                                  action: [
                                                    (Case
                                                      to_match: 
                                                        {(DQ ($ VSub_Name '$finalize_rpath') (' '))}
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [
                                                            {(Lit_Other '*') 
                                                              (DQ (' ') ($ VSub_Name '$libdir') (' ')) (Lit_Other '*')
                                                            }
                                                          ]
                                                          spids: [28124 28131 28133 16777215]
                                                        )
                                                        (case_arm
                                                          pat_list: [{(Lit_Other '*')}]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:finalize_rpath)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name 
'$finalize_rpath'
                                                                        ) (' ') ($ VSub_Name '$libdir')
                                                                      )
                                                                    }
                                                                  spids: [28139]
                                                                )
                                                              ]
                                                              spids: [28139]
                                                            )
                                                          ]
                                                          spids: [28136 28137 16777215 28147]
                                                        )
                                                      ]
                                                      spids: [28114 28121 28147]
                                                    )
                                                  ]
                                                  spids: [28110 28111 28150 16777215]
                                                )
                                              ]
                                              spids: [28087 28095 28153]
                                            )
                                          ]
                                          spids: [16777215 27929]
                                        )
                                      ]
                                      spids: [16777215 28156]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(DQ ($ VSub_Name '$alldeplibs'))} 
                                                      {(Lit_Other '=')} {(yes)}
                                                    )
                                                    (BraceGroup
                                                      children: [
                                                        (Sentence
                                                          child: 
                                                            (AndOr
                                                              children: [
                                                                (C {(test)} 
                                                                  {
                                                                    (DQ 
                                                                      ($ VSub_Name 
'$deplibs_check_method'
                                                                      )
                                                                    )
                                                                  } {(Lit_Other '=')} {(pass_all)}
                                                                )
                                                                (BraceGroup
                                                                  children: [
                                                                    (Sentence
                                                                      child: 
                                                                        (AndOr
                                                                          children: [
                                                                            (C {(test)} 
                                                                              {
                                                                                (DQ 
                                                                                  ($ VSub_Name 
'$build_libtool_libs'
                                                                                  )
                                                                                )
                                                                              } {(Lit_Other '=')} {(yes)}
                                                                            )
                                                                            (C {(test)} {(-n)} 
                                                                              {
                                                                                (DQ 
                                                                                  ($ VSub_Name 
'$library_names'
                                                                                  )
                                                                                )
                                                                              }
                                                                            )
                                                                          ]
                                                                          op_id: Op_DAmp
                                                                        )
                                                                      terminator: <Op_Semi ';'>
                                                                    )
                                                                  ]
                                                                  spids: [28193]
                                                                )
                                                              ]
                                                              op_id: Op_DPipe
                                                            )
                                                          terminator: <Op_Semi ';'>
                                                        )
                                                      ]
                                                      spids: [28178]
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [(ControlFlow token:<ControlFlow_Continue continue>)]
                                          spids: [16777215 28223]
                                        )
                                      ]
                                      spids: [16777215 28233]
                                    )
                                  ]
                                  spids: [16777215 27864]
                                )
                              ]
                              spids: [16777215 28236]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:link_static)
                                  op: Equal
                                  rhs: {(no)}
                                  spids: [28240]
                                )
                              ]
                              spids: [28240]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:use_static_libs)
                                  op: Equal
                                  rhs: {($ VSub_Name '$prefer_static_libs')}
                                  spids: [28247]
                                )
                              ]
                              spids: [28247]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          children: [
                                            (C {(test)} {(DQ ($ VSub_Name '$use_static_libs'))} 
                                              {(Lit_Other '=')} {(built)}
                                            )
                                            (C {(test)} {(DQ ($ VSub_Name '$installed'))} 
                                              {(Lit_Other '=')} {(yes)}
                                            )
                                          ]
                                          op_id: Op_DAmp
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:use_static_libs)
                                          op: Equal
                                          rhs: {(no)}
                                          spids: [28279]
                                        )
                                      ]
                                      spids: [28279]
                                    )
                                  ]
                                  spids: [16777215 28276]
                                )
                              ]
                              spids: [16777215 28283]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          children: [
                                            (C {(test)} {(-n)} {(DQ ($ VSub_Name '$library_names'))})
                                            (BraceGroup
                                              children: [
                                                (Sentence
                                                  child: 
                                                    (AndOr
                                                      children: [
                                                        (C {(test)} 
                                                          {(DQ ($ VSub_Name '$use_static_libs'))} {(Lit_Other '=')} {(no)}
                                                        )
                                                        (C {(test)} {(-z)} 
                                                          {(DQ ($ VSub_Name '$old_library'))}
                                                        )
                                                      ]
                                                      op_id: Op_DPipe
                                                    )
                                                  terminator: <Op_Semi ';'>
                                                )
                                              ]
                                              spids: [28299]
                                            )
                                          ]
                                          op_id: Op_DAmp
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Case
                                      to_match: {($ VSub_Name '$host')}
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (cygwin) (Lit_Other '*')}
                                            {(Lit_Other '*') (mingw) (Lit_Other '*')}
                                            {(Lit_Other '*') (cegcc) (Lit_Other '*')}
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:notinst_deplibs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$notinst_deplibs') (' ') 
                                                        ($ VSub_Name '$lib')
                                                      )
                                                    }
                                                  spids: [28357]
                                                )
                                              ]
                                              spids: [28357]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:need_relink)
                                                  op: Equal
                                                  rhs: {(no)}
                                                  spids: [28365]
                                                )
                                              ]
                                              spids: [28365]
                                            )
                                          ]
                                          spids: [28335 28350 28369 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(DQ ($ VSub_Name '$installed'))} 
                                                          {(Lit_Other '=')} {(no)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:notinst_deplibs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$notinst_deplibs') 
                                                                (' ') ($ VSub_Name '$lib')
                                                              )
                                                            }
                                                          spids: [28392]
                                                        )
                                                      ]
                                                      spids: [28392]
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:need_relink)
                                                          op: Equal
                                                          rhs: {(yes)}
                                                          spids: [28400]
                                                        )
                                                      ]
                                                      spids: [28400]
                                                    )
                                                  ]
                                                  spids: [16777215 28389]
                                                )
                                              ]
                                              spids: [16777215 28404]
                                            )
                                          ]
                                          spids: [28372 28373 28407 16777215]
                                        )
                                      ]
                                      spids: [28328 28332 28410]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:dlopenmodule)
                                          op: Equal
                                          rhs: {(DQ )}
                                          spids: [28426]
                                        )
                                      ]
                                      spids: [28426]
                                    )
                                    (ForEach
                                      iter_name: dlpremoduletest
                                      iter_words: [{($ VSub_Name '$dlprefiles')}]
                                      do_arg_iter: False
                                      body: 
                                        (DoGroup
                                          children: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} 
                                                          {(DQ (X) ($ VSub_Name '$dlpremoduletest'))} {(Lit_Other '=')} {(DQ (X) ($ VSub_Name '$lib'))}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:dlopenmodule)
                                                          op: Equal
                                                          rhs: {(DQ ($ VSub_Name '$dlpremoduletest'))}
                                                          spids: [28463]
                                                        )
                                                      ]
                                                      spids: [28463]
                                                    )
                                                    (ControlFlow
                                                      token: <ControlFlow_Break break>
                                                    )
                                                  ]
                                                  spids: [16777215 28460]
                                                )
                                              ]
                                              spids: [16777215 28472]
                                            )
                                          ]
                                          spids: [28440 28475]
                                        )
                                      spids: [28436 28438]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-z)} 
                                                      {(DQ ($ VSub_Name '$dlopenmodule'))}
                                                    )
                                                    (AndOr
                                                      children: [
                                                        (C {(test)} 
                                                          {(DQ ($ VSub_Name '$shouldnotlink'))} {(Lit_Other '=')} {(yes)}
                                                        )
                                                        (C {(test)} {(DQ ($ VSub_Name '$pass'))} 
                                                          {(Lit_Other '=')} {(link)}
                                                        )
                                                      ]
                                                      op_id: Op_DAmp
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {($ VSub_Name '$ECHO')})
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} 
                                                          {(Lit_Other '=')} {(prog)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (C {($ VSub_Name '$ECHO')} 
                                                      {
                                                        (DQ ('*** Warning: Linking the executable ') 
                                                          ($ VSub_Name '$output') (' against the loadable module')
                                                        )
                                                      }
                                                    )
                                                  ]
                                                  spids: [16777215 28532]
                                                )
                                              ]
                                              else_action: [
                                                (C {($ VSub_Name '$ECHO')} 
                                                  {
                                                    (DQ ('*** Warning: Linking the shared library ') 
                                                      ($ VSub_Name '$output') (' against the loadable module')
                                                    )
                                                  }
                                                )
                                              ]
                                              spids: [28544 28556]
                                            )
                                            (C {($ VSub_Name '$ECHO')} 
                                              {
                                                (DQ ('*** ') ($ VSub_Name '$linklib') 
                                                  (' is not portable!')
                                                )
                                              }
                                            )
                                          ]
                                          spids: [16777215 28513]
                                        )
                                      ]
                                      spids: [16777215 28568]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} 
                                                      {(Lit_Other '=')} {(lib)}
                                                    )
                                                    (C {(test)} 
                                                      {(DQ ($ VSub_Name '$hardcode_into_libs'))} {(Lit_Other '=')} {(yes)}
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Case
                                              to_match: 
                                                {
                                                  (DQ (' ') ($ VSub_Name '$sys_lib_dlsearch_path') 
                                                    (' ')
                                                  )
                                                }
                                              arms: [
                                                (case_arm
                                                  pat_list: [
                                                    {(Lit_Other '*') 
                                                      (DQ (' ') ($ VSub_Name '$absdir') (' ')) (Lit_Other '*')
                                                    }
                                                  ]
                                                  spids: [28623 28630 28632 16777215]
                                                )
                                                (case_arm
                                                  pat_list: [{(Lit_Other '*')}]
                                                  action: [
                                                    (Case
                                                      to_match: 
                                                        {(DQ ($ VSub_Name '$compile_rpath') (' '))}
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [
                                                            {(Lit_Other '*') 
                                                              (DQ (' ') ($ VSub_Name '$absdir') (' ')) (Lit_Other '*')
                                                            }
                                                          ]
                                                          spids: [28649 28656 28658 16777215]
                                                        )
                                                        (case_arm
                                                          pat_list: [{(Lit_Other '*')}]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:compile_rpath)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name '$compile_rpath') (' ') ($ VSub_Name '$absdir')
                                                                      )
                                                                    }
                                                                  spids: [28664]
                                                                )
                                                              ]
                                                              spids: [28664]
                                                            )
                                                          ]
                                                          spids: [28661 28662 16777215 28672]
                                                        )
                                                      ]
                                                      spids: [28639 28646 28672]
                                                    )
                                                  ]
                                                  spids: [28635 28636 28675 16777215]
                                                )
                                              ]
                                              spids: [28612 28620 28678]
                                            )
                                            (Case
                                              to_match: 
                                                {
                                                  (DQ (' ') ($ VSub_Name '$sys_lib_dlsearch_path') 
                                                    (' ')
                                                  )
                                                }
                                              arms: [
                                                (case_arm
                                                  pat_list: [
                                                    {(Lit_Other '*') 
                                                      (DQ (' ') ($ VSub_Name '$libdir') (' ')) (Lit_Other '*')
                                                    }
                                                  ]
                                                  spids: [28692 28699 28701 16777215]
                                                )
                                                (case_arm
                                                  pat_list: [{(Lit_Other '*')}]
                                                  action: [
                                                    (Case
                                                      to_match: 
                                                        {(DQ ($ VSub_Name '$finalize_rpath') (' '))}
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [
                                                            {(Lit_Other '*') 
                                                              (DQ (' ') ($ VSub_Name '$libdir') (' ')) (Lit_Other '*')
                                                            }
                                                          ]
                                                          spids: [28718 28725 28727 16777215]
                                                        )
                                                        (case_arm
                                                          pat_list: [{(Lit_Other '*')}]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:finalize_rpath)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name 
'$finalize_rpath'
                                                                        ) (' ') ($ VSub_Name '$libdir')
                                                                      )
                                                                    }
                                                                  spids: [28733]
                                                                )
                                                              ]
                                                              spids: [28733]
                                                            )
                                                          ]
                                                          spids: [28730 28731 16777215 28741]
                                                        )
                                                      ]
                                                      spids: [28708 28715 28741]
                                                    )
                                                  ]
                                                  spids: [28704 28705 28744 16777215]
                                                )
                                              ]
                                              spids: [28681 28689 28747]
                                            )
                                          ]
                                          spids: [16777215 28597]
                                        )
                                      ]
                                      spids: [16777215 28750]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(-n)} 
                                                  {
                                                    (DQ 
                                                      ($ VSub_Name '$old_archive_from_expsyms_cmds')
                                                    )
                                                  }
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(set)} {(dummy)} {($ VSub_Name '$library_names')})
                                            (C {(shift)})
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:realname)
                                                  op: Equal
                                                  rhs: {(DQ ($ VSub_Number '$1'))}
                                                  spids: [28782]
                                                )
                                              ]
                                              spids: [28782]
                                            )
                                            (C {(shift)})
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:libname)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (CommandSubPart
                                                        command_list: 
                                                          (CommandList
                                                            children: [
                                                              (C {(eval)} 
                                                                {
                                                                  (DQ 
                                                                    (EscapedLiteralPart
                                                                      token: <Lit_EscapedChar '\\\\'>
                                                                    ) ($ VSub_Name '$ECHO') (' ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                                                                    ($ VSub_Name '$libname_spec') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                                                  )
                                                                }
                                                              )
                                                            ]
                                                          )
                                                        left_token: <Left_Backtick '`'>
                                                        spids: [28792 28803]
                                                      )
                                                    }
                                                  spids: [28791]
                                                )
                                              ]
                                              spids: [28791]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$dlname'))})
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:soname)
                                                          op: Equal
                                                          rhs: {(DQ ($ VSub_Name '$dlname'))}
                                                          spids: [28824]
                                                        )
                                                      ]
                                                      spids: [28824]
                                                    )
                                                  ]
                                                  spids: [16777215 28821]
                                                )
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(-n)} 
                                                          {(DQ ($ VSub_Name '$soname_spec'))}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Case
                                                      to_match: {($ VSub_Name '$host')}
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [
                                                            {(Lit_Other '*') (cygwin) (Lit_Other '*')}
                                                            {(mingw) (Lit_Other '*')}
                                                            {(Lit_Other '*') (cegcc) (Lit_Other '*')}
                                                          ]
                                                          action: [
                                                            (C {(func_arith)} 
                                                              {($ VSub_Name '$current')} {(-)} {($ VSub_Name '$age')}
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:major)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      ($ VSub_Name 
'$func_arith_result'
                                                                      )
                                                                    }
                                                                  spids: [28881]
                                                                )
                                                              ]
                                                              spids: [28881]
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:versuffix)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {(DQ (-) ($ VSub_Name '$major'))}
                                                                  spids: [28885]
                                                                )
                                                              ]
                                                              spids: [28885]
                                                            )
                                                          ]
                                                          spids: [28855 28869 28892 16777215]
                                                        )
                                                      ]
                                                      spids: [28848 28852 28895]
                                                    )
                                                    (C {(eval)} 
                                                      {(Lit_VarLike 'soname=') 
                                                        (EscapedLiteralPart
                                                          token: <Lit_EscapedChar '\\"'>
                                                        ) ($ VSub_Name '$soname_spec') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                                      }
                                                    )
                                                  ]
                                                  spids: [28830 28841]
                                                )
                                              ]
                                              else_action: [
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:soname)
                                                      op: Equal
                                                      rhs: {(DQ ($ VSub_Name '$realname'))}
                                                      spids: [28909]
                                                    )
                                                  ]
                                                  spids: [28909]
                                                )
                                              ]
                                              spids: [28906 28915]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:soroot)
                                                  op: Equal
                                                  rhs: {(DQ ($ VSub_Name '$soname'))}
                                                  spids: [28923]
                                                )
                                              ]
                                              spids: [28923]
                                            )
                                            (C {(func_basename)} {(DQ ($ VSub_Name '$soroot'))})
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:soname)
                                                  op: Equal
                                                  rhs: {(DQ ($ VSub_Name '$func_basename_result'))}
                                                  spids: [28936]
                                                )
                                              ]
                                              spids: [28936]
                                            )
                                            (C {(func_stripname)} {(SQ <lib>)} {(SQ <.dll>)} 
                                              {(DQ ($ VSub_Name '$soname'))}
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:newlib)
                                                  op: Equal
                                                  rhs: 
                                                    {(libimp-) 
                                                      ($ VSub_Name '$func_stripname_result') (.a)
                                                    }
                                                  spids: [28957]
                                                )
                                              ]
                                              spids: [28957]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(-f)} 
                                                          {
                                                            (DQ ($ VSub_Name '$output_objdir') (/) 
                                                              ($ VSub_Name '$soname') (-def)
                                                            )
                                                          }
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [(C {(Lit_Other ':')})]
                                                  spids: [16777215 28982]
                                                )
                                              ]
                                              else_action: [
                                                (C {(func_verbose)} 
                                                  {
                                                    (DQ ('extracting exported symbol list from ') 
                                                      (EscapedLiteralPart
                                                        token: <Lit_EscapedChar '\\`'>
                                                      ) ($ VSub_Name '$soname') ("'")
                                                    )
                                                  }
                                                )
                                                (C {(func_execute_cmds)} 
                                                  {(DQ ($ VSub_Name '$extract_expsyms_cmds'))} {(SQ <'exit $?'>)}
                                                )
                                              ]
                                              spids: [28987 29011]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(-f)} 
                                                          {
                                                            (DQ ($ VSub_Name '$output_objdir') (/) 
                                                              ($ VSub_Name '$newlib')
                                                            )
                                                          }
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Sentence
                                                      child: (C {(Lit_Other ':')})
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  spids: [16777215 29032]
                                                )
                                              ]
                                              else_action: [
                                                (C {(func_verbose)} 
                                                  {
                                                    (DQ ('generating import library for ') 
                                                      (EscapedLiteralPart
                                                        token: <Lit_EscapedChar '\\`'>
                                                      ) ($ VSub_Name '$soname') ("'")
                                                    )
                                                  }
                                                )
                                                (C {(func_execute_cmds)} 
                                                  {
                                                    (DQ 
                                                      ($ VSub_Name '$old_archive_from_expsyms_cmds')
                                                    )
                                                  } {(SQ <'exit $?'>)}
                                                )
                                              ]
                                              spids: [29037 29061]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:dir)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$output_objdir')}
                                                  spids: [29068]
                                                )
                                              ]
                                              spids: [29068]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:linklib)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$newlib')}
                                                  spids: [29072]
                                                )
                                              ]
                                              spids: [29072]
                                            )
                                          ]
                                          spids: [16777215 28765]
                                        )
                                      ]
                                      spids: [16777215 29076]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} 
                                                      {(Lit_Other '=')} {(prog)}
                                                    )
                                                    (C {(test)} {(DQ ($ VSub_Name '$mode'))} 
                                                      {(KW_Bang '!') (Lit_Other '=')} {(relink)}
                                                    )
                                                  ]
                                                  op_id: Op_DPipe
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:add_shlibpath)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [29112]
                                                )
                                              ]
                                              spids: [29112]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:add_dir)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [29115]
                                                )
                                              ]
                                              spids: [29115]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:add)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [29118]
                                                )
                                              ]
                                              spids: [29118]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:lib_linked)
                                                  op: Equal
                                                  rhs: {(yes)}
                                                  spids: [29121]
                                                )
                                              ]
                                              spids: [29121]
                                            )
                                            (Case
                                              to_match: {($ VSub_Name '$hardcode_action')}
                                              arms: [
                                                (case_arm
                                                  pat_list: [{(immediate)} {(unsupported)}]
                                                  action: [
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (C {(test)} 
                                                                  {
                                                                    (DQ 
                                                                      ($ VSub_Name '$hardcode_direct')
                                                                    )
                                                                  } {(Lit_Other '=')} {(no)}
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:add)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ ($ VSub_Name '$dir') (/) 
                                                                        ($ VSub_Name '$linklib')
                                                                      )
                                                                    }
                                                                  spids: [29156]
                                                                )
                                                              ]
                                                              spids: [29156]
                                                            )
                                                            (Case
                                                              to_match: {($ VSub_Name '$host')}
                                                              arms: [
                                                                (case_arm
                                                                  pat_list: [
                                                                    {(Lit_Other '*') (-) 
                                                                      (Lit_Other '*') (-sco3.2v5.0.) (Lit_Other '[') (024) (Lit_Other ']') (Lit_Other '*')
                                                                    }
                                                                  ]
                                                                  action: [
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: (LhsName name:add_dir)
                                                                          op: Equal
                                                                          rhs: 
                                                                            {
                                                                              (DQ (-L) 
                                                                                ($ VSub_Name '$dir')
                                                                              )
                                                                            }
                                                                          spids: [29181]
                                                                        )
                                                                      ]
                                                                      spids: [29181]
                                                                    )
                                                                  ]
                                                                  spids: [29171 29179 29187 16777215]
                                                                )
                                                                (case_arm
                                                                  pat_list: [
                                                                    {(Lit_Other '*') (-) 
                                                                      (Lit_Other '*') (-sysv4) (Lit_Other '*') (uw2) (Lit_Other '*')
                                                                    }
                                                                  ]
                                                                  action: [
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: (LhsName name:add_dir)
                                                                          op: Equal
                                                                          rhs: 
                                                                            {
                                                                              (DQ (-L) 
                                                                                ($ VSub_Name '$dir')
                                                                              )
                                                                            }
                                                                          spids: [29199]
                                                                        )
                                                                      ]
                                                                      spids: [29199]
                                                                    )
                                                                  ]
                                                                  spids: [29190 29197 29205 16777215]
                                                                )
                                                                (case_arm
                                                                  pat_list: [
                                                                    {(Lit_Other '*') (-) 
                                                                      (Lit_Other '*') (-sysv5OpenUNIX) (Lit_Other '*')
                                                                    }
                                                                    {(Lit_Other '*') (-) 
                                                                      (Lit_Other '*') (-sysv5UnixWare7.) (Lit_Other '[') (01) (Lit_Other ']') (.) (Lit_Other '[') (10) (Lit_Other ']') 
                                                                      (Lit_Other '*')
                                                                    }
                                                                    {(Lit_Other '*') (-) 
                                                                      (Lit_Other '*') (-unixware7) (Lit_Other '*')
                                                                    }
                                                                  ]
                                                                  action: [
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: (LhsName name:add_dir)
                                                                          op: Equal
                                                                          rhs: 
                                                                            {
                                                                              (DQ (-L) 
                                                                                ($ VSub_Name '$dir')
                                                                              )
                                                                            }
                                                                          spids: [29240]
                                                                        )
                                                                      ]
                                                                      spids: [29240]
                                                                    )
                                                                  ]
                                                                  spids: [29208 29238 29246 16777215]
                                                                )
                                                                (case_arm
                                                                  pat_list: [
                                                                    {(Lit_Other '*') (-) 
                                                                      (Lit_Other '*') (-darwin) (Lit_Other '*')
                                                                    }
                                                                  ]
                                                                  action: [
                                                                    (If
                                                                      arms: [
                                                                        (if_arm
                                                                          cond: [
                                                                            (Sentence
                                                                              child: 
                                                                                (Pipeline
                                                                                  children: [
                                                                                    (SimpleCommand
                                                                                      words: [
                                                                                        {
                                                                                          (
/usr/bin/file
                                                                                          )
                                                                                        }
                                                                                        {(-L)}
                                                                                        {
                                                                                          ($ 
VSub_Name '$add'
                                                                                          )
                                                                                        }
                                                                                      ]
                                                                                      redirects: [
                                                                                        (Redir
                                                                                          op_id: 
Redir_Great
                                                                                          fd: 2
                                                                                          arg_word: 
                                                                                            {
                                                                                              (
/dev/null
                                                                                              )
                                                                                            }
                                                                                          spids: [
29274
                                                                                          ]
                                                                                        )
                                                                                      ]
                                                                                    )
                                                                                    (SimpleCommand
                                                                                      words: [
                                                                                        {
                                                                                          ($ 
VSub_Name '$GREP'
                                                                                          )
                                                                                        }
                                                                                        {
                                                                                          (DQ 
                                                                                            (
': [^:]* bundle'
                                                                                            )
                                                                                          )
                                                                                        }
                                                                                      ]
                                                                                      redirects: [
                                                                                        (Redir
                                                                                          op_id: 
Redir_Great
                                                                                          fd: 
16777215
                                                                                          arg_word: 
                                                                                            {
                                                                                              (
/dev/null
                                                                                              )
                                                                                            }
                                                                                          spids: [
29287
                                                                                          ]
                                                                                        )
                                                                                      ]
                                                                                    )
                                                                                  ]
                                                                                  negated: False
                                                                                )
                                                                              terminator: 
                                                                                <Op_Semi ';'>
                                                                            )
                                                                          ]
                                                                          action: [
                                                                            (If
                                                                              arms: [
                                                                                (if_arm
                                                                                  cond: [
                                                                                    (Sentence
                                                                                      child: 
                                                                                        (C {(test)} 
                                                                                          {
                                                                                            (DQ (X) 
                                                                                              ($ 
VSub_Name '$dlopenmodule'
                                                                                              )
                                                                                            )
                                                                                          } {(KW_Bang '!') (Lit_Other '=')} {(DQ (X) ($ VSub_Name '$lib'))}
                                                                                        )
                                                                                      terminator: 
                                                                                        <Op_Semi 
';'
                                                                                        >
                                                                                    )
                                                                                  ]
                                                                                  action: [
                                                                                    (C 
                                                                                      {
                                                                                        ($ VSub_Name 
'$ECHO'
                                                                                        )
                                                                                      } {(DQ ('*** Warning: lib ') ($ VSub_Name '$linklib') (' is a module, not a shared library'))}
                                                                                    )
                                                                                    (If
                                                                                      arms: [
                                                                                        (if_arm
                                                                                          cond: [
                                                                                            (Sentence
                                                                                              child: 
                                                                                                (C 
                                                                                                  {
                                                                                                    (
test
                                                                                                    )
                                                                                                  } {(-z)} {(DQ ($ VSub_Name '$old_library'))}
                                                                                                )
                                                                                              terminator: 
                                                                                                <
Op_Semi ';'
                                                                                                >
                                                                                            )
                                                                                          ]
                                                                                          action: [
                                                                                            (C 
                                                                                              {
                                                                                                ($ 
VSub_Name '$ECHO'
                                                                                                )
                                                                                              }
                                                                                            )
                                                                                            (C 
                                                                                              {
                                                                                                ($ 
VSub_Name '$ECHO'
                                                                                                )
                                                                                              } {(DQ ("*** And there doesn't seem to be a static archive available"))}
                                                                                            )
                                                                                            (C 
                                                                                              {
                                                                                                ($ 
VSub_Name '$ECHO'
                                                                                                )
                                                                                              } {(DQ ('*** The link will probably fail, sorry'))}
                                                                                            )
                                                                                          ]
                                                                                          spids: [
16777215
29337
                                                                                          ]
                                                                                        )
                                                                                      ]
                                                                                      else_action: [
                                                                                        (Assignment
                                                                                          keyword: 
Assign_None
                                                                                          pairs: [
                                                                                            (assign_pair
                                                                                              lhs: 
                                                                                                (LhsName
                                                                                                  name: 
add
                                                                                                )
                                                                                              op: 
                                                                                                Equal
                                                                                              rhs: 
                                                                                                {
                                                                                                  (DQ 
                                                                                                    ($ 
VSub_Name '$dir'
                                                                                                    ) (/) ($ VSub_Name '$old_library')
                                                                                                  )
                                                                                                }
                                                                                              spids: [
29360
                                                                                              ]
                                                                                            )
                                                                                          ]
                                                                                          spids: [
29360
                                                                                          ]
                                                                                        )
                                                                                      ]
                                                                                      spids: [
29357
29368
                                                                                      ]
                                                                                    )
                                                                                  ]
                                                                                  spids: [
16777215
29313
                                                                                  ]
                                                                                )
                                                                                (if_arm
                                                                                  cond: [
                                                                                    (Sentence
                                                                                      child: 
                                                                                        (C {(test)} 
                                                                                          {(-n)} {(DQ ($ VSub_Name '$old_library'))}
                                                                                        )
                                                                                      terminator: 
                                                                                        <Op_Semi 
';'
                                                                                        >
                                                                                    )
                                                                                  ]
                                                                                  action: [
                                                                                    (Assignment
                                                                                      keyword: 
Assign_None
                                                                                      pairs: [
                                                                                        (assign_pair
                                                                                          lhs: 
                                                                                            (LhsName
                                                                                              name: 
add
                                                                                            )
                                                                                          op: Equal
                                                                                          rhs: 
                                                                                            {
                                                                                              (DQ 
                                                                                                ($ 
VSub_Name '$dir'
                                                                                                ) (/) ($ VSub_Name '$old_library')
                                                                                              )
                                                                                            }
                                                                                          spids: [
29385
                                                                                          ]
                                                                                        )
                                                                                      ]
                                                                                      spids: [29385]
                                                                                    )
                                                                                  ]
                                                                                  spids: [29371 29382]
                                                                                )
                                                                              ]
                                                                              spids: [16777215 29393]
                                                                            )
                                                                          ]
                                                                          spids: [16777215 29292]
                                                                        )
                                                                      ]
                                                                      spids: [16777215 29396]
                                                                    )
                                                                  ]
                                                                  spids: [29249 29255 16777215 29399]
                                                                )
                                                              ]
                                                              spids: [29164 29168 29399]
                                                            )
                                                          ]
                                                          spids: [16777215 29153]
                                                        )
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (C {(test)} 
                                                                  {
                                                                    (DQ 
                                                                      ($ VSub_Name 
'$hardcode_minus_L'
                                                                      )
                                                                    )
                                                                  } {(Lit_Other '=')} {(no)}
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (Case
                                                              to_match: {($ VSub_Name '$host')}
                                                              arms: [
                                                                (case_arm
                                                                  pat_list: [
                                                                    {(Lit_Other '*') (-) 
                                                                      (Lit_Other '*') (-sunos) (Lit_Other '*')
                                                                    }
                                                                  ]
                                                                  action: [
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: 
                                                                            (LhsName
                                                                              name: add_shlibpath
                                                                            )
                                                                          op: Equal
                                                                          rhs: 
                                                                            {
                                                                              (DQ 
                                                                                ($ VSub_Name '$dir')
                                                                              )
                                                                            }
                                                                          spids: [29432]
                                                                        )
                                                                      ]
                                                                      spids: [29432]
                                                                    )
                                                                  ]
                                                                  spids: [29425 29430 29437 16777215]
                                                                )
                                                              ]
                                                              spids: [29418 29422 29440]
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:add_dir)
                                                                  op: Equal
                                                                  rhs: {(DQ (-L) ($ VSub_Name '$dir'))}
                                                                  spids: [29443]
                                                                )
                                                              ]
                                                              spids: [29443]
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:add)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {(DQ (-l) ($ VSub_Name '$name'))}
                                                                  spids: [29450]
                                                                )
                                                              ]
                                                              spids: [29450]
                                                            )
                                                          ]
                                                          spids: [29402 29415]
                                                        )
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (C {(test)} 
                                                                  {
                                                                    (DQ 
                                                                      ($ VSub_Name 
'$hardcode_shlibpath_var'
                                                                      )
                                                                    )
                                                                  } {(Lit_Other '=')} {(no)}
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:add_shlibpath)
                                                                  op: Equal
                                                                  rhs: {(DQ ($ VSub_Name '$dir'))}
                                                                  spids: [29473]
                                                                )
                                                              ]
                                                              spids: [29473]
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:add)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {(DQ (-l) ($ VSub_Name '$name'))}
                                                                  spids: [29479]
                                                                )
                                                              ]
                                                              spids: [29479]
                                                            )
                                                          ]
                                                          spids: [29457 29470]
                                                        )
                                                      ]
                                                      else_action: [
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:lib_linked)
                                                              op: Equal
                                                              rhs: {(no)}
                                                              spids: [29489]
                                                            )
                                                          ]
                                                          spids: [29489]
                                                        )
                                                      ]
                                                      spids: [29486 29493]
                                                    )
                                                  ]
                                                  spids: [29132 29137 29496 16777215]
                                                )
                                                (case_arm
                                                  pat_list: [{(relink)}]
                                                  action: [
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (AndOr
                                                                  children: [
                                                                    (C {(test)} 
                                                                      {
                                                                        (DQ 
                                                                          ($ VSub_Name 
'$hardcode_direct'
                                                                          )
                                                                        )
                                                                      } {(Lit_Other '=')} {(yes)}
                                                                    )
                                                                    (C {(test)} 
                                                                      {
                                                                        (DQ 
                                                                          ($ VSub_Name 
'$hardcode_direct_absolute'
                                                                          )
                                                                        )
                                                                      } {(Lit_Other '=')} {(no)}
                                                                    )
                                                                  ]
                                                                  op_id: Op_DAmp
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:add)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ ($ VSub_Name '$dir') (/) 
                                                                        ($ VSub_Name '$linklib')
                                                                      )
                                                                    }
                                                                  spids: [29532]
                                                                )
                                                              ]
                                                              spids: [29532]
                                                            )
                                                          ]
                                                          spids: [16777215 29529]
                                                        )
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (C {(test)} 
                                                                  {
                                                                    (DQ 
                                                                      ($ VSub_Name 
'$hardcode_minus_L'
                                                                      )
                                                                    )
                                                                  } {(Lit_Other '=')} {(yes)}
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:add_dir)
                                                                  op: Equal
                                                                  rhs: {(DQ (-L) ($ VSub_Name '$dir'))}
                                                                  spids: [29556]
                                                                )
                                                              ]
                                                              spids: [29556]
                                                            )
                                                            (If
                                                              arms: [
                                                                (if_arm
                                                                  cond: [
                                                                    (Sentence
                                                                      child: 
                                                                        (C {(test)} {(-n)} 
                                                                          {
                                                                            (DQ 
                                                                              ($ VSub_Name 
'$inst_prefix_dir'
                                                                              )
                                                                            )
                                                                          }
                                                                        )
                                                                      terminator: <Op_Semi ';'>
                                                                    )
                                                                  ]
                                                                  action: [
                                                                    (Case
                                                                      to_match: 
                                                                        {($ VSub_Name '$libdir')}
                                                                      arms: [
                                                                        (case_arm
                                                                          pat_list: [
                                                                            {(Lit_Other '[') 
                                                                              (EscapedLiteralPart
                                                                                token: 
                                                                                  <Lit_EscapedChar 
'\\\\'
                                                                                  >
                                                                              ) (/) (Lit_Other ']') (Lit_Other '*')
                                                                            }
                                                                          ]
                                                                          action: [
                                                                            (Assignment
                                                                              keyword: Assign_None
                                                                              pairs: [
                                                                                (assign_pair
                                                                                  lhs: 
                                                                                    (LhsName
                                                                                      name: add_dir
                                                                                    )
                                                                                  op: Equal
                                                                                  rhs: 
                                                                                    {
                                                                                      (DQ 
                                                                                        ($ VSub_Name 
'$add_dir'
                                                                                        ) (' -L') ($ VSub_Name '$inst_prefix_dir') ($ VSub_Name '$libdir')
                                                                                      )
                                                                                    }
                                                                                  spids: [29596]
                                                                                )
                                                                              ]
                                                                              spids: [29596]
                                                                            )
                                                                          ]
                                                                          spids: [
29588
29593
29605
16777215
                                                                          ]
                                                                        )
                                                                      ]
                                                                      spids: [29581 29585 29608]
                                                                    )
                                                                  ]
                                                                  spids: [16777215 29578]
                                                                )
                                                              ]
                                                              spids: [16777215 29611]
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:add)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {(DQ (-l) ($ VSub_Name '$name'))}
                                                                  spids: [29614]
                                                                )
                                                              ]
                                                              spids: [29614]
                                                            )
                                                          ]
                                                          spids: [29540 29553]
                                                        )
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (C {(test)} 
                                                                  {
                                                                    (DQ 
                                                                      ($ VSub_Name 
'$hardcode_shlibpath_var'
                                                                      )
                                                                    )
                                                                  } {(Lit_Other '=')} {(yes)}
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:add_shlibpath)
                                                                  op: Equal
                                                                  rhs: {(DQ ($ VSub_Name '$dir'))}
                                                                  spids: [29637]
                                                                )
                                                              ]
                                                              spids: [29637]
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:add)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {(DQ (-l) ($ VSub_Name '$name'))}
                                                                  spids: [29643]
                                                                )
                                                              ]
                                                              spids: [29643]
                                                            )
                                                          ]
                                                          spids: [29621 29634]
                                                        )
                                                      ]
                                                      else_action: [
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:lib_linked)
                                                              op: Equal
                                                              rhs: {(no)}
                                                              spids: [29653]
                                                            )
                                                          ]
                                                          spids: [29653]
                                                        )
                                                      ]
                                                      spids: [29650 29657]
                                                    )
                                                  ]
                                                  spids: [29499 29500 29660 16777215]
                                                )
                                                (case_arm
                                                  pat_list: [{(Lit_Other '*')}]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:lib_linked)
                                                          op: Equal
                                                          rhs: {(no)}
                                                          spids: [29666]
                                                        )
                                                      ]
                                                      spids: [29666]
                                                    )
                                                  ]
                                                  spids: [29663 29664 29669 16777215]
                                                )
                                              ]
                                              spids: [29125 29129 29672]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(DQ ($ VSub_Name '$lib_linked'))} 
                                                          {(KW_Bang '!') (Lit_Other '=')} {(yes)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (C {(func_fatal_configuration)} 
                                                      {(DQ ('unsupported hardcode properties'))}
                                                    )
                                                  ]
                                                  spids: [16777215 29690]
                                                )
                                              ]
                                              spids: [16777215 29700]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(-n)} 
                                                          {(DQ ($ VSub_Name '$add_shlibpath'))}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Case
                                                      to_match: 
                                                        {(Lit_Other ':') 
                                                          ($ VSub_Name '$compile_shlibpath') (Lit_Other ':')
                                                        }
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [
                                                            {(Lit_Other '*') 
                                                              (DQ (':') ($ VSub_Name '$add_shlibpath') 
                                                                (':')
                                                              ) (Lit_Other '*')
                                                            }
                                                          ]
                                                          spids: [29727 29734 29736 16777215]
                                                        )
                                                        (case_arm
                                                          pat_list: [{(Lit_Other '*')}]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: 
                                                                    (LhsName
                                                                      name: compile_shlibpath
                                                                    )
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name 
'$compile_shlibpath'
                                                                        ) ($ VSub_Name '$add_shlibpath') (':')
                                                                      )
                                                                    }
                                                                  spids: [29742]
                                                                )
                                                              ]
                                                              spids: [29742]
                                                            )
                                                          ]
                                                          spids: [29739 29740 29749 16777215]
                                                        )
                                                      ]
                                                      spids: [29718 29724 29752]
                                                    )
                                                  ]
                                                  spids: [16777215 29715]
                                                )
                                              ]
                                              spids: [16777215 29755]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} 
                                                          {(Lit_Other '=')} {(prog)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (AndOr
                                                      children: [
                                                        (C {(test)} {(-n)} 
                                                          {(DQ ($ VSub_Name '$add_dir'))}
                                                        )
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:compile_deplibs)
                                                              op: Equal
                                                              rhs: 
                                                                {
                                                                  (DQ ($ VSub_Name '$add_dir') (' ') 
                                                                    ($ VSub_Name '$compile_deplibs')
                                                                  )
                                                                }
                                                              spids: [29784]
                                                            )
                                                          ]
                                                          spids: [29784]
                                                        )
                                                      ]
                                                      op_id: Op_DAmp
                                                    )
                                                    (AndOr
                                                      children: [
                                                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$add'))})
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:compile_deplibs)
                                                              op: Equal
                                                              rhs: 
                                                                {
                                                                  (DQ ($ VSub_Name '$add') (' ') 
                                                                    ($ VSub_Name '$compile_deplibs')
                                                                  )
                                                                }
                                                              spids: [29802]
                                                            )
                                                          ]
                                                          spids: [29802]
                                                        )
                                                      ]
                                                      op_id: Op_DAmp
                                                    )
                                                  ]
                                                  spids: [16777215 29771]
                                                )
                                              ]
                                              else_action: [
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$add_dir'))})
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:deplibs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$add_dir') (' ') 
                                                                ($ VSub_Name '$deplibs')
                                                              )
                                                            }
                                                          spids: [29823]
                                                        )
                                                      ]
                                                      spids: [29823]
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$add'))})
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:deplibs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$add') (' ') 
                                                                ($ VSub_Name '$deplibs')
                                                              )
                                                            }
                                                          spids: [29841]
                                                        )
                                                      ]
                                                      spids: [29841]
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                                (If
                                                  arms: [
                                                    (if_arm
                                                      cond: [
                                                        (Sentence
                                                          child: 
                                                            (AndOr
                                                              children: [
                                                                (C {(test)} 
                                                                  {
                                                                    (DQ 
                                                                      ($ VSub_Name '$hardcode_direct')
                                                                    )
                                                                  } {(KW_Bang '!') (Lit_Other '=')} {(yes)}
                                                                )
                                                                (AndOr
                                                                  children: [
                                                                    (C {(test)} 
                                                                      {
                                                                        (DQ 
                                                                          ($ VSub_Name 
'$hardcode_minus_L'
                                                                          )
                                                                        )
                                                                      } {(KW_Bang '!') (Lit_Other '=')} {(yes)}
                                                                    )
                                                                    (C {(test)} 
                                                                      {
                                                                        (DQ 
                                                                          ($ VSub_Name 
'$hardcode_shlibpath_var'
                                                                          )
                                                                        )
                                                                      } {(Lit_Other '=')} {(yes)}
                                                                    )
                                                                  ]
                                                                  op_id: Op_DAmp
                                                                )
                                                              ]
                                                              op_id: Op_DAmp
                                                            )
                                                          terminator: <Op_Semi ';'>
                                                        )
                                                      ]
                                                      action: [
                                                        (Case
                                                          to_match: 
                                                            {(Lit_Other ':') 
                                                              ($ VSub_Name '$finalize_shlibpath') (Lit_Other ':')
                                                            }
                                                          arms: [
                                                            (case_arm
                                                              pat_list: [
                                                                {(Lit_Other '*') 
                                                                  (DQ (':') ($ VSub_Name '$libdir') 
                                                                    (':')
                                                                  ) (Lit_Other '*')
                                                                }
                                                              ]
                                                              spids: [29902 29909 29911 16777215]
                                                            )
                                                            (case_arm
                                                              pat_list: [{(Lit_Other '*')}]
                                                              action: [
                                                                (Assignment
                                                                  keyword: Assign_None
                                                                  pairs: [
                                                                    (assign_pair
                                                                      lhs: 
                                                                        (LhsName
                                                                          name: finalize_shlibpath
                                                                        )
                                                                      op: Equal
                                                                      rhs: 
                                                                        {
                                                                          (DQ 
                                                                            ($ VSub_Name 
'$finalize_shlibpath'
                                                                            ) ($ VSub_Name '$libdir') (':')
                                                                          )
                                                                        }
                                                                      spids: [29917]
                                                                    )
                                                                  ]
                                                                  spids: [29917]
                                                                )
                                                              ]
                                                              spids: [29914 29915 29924 16777215]
                                                            )
                                                          ]
                                                          spids: [29893 29899 29927]
                                                        )
                                                      ]
                                                      spids: [16777215 29890]
                                                    )
                                                  ]
                                                  spids: [16777215 29930]
                                                )
                                              ]
                                              spids: [29810 29933]
                                            )
                                          ]
                                          spids: [16777215 29109]
                                        )
                                      ]
                                      spids: [16777215 29936]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} 
                                                      {(Lit_Other '=')} {(prog)}
                                                    )
                                                    (C {(test)} {(DQ ($ VSub_Name '$mode'))} 
                                                      {(Lit_Other '=')} {(relink)}
                                                    )
                                                  ]
                                                  op_id: Op_DPipe
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:add_shlibpath)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [29968]
                                                )
                                              ]
                                              spids: [29968]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:add_dir)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [29971]
                                                )
                                              ]
                                              spids: [29971]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:add)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [29974]
                                                )
                                              ]
                                              spids: [29974]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (AndOr
                                                          children: [
                                                            (C {(test)} 
                                                              {(DQ ($ VSub_Name '$hardcode_direct'))} {(Lit_Other '=')} {(yes)}
                                                            )
                                                            (C {(test)} 
                                                              {
                                                                (DQ 
                                                                  ($ VSub_Name 
'$hardcode_direct_absolute'
                                                                  )
                                                                )
                                                              } {(Lit_Other '=')} {(no)}
                                                            )
                                                          ]
                                                          op_id: Op_DAmp
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:add)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$libdir') (/) 
                                                                ($ VSub_Name '$linklib')
                                                              )
                                                            }
                                                          spids: [30010]
                                                        )
                                                      ]
                                                      spids: [30010]
                                                    )
                                                  ]
                                                  spids: [16777215 30007]
                                                )
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} 
                                                          {(DQ ($ VSub_Name '$hardcode_minus_L'))} {(Lit_Other '=')} {(yes)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:add_dir)
                                                          op: Equal
                                                          rhs: {(DQ (-L) ($ VSub_Name '$libdir'))}
                                                          spids: [30034]
                                                        )
                                                      ]
                                                      spids: [30034]
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:add)
                                                          op: Equal
                                                          rhs: {(DQ (-l) ($ VSub_Name '$name'))}
                                                          spids: [30041]
                                                        )
                                                      ]
                                                      spids: [30041]
                                                    )
                                                  ]
                                                  spids: [30018 30031]
                                                )
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} 
                                                          {
                                                            (DQ 
                                                              ($ VSub_Name '$hardcode_shlibpath_var')
                                                            )
                                                          } {(Lit_Other '=')} {(yes)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Case
                                                      to_match: 
                                                        {(Lit_Other ':') 
                                                          ($ VSub_Name '$finalize_shlibpath') (Lit_Other ':')
                                                        }
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [
                                                            {(Lit_Other '*') 
                                                              (DQ (':') ($ VSub_Name '$libdir') (':')) (Lit_Other '*')
                                                            }
                                                          ]
                                                          spids: [30073 30080 30082 16777215]
                                                        )
                                                        (case_arm
                                                          pat_list: [{(Lit_Other '*')}]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: 
                                                                    (LhsName
                                                                      name: finalize_shlibpath
                                                                    )
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name 
'$finalize_shlibpath'
                                                                        ) ($ VSub_Name '$libdir') (':')
                                                                      )
                                                                    }
                                                                  spids: [30088]
                                                                )
                                                              ]
                                                              spids: [30088]
                                                            )
                                                          ]
                                                          spids: [30085 30086 30095 16777215]
                                                        )
                                                      ]
                                                      spids: [30064 30070 30098]
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:add)
                                                          op: Equal
                                                          rhs: {(DQ (-l) ($ VSub_Name '$name'))}
                                                          spids: [30101]
                                                        )
                                                      ]
                                                      spids: [30101]
                                                    )
                                                  ]
                                                  spids: [30048 30061]
                                                )
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} 
                                                          {(DQ ($ VSub_Name '$hardcode_automatic'))} {(Lit_Other '=')} {(yes)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (AndOr
                                                                  children: [
                                                                    (C {(test)} {(-n)} 
                                                                      {
                                                                        (DQ 
                                                                          ($ VSub_Name 
'$inst_prefix_dir'
                                                                          )
                                                                        )
                                                                      }
                                                                    )
                                                                    (C {(test)} {(-f)} 
                                                                      {
                                                                        (DQ 
                                                                          ($ VSub_Name 
'$inst_prefix_dir'
                                                                          ) ($ VSub_Name '$libdir') (/) ($ VSub_Name '$linklib')
                                                                        )
                                                                      }
                                                                    )
                                                                  ]
                                                                  op_id: Op_DAmp
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:add)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name 
'$inst_prefix_dir'
                                                                        ) ($ VSub_Name '$libdir') (/) ($ VSub_Name '$linklib')
                                                                      )
                                                                    }
                                                                  spids: [30153]
                                                                )
                                                              ]
                                                              spids: [30153]
                                                            )
                                                          ]
                                                          spids: [16777215 30150]
                                                        )
                                                      ]
                                                      else_action: [
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:add)
                                                              op: Equal
                                                              rhs: 
                                                                {
                                                                  (DQ ($ VSub_Name '$libdir') (/) 
                                                                    ($ VSub_Name '$linklib')
                                                                  )
                                                                }
                                                              spids: [30165]
                                                            )
                                                          ]
                                                          spids: [30165]
                                                        )
                                                      ]
                                                      spids: [30162 30173]
                                                    )
                                                  ]
                                                  spids: [30108 30121]
                                                )
                                              ]
                                              else_action: [
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:add_dir)
                                                      op: Equal
                                                      rhs: {(DQ (-L) ($ VSub_Name '$libdir'))}
                                                      spids: [30183]
                                                    )
                                                  ]
                                                  spids: [30183]
                                                )
                                                (If
                                                  arms: [
                                                    (if_arm
                                                      cond: [
                                                        (Sentence
                                                          child: 
                                                            (C {(test)} {(-n)} 
                                                              {(DQ ($ VSub_Name '$inst_prefix_dir'))}
                                                            )
                                                          terminator: <Op_Semi ';'>
                                                        )
                                                      ]
                                                      action: [
                                                        (Case
                                                          to_match: {($ VSub_Name '$libdir')}
                                                          arms: [
                                                            (case_arm
                                                              pat_list: [
                                                                {(Lit_Other '[') 
                                                                  (EscapedLiteralPart
                                                                    token: <Lit_EscapedChar '\\\\'>
                                                                  ) (/) (Lit_Other ']') (Lit_Other '*')
                                                                }
                                                              ]
                                                              action: [
                                                                (Assignment
                                                                  keyword: Assign_None
                                                                  pairs: [
                                                                    (assign_pair
                                                                      lhs: (LhsName name:add_dir)
                                                                      op: Equal
                                                                      rhs: 
                                                                        {
                                                                          (DQ 
                                                                            ($ VSub_Name '$add_dir') (' -L') ($ VSub_Name '$inst_prefix_dir') ($ VSub_Name '$libdir')
                                                                          )
                                                                        }
                                                                      spids: [30223]
                                                                    )
                                                                  ]
                                                                  spids: [30223]
                                                                )
                                                              ]
                                                              spids: [30215 30220 30232 16777215]
                                                            )
                                                          ]
                                                          spids: [30208 30212 30235]
                                                        )
                                                      ]
                                                      spids: [16777215 30205]
                                                    )
                                                  ]
                                                  spids: [16777215 30238]
                                                )
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:add)
                                                      op: Equal
                                                      rhs: {(DQ (-l) ($ VSub_Name '$name'))}
                                                      spids: [30241]
                                                    )
                                                  ]
                                                  spids: [30241]
                                                )
                                              ]
                                              spids: [30176 30248]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} 
                                                          {(Lit_Other '=')} {(prog)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (AndOr
                                                      children: [
                                                        (C {(test)} {(-n)} 
                                                          {(DQ ($ VSub_Name '$add_dir'))}
                                                        )
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:finalize_deplibs)
                                                              op: Equal
                                                              rhs: 
                                                                {
                                                                  (DQ ($ VSub_Name '$add_dir') (' ') 
                                                                    ($ VSub_Name '$finalize_deplibs')
                                                                  )
                                                                }
                                                              spids: [30278]
                                                            )
                                                          ]
                                                          spids: [30278]
                                                        )
                                                      ]
                                                      op_id: Op_DAmp
                                                    )
                                                    (AndOr
                                                      children: [
                                                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$add'))})
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:finalize_deplibs)
                                                              op: Equal
                                                              rhs: 
                                                                {
                                                                  (DQ ($ VSub_Name '$add') (' ') 
                                                                    ($ VSub_Name '$finalize_deplibs')
                                                                  )
                                                                }
                                                              spids: [30296]
                                                            )
                                                          ]
                                                          spids: [30296]
                                                        )
                                                      ]
                                                      op_id: Op_DAmp
                                                    )
                                                  ]
                                                  spids: [16777215 30265]
                                                )
                                              ]
                                              else_action: [
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$add_dir'))})
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:deplibs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$add_dir') (' ') 
                                                                ($ VSub_Name '$deplibs')
                                                              )
                                                            }
                                                          spids: [30317]
                                                        )
                                                      ]
                                                      spids: [30317]
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$add'))})
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:deplibs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$add') (' ') 
                                                                ($ VSub_Name '$deplibs')
                                                              )
                                                            }
                                                          spids: [30335]
                                                        )
                                                      ]
                                                      spids: [30335]
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              ]
                                              spids: [30304 30343]
                                            )
                                          ]
                                          spids: [16777215 29965]
                                        )
                                      ]
                                      spids: [16777215 30346]
                                    )
                                  ]
                                  spids: [16777215 28325]
                                )
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} {(Lit_Other '=')} 
                                          {(prog)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(DQ ($ VSub_Name '$hardcode_direct'))} 
                                                  {(KW_Bang '!') (Lit_Other '=')} {(unsupported)}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (AndOr
                                              children: [
                                                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$old_library'))})
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:linklib)
                                                      op: Equal
                                                      rhs: {(DQ ($ VSub_Name '$old_library'))}
                                                      spids: [30404]
                                                    )
                                                  ]
                                                  spids: [30404]
                                                )
                                              ]
                                              op_id: Op_DAmp
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:compile_deplibs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$dir') (/) 
                                                        ($ VSub_Name '$linklib') (' ') ($ VSub_Name '$compile_deplibs')
                                                      )
                                                    }
                                                  spids: [30410]
                                                )
                                              ]
                                              spids: [30410]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:finalize_deplibs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$dir') (/) 
                                                        ($ VSub_Name '$linklib') (' ') ($ VSub_Name '$finalize_deplibs')
                                                      )
                                                    }
                                                  spids: [30420]
                                                )
                                              ]
                                              spids: [30420]
                                            )
                                          ]
                                          spids: [16777215 30391]
                                        )
                                      ]
                                      else_action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:compile_deplibs)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ (-l) ($ VSub_Name '$name') (' -L') 
                                                    ($ VSub_Name '$dir') (' ') ($ VSub_Name '$compile_deplibs')
                                                  )
                                                }
                                              spids: [30433]
                                            )
                                          ]
                                          spids: [30433]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:finalize_deplibs)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ (-l) ($ VSub_Name '$name') (' -L') 
                                                    ($ VSub_Name '$dir') (' ') ($ VSub_Name '$finalize_deplibs')
                                                  )
                                                }
                                              spids: [30444]
                                            )
                                          ]
                                          spids: [30444]
                                        )
                                      ]
                                      spids: [30430 30455]
                                    )
                                  ]
                                  spids: [30349 30362]
                                )
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$build_libtool_libs'))} 
                                          {(Lit_Other '=')} {(yes)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(DQ ($ VSub_Name '$deplibs_check_method'))} 
                                                  {(KW_Bang '!') (Lit_Other '=')} {(pass_all)}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {($ VSub_Name '$ECHO')})
                                            (C {($ VSub_Name '$ECHO')} 
                                              {
                                                (DQ 
                                                  (
'*** Warning: This system can not link to static lib archive '
                                                  ) ($ VSub_Name '$lib') (.)
                                                )
                                              }
                                            )
                                            (C {($ VSub_Name '$ECHO')} 
                                              {
                                                (DQ 
                                                  (
'*** I have the capability to make that library automatically link in when'
                                                  )
                                                )
                                              }
                                            )
                                            (C {($ VSub_Name '$ECHO')} 
                                              {
                                                (DQ 
                                                  (
'*** you link to this library.  But I can only do this if you have a'
                                                  )
                                                )
                                              }
                                            )
                                            (C {($ VSub_Name '$ECHO')} 
                                              {
                                                (DQ 
                                                  (
'*** shared version of the library, which you do not appear to have.'
                                                  )
                                                )
                                              }
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(DQ ($ VSub_Name '$module'))} 
                                                          {(Lit_Other '=')} {(yes)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (C {($ VSub_Name '$ECHO')} 
                                                      {
                                                        (DQ 
                                                          (
'*** But as you try to build a module library, libtool will still create '
                                                          )
                                                        )
                                                      }
                                                    )
                                                    (C {($ VSub_Name '$ECHO')} 
                                                      {
                                                        (DQ 
                                                          (
'*** a static module, that should work as long as the dlopening application'
                                                          )
                                                        )
                                                      }
                                                    )
                                                    (C {($ VSub_Name '$ECHO')} 
                                                      {
                                                        (DQ 
                                                          (
'*** is linked with the -dlopen flag to resolve symbols at runtime.'
                                                          )
                                                        )
                                                      }
                                                    )
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (C {(test)} {(-z)} 
                                                                  {
                                                                    (DQ 
                                                                      ($ VSub_Name 
'$global_symbol_pipe'
                                                                      )
                                                                    )
                                                                  }
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (C {($ VSub_Name '$ECHO')})
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** However, this would only work if libtool was able to extract symbol'
                                                                  )
                                                                )
                                                              }
                                                            )
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** lists from a program, using '
                                                                  ) (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ("nm' or equivalent, but libtool could")
                                                                )
                                                              }
                                                            )
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** not find such a program.  So, this module is probably useless.'
                                                                  )
                                                                )
                                                              }
                                                            )
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ ('*** ') 
                                                                  (EscapedLiteralPart
                                                                    token: <Lit_EscapedChar '\\`'>
                                                                  ) ("nm' from GNU binutils and a full rebuild may help.")
                                                                )
                                                              }
                                                            )
                                                          ]
                                                          spids: [16777215 30593]
                                                        )
                                                      ]
                                                      spids: [16777215 30631]
                                                    )
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (C {(test)} 
                                                                  {
                                                                    (DQ 
                                                                      ($ VSub_Name '$build_old_libs')
                                                                    )
                                                                  } {(Lit_Other '=')} {(no)}
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: 
                                                                    (LhsName
                                                                      name: build_libtool_libs
                                                                    )
                                                                  op: Equal
                                                                  rhs: {(module)}
                                                                  spids: [30650]
                                                                )
                                                              ]
                                                              spids: [30650]
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:build_old_libs)
                                                                  op: Equal
                                                                  rhs: {(yes)}
                                                                  spids: [30654]
                                                                )
                                                              ]
                                                              spids: [30654]
                                                            )
                                                          ]
                                                          spids: [16777215 30647]
                                                        )
                                                      ]
                                                      else_action: [
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:build_libtool_libs)
                                                              op: Equal
                                                              rhs: {(no)}
                                                              spids: [30661]
                                                            )
                                                          ]
                                                          spids: [30661]
                                                        )
                                                      ]
                                                      spids: [30658 30665]
                                                    )
                                                  ]
                                                  spids: [16777215 30558]
                                                )
                                              ]
                                              spids: [16777215 30668]
                                            )
                                          ]
                                          spids: [16777215 30492]
                                        )
                                      ]
                                      else_action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:deplibs)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$dir') (/) 
                                                    ($ VSub_Name '$old_library') (' ') ($ VSub_Name '$deplibs')
                                                  )
                                                }
                                              spids: [30674]
                                            )
                                          ]
                                          spids: [30674]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:link_static)
                                              op: Equal
                                              rhs: {(yes)}
                                              spids: [30684]
                                            )
                                          ]
                                          spids: [30684]
                                        )
                                      ]
                                      spids: [30671 30688]
                                    )
                                  ]
                                  spids: [30458 30471]
                                )
                              ]
                              spids: [16777215 30691]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} {(Lit_Other '=')} 
                                          {(lib)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-n)} 
                                                      {(DQ ($ VSub_Name '$dependency_libs'))}
                                                    )
                                                    (BraceGroup
                                                      children: [
                                                        (Sentence
                                                          child: 
                                                            (AndOr
                                                              children: [
                                                                (C {(test)} 
                                                                  {
                                                                    (DQ 
                                                                      ($ VSub_Name 
'$hardcode_into_libs'
                                                                      )
                                                                    )
                                                                  } {(KW_Bang '!') (Lit_Other '=')} {(yes)}
                                                                )
                                                                (AndOr
                                                                  children: [
                                                                    (C {(test)} 
                                                                      {
                                                                        (DQ 
                                                                          ($ VSub_Name 
'$build_old_libs'
                                                                          )
                                                                        )
                                                                      } {(Lit_Other '=')} {(yes)}
                                                                    )
                                                                    (C {(test)} 
                                                                      {
                                                                        (DQ 
                                                                          ($ VSub_Name '$link_static')
                                                                        )
                                                                      } {(Lit_Other '=')} {(yes)}
                                                                    )
                                                                  ]
                                                                  op_id: Op_DPipe
                                                                )
                                                              ]
                                                              op_id: Op_DPipe
                                                            )
                                                          terminator: <Op_Semi ';'>
                                                        )
                                                      ]
                                                      spids: [30727]
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:temp_deplibs)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [30777]
                                                )
                                              ]
                                              spids: [30777]
                                            )
                                            (ForEach
                                              iter_name: libdir
                                              iter_words: [{($ VSub_Name '$dependency_libs')}]
                                              do_arg_iter: False
                                              body: 
                                                (DoGroup
                                                  children: [
                                                    (Case
                                                      to_match: {($ VSub_Name '$libdir')}
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [{(-R) (Lit_Other '*')}]
                                                          action: [
                                                            (C {(func_stripname)} {(SQ <-R>)} {(SQ )} 
                                                              {(DQ ($ VSub_Name '$libdir'))}
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:temp_xrpath)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      ($ VSub_Name 
'$func_stripname_result'
                                                                      )
                                                                    }
                                                                  spids: [30817]
                                                                )
                                                              ]
                                                              spids: [30817]
                                                            )
                                                            (Case
                                                              to_match: 
                                                                {
                                                                  (DQ (' ') ($ VSub_Name '$xrpath') 
                                                                    (' ')
                                                                  )
                                                                }
                                                              arms: [
                                                                (case_arm
                                                                  pat_list: [
                                                                    {(Lit_Other '*') 
                                                                      (DQ (' ') 
                                                                        ($ VSub_Name '$temp_xrpath') (' ')
                                                                      ) (Lit_Other '*')
                                                                    }
                                                                  ]
                                                                  spids: [30832 30839 30841 16777215]
                                                                )
                                                                (case_arm
                                                                  pat_list: [{(Lit_Other '*')}]
                                                                  action: [
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: (LhsName name:xrpath)
                                                                          op: Equal
                                                                          rhs: 
                                                                            {
                                                                              (DQ 
                                                                                ($ VSub_Name 
'$xrpath'
                                                                                ) (' ') ($ VSub_Name '$temp_xrpath')
                                                                              )
                                                                            }
                                                                          spids: [30847]
                                                                        )
                                                                      ]
                                                                      spids: [30847]
                                                                    )
                                                                  ]
                                                                  spids: [30844 30845 30853 16777215]
                                                                )
                                                              ]
                                                              spids: [30821 30829 30856]
                                                            )
                                                          ]
                                                          spids: [30799 30801 30857 16777215]
                                                        )
                                                        (case_arm
                                                          pat_list: [{(Lit_Other '*')}]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:temp_deplibs)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name '$temp_deplibs') (' ') ($ VSub_Name '$libdir')
                                                                      )
                                                                    }
                                                                  spids: [30863]
                                                                )
                                                              ]
                                                              spids: [30863]
                                                            )
                                                          ]
                                                          spids: [30860 30861 30869 16777215]
                                                        )
                                                      ]
                                                      spids: [30792 30796 30872]
                                                    )
                                                  ]
                                                  spids: [30789 30875]
                                                )
                                              spids: [30785 30787]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:dependency_libs)
                                                  op: Equal
                                                  rhs: {(DQ ($ VSub_Name '$temp_deplibs'))}
                                                  spids: [30878]
                                                )
                                              ]
                                              spids: [30878]
                                            )
                                          ]
                                          spids: [16777215 30770]
                                        )
                                      ]
                                      spids: [16777215 30884]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:newlib_search_path)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$newlib_search_path') (' ') 
                                                ($ VSub_Name '$absdir')
                                              )
                                            }
                                          spids: [30888]
                                        )
                                      ]
                                      spids: [30888]
                                    )
                                    (AndOr
                                      children: [
                                        (C {(test)} {(DQ ($ VSub_Name '$link_static'))} 
                                          {(Lit_Other '=')} {(no)}
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:newdependency_libs)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$abs_ladir') (/) 
                                                    ($ VSub_Name '$laname') (' ') ($ VSub_Name '$newdependency_libs')
                                                  )
                                                }
                                              spids: [30912]
                                            )
                                          ]
                                          spids: [30912]
                                        )
                                      ]
                                      op_id: Op_DAmp
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:tmp_libs)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [30926]
                                        )
                                      ]
                                      spids: [30926]
                                    )
                                    (ForEach
                                      iter_name: deplib
                                      iter_words: [{($ VSub_Name '$dependency_libs')}]
                                      do_arg_iter: False
                                      body: 
                                        (DoGroup
                                          children: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:newdependency_libs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$deplib') (' ') 
                                                        ($ VSub_Name '$newdependency_libs')
                                                      )
                                                    }
                                                  spids: [30941]
                                                )
                                              ]
                                              spids: [30941]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: (C {($ VSub_Name '$opt_duplicate_deps')})
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Case
                                                      to_match: {(DQ ($ VSub_Name '$tmp_libs') (' '))}
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [
                                                            {(Lit_Other '*') 
                                                              (DQ (' ') ($ VSub_Name '$deplib') (' ')) (Lit_Other '*')
                                                            }
                                                          ]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:specialdeplibs)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name 
'$specialdeplibs'
                                                                        ) (' ') ($ VSub_Name '$deplib')
                                                                      )
                                                                    }
                                                                  spids: [30977]
                                                                )
                                                              ]
                                                              spids: [30977]
                                                            )
                                                          ]
                                                          spids: [30968 30975 30984 16777215]
                                                        )
                                                      ]
                                                      spids: [30958 30965 30987]
                                                    )
                                                  ]
                                                  spids: [16777215 30955]
                                                )
                                              ]
                                              spids: [16777215 30990]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:tmp_libs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$tmp_libs') (' ') 
                                                        ($ VSub_Name '$deplib')
                                                      )
                                                    }
                                                  spids: [30993]
                                                )
                                              ]
                                              spids: [30993]
                                            )
                                          ]
                                          spids: [30938 31001]
                                        )
                                      spids: [30934 30936]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(DQ ($ VSub_Name '$link_all_deplibs'))} 
                                                  {(KW_Bang '!') (Lit_Other '=')} {(no)}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (ForEach
                                              iter_name: deplib
                                              iter_words: [{($ VSub_Name '$dependency_libs')}]
                                              do_arg_iter: False
                                              body: 
                                                (DoGroup
                                                  children: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:path)
                                                          op: Equal
                                                          rhs: {(SQ )}
                                                          spids: [31038]
                                                        )
                                                      ]
                                                      spids: [31038]
                                                    )
                                                    (Case
                                                      to_match: {($ VSub_Name '$deplib')}
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [{(-L) (Lit_Other '*')}]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:path)
                                                                  op: Equal
                                                                  rhs: {(DQ ($ VSub_Name '$deplib'))}
                                                                  spids: [31052]
                                                                )
                                                              ]
                                                              spids: [31052]
                                                            )
                                                          ]
                                                          spids: [31048 31050 31057 16777215]
                                                        )
                                                        (case_arm
                                                          pat_list: [{(Lit_Other '*') (.la)}]
                                                          action: [
                                                            (C {(func_dirname)} 
                                                              {(DQ ($ VSub_Name '$deplib'))} {(DQ )} {(DQ (.))}
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:dir)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name 
'$func_dirname_result'
                                                                        )
                                                                      )
                                                                    }
                                                                  spids: [31079]
                                                                )
                                                              ]
                                                              spids: [31079]
                                                            )
                                                            (Case
                                                              to_match: {($ VSub_Name '$dir')}
                                                              arms: [
                                                                (case_arm
                                                                  pat_list: [
                                                                    {(Lit_Other '[') 
                                                                      (EscapedLiteralPart
                                                                        token: 
                                                                          <Lit_EscapedChar '\\\\'>
                                                                      ) (/) (Lit_Other ']') (Lit_Other '*')
                                                                    }
                                                                    {(Lit_Other '[') (A-Za-z) 
                                                                      (Lit_Other ']') (Lit_Other ':') (Lit_Other '[') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (/) (Lit_Other ']') 
                                                                      (Lit_Other '*')
                                                                    }
                                                                  ]
                                                                  action: [
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: (LhsName name:absdir)
                                                                          op: Equal
                                                                          rhs: 
                                                                            {
                                                                              (DQ 
                                                                                ($ VSub_Name '$dir')
                                                                              )
                                                                            }
                                                                          spids: [31115]
                                                                        )
                                                                      ]
                                                                      spids: [31115]
                                                                    )
                                                                  ]
                                                                  spids: [31096 31113 31120 16777215]
                                                                )
                                                                (case_arm
                                                                  pat_list: [{(Lit_Other '*')}]
                                                                  action: [
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: (LhsName name:absdir)
                                                                          op: Equal
                                                                          rhs: 
                                                                            {
                                                                              (CommandSubPart
                                                                                command_list: 
                                                                                  (CommandList
                                                                                    children: [
                                                                                      (AndOr
                                                                                        children: [
                                                                                          (C {(cd)} 
                                                                                            {
                                                                                              (DQ 
                                                                                                ($ 
VSub_Name '$dir'
                                                                                                )
                                                                                              )
                                                                                            }
                                                                                          )
                                                                                          (C {(pwd)})
                                                                                        ]
                                                                                        op_id: 
Op_DAmp
                                                                                      )
                                                                                    ]
                                                                                  )
                                                                                left_token: 
                                                                                  <Left_Backtick 
'`'
                                                                                  >
                                                                                spids: [31128 31138]
                                                                              )
                                                                            }
                                                                          spids: [31127]
                                                                        )
                                                                      ]
                                                                      spids: [31127]
                                                                    )
                                                                    (If
                                                                      arms: [
                                                                        (if_arm
                                                                          cond: [
                                                                            (Sentence
                                                                              child: 
                                                                                (C {(test)} {(-z)} 
                                                                                  {
                                                                                    (DQ 
                                                                                      ($ VSub_Name 
'$absdir'
                                                                                      )
                                                                                    )
                                                                                  }
                                                                                )
                                                                              terminator: 
                                                                                <Op_Semi ';'>
                                                                            )
                                                                          ]
                                                                          action: [
                                                                            (C {(func_warning)} 
                                                                              {
                                                                                (DQ 
                                                                                  (
'cannot determine absolute directory name of '
                                                                                  ) (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ($ VSub_Name '$dir') ("'")
                                                                                )
                                                                              }
                                                                            )
                                                                            (Assignment
                                                                              keyword: Assign_None
                                                                              pairs: [
                                                                                (assign_pair
                                                                                  lhs: 
                                                                                    (LhsName
                                                                                      name: absdir
                                                                                    )
                                                                                  op: Equal
                                                                                  rhs: 
                                                                                    {
                                                                                      (DQ 
                                                                                        ($ VSub_Name 
'$dir'
                                                                                        )
                                                                                      )
                                                                                    }
                                                                                  spids: [31165]
                                                                                )
                                                                              ]
                                                                              spids: [31165]
                                                                            )
                                                                          ]
                                                                          spids: [16777215 31152]
                                                                        )
                                                                      ]
                                                                      spids: [16777215 31171]
                                                                    )
                                                                  ]
                                                                  spids: [31123 31124 31174 16777215]
                                                                )
                                                              ]
                                                              spids: [31089 31093 31177]
                                                            )
                                                            (If
                                                              arms: [
                                                                (if_arm
                                                                  cond: [
                                                                    (Sentence
                                                                      child: 
                                                                        (SimpleCommand
                                                                          words: [
                                                                            {($ VSub_Name '$GREP')}
                                                                            {(DQ ('^installed=no'))}
                                                                            {
                                                                              ($ VSub_Name '$deplib')
                                                                            }
                                                                          ]
                                                                          redirects: [
                                                                            (Redir
                                                                              op_id: Redir_Great
                                                                              fd: 16777215
                                                                              arg_word: {(/dev/null)}
                                                                              spids: [31190]
                                                                            )
                                                                          ]
                                                                        )
                                                                      terminator: <Op_Semi ';'>
                                                                    )
                                                                  ]
                                                                  action: [
                                                                    (Case
                                                                      to_match: 
                                                                        {($ VSub_Name '$host')}
                                                                      arms: [
                                                                        (case_arm
                                                                          pat_list: [
                                                                            {(Lit_Other '*') (-) 
                                                                              (Lit_Other '*') (-darwin) (Lit_Other '*')
                                                                            }
                                                                          ]
                                                                          action: [
                                                                            (Assignment
                                                                              keyword: Assign_None
                                                                              pairs: [
                                                                                (assign_pair
                                                                                  lhs: 
                                                                                    (LhsName
                                                                                      name: depdepl
                                                                                    )
                                                                                  op: Equal
                                                                                  rhs: {(SQ )}
                                                                                  spids: [31213]
                                                                                )
                                                                              ]
                                                                              spids: [31213]
                                                                            )
                                                                            (C {(eval)} 
                                                                              {
                                                                                (Lit_VarLike 
'deplibrary_names='
                                                                                ) 
                                                                                (CommandSubPart
                                                                                  command_list: 
                                                                                    (CommandList
                                                                                      children: [
                                                                                        (C 
                                                                                          {
                                                                                            (${ 
VSub_Name SED
                                                                                            )
                                                                                          } {(-n)} {(-e)} {(SQ <'s/^library_names=\\(.*\\)$/\\1/p'>)} {($ VSub_Name '$deplib')}
                                                                                        )
                                                                                      ]
                                                                                    )
                                                                                  left_token: 
                                                                                    <Left_Backtick 
'`'
                                                                                    >
                                                                                  spids: [31219 31233]
                                                                                )
                                                                              }
                                                                            )
                                                                            (If
                                                                              arms: [
                                                                                (if_arm
                                                                                  cond: [
                                                                                    (Sentence
                                                                                      child: 
                                                                                        (C {(test)} 
                                                                                          {(-n)} {(DQ ($ VSub_Name '$deplibrary_names'))}
                                                                                        )
                                                                                      terminator: 
                                                                                        <Op_Semi 
';'
                                                                                        >
                                                                                    )
                                                                                  ]
                                                                                  action: [
                                                                                    (ForEach
                                                                                      iter_name: tmp
                                                                                      iter_words: [
                                                                                        {
                                                                                          ($ 
VSub_Name '$deplibrary_names'
                                                                                          )
                                                                                        }
                                                                                      ]
                                                                                      do_arg_iter: 
False
                                                                                      body: 
                                                                                        (DoGroup
                                                                                          children: [
                                                                                            (Assignment
                                                                                              keyword: 
Assign_None
                                                                                              pairs: [
                                                                                                (assign_pair
                                                                                                  lhs: 
                                                                                                    (LhsName
                                                                                                      name: 
depdepl
                                                                                                    )
                                                                                                  op: 
                                                                                                    Equal
                                                                                                  rhs: 
                                                                                                    {
                                                                                                      ($ 
VSub_Name '$tmp'
                                                                                                      )
                                                                                                    }
                                                                                                  spids: [
31264
                                                                                                  ]
                                                                                                )
                                                                                              ]
                                                                                              spids: [
31264
                                                                                              ]
                                                                                            )
                                                                                          ]
                                                                                          spids: [
31261
31268
                                                                                          ]
                                                                                        )
                                                                                      spids: [
31256
31259
                                                                                      ]
                                                                                    )
                                                                                    (If
                                                                                      arms: [
                                                                                        (if_arm
                                                                                          cond: [
                                                                                            (Sentence
                                                                                              child: 
                                                                                                (C 
                                                                                                  {
                                                                                                    (
test
                                                                                                    )
                                                                                                  } {(-f)} {(DQ ($ VSub_Name '$absdir') (/) ($ VSub_Name '$objdir') (/) ($ VSub_Name '$depdepl'))}
                                                                                                )
                                                                                              terminator: 
                                                                                                <
Op_Semi ';'
                                                                                                >
                                                                                            )
                                                                                          ]
                                                                                          action: [
                                                                                            (Assignment
                                                                                              keyword: 
Assign_None
                                                                                              pairs: [
                                                                                                (assign_pair
                                                                                                  lhs: 
                                                                                                    (LhsName
                                                                                                      name: 
depdepl
                                                                                                    )
                                                                                                  op: 
                                                                                                    Equal
                                                                                                  rhs: 
                                                                                                    {
                                                                                                      (DQ 
                                                                                                        ($ 
VSub_Name '$absdir'
                                                                                                        ) (/) ($ VSub_Name '$objdir') (/) ($ VSub_Name '$depdepl')
                                                                                                      )
                                                                                                    }
                                                                                                  spids: [
31290
                                                                                                  ]
                                                                                                )
                                                                                              ]
                                                                                              spids: [
31290
                                                                                              ]
                                                                                            )
                                                                                            (Assignment
                                                                                              keyword: 
Assign_None
                                                                                              pairs: [
                                                                                                (assign_pair
                                                                                                  lhs: 
                                                                                                    (LhsName
                                                                                                      name: 
darwin_install_name
                                                                                                    )
                                                                                                  op: 
                                                                                                    Equal
                                                                                                  rhs: 
                                                                                                    {
                                                                                                      (CommandSubPart
                                                                                                        command_list: 
                                                                                                          (CommandList
                                                                                                            children: [
                                                                                                              (Pipeline
                                                                                                                children: [
                                                                                                                  (C 
                                                                                                                    {
                                                                                                                      (${ 
VSub_Name OTOOL
                                                                                                                      )
                                                                                                                    } {(-L)} {($ VSub_Name '$depdepl')}
                                                                                                                  )
                                                                                                                  (C 
                                                                                                                    {
                                                                                                                      (
awk
                                                                                                                      )
                                                                                                                    } {(SQ <'{if (NR == 2) {print $1;exit}}'>)}
                                                                                                                  )
                                                                                                                ]
                                                                                                                negated: 
False
                                                                                                              )
                                                                                                            ]
                                                                                                          )
                                                                                                        left_token: 
                                                                                                          <
Left_Backtick '`'
                                                                                                          >
                                                                                                        spids: [
31301
31317
                                                                                                        ]
                                                                                                      )
                                                                                                    }
                                                                                                  spids: [
31300
                                                                                                  ]
                                                                                                )
                                                                                              ]
                                                                                              spids: [
31300
                                                                                              ]
                                                                                            )
                                                                                            (If
                                                                                              arms: [
                                                                                                (if_arm
                                                                                                  cond: [
                                                                                                    (Sentence
                                                                                                      child: 
                                                                                                        (C 
                                                                                                          {
                                                                                                            (
test
                                                                                                            )
                                                                                                          } {(-z)} {(DQ ($ VSub_Name '$darwin_install_name'))}
                                                                                                        )
                                                                                                      terminator: 
                                                                                                        <
Op_Semi ';'
                                                                                                        >
                                                                                                    )
                                                                                                  ]
                                                                                                  action: [
                                                                                                    (Assignment
                                                                                                      keyword: 
Assign_None
                                                                                                      pairs: [
                                                                                                        (assign_pair
                                                                                                          lhs: 
                                                                                                            (LhsName
                                                                                                              name: 
darwin_install_name
                                                                                                            )
                                                                                                          op: 
                                                                                                            Equal
                                                                                                          rhs: 
                                                                                                            {
                                                                                                              (CommandSubPart
                                                                                                                command_list: 
                                                                                                                  (CommandList
                                                                                                                    children: [
                                                                                                                      (Pipeline
                                                                                                                        children: [
                                                                                                                          (C 
                                                                                                                            {
                                                                                                                              (${ 
VSub_Name OTOOL64
                                                                                                                              )
                                                                                                                            } {(-L)} {($ VSub_Name '$depdepl')}
                                                                                                                          )
                                                                                                                          (C 
                                                                                                                            {
                                                                                                                              (
awk
                                                                                                                              )
                                                                                                                            } {(SQ <'{if (NR == 2) {print $1;exit}}'>)}
                                                                                                                          )
                                                                                                                        ]
                                                                                                                        negated: 
False
                                                                                                                      )
                                                                                                                    ]
                                                                                                                  )
                                                                                                                left_token: 
                                                                                                                  <
Left_Backtick '`'
                                                                                                                  >
                                                                                                                spids: [
31335
31351
                                                                                                                ]
                                                                                                              )
                                                                                                            }
                                                                                                          spids: [
31334
                                                                                                          ]
                                                                                                        )
                                                                                                      ]
                                                                                                      spids: [
31334
                                                                                                      ]
                                                                                                    )
                                                                                                  ]
                                                                                                  spids: [
16777215
31331
                                                                                                  ]
                                                                                                )
                                                                                              ]
                                                                                              spids: [
16777215
31354
                                                                                              ]
                                                                                            )
                                                                                            (Assignment
                                                                                              keyword: 
Assign_None
                                                                                              pairs: [
                                                                                                (assign_pair
                                                                                                  lhs: 
                                                                                                    (LhsName
                                                                                                      name: 
compiler_flags
                                                                                                    )
                                                                                                  op: 
                                                                                                    Equal
                                                                                                  rhs: 
                                                                                                    {
                                                                                                      (DQ 
                                                                                                        ($ 
VSub_Name '$compiler_flags'
                                                                                                        ) (' ') (${ VSub_Name wl) ('-dylib_file ') (${ VSub_Name wl) (${ VSub_Name darwin_install_name) (':') 
                                                                                                        (${ 
VSub_Name depdepl
                                                                                                        )
                                                                                                      )
                                                                                                    }
                                                                                                  spids: [
31357
                                                                                                  ]
                                                                                                )
                                                                                              ]
                                                                                              spids: [
31357
                                                                                              ]
                                                                                            )
                                                                                            (Assignment
                                                                                              keyword: 
Assign_None
                                                                                              pairs: [
                                                                                                (assign_pair
                                                                                                  lhs: 
                                                                                                    (LhsName
                                                                                                      name: 
linker_flags
                                                                                                    )
                                                                                                  op: 
                                                                                                    Equal
                                                                                                  rhs: 
                                                                                                    {
                                                                                                      (DQ 
                                                                                                        ($ 
VSub_Name '$linker_flags'
                                                                                                        ) (' -dylib_file ') (${ VSub_Name darwin_install_name) (':') (${ VSub_Name depdepl)
                                                                                                      )
                                                                                                    }
                                                                                                  spids: [
31378
                                                                                                  ]
                                                                                                )
                                                                                              ]
                                                                                              spids: [
31378
                                                                                              ]
                                                                                            )
                                                                                            (Assignment
                                                                                              keyword: 
Assign_None
                                                                                              pairs: [
                                                                                                (assign_pair
                                                                                                  lhs: 
                                                                                                    (LhsName
                                                                                                      name: 
path
                                                                                                    )
                                                                                                  op: 
                                                                                                    Equal
                                                                                                  rhs: {(SQ )}
                                                                                                  spids: [
31392
                                                                                                  ]
                                                                                                )
                                                                                              ]
                                                                                              spids: [
31392
                                                                                              ]
                                                                                            )
                                                                                          ]
                                                                                          spids: [
16777215
31287
                                                                                          ]
                                                                                        )
                                                                                      ]
                                                                                      spids: [
16777215
31395
                                                                                      ]
                                                                                    )
                                                                                  ]
                                                                                  spids: [
16777215
31248
                                                                                  ]
                                                                                )
                                                                              ]
                                                                              spids: [16777215 31398]
                                                                            )
                                                                          ]
                                                                          spids: [
31205
31210
31401
16777215
                                                                          ]
                                                                        )
                                                                        (case_arm
                                                                          pat_list: [{(Lit_Other '*')}]
                                                                          action: [
                                                                            (Assignment
                                                                              keyword: Assign_None
                                                                              pairs: [
                                                                                (assign_pair
                                                                                  lhs: 
                                                                                    (LhsName
                                                                                      name: path
                                                                                    )
                                                                                  op: Equal
                                                                                  rhs: 
                                                                                    {
                                                                                      (DQ (-L) 
                                                                                        ($ VSub_Name 
'$absdir'
                                                                                        ) (/) ($ VSub_Name '$objdir')
                                                                                      )
                                                                                    }
                                                                                  spids: [31408]
                                                                                )
                                                                              ]
                                                                              spids: [31408]
                                                                            )
                                                                          ]
                                                                          spids: [
31404
31405
31417
16777215
                                                                          ]
                                                                        )
                                                                      ]
                                                                      spids: [31198 31202 31420]
                                                                    )
                                                                  ]
                                                                  spids: [16777215 31195]
                                                                )
                                                              ]
                                                              else_action: [
                                                                (C {(eval)} 
                                                                  {(Lit_VarLike 'libdir=') 
                                                                    (CommandSubPart
                                                                      command_list: 
                                                                        (CommandList
                                                                          children: [
                                                                            (C {(${ VSub_Name SED)} 
                                                                              {(-n)} {(-e)} {(SQ <'s/^libdir=\\(.*\\)$/\\1/p'>)} {($ VSub_Name '$deplib')}
                                                                            )
                                                                          ]
                                                                        )
                                                                      left_token: <Left_Backtick '`'>
                                                                      spids: [31429 31443]
                                                                    )
                                                                  }
                                                                )
                                                                (AndOr
                                                                  children: [
                                                                    (C {(test)} {(-z)} 
                                                                      {(DQ ($ VSub_Name '$libdir'))}
                                                                    )
                                                                    (C {(func_fatal_error)} 
                                                                      {
                                                                        (DQ 
                                                                          (EscapedLiteralPart
                                                                            token: 
                                                                              <Lit_EscapedChar 
'\\`'
                                                                              >
                                                                          ) ($ VSub_Name '$deplib') ("' is not a valid libtool archive")
                                                                        )
                                                                      }
                                                                    )
                                                                  ]
                                                                  op_id: Op_DAmp
                                                                )
                                                                (AndOr
                                                                  children: [
                                                                    (C {(test)} 
                                                                      {(DQ ($ VSub_Name '$absdir'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ ($ VSub_Name '$libdir'))}
                                                                    )
                                                                    (C {(func_warning)} 
                                                                      {
                                                                        (DQ 
                                                                          (EscapedLiteralPart
                                                                            token: 
                                                                              <Lit_EscapedChar 
'\\`'
                                                                              >
                                                                          ) ($ VSub_Name '$deplib') ("' seems to be moved")
                                                                        )
                                                                      }
                                                                    )
                                                                  ]
                                                                  op_id: Op_DAmp
                                                                )
                                                                (Assignment
                                                                  keyword: Assign_None
                                                                  pairs: [
                                                                    (assign_pair
                                                                      lhs: (LhsName name:path)
                                                                      op: Equal
                                                                      rhs: 
                                                                        {
                                                                          (DQ (-L) 
                                                                            ($ VSub_Name '$absdir')
                                                                          )
                                                                        }
                                                                      spids: [31494]
                                                                    )
                                                                  ]
                                                                  spids: [31494]
                                                                )
                                                              ]
                                                              spids: [31423 31501]
                                                            )
                                                          ]
                                                          spids: [31060 31062 31504 16777215]
                                                        )
                                                      ]
                                                      spids: [31041 31045 31507]
                                                    )
                                                    (Case
                                                      to_match: 
                                                        {(DQ (' ') ($ VSub_Name '$deplibs') (' '))}
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [
                                                            {(Lit_Other '*') 
                                                              (DQ (' ') ($ VSub_Name '$path') (' ')) (Lit_Other '*')
                                                            }
                                                          ]
                                                          spids: [31521 31528 31530 16777215]
                                                        )
                                                        (case_arm
                                                          pat_list: [{(Lit_Other '*')}]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:deplibs)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ ($ VSub_Name '$path') (' ') 
                                                                        ($ VSub_Name '$deplibs')
                                                                      )
                                                                    }
                                                                  spids: [31536]
                                                                )
                                                              ]
                                                              spids: [31536]
                                                            )
                                                          ]
                                                          spids: [31533 31534 31543 16777215]
                                                        )
                                                      ]
                                                      spids: [31510 31518 31546]
                                                    )
                                                  ]
                                                  spids: [31035 31549]
                                                )
                                              spids: [31031 31033]
                                            )
                                          ]
                                          spids: [16777215 31019]
                                        )
                                      ]
                                      spids: [16777215 31552]
                                    )
                                  ]
                                  spids: [16777215 30711]
                                )
                              ]
                              spids: [16777215 31558]
                            )
                          ]
                          spids: [24439 31564]
                        )
                      spids: [24435 24437]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$pass'))} {(Lit_Other '=')} {(link)})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} {(Lit_Other '=')} 
                                          {(DQ (prog))}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:compile_deplibs)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$new_inherited_linker_flags') (' ') 
                                                ($ VSub_Name '$compile_deplibs')
                                              )
                                            }
                                          spids: [31604]
                                        )
                                      ]
                                      spids: [31604]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:finalize_deplibs)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$new_inherited_linker_flags') (' ') 
                                                ($ VSub_Name '$finalize_deplibs')
                                              )
                                            }
                                          spids: [31612]
                                        )
                                      ]
                                      spids: [31612]
                                    )
                                  ]
                                  spids: [16777215 31601]
                                )
                              ]
                              else_action: [
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:compiler_flags)
                                      op: Equal
                                      rhs: 
                                        {(DQ ($ VSub_Name '$compiler_flags') (' ')) 
                                          (CommandSubPart
                                            command_list: 
                                              (CommandList
                                                children: [
                                                  (Pipeline
                                                    children: [
                                                      (C {($ VSub_Name '$ECHO')} 
                                                        {
                                                          (DQ ('X ') 
                                                            ($ VSub_Name 
'$new_inherited_linker_flags'
                                                            )
                                                          )
                                                        }
                                                      )
                                                      (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                        {
                                                          (SQ 
                                                            <
's% \\([^ $]*\\).ltframework% -framework \\1%g'
                                                            >
                                                          )
                                                        }
                                                      )
                                                    ]
                                                    negated: False
                                                  )
                                                ]
                                              )
                                            left_token: <Left_Backtick '`'>
                                            spids: [31628 31645]
                                          )
                                        }
                                      spids: [31623]
                                    )
                                  ]
                                  spids: [31623]
                                )
                              ]
                              spids: [31620 31648]
                            )
                          ]
                          spids: [16777215 31583]
                        )
                      ]
                      spids: [16777215 31651]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:dependency_libs)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$newdependency_libs'))}
                          spids: [31654]
                        )
                      ]
                      spids: [31654]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$pass'))} {(Lit_Other '=')} {(dlpreopen)})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (ForEach
                              iter_name: deplib
                              iter_words: [{($ VSub_Name '$save_deplibs')}]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:deplibs)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$deplib') (' ') 
                                                ($ VSub_Name '$deplibs')
                                              )
                                            }
                                          spids: [31692]
                                        )
                                      ]
                                      spids: [31692]
                                    )
                                  ]
                                  spids: [31689 31700]
                                )
                              spids: [31685 31687]
                            )
                          ]
                          spids: [16777215 31673]
                        )
                      ]
                      spids: [16777215 31703]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$pass'))} {(KW_Bang '!') (Lit_Other '=')} 
                                  {(dlopen)}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$pass'))} 
                                          {(KW_Bang '!') (Lit_Other '=')} {(conv)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:lib_search_path)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [31744]
                                        )
                                      ]
                                      spids: [31744]
                                    )
                                    (ForEach
                                      iter_name: dir
                                      iter_words: [{($ VSub_Name '$newlib_search_path')}]
                                      do_arg_iter: False
                                      body: 
                                        (DoGroup
                                          children: [
                                            (Case
                                              to_match: {(DQ ($ VSub_Name '$lib_search_path') (' '))}
                                              arms: [
                                                (case_arm
                                                  pat_list: [
                                                    {(Lit_Other '*') 
                                                      (DQ (' ') ($ VSub_Name '$dir') (' ')) (Lit_Other '*')
                                                    }
                                                  ]
                                                  spids: [31769 31776 31778 16777215]
                                                )
                                                (case_arm
                                                  pat_list: [{(Lit_Other '*')}]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:lib_search_path)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$lib_search_path') 
                                                                (' ') ($ VSub_Name '$dir')
                                                              )
                                                            }
                                                          spids: [31784]
                                                        )
                                                      ]
                                                      spids: [31784]
                                                    )
                                                  ]
                                                  spids: [31781 31782 31791 16777215]
                                                )
                                              ]
                                              spids: [31759 31766 31794]
                                            )
                                          ]
                                          spids: [31756 31797]
                                        )
                                      spids: [31752 31754]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:newlib_search_path)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [31800]
                                        )
                                      ]
                                      spids: [31800]
                                    )
                                  ]
                                  spids: [16777215 31737]
                                )
                              ]
                              spids: [16777215 31803]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} 
                                          {
                                            (DQ ($ VSub_Name '$linkmode') (',') ($ VSub_Name '$pass'))
                                          } {(KW_Bang '!') (Lit_Other '=')} {(DQ ('prog,link'))}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:vars)
                                          op: Equal
                                          rhs: {(DQ (deplibs))}
                                          spids: [31828]
                                        )
                                      ]
                                      spids: [31828]
                                    )
                                  ]
                                  spids: [16777215 31825]
                                )
                              ]
                              else_action: [
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:vars)
                                      op: Equal
                                      rhs: {(DQ ('compile_deplibs finalize_deplibs'))}
                                      spids: [31837]
                                    )
                                  ]
                                  spids: [31837]
                                )
                              ]
                              spids: [31834 31843]
                            )
                            (ForEach
                              iter_name: var
                              iter_words: [{($ VSub_Name '$vars')} {(dependency_libs)}]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (C {(eval)} 
                                      {(Lit_VarLike 'tmp_libs=') 
                                        (EscapedLiteralPart
                                          token: <Lit_EscapedChar '\\"'>
                                        ) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ($ VSub_Name '$var') 
                                        (EscapedLiteralPart
                                          token: <Lit_EscapedChar '\\"'>
                                        )
                                      }
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:new_libs)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [31873]
                                        )
                                      ]
                                      spids: [31873]
                                    )
                                    (ForEach
                                      iter_name: deplib
                                      iter_words: [{($ VSub_Name '$tmp_libs')}]
                                      do_arg_iter: False
                                      body: 
                                        (DoGroup
                                          children: [
                                            (Case
                                              to_match: {($ VSub_Name '$deplib')}
                                              arms: [
                                                (case_arm
                                                  pat_list: [{(-L) (Lit_Other '*')}]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:new_libs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$deplib') (' ') 
                                                                ($ VSub_Name '$new_libs')
                                                              )
                                                            }
                                                          spids: [31923]
                                                        )
                                                      ]
                                                      spids: [31923]
                                                    )
                                                  ]
                                                  spids: [31919 31921 31930 16777215]
                                                )
                                                (case_arm
                                                  pat_list: [{(-R) (Lit_Other '*')}]
                                                  spids: [31933 31935 31937 16777215]
                                                )
                                                (case_arm
                                                  pat_list: [{(Lit_Other '*')}]
                                                  action: [
                                                    (Case
                                                      to_match: 
                                                        {
                                                          (DQ (' ') ($ VSub_Name '$specialdeplibs') 
                                                            (' ')
                                                          )
                                                        }
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [
                                                            {(Lit_Other '*') 
                                                              (DQ (' ') ($ VSub_Name '$deplib') (' ')) (Lit_Other '*')
                                                            }
                                                          ]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:new_libs)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ ($ VSub_Name '$deplib') 
                                                                        (' ') ($ VSub_Name '$new_libs')
                                                                      )
                                                                    }
                                                                  spids: [32020]
                                                                )
                                                              ]
                                                              spids: [32020]
                                                            )
                                                          ]
                                                          spids: [32011 32018 32027 16777215]
                                                        )
                                                        (case_arm
                                                          pat_list: [{(Lit_Other '*')}]
                                                          action: [
                                                            (Case
                                                              to_match: 
                                                                {
                                                                  (DQ (' ') ($ VSub_Name '$new_libs') 
                                                                    (' ')
                                                                  )
                                                                }
                                                              arms: [
                                                                (case_arm
                                                                  pat_list: [
                                                                    {(Lit_Other '*') 
                                                                      (DQ (' ') 
                                                                        ($ VSub_Name '$deplib') (' ')
                                                                      ) (Lit_Other '*')
                                                                    }
                                                                  ]
                                                                  spids: [32045 32052 32054 16777215]
                                                                )
                                                                (case_arm
                                                                  pat_list: [{(Lit_Other '*')}]
                                                                  action: [
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: 
                                                                            (LhsName
                                                                              name: new_libs
                                                                            )
                                                                          op: Equal
                                                                          rhs: 
                                                                            {
                                                                              (DQ 
                                                                                ($ VSub_Name 
'$deplib'
                                                                                ) (' ') ($ VSub_Name '$new_libs')
                                                                              )
                                                                            }
                                                                          spids: [32060]
                                                                        )
                                                                      ]
                                                                      spids: [32060]
                                                                    )
                                                                  ]
                                                                  spids: [32057 32058 32067 16777215]
                                                                )
                                                              ]
                                                              spids: [32034 32042 32070]
                                                            )
                                                          ]
                                                          spids: [32030 32031 32073 16777215]
                                                        )
                                                      ]
                                                      spids: [32000 32008 32076]
                                                    )
                                                  ]
                                                  spids: [31940 31941 32079 16777215]
                                                )
                                              ]
                                              spids: [31912 31916 32082]
                                            )
                                          ]
                                          spids: [31885 32085]
                                        )
                                      spids: [31881 31883]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:tmp_libs)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [32088]
                                        )
                                      ]
                                      spids: [32088]
                                    )
                                    (ForEach
                                      iter_name: deplib
                                      iter_words: [{($ VSub_Name '$new_libs')}]
                                      do_arg_iter: False
                                      body: 
                                        (DoGroup
                                          children: [
                                            (Case
                                              to_match: {($ VSub_Name '$deplib')}
                                              arms: [
                                                (case_arm
                                                  pat_list: [{(-L) (Lit_Other '*')}]
                                                  action: [
                                                    (Case
                                                      to_match: 
                                                        {(DQ (' ') ($ VSub_Name '$tmp_libs') (' '))}
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [
                                                            {(Lit_Other '*') 
                                                              (DQ (' ') ($ VSub_Name '$deplib') (' ')) (Lit_Other '*')
                                                            }
                                                          ]
                                                          spids: [32126 32133 32135 16777215]
                                                        )
                                                        (case_arm
                                                          pat_list: [{(Lit_Other '*')}]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:tmp_libs)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ ($ VSub_Name '$tmp_libs') 
                                                                        (' ') ($ VSub_Name '$deplib')
                                                                      )
                                                                    }
                                                                  spids: [32141]
                                                                )
                                                              ]
                                                              spids: [32141]
                                                            )
                                                          ]
                                                          spids: [32138 32139 32148 16777215]
                                                        )
                                                      ]
                                                      spids: [32115 32123 32151]
                                                    )
                                                  ]
                                                  spids: [32110 32112 32154 16777215]
                                                )
                                                (case_arm
                                                  pat_list: [{(Lit_Other '*')}]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:tmp_libs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$tmp_libs') (' ') 
                                                                ($ VSub_Name '$deplib')
                                                              )
                                                            }
                                                          spids: [32160]
                                                        )
                                                      ]
                                                      spids: [32160]
                                                    )
                                                  ]
                                                  spids: [32157 32158 32167 16777215]
                                                )
                                              ]
                                              spids: [32103 32107 32170]
                                            )
                                          ]
                                          spids: [32100 32173]
                                        )
                                      spids: [32096 32098]
                                    )
                                    (C {(eval)} 
                                      {($ VSub_Name '$var') (Lit_Other '=') 
                                        (EscapedLiteralPart
                                          token: <Lit_EscapedChar '\\"'>
                                        ) ($ VSub_Name '$tmp_libs') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                      }
                                    )
                                  ]
                                  spids: [31857 32185]
                                )
                              spids: [31851 31855]
                            )
                          ]
                          spids: [16777215 31720]
                        )
                      ]
                      spids: [16777215 32191]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:tmp_libs)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [32202]
                        )
                      ]
                      spids: [32202]
                    )
                    (ForEach
                      iter_name: i
                      iter_words: [{($ VSub_Name '$dependency_libs')}]
                      do_arg_iter: False
                      body: 
                        (DoGroup
                          children: [
                            (Case
                              to_match: 
                                {
                                  (DQ (' ') ($ VSub_Name '$predeps') (' ') ($ VSub_Name '$postdeps') 
                                    (' ') ($ VSub_Name '$compiler_lib_search_path') (' ')
                                  )
                                }
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '*') (DQ (' ') ($ VSub_Name '$i') (' ')) 
                                      (Lit_Other '*')
                                    }
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:i)
                                          op: Equal
                                          rhs: {(DQ )}
                                          spids: [32243]
                                        )
                                      ]
                                      spids: [32243]
                                    )
                                  ]
                                  spids: [32233 32240 32248 16777215]
                                )
                              ]
                              spids: [32218 32230 32251]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$i'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:tmp_libs)
                                          op: Equal
                                          rhs: 
                                            {(DQ ($ VSub_Name '$tmp_libs') (' ') ($ VSub_Name '$i'))}
                                          spids: [32269]
                                        )
                                      ]
                                      spids: [32269]
                                    )
                                  ]
                                  spids: [16777215 32266]
                                )
                              ]
                              spids: [16777215 32277]
                            )
                          ]
                          spids: [32215 32280]
                        )
                      spids: [32210 32213]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:dependency_libs)
                          op: Equal
                          rhs: {($ VSub_Name '$tmp_libs')}
                          spids: [32283]
                        )
                      ]
                      spids: [32283]
                    )
                  ]
                  spids: [24024 32287]
                )
              spids: [24020 24022]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} {(Lit_Other '=')} {(prog)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:dlfiles)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$newdlfiles'))}
                          spids: [32309]
                        )
                      ]
                      spids: [32309]
                    )
                  ]
                  spids: [16777215 32306]
                )
              ]
              spids: [16777215 32315]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (AndOr
                          children: [
                            (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} {(Lit_Other '=')} {(prog)})
                            (C {(test)} {(DQ ($ VSub_Name '$linkmode'))} {(Lit_Other '=')} {(lib)})
                          ]
                          op_id: Op_DPipe
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:dlprefiles)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$newdlprefiles'))}
                          spids: [32346]
                        )
                      ]
                      spids: [32346]
                    )
                  ]
                  spids: [16777215 32343]
                )
              ]
              spids: [16777215 32352]
            )
            (Case
              to_match: {($ VSub_Name '$linkmode')}
              arms: [
                (case_arm
                  pat_list: [{(oldlib)}]
                  action: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (AndOr
                                  children: [
                                    (C {(test)} {(-n)} 
                                      {(DQ ($ VSub_Name '$dlfiles') ($ VSub_Name '$dlprefiles'))}
                                    )
                                    (C {(test)} {(DQ ($ VSub_Name '$dlself'))} 
                                      {(KW_Bang '!') (Lit_Other '=')} {(no)}
                                    )
                                  ]
                                  op_id: Op_DPipe
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {(func_warning)} 
                              {
                                (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                  ("-dlopen' is ignored for archives")
                                )
                              }
                            )
                          ]
                          spids: [16777215 32392]
                        )
                      ]
                      spids: [16777215 32403]
                    )
                    (Case
                      to_match: {(DQ (' ') ($ VSub_Name '$deplibs'))}
                      arms: [
                        (case_arm
                          pat_list: [
                            {(Lit_Other '*') (EscapedLiteralPart token:<Lit_EscapedChar '\\ '>) (-l) 
                              (Lit_Other '*')
                            }
                            {(Lit_Other '*') (EscapedLiteralPart token:<Lit_EscapedChar '\\ '>) (-L) 
                              (Lit_Other '*')
                            }
                          ]
                          action: [
                            (C {(func_warning)} 
                              {
                                (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ("-l' and ") 
                                  (EscapedLiteralPart
                                    token: <Lit_EscapedChar '\\`'>
                                  ) ("-L' are ignored for archives")
                                )
                              }
                            )
                          ]
                          spids: [32417 32428 32440 16777215]
                        )
                      ]
                      spids: [32407 32414 32443]
                    )
                    (AndOr
                      children: [
                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$rpath'))})
                        (C {(func_warning)} 
                          {
                            (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                              ("-rpath' is ignored for archives")
                            )
                          }
                        )
                      ]
                      op_id: Op_DAmp
                    )
                    (AndOr
                      children: [
                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$xrpath'))})
                        (C {(func_warning)} 
                          {
                            (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                              ("-R' is ignored for archives")
                            )
                          }
                        )
                      ]
                      op_id: Op_DAmp
                    )
                    (AndOr
                      children: [
                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$vinfo'))})
                        (C {(func_warning)} 
                          {
                            (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                              ("-version-info/-version-number' is ignored for archives")
                            )
                          }
                        )
                      ]
                      op_id: Op_DAmp
                    )
                    (AndOr
                      children: [
                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$release'))})
                        (C {(func_warning)} 
                          {
                            (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                              ("-release' is ignored for archives")
                            )
                          }
                        )
                      ]
                      op_id: Op_DAmp
                    )
                    (AndOr
                      children: [
                        (C {(test)} {(-n)} 
                          {
                            (DQ ($ VSub_Name '$export_symbols') ($ VSub_Name '$export_symbols_regex'))
                          }
                        )
                        (C {(func_warning)} 
                          {
                            (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                              ("-export-symbols' is ignored for archives")
                            )
                          }
                        )
                      ]
                      op_id: Op_DAmp
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:build_libtool_libs)
                          op: Equal
                          rhs: {(no)}
                          spids: [32557]
                        )
                      ]
                      spids: [32557]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:oldlibs)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$output'))}
                          spids: [32561]
                        )
                      ]
                      spids: [32561]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:objs)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$objs') ($ VSub_Name '$old_deplibs'))}
                          spids: [32567]
                        )
                      ]
                      spids: [32567]
                    )
                  ]
                  spids: [32363 32364 32574 16777215]
                )
                (case_arm
                  pat_list: [{(lib)}]
                  action: [
                    (Case
                      to_match: {($ VSub_Name '$outputname')}
                      arms: [
                        (case_arm
                          pat_list: [{(lib) (Lit_Other '*')}]
                          action: [
                            (C {(func_stripname)} {(SQ <lib>)} {(SQ <.la>)} 
                              {(DQ ($ VSub_Name '$outputname'))}
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:name)
                                  op: Equal
                                  rhs: {($ VSub_Name '$func_stripname_result')}
                                  spids: [32613]
                                )
                              ]
                              spids: [32613]
                            )
                            (C {(eval)} 
                              {(Lit_VarLike 'shared_ext=') 
                                (EscapedLiteralPart
                                  token: <Lit_EscapedChar '\\"'>
                                ) ($ VSub_Name '$shrext_cmds') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                              }
                            )
                            (C {(eval)} 
                              {(Lit_VarLike 'libname=') 
                                (EscapedLiteralPart
                                  token: <Lit_EscapedChar '\\"'>
                                ) ($ VSub_Name '$libname_spec') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                              }
                            )
                          ]
                          spids: [32593 32595 32633 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*')}]
                          action: [
                            (AndOr
                              children: [
                                (C {(test)} {(DQ ($ VSub_Name '$module'))} {(Lit_Other '=')} {(no)})
                                (C {(func_fatal_help)} 
                                  {
                                    (DQ ('libtool library ') 
                                      (EscapedLiteralPart
                                        token: <Lit_EscapedChar '\\`'>
                                      ) ($ VSub_Name '$output') ("' must begin with ") (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                      ("lib'")
                                    )
                                  }
                                )
                              ]
                              op_id: Op_DAmp
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$need_lib_prefix'))} 
                                          {(KW_Bang '!') (Lit_Other '=')} {(no)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(func_stripname)} {(SQ )} {(SQ <.la>)} 
                                      {(DQ ($ VSub_Name '$outputname'))}
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:name)
                                          op: Equal
                                          rhs: {($ VSub_Name '$func_stripname_result')}
                                          spids: [32702]
                                        )
                                      ]
                                      spids: [32702]
                                    )
                                    (C {(eval)} 
                                      {(Lit_VarLike 'shared_ext=') 
                                        (EscapedLiteralPart
                                          token: <Lit_EscapedChar '\\"'>
                                        ) ($ VSub_Name '$shrext_cmds') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                      }
                                    )
                                    (C {(eval)} 
                                      {(Lit_VarLike 'libname=') 
                                        (EscapedLiteralPart
                                          token: <Lit_EscapedChar '\\"'>
                                        ) ($ VSub_Name '$libname_spec') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                      }
                                    )
                                  ]
                                  spids: [16777215 32681]
                                )
                              ]
                              else_action: [
                                (C {(func_stripname)} {(SQ )} {(SQ <.la>)} 
                                  {(DQ ($ VSub_Name '$outputname'))}
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:libname)
                                      op: Equal
                                      rhs: {($ VSub_Name '$func_stripname_result')}
                                      spids: [32739]
                                    )
                                  ]
                                  spids: [32739]
                                )
                              ]
                              spids: [32722 32743]
                            )
                          ]
                          spids: [32636 32637 32746 16777215]
                        )
                      ]
                      spids: [32586 32590 32749]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$objs'))})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$deplibs_check_method'))} 
                                          {(KW_Bang '!') (Lit_Other '=')} {(pass_all)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(func_fatal_error)} 
                                      {
                                        (DQ ('cannot build libtool library ') 
                                          (EscapedLiteralPart
                                            token: <Lit_EscapedChar '\\`'>
                                          ) ($ VSub_Name '$output') ("' from non-libtool objects on this host:") ($ VSub_Name '$objs')
                                        )
                                      }
                                    )
                                  ]
                                  spids: [16777215 32781]
                                )
                              ]
                              else_action: [
                                (C {($ VSub_Name '$ECHO')})
                                (C {($ VSub_Name '$ECHO')} 
                                  {
                                    (DQ ('*** Warning: Linking the shared library ') 
                                      ($ VSub_Name '$output') (' against the non-libtool')
                                    )
                                  }
                                )
                                (C {($ VSub_Name '$ECHO')} 
                                  {(DQ ('*** objects ') ($ VSub_Name '$objs') (' is not portable!'))}
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:libobjs)
                                      op: Equal
                                      rhs: {(DQ ($ VSub_Name '$libobjs') (' ') ($ VSub_Name '$objs'))}
                                      spids: [32819]
                                    )
                                  ]
                                  spids: [32819]
                                )
                              ]
                              spids: [32795 32827]
                            )
                          ]
                          spids: [16777215 32764]
                        )
                      ]
                      spids: [16777215 32830]
                    )
                    (AndOr
                      children: [
                        (C {(test)} {(DQ ($ VSub_Name '$dlself'))} {(KW_Bang '!') (Lit_Other '=')} {(no)})
                        (C {(func_warning)} 
                          {
                            (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                              ("-dlopen self' is ignored for libtool libraries")
                            )
                          }
                        )
                      ]
                      op_id: Op_DAmp
                    )
                    (C {(set)} {(dummy)} {($ VSub_Name '$rpath')})
                    (C {(shift)})
                    (AndOr
                      children: [
                        (C {(test)} {(DQ ($ VSub_Pound '$#'))} {(-gt)} {(1)})
                        (C {(func_warning)} 
                          {
                            (DQ ('ignoring multiple ') 
                              (EscapedLiteralPart
                                token: <Lit_EscapedChar '\\`'>
                              ) ("-rpath's for a libtool library")
                            )
                          }
                        )
                      ]
                      op_id: Op_DAmp
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:install_libdir)
                          op: Equal
                          rhs: {(DQ ($ VSub_Number '$1'))}
                          spids: [32892]
                        )
                      ]
                      spids: [32892]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:oldlibs)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [32899]
                        )
                      ]
                      spids: [32899]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-z)} {(DQ ($ VSub_Name '$rpath'))})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$build_libtool_libs'))} 
                                          {(Lit_Other '=')} {(yes)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:oldlibs)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$output_objdir') (/) 
                                                ($ VSub_Name '$libname') (.) ($ VSub_Name '$libext') (' ') ($ VSub_Name '$oldlibs')
                                              )
                                            }
                                          spids: [32948]
                                        )
                                      ]
                                      spids: [32948]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:build_libtool_libs)
                                          op: Equal
                                          rhs: {(convenience)}
                                          spids: [32960]
                                        )
                                      ]
                                      spids: [32960]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:build_old_libs)
                                          op: Equal
                                          rhs: {(yes)}
                                          spids: [32964]
                                        )
                                      ]
                                      spids: [32964]
                                    )
                                  ]
                                  spids: [16777215 32929]
                                )
                              ]
                              spids: [16777215 32968]
                            )
                            (AndOr
                              children: [
                                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$vinfo'))})
                                (C {(func_warning)} 
                                  {
                                    (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                      (
"-version-info/-version-number' is ignored for convenience libraries"
                                      )
                                    )
                                  }
                                )
                              ]
                              op_id: Op_DAmp
                            )
                            (AndOr
                              children: [
                                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$release'))})
                                (C {(func_warning)} 
                                  {
                                    (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                      ("-release' is ignored for convenience libraries")
                                    )
                                  }
                                )
                              ]
                              op_id: Op_DAmp
                            )
                          ]
                          spids: [16777215 32913]
                        )
                      ]
                      else_action: [
                        (Sentence
                          child: 
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:save_ifs)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$IFS'))}
                                  spids: [33021]
                                )
                              ]
                              spids: [33021]
                            )
                          terminator: <Op_Semi ';'>
                        )
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:IFS)
                              op: Equal
                              rhs: {(SQ <':'>)}
                              spids: [33027]
                            )
                          ]
                          spids: [33027]
                        )
                        (C {(set)} {(dummy)} {($ VSub_Name '$vinfo')} {(0)} {(0)} {(0)})
                        (C {(shift)})
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:IFS)
                              op: Equal
                              rhs: {(DQ ($ VSub_Name '$save_ifs'))}
                              spids: [33049]
                            )
                          ]
                          spids: [33049]
                        )
                        (AndOr
                          children: [
                            (C {(test)} {(-n)} {(DQ ($ VSub_Number '$7'))})
                            (C {(func_fatal_help)} 
                              {
                                (DQ ('too many parameters to ') 
                                  (EscapedLiteralPart
                                    token: <Lit_EscapedChar '\\`'>
                                  ) ("-version-info'")
                                )
                              }
                            )
                          ]
                          op_id: Op_DAmp
                        )
                        (Case
                          to_match: {($ VSub_Name '$vinfo_number')}
                          arms: [
                            (case_arm
                              pat_list: [{(yes)}]
                              action: [
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:number_major)
                                      op: Equal
                                      rhs: {(DQ ($ VSub_Number '$1'))}
                                      spids: [33102]
                                    )
                                  ]
                                  spids: [33102]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:number_minor)
                                      op: Equal
                                      rhs: {(DQ ($ VSub_Number '$2'))}
                                      spids: [33108]
                                    )
                                  ]
                                  spids: [33108]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:number_revision)
                                      op: Equal
                                      rhs: {(DQ ($ VSub_Number '$3'))}
                                      spids: [33114]
                                    )
                                  ]
                                  spids: [33114]
                                )
                                (Case
                                  to_match: {($ VSub_Name '$version_type')}
                                  arms: [
                                    (case_arm
                                      pat_list: [{(darwin)} {(linux)} {(osf)} {(windows)} {(none)}]
                                      action: [
                                        (C {(func_arith)} {($ VSub_Name '$number_major')} 
                                          {(Lit_Other '+')} {($ VSub_Name '$number_minor')}
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:current)
                                              op: Equal
                                              rhs: {($ VSub_Name '$func_arith_result')}
                                              spids: [33176]
                                            )
                                          ]
                                          spids: [33176]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:age)
                                              op: Equal
                                              rhs: {(DQ ($ VSub_Name '$number_minor'))}
                                              spids: [33180]
                                            )
                                          ]
                                          spids: [33180]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:revision)
                                              op: Equal
                                              rhs: {(DQ ($ VSub_Name '$number_revision'))}
                                              spids: [33186]
                                            )
                                          ]
                                          spids: [33186]
                                        )
                                      ]
                                      spids: [33155 33164 33192 16777215]
                                    )
                                    (case_arm
                                      pat_list: [{(freebsd-aout)} {(freebsd-elf)} {(sunos)}]
                                      action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:current)
                                              op: Equal
                                              rhs: {(DQ ($ VSub_Name '$number_major'))}
                                              spids: [33203]
                                            )
                                          ]
                                          spids: [33203]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:revision)
                                              op: Equal
                                              rhs: {(DQ ($ VSub_Name '$number_minor'))}
                                              spids: [33209]
                                            )
                                          ]
                                          spids: [33209]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:age)
                                              op: Equal
                                              rhs: {(DQ (0))}
                                              spids: [33215]
                                            )
                                          ]
                                          spids: [33215]
                                        )
                                      ]
                                      spids: [33195 33200 33221 16777215]
                                    )
                                    (case_arm
                                      pat_list: [{(irix)} {(nonstopux)}]
                                      action: [
                                        (C {(func_arith)} {($ VSub_Name '$number_major')} 
                                          {(Lit_Other '+')} {($ VSub_Name '$number_minor')}
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:current)
                                              op: Equal
                                              rhs: {($ VSub_Name '$func_arith_result')}
                                              spids: [33239]
                                            )
                                          ]
                                          spids: [33239]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:age)
                                              op: Equal
                                              rhs: {(DQ ($ VSub_Name '$number_minor'))}
                                              spids: [33243]
                                            )
                                          ]
                                          spids: [33243]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:revision)
                                              op: Equal
                                              rhs: {(DQ ($ VSub_Name '$number_minor'))}
                                              spids: [33249]
                                            )
                                          ]
                                          spids: [33249]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:lt_irix_increment)
                                              op: Equal
                                              rhs: {(no)}
                                              spids: [33255]
                                            )
                                          ]
                                          spids: [33255]
                                        )
                                      ]
                                      spids: [33224 33227 33259 16777215]
                                    )
                                    (case_arm
                                      pat_list: [{(Lit_Other '*')}]
                                      action: [
                                        (C {(func_fatal_configuration)} 
                                          {
                                            (DQ ($ VSub_Name '$modename') 
                                              (': unknown library version type ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ($ VSub_Name '$version_type') ("'")
                                            )
                                          }
                                        )
                                      ]
                                      spids: [33262 33263 33277 16777215]
                                    )
                                  ]
                                  spids: [33148 33152 33280]
                                )
                              ]
                              spids: [33098 33099 33283 16777215]
                            )
                            (case_arm
                              pat_list: [{(no)}]
                              action: [
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:current)
                                      op: Equal
                                      rhs: {(DQ ($ VSub_Number '$1'))}
                                      spids: [33290]
                                    )
                                  ]
                                  spids: [33290]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:revision)
                                      op: Equal
                                      rhs: {(DQ ($ VSub_Number '$2'))}
                                      spids: [33296]
                                    )
                                  ]
                                  spids: [33296]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:age)
                                      op: Equal
                                      rhs: {(DQ ($ VSub_Number '$3'))}
                                      spids: [33302]
                                    )
                                  ]
                                  spids: [33302]
                                )
                              ]
                              spids: [33286 33287 33308 16777215]
                            )
                          ]
                          spids: [33091 33095 33311]
                        )
                        (Case
                          to_match: {($ VSub_Name '$current')}
                          arms: [
                            (case_arm
                              pat_list: [
                                {(0)}
                                {(Lit_Other '[') (1-9) (Lit_Other ']')}
                                {(Lit_Other '[') (1-9) (Lit_Other ']') (Lit_Other '[') (0-9) 
                                  (Lit_Other ']')
                                }
                                {(Lit_Other '[') (1-9) (Lit_Other ']') (Lit_Other '[') (0-9) 
                                  (Lit_Other ']') (Lit_Other '[') (0-9) (Lit_Other ']')
                                }
                                {(Lit_Other '[') (1-9) (Lit_Other ']') (Lit_Other '[') (0-9) 
                                  (Lit_Other ']') (Lit_Other '[') (0-9) (Lit_Other ']') (Lit_Other '[') (0-9) (Lit_Other ']')
                                }
                                {(Lit_Other '[') (1-9) (Lit_Other ']') (Lit_Other '[') (0-9) 
                                  (Lit_Other ']') (Lit_Other '[') (0-9) (Lit_Other ']') (Lit_Other '[') (0-9) (Lit_Other ']') (Lit_Other '[') (0-9) 
                                  (Lit_Other ']')
                                }
                              ]
                              spids: [33326 33377 33379 16777215]
                            )
                            (case_arm
                              pat_list: [{(Lit_Other '*')}]
                              action: [
                                (C {(func_error)} 
                                  {
                                    (DQ ('CURRENT ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                      ($ VSub_Name '$current') ("' must be a nonnegative integer")
                                    )
                                  }
                                )
                                (C {(func_fatal_error)} 
                                  {
                                    (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                      ($ VSub_Name '$vinfo') ("' is not valid version information")
                                    )
                                  }
                                )
                              ]
                              spids: [33382 33383 33405 16777215]
                            )
                          ]
                          spids: [33319 33323 33408]
                        )
                        (Case
                          to_match: {($ VSub_Name '$revision')}
                          arms: [
                            (case_arm
                              pat_list: [
                                {(0)}
                                {(Lit_Other '[') (1-9) (Lit_Other ']')}
                                {(Lit_Other '[') (1-9) (Lit_Other ']') (Lit_Other '[') (0-9) 
                                  (Lit_Other ']')
                                }
                                {(Lit_Other '[') (1-9) (Lit_Other ']') (Lit_Other '[') (0-9) 
                                  (Lit_Other ']') (Lit_Other '[') (0-9) (Lit_Other ']')
                                }
                                {(Lit_Other '[') (1-9) (Lit_Other ']') (Lit_Other '[') (0-9) 
                                  (Lit_Other ']') (Lit_Other '[') (0-9) (Lit_Other ']') (Lit_Other '[') (0-9) (Lit_Other ']')
                                }
                                {(Lit_Other '[') (1-9) (Lit_Other ']') (Lit_Other '[') (0-9) 
                                  (Lit_Other ']') (Lit_Other '[') (0-9) (Lit_Other ']') (Lit_Other '[') (0-9) (Lit_Other ']') (Lit_Other '[') (0-9) 
                                  (Lit_Other ']')
                                }
                              ]
                              spids: [33419 33470 33472 16777215]
                            )
                            (case_arm
                              pat_list: [{(Lit_Other '*')}]
                              action: [
                                (C {(func_error)} 
                                  {
                                    (DQ ('REVISION ') 
                                      (EscapedLiteralPart
                                        token: <Lit_EscapedChar '\\`'>
                                      ) ($ VSub_Name '$revision') ("' must be a nonnegative integer")
                                    )
                                  }
                                )
                                (C {(func_fatal_error)} 
                                  {
                                    (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                      ($ VSub_Name '$vinfo') ("' is not valid version information")
                                    )
                                  }
                                )
                              ]
                              spids: [33475 33476 33498 16777215]
                            )
                          ]
                          spids: [33412 33416 33501]
                        )
                        (Case
                          to_match: {($ VSub_Name '$age')}
                          arms: [
                            (case_arm
                              pat_list: [
                                {(0)}
                                {(Lit_Other '[') (1-9) (Lit_Other ']')}
                                {(Lit_Other '[') (1-9) (Lit_Other ']') (Lit_Other '[') (0-9) 
                                  (Lit_Other ']')
                                }
                                {(Lit_Other '[') (1-9) (Lit_Other ']') (Lit_Other '[') (0-9) 
                                  (Lit_Other ']') (Lit_Other '[') (0-9) (Lit_Other ']')
                                }
                                {(Lit_Other '[') (1-9) (Lit_Other ']') (Lit_Other '[') (0-9) 
                                  (Lit_Other ']') (Lit_Other '[') (0-9) (Lit_Other ']') (Lit_Other '[') (0-9) (Lit_Other ']')
                                }
                                {(Lit_Other '[') (1-9) (Lit_Other ']') (Lit_Other '[') (0-9) 
                                  (Lit_Other ']') (Lit_Other '[') (0-9) (Lit_Other ']') (Lit_Other '[') (0-9) (Lit_Other ']') (Lit_Other '[') (0-9) 
                                  (Lit_Other ']')
                                }
                              ]
                              spids: [33512 33563 33565 16777215]
                            )
                            (case_arm
                              pat_list: [{(Lit_Other '*')}]
                              action: [
                                (C {(func_error)} 
                                  {
                                    (DQ ('AGE ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                      ($ VSub_Name '$age') ("' must be a nonnegative integer")
                                    )
                                  }
                                )
                                (C {(func_fatal_error)} 
                                  {
                                    (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                      ($ VSub_Name '$vinfo') ("' is not valid version information")
                                    )
                                  }
                                )
                              ]
                              spids: [33568 33569 33591 16777215]
                            )
                          ]
                          spids: [33505 33509 33594]
                        )
                        (If
                          arms: [
                            (if_arm
                              cond: [
                                (Sentence
                                  child: 
                                    (C {(test)} {(DQ ($ VSub_Name '$age'))} {(-gt)} 
                                      {(DQ ($ VSub_Name '$current'))}
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                              ]
                              action: [
                                (C {(func_error)} 
                                  {
                                    (DQ ('AGE ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                      ($ VSub_Name '$age') ("' is greater than the current interface number ") (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                      ($ VSub_Name '$current') ("'")
                                    )
                                  }
                                )
                                (C {(func_fatal_error)} 
                                  {
                                    (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                      ($ VSub_Name '$vinfo') ("' is not valid version information")
                                    )
                                  }
                                )
                              ]
                              spids: [16777215 33613]
                            )
                          ]
                          spids: [16777215 33638]
                        )
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:major)
                              op: Equal
                              rhs: {(SQ )}
                              spids: [33646]
                            )
                          ]
                          spids: [33646]
                        )
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:versuffix)
                              op: Equal
                              rhs: {(SQ )}
                              spids: [33649]
                            )
                          ]
                          spids: [33649]
                        )
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:verstring)
                              op: Equal
                              rhs: {(SQ )}
                              spids: [33652]
                            )
                          ]
                          spids: [33652]
                        )
                        (Case
                          to_match: {($ VSub_Name '$version_type')}
                          arms: [
                            (case_arm
                              pat_list: [{(none)}]
                              spids: [33662 33663 33665 16777215]
                            )
                            (case_arm
                              pat_list: [{(darwin)}]
                              action: [
                                (C {(func_arith)} {($ VSub_Name '$current')} {(-)} {($ VSub_Name '$age')})
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:major)
                                      op: Equal
                                      rhs: {(.) ($ VSub_Name '$func_arith_result')}
                                      spids: [33690]
                                    )
                                  ]
                                  spids: [33690]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:versuffix)
                                      op: Equal
                                      rhs: 
                                        {
                                          (DQ ($ VSub_Name '$major') (.) ($ VSub_Name '$age') (.) 
                                            ($ VSub_Name '$revision')
                                          )
                                        }
                                      spids: [33695]
                                    )
                                  ]
                                  spids: [33695]
                                )
                                (C {(func_arith)} {($ VSub_Name '$current')} {(Lit_Other '+')} {(1)})
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:minor_current)
                                      op: Equal
                                      rhs: {($ VSub_Name '$func_arith_result')}
                                      spids: [33718]
                                    )
                                  ]
                                  spids: [33718]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:xlcverstring)
                                      op: Equal
                                      rhs: 
                                        {
                                          (DQ (${ VSub_Name wl) ('-compatibility_version ') 
                                            (${ VSub_Name wl) ($ VSub_Name '$minor_current') (' ') (${ VSub_Name wl) ('-current_version ') (${ VSub_Name wl) 
                                            ($ VSub_Name '$minor_current') (.) ($ VSub_Name '$revision')
                                          )
                                        }
                                      spids: [33722]
                                    )
                                  ]
                                  spids: [33722]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:verstring)
                                      op: Equal
                                      rhs: 
                                        {
                                          (DQ ('-compatibility_version ') 
                                            ($ VSub_Name '$minor_current') (' -current_version ') ($ VSub_Name '$minor_current') (.) ($ VSub_Name '$revision')
                                          )
                                        }
                                      spids: [33746]
                                    )
                                  ]
                                  spids: [33746]
                                )
                              ]
                              spids: [33669 33670 33757 16777215]
                            )
                            (case_arm
                              pat_list: [{(freebsd-aout)}]
                              action: [
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:major)
                                      op: Equal
                                      rhs: {(DQ (.) ($ VSub_Name '$current'))}
                                      spids: [33765]
                                    )
                                  ]
                                  spids: [33765]
                                )
                                (Sentence
                                  child: 
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:versuffix)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ (.) ($ VSub_Name '$current') (.) 
                                                ($ VSub_Name '$revision')
                                              )
                                            }
                                          spids: [33772]
                                        )
                                      ]
                                      spids: [33772]
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                              ]
                              spids: [33761 33762 33782 16777215]
                            )
                            (case_arm
                              pat_list: [{(freebsd-elf)}]
                              action: [
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:major)
                                      op: Equal
                                      rhs: {(DQ (.) ($ VSub_Name '$current'))}
                                      spids: [33790]
                                    )
                                  ]
                                  spids: [33790]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:versuffix)
                                      op: Equal
                                      rhs: {(DQ (.) ($ VSub_Name '$current'))}
                                      spids: [33797]
                                    )
                                  ]
                                  spids: [33797]
                                )
                              ]
                              spids: [33786 33787 33804 16777215]
                            )
                            (case_arm
                              pat_list: [{(irix)} {(nonstopux)}]
                              action: [
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: 
                                            (C {(test)} {(DQ (X) ($ VSub_Name '$lt_irix_increment'))} 
                                              {(Lit_Other '=')} {(DQ (Xno))}
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [
                                        (C {(func_arith)} {($ VSub_Name '$current')} {(-)} 
                                          {($ VSub_Name '$age')}
                                        )
                                      ]
                                      spids: [16777215 33832]
                                    )
                                  ]
                                  else_action: [
                                    (C {(func_arith)} {($ VSub_Name '$current')} {(-)} 
                                      {($ VSub_Name '$age')} {(Lit_Other '+')} {(1)}
                                    )
                                  ]
                                  spids: [33844 33860]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:major)
                                      op: Equal
                                      rhs: {($ VSub_Name '$func_arith_result')}
                                      spids: [33863]
                                    )
                                  ]
                                  spids: [33863]
                                )
                                (Case
                                  to_match: {($ VSub_Name '$version_type')}
                                  arms: [
                                    (case_arm
                                      pat_list: [{(nonstopux)}]
                                      action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:verstring_prefix)
                                              op: Equal
                                              rhs: {(nonstopux)}
                                              spids: [33878]
                                            )
                                          ]
                                          spids: [33878]
                                        )
                                      ]
                                      spids: [33875 33876 33881 16777215]
                                    )
                                    (case_arm
                                      pat_list: [{(Lit_Other '*')}]
                                      action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:verstring_prefix)
                                              op: Equal
                                              rhs: {(sgi)}
                                              spids: [33887]
                                            )
                                          ]
                                          spids: [33887]
                                        )
                                      ]
                                      spids: [33884 33885 33890 16777215]
                                    )
                                  ]
                                  spids: [33868 33872 33893]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:verstring)
                                      op: Equal
                                      rhs: 
                                        {
                                          (DQ ($ VSub_Name '$verstring_prefix') ($ VSub_Name '$major') 
                                            (.) ($ VSub_Name '$revision')
                                          )
                                        }
                                      spids: [33896]
                                    )
                                  ]
                                  spids: [33896]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:loop)
                                      op: Equal
                                      rhs: {($ VSub_Name '$revision')}
                                      spids: [33910]
                                    )
                                  ]
                                  spids: [33910]
                                )
                                (While
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(DQ ($ VSub_Name '$loop'))} {(-ne)} {(0)})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  body: 
                                    (DoGroup
                                      children: [
                                        (C {(func_arith)} {($ VSub_Name '$revision')} {(-)} 
                                          {($ VSub_Name '$loop')}
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:iface)
                                              op: Equal
                                              rhs: {($ VSub_Name '$func_arith_result')}
                                              spids: [33939]
                                            )
                                          ]
                                          spids: [33939]
                                        )
                                        (C {(func_arith)} {($ VSub_Name '$loop')} {(-)} {(1)})
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:loop)
                                              op: Equal
                                              rhs: {($ VSub_Name '$func_arith_result')}
                                              spids: [33952]
                                            )
                                          ]
                                          spids: [33952]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:verstring)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$verstring_prefix') 
                                                    ($ VSub_Name '$major') (.) ($ VSub_Name '$iface') (':') ($ VSub_Name '$verstring')
                                                  )
                                                }
                                              spids: [33956]
                                            )
                                          ]
                                          spids: [33956]
                                        )
                                      ]
                                      spids: [33927 33967]
                                    )
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:major)
                                      op: Equal
                                      rhs: {(.) ($ VSub_Name '$major')}
                                      spids: [33975]
                                    )
                                  ]
                                  spids: [33975]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:versuffix)
                                      op: Equal
                                      rhs: {(DQ ($ VSub_Name '$major') (.) ($ VSub_Name '$revision'))}
                                      spids: [33980]
                                    )
                                  ]
                                  spids: [33980]
                                )
                              ]
                              spids: [33808 33813 33988 16777215]
                            )
                            (case_arm
                              pat_list: [{(linux)}]
                              action: [
                                (C {(func_arith)} {($ VSub_Name '$current')} {(-)} {($ VSub_Name '$age')})
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:major)
                                      op: Equal
                                      rhs: {(.) ($ VSub_Name '$func_arith_result')}
                                      spids: [34005]
                                    )
                                  ]
                                  spids: [34005]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:versuffix)
                                      op: Equal
                                      rhs: 
                                        {
                                          (DQ ($ VSub_Name '$major') (.) ($ VSub_Name '$age') (.) 
                                            ($ VSub_Name '$revision')
                                          )
                                        }
                                      spids: [34010]
                                    )
                                  ]
                                  spids: [34010]
                                )
                              ]
                              spids: [33992 33993 34020 16777215]
                            )
                            (case_arm
                              pat_list: [{(osf)}]
                              action: [
                                (C {(func_arith)} {($ VSub_Name '$current')} {(-)} {($ VSub_Name '$age')})
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:major)
                                      op: Equal
                                      rhs: {(.) ($ VSub_Name '$func_arith_result')}
                                      spids: [34037]
                                    )
                                  ]
                                  spids: [34037]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:versuffix)
                                      op: Equal
                                      rhs: 
                                        {
                                          (DQ (.) ($ VSub_Name '$current') (.) ($ VSub_Name '$age') (.) 
                                            ($ VSub_Name '$revision')
                                          )
                                        }
                                      spids: [34042]
                                    )
                                  ]
                                  spids: [34042]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:verstring)
                                      op: Equal
                                      rhs: 
                                        {
                                          (DQ ($ VSub_Name '$current') (.) ($ VSub_Name '$age') (.) 
                                            ($ VSub_Name '$revision')
                                          )
                                        }
                                      spids: [34053]
                                    )
                                  ]
                                  spids: [34053]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:loop)
                                      op: Equal
                                      rhs: {($ VSub_Name '$age')}
                                      spids: [34068]
                                    )
                                  ]
                                  spids: [34068]
                                )
                                (While
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(DQ ($ VSub_Name '$loop'))} {(-ne)} {(0)})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  body: 
                                    (DoGroup
                                      children: [
                                        (C {(func_arith)} {($ VSub_Name '$current')} {(-)} 
                                          {($ VSub_Name '$loop')}
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:iface)
                                              op: Equal
                                              rhs: {($ VSub_Name '$func_arith_result')}
                                              spids: [34097]
                                            )
                                          ]
                                          spids: [34097]
                                        )
                                        (C {(func_arith)} {($ VSub_Name '$loop')} {(-)} {(1)})
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:loop)
                                              op: Equal
                                              rhs: {($ VSub_Name '$func_arith_result')}
                                              spids: [34110]
                                            )
                                          ]
                                          spids: [34110]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:verstring)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$verstring') (':') 
                                                    (${ VSub_Name iface) (.0)
                                                  )
                                                }
                                              spids: [34114]
                                            )
                                          ]
                                          spids: [34114]
                                        )
                                      ]
                                      spids: [34085 34125]
                                    )
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:verstring)
                                      op: Equal
                                      rhs: 
                                        {
                                          (DQ ($ VSub_Name '$verstring') (':') (${ VSub_Name current) 
                                            (.0)
                                          )
                                        }
                                      spids: [34133]
                                    )
                                  ]
                                  spids: [34133]
                                )
                              ]
                              spids: [34024 34025 34144 16777215]
                            )
                            (case_arm
                              pat_list: [{(qnx)}]
                              action: [
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:major)
                                      op: Equal
                                      rhs: {(DQ (.) ($ VSub_Name '$current'))}
                                      spids: [34152]
                                    )
                                  ]
                                  spids: [34152]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:versuffix)
                                      op: Equal
                                      rhs: {(DQ (.) ($ VSub_Name '$current'))}
                                      spids: [34159]
                                    )
                                  ]
                                  spids: [34159]
                                )
                              ]
                              spids: [34148 34149 34166 16777215]
                            )
                            (case_arm
                              pat_list: [{(sunos)}]
                              action: [
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:major)
                                      op: Equal
                                      rhs: {(DQ (.) ($ VSub_Name '$current'))}
                                      spids: [34174]
                                    )
                                  ]
                                  spids: [34174]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:versuffix)
                                      op: Equal
                                      rhs: 
                                        {
                                          (DQ (.) ($ VSub_Name '$current') (.) ($ VSub_Name '$revision'))
                                        }
                                      spids: [34181]
                                    )
                                  ]
                                  spids: [34181]
                                )
                              ]
                              spids: [34170 34171 34190 16777215]
                            )
                            (case_arm
                              pat_list: [{(windows)}]
                              action: [
                                (C {(func_arith)} {($ VSub_Name '$current')} {(-)} {($ VSub_Name '$age')})
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:major)
                                      op: Equal
                                      rhs: {($ VSub_Name '$func_arith_result')}
                                      spids: [34215]
                                    )
                                  ]
                                  spids: [34215]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:versuffix)
                                      op: Equal
                                      rhs: {(DQ (-) ($ VSub_Name '$major'))}
                                      spids: [34219]
                                    )
                                  ]
                                  spids: [34219]
                                )
                              ]
                              spids: [34194 34195 34226 16777215]
                            )
                            (case_arm
                              pat_list: [{(Lit_Other '*')}]
                              action: [
                                (C {(func_fatal_configuration)} 
                                  {
                                    (DQ ('unknown library version type ') 
                                      (EscapedLiteralPart
                                        token: <Lit_EscapedChar '\\`'>
                                      ) ($ VSub_Name '$version_type') ("'")
                                    )
                                  }
                                )
                              ]
                              spids: [34230 34231 34244 16777215]
                            )
                          ]
                          spids: [33655 33659 34247]
                        )
                        (If
                          arms: [
                            (if_arm
                              cond: [
                                (Sentence
                                  child: 
                                    (AndOr
                                      children: [
                                        (C {(test)} {(-z)} {(DQ ($ VSub_Name '$vinfo'))})
                                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$release'))})
                                      ]
                                      op_id: Op_DAmp
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                              ]
                              action: [
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:major)
                                      op: Equal
                                      rhs: {(SQ )}
                                      spids: [34279]
                                    )
                                  ]
                                  spids: [34279]
                                )
                                (Case
                                  to_match: {($ VSub_Name '$version_type')}
                                  arms: [
                                    (case_arm
                                      pat_list: [{(darwin)}]
                                      action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:verstring)
                                              op: Equal
                                              rhs: {(SQ )}
                                              spids: [34301]
                                            )
                                          ]
                                          spids: [34301]
                                        )
                                      ]
                                      spids: [34289 34290 34304 16777215]
                                    )
                                    (case_arm
                                      pat_list: [{(Lit_Other '*')}]
                                      action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:verstring)
                                              op: Equal
                                              rhs: {(DQ (0.0))}
                                              spids: [34311]
                                            )
                                          ]
                                          spids: [34311]
                                        )
                                      ]
                                      spids: [34307 34308 34317 16777215]
                                    )
                                  ]
                                  spids: [34282 34286 34320]
                                )
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: 
                                            (C {(test)} {(DQ ($ VSub_Name '$need_version'))} 
                                              {(Lit_Other '=')} {(no)}
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:versuffix)
                                              op: Equal
                                              rhs: {(SQ )}
                                              spids: [34339]
                                            )
                                          ]
                                          spids: [34339]
                                        )
                                      ]
                                      spids: [16777215 34336]
                                    )
                                  ]
                                  else_action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:versuffix)
                                          op: Equal
                                          rhs: {(DQ (.0.0))}
                                          spids: [34345]
                                        )
                                      ]
                                      spids: [34345]
                                    )
                                  ]
                                  spids: [34342 34351]
                                )
                              ]
                              spids: [16777215 34276]
                            )
                          ]
                          spids: [16777215 34354]
                        )
                        (If
                          arms: [
                            (if_arm
                              cond: [
                                (Sentence
                                  child: 
                                    (AndOr
                                      children: [
                                        (C {(test)} {(DQ ($ VSub_Name '$avoid_version'))} 
                                          {(Lit_Other '=')} {(yes)}
                                        )
                                        (C {(test)} {(DQ ($ VSub_Name '$need_version'))} 
                                          {(Lit_Other '=')} {(no)}
                                        )
                                      ]
                                      op_id: Op_DAmp
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                              ]
                              action: [
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:major)
                                      op: Equal
                                      rhs: {(SQ )}
                                      spids: [34390]
                                    )
                                  ]
                                  spids: [34390]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:versuffix)
                                      op: Equal
                                      rhs: {(SQ )}
                                      spids: [34393]
                                    )
                                  ]
                                  spids: [34393]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:verstring)
                                      op: Equal
                                      rhs: {(DQ )}
                                      spids: [34396]
                                    )
                                  ]
                                  spids: [34396]
                                )
                              ]
                              spids: [16777215 34387]
                            )
                          ]
                          spids: [16777215 34401]
                        )
                        (If
                          arms: [
                            (if_arm
                              cond: [
                                (Sentence
                                  child: 
                                    (C {(test)} {(DQ ($ VSub_Name '$allow_undefined'))} 
                                      {(Lit_Other '=')} {(yes)}
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                              ]
                              action: [
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: 
                                            (C {(test)} {(DQ ($ VSub_Name '$allow_undefined_flag'))} 
                                              {(Lit_Other '=')} {(unsupported)}
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [
                                        (C {(func_warning)} 
                                          {
                                            (DQ ('undefined symbols not allowed in ') 
                                              ($ VSub_Name '$host') (' shared libraries')
                                            )
                                          }
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:build_libtool_libs)
                                              op: Equal
                                              rhs: {(no)}
                                              spids: [34450]
                                            )
                                          ]
                                          spids: [34450]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:build_old_libs)
                                              op: Equal
                                              rhs: {(yes)}
                                              spids: [34454]
                                            )
                                          ]
                                          spids: [34454]
                                        )
                                      ]
                                      spids: [16777215 34438]
                                    )
                                  ]
                                  spids: [16777215 34458]
                                )
                              ]
                              spids: [16777215 34422]
                            )
                          ]
                          else_action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:allow_undefined_flag)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$no_undefined_flag'))}
                                  spids: [34468]
                                )
                              ]
                              spids: [34468]
                            )
                          ]
                          spids: [34461 34474]
                        )
                      ]
                      spids: [33013 34478]
                    )
                    (C {(func_generate_dlsyms)} {(DQ ($ VSub_Name '$libname'))} 
                      {(DQ ($ VSub_Name '$libname'))} {(DQ (yes))}
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:libobjs)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$libobjs') (' ') ($ VSub_Name '$symfileobj'))}
                          spids: [34497]
                        )
                      ]
                      spids: [34497]
                    )
                    (AndOr
                      children: [
                        (C {(test)} {(DQ (X) ($ VSub_Name '$libobjs'))} {(Lit_Other '=')} {(DQ ('X '))})
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:libobjs)
                              op: Equal
                              rhs: {(SQ )}
                              spids: [34520]
                            )
                          ]
                          spids: [34520]
                        )
                      ]
                      op_id: Op_DAmp
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$mode'))} {(KW_Bang '!') (Lit_Other '=')} 
                                  {(relink)}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:removelist)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [34549]
                                )
                              ]
                              spids: [34549]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:tempremovelist)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (C {($ VSub_Name '$ECHO')} 
                                                {(DQ ($ VSub_Name '$output_objdir') ('/*'))}
                                              )
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [34553 34560]
                                      )
                                    }
                                  spids: [34552]
                                )
                              ]
                              spids: [34552]
                            )
                            (ForEach
                              iter_name: p
                              iter_words: [{($ VSub_Name '$tempremovelist')}]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (Case
                                      to_match: {($ VSub_Name '$p')}
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (.) ($ VSub_Name '$objext')}
                                            {(Lit_Other '*') (.gcno)}
                                          ]
                                          spids: [34582 34590 34593 16777215]
                                        )
                                        (case_arm
                                          pat_list: [
                                            {($ VSub_Name '$output_objdir') (/) 
                                              ($ VSub_Name '$outputname')
                                            }
                                            {($ VSub_Name '$output_objdir') (/) 
                                              ($ VSub_Name '$libname') (.) (Lit_Other '*')
                                            }
                                            {($ VSub_Name '$output_objdir') (/) 
                                              (${ VSub_Name libname) (${ VSub_Name release) (.) (Lit_Other '*')
                                            }
                                          ]
                                          action: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} 
                                                          {
                                                            (DQ (X) 
                                                              ($ VSub_Name '$precious_files_regex')
                                                            )
                                                          } {(KW_Bang '!') (Lit_Other '=')} {(DQ (X))}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Pipeline
                                                              children: [
                                                                (C {($ VSub_Name '$ECHO')} 
                                                                  {(DQ ($ VSub_Name '$p'))}
                                                                )
                                                                (SimpleCommand
                                                                  words: [
                                                                    {($ VSub_Name '$EGREP')}
                                                                    {(-e)}
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name 
'$precious_files_regex'
                                                                        )
                                                                      )
                                                                    }
                                                                  ]
                                                                  redirects: [
                                                                    (Redir
                                                                      op_id: Redir_Great
                                                                      fd: 16777215
                                                                      arg_word: {(/dev/null)}
                                                                      spids: [34661]
                                                                    )
                                                                    (Redir
                                                                      op_id: Redir_GreatAnd
                                                                      fd: 2
                                                                      arg_word: {(1)}
                                                                      spids: [34664]
                                                                    )
                                                                  ]
                                                                )
                                                              ]
                                                              negated: False
                                                            )
                                                          ]
                                                          action: [
                                                            (ControlFlow
                                                              token: <ControlFlow_Continue continue>
                                                            )
                                                          ]
                                                          spids: [16777215 34668]
                                                        )
                                                      ]
                                                      spids: [16777215 34674]
                                                    )
                                                  ]
                                                  spids: [16777215 34640]
                                                )
                                              ]
                                              spids: [16777215 34677]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:removelist)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$removelist') (' ') 
                                                        ($ VSub_Name '$p')
                                                      )
                                                    }
                                                  spids: [34680]
                                                )
                                              ]
                                              spids: [34680]
                                            )
                                          ]
                                          spids: [34596 34620 34688 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          spids: [34691 34692 34694 16777215]
                                        )
                                      ]
                                      spids: [34575 34579 34697]
                                    )
                                  ]
                                  spids: [34572 34700]
                                )
                              spids: [34568 34570]
                            )
                            (AndOr
                              children: [
                                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$removelist'))})
                                (C {(func_show_eval)} 
                                  {
                                    (DQ (${ VSub_Name RM) ('r ') 
                                      (EscapedLiteralPart
                                        token: <Lit_EscapedChar '\\$'>
                                      ) (removelist)
                                    )
                                  }
                                )
                              ]
                              op_id: Op_DAmp
                            )
                          ]
                          spids: [16777215 34538]
                        )
                      ]
                      spids: [16777215 34727]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (AndOr
                                  children: [
                                    (C {(test)} {(DQ ($ VSub_Name '$build_old_libs'))} {(Lit_Other '=')} 
                                      {(yes)}
                                    )
                                    (C {(test)} {(DQ ($ VSub_Name '$build_libtool_libs'))} 
                                      {(KW_Bang '!') (Lit_Other '=')} {(convenience)}
                                    )
                                  ]
                                  op_id: Op_DAmp
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:oldlibs)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$oldlibs') (' ') ($ VSub_Name '$output_objdir') 
                                        (/) ($ VSub_Name '$libname') (.) ($ VSub_Name '$libext')
                                      )
                                    }
                                  spids: [34765]
                                )
                              ]
                              spids: [34765]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:oldobjs)
                                  op: Equal
                                  rhs: 
                                    {(DQ ($ VSub_Name '$objs') (' ')) 
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (Pipeline
                                                children: [
                                                  (C {($ VSub_Name '$ECHO')} 
                                                    {(DQ (X) ($ VSub_Name '$libobjs'))}
                                                  )
                                                  (C {($ VSub_Name '$SP2NL')})
                                                  (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                    {(SQ <'/\\.'>) (${ VSub_Name libext) (SQ <'$/d'>)} {(-e)} {(DQ ($ VSub_Name '$lo2o'))}
                                                  )
                                                  (C {($ VSub_Name '$NL2SP')})
                                                ]
                                                negated: False
                                              )
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [34787 34824]
                                      )
                                    }
                                  spids: [34782]
                                )
                              ]
                              spids: [34782]
                            )
                          ]
                          spids: [16777215 34762]
                        )
                      ]
                      spids: [16777215 34827]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$xrpath'))})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:temp_xrpath)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [34874]
                                )
                              ]
                              spids: [34874]
                            )
                            (ForEach
                              iter_name: libdir
                              iter_words: [{($ VSub_Name '$xrpath')}]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:temp_xrpath)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$temp_xrpath') (' -R') 
                                                ($ VSub_Name '$libdir')
                                              )
                                            }
                                          spids: [34889]
                                        )
                                      ]
                                      spids: [34889]
                                    )
                                    (Case
                                      to_match: {(DQ ($ VSub_Name '$finalize_rpath') (' '))}
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (DQ (' ') ($ VSub_Name '$libdir') (' ')) 
                                              (Lit_Other '*')
                                            }
                                          ]
                                          spids: [34907 34914 34916 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:finalize_rpath)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$finalize_rpath') (' ') 
                                                        ($ VSub_Name '$libdir')
                                                      )
                                                    }
                                                  spids: [34922]
                                                )
                                              ]
                                              spids: [34922]
                                            )
                                          ]
                                          spids: [34919 34920 34929 16777215]
                                        )
                                      ]
                                      spids: [34897 34904 34932]
                                    )
                                  ]
                                  spids: [34886 34935]
                                )
                              spids: [34882 34884]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          children: [
                                            (C {(test)} {(DQ ($ VSub_Name '$hardcode_into_libs'))} 
                                              {(KW_Bang '!') (Lit_Other '=')} {(yes)}
                                            )
                                            (C {(test)} {(DQ ($ VSub_Name '$build_old_libs'))} 
                                              {(Lit_Other '=')} {(yes)}
                                            )
                                          ]
                                          op_id: Op_DPipe
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:dependency_libs)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$temp_xrpath') (' ') 
                                                ($ VSub_Name '$dependency_libs')
                                              )
                                            }
                                          spids: [34967]
                                        )
                                      ]
                                      spids: [34967]
                                    )
                                  ]
                                  spids: [16777215 34964]
                                )
                              ]
                              spids: [16777215 34975]
                            )
                          ]
                          spids: [16777215 34867]
                        )
                      ]
                      spids: [16777215 34978]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:old_dlfiles)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$dlfiles'))}
                          spids: [34986]
                        )
                      ]
                      spids: [34986]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:dlfiles)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [34992]
                        )
                      ]
                      spids: [34992]
                    )
                    (ForEach
                      iter_name: lib
                      iter_words: [{($ VSub_Name '$old_dlfiles')}]
                      do_arg_iter: False
                      body: 
                        (DoGroup
                          children: [
                            (Case
                              to_match: 
                                {
                                  (DQ (' ') ($ VSub_Name '$dlprefiles') (' ') ($ VSub_Name '$dlfiles') 
                                    (' ')
                                  )
                                }
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '*') (DQ (' ') ($ VSub_Name '$lib') (' ')) 
                                      (Lit_Other '*')
                                    }
                                  ]
                                  spids: [35020 35027 35029 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:dlfiles)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$dlfiles') (' ') ($ VSub_Name '$lib'))
                                            }
                                          spids: [35035]
                                        )
                                      ]
                                      spids: [35035]
                                    )
                                  ]
                                  spids: [35032 35033 35042 16777215]
                                )
                              ]
                              spids: [35007 35017 35045]
                            )
                          ]
                          spids: [35004 35048]
                        )
                      spids: [35000 35002]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:old_dlprefiles)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$dlprefiles'))}
                          spids: [35056]
                        )
                      ]
                      spids: [35056]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:dlprefiles)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [35062]
                        )
                      ]
                      spids: [35062]
                    )
                    (ForEach
                      iter_name: lib
                      iter_words: [{($ VSub_Name '$old_dlprefiles')}]
                      do_arg_iter: False
                      body: 
                        (DoGroup
                          children: [
                            (Case
                              to_match: {(DQ ($ VSub_Name '$dlprefiles') (' '))}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '*') (DQ (' ') ($ VSub_Name '$lib') (' ')) 
                                      (Lit_Other '*')
                                    }
                                  ]
                                  spids: [35087 35094 35096 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:dlprefiles)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$dlprefiles') (' ') 
                                                ($ VSub_Name '$lib')
                                              )
                                            }
                                          spids: [35102]
                                        )
                                      ]
                                      spids: [35102]
                                    )
                                  ]
                                  spids: [35099 35100 35109 16777215]
                                )
                              ]
                              spids: [35077 35084 35112]
                            )
                          ]
                          spids: [35074 35115]
                        )
                      spids: [35070 35072]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$build_libtool_libs'))} {(Lit_Other '=')} 
                                  {(yes)}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$rpath'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Case
                                      to_match: {($ VSub_Name '$host')}
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-cygwin) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-mingw) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-pw32) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-os2) (Lit_Other '*')}
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-beos) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-cegcc) (Lit_Other '*')}
                                          ]
                                          spids: [35156 35199 35206 16777215]
                                        )
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-rhapsody) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-darwin1.) 
                                              (Lit_Other '[') (012) (Lit_Other ']')
                                            }
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:deplibs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$deplibs') 
                                                        (' System.ltframework')
                                                      )
                                                    }
                                                  spids: [35231]
                                                )
                                              ]
                                              spids: [35231]
                                            )
                                          ]
                                          spids: [35209 35224 35238 16777215]
                                        )
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-netbsd) 
                                              (Lit_Other '*')
                                            }
                                          ]
                                          spids: [35241 35246 35253 16777215]
                                        )
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-openbsd) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-freebsd) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-dragonfly) 
                                              (Lit_Other '*')
                                            }
                                          ]
                                          spids: [35256 35277 35284 16777215]
                                        )
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-sco3.2v5) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-sco5v6) 
                                              (Lit_Other '*')
                                            }
                                          ]
                                          spids: [35287 35300 35307 16777215]
                                        )
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-sysv4.2uw2) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-sysv5) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-unixware) 
                                              (Lit_Other '*')
                                            }
                                            {(Lit_Other '*') (-) (Lit_Other '*') (-OpenUNIX) 
                                              (Lit_Other '*')
                                            }
                                          ]
                                          spids: [35310 35339 35346 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} 
                                                          {
                                                            (DQ 
                                                              ($ VSub_Name '$build_libtool_need_lc')
                                                            )
                                                          } {(Lit_Other '=')} {(DQ (yes))}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:deplibs)
                                                          op: Equal
                                                          rhs: {(DQ ($ VSub_Name '$deplibs') (' -lc'))}
                                                          spids: [35375]
                                                        )
                                                      ]
                                                      spids: [35375]
                                                    )
                                                  ]
                                                  spids: [16777215 35372]
                                                )
                                              ]
                                              spids: [16777215 35382]
                                            )
                                          ]
                                          spids: [35349 35350 35385 16777215]
                                        )
                                      ]
                                      spids: [35149 35153 35388]
                                    )
                                  ]
                                  spids: [16777215 35146]
                                )
                              ]
                              spids: [16777215 35391]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:name_save)
                                  op: Equal
                                  rhs: {($ VSub_Name '$name')}
                                  spids: [35399]
                                )
                              ]
                              spids: [35399]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:libname_save)
                                  op: Equal
                                  rhs: {($ VSub_Name '$libname')}
                                  spids: [35403]
                                )
                              ]
                              spids: [35403]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:release_save)
                                  op: Equal
                                  rhs: {($ VSub_Name '$release')}
                                  spids: [35407]
                                )
                              ]
                              spids: [35407]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:versuffix_save)
                                  op: Equal
                                  rhs: {($ VSub_Name '$versuffix')}
                                  spids: [35411]
                                )
                              ]
                              spids: [35411]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:major_save)
                                  op: Equal
                                  rhs: {($ VSub_Name '$major')}
                                  spids: [35415]
                                )
                              ]
                              spids: [35415]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:release)
                                  op: Equal
                                  rhs: {(DQ )}
                                  spids: [35431]
                                )
                              ]
                              spids: [35431]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:versuffix)
                                  op: Equal
                                  rhs: {(DQ )}
                                  spids: [35436]
                                )
                              ]
                              spids: [35436]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:major)
                                  op: Equal
                                  rhs: {(DQ )}
                                  spids: [35441]
                                )
                              ]
                              spids: [35441]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:newdeplibs)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [35446]
                                )
                              ]
                              spids: [35446]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:droppeddeps)
                                  op: Equal
                                  rhs: {(no)}
                                  spids: [35449]
                                )
                              ]
                              spids: [35449]
                            )
                            (Case
                              to_match: {($ VSub_Name '$deplibs_check_method')}
                              arms: [
                                (case_arm
                                  pat_list: [{(pass_all)}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:newdeplibs)
                                          op: Equal
                                          rhs: {($ VSub_Name '$deplibs')}
                                          spids: [35484]
                                        )
                                      ]
                                      spids: [35484]
                                    )
                                  ]
                                  spids: [35460 35461 35488 16777215]
                                )
                                (case_arm
                                  pat_list: [{(test_compile)}]
                                  action: [
                                    (AndOr
                                      children: [
                                        (C {($ VSub_Name '$opt_dry_run')})
                                        (C {($ VSub_Name '$RM')} {(conftest.c)})
                                      ]
                                      op_id: Op_DPipe
                                    )
                                    (SimpleCommand
                                      words: [{(cat)}]
                                      redirects: [
                                        (Redir
                                          op_id: Redir_Great
                                          fd: 16777215
                                          arg_word: {(conftest.c)}
                                          spids: [35522]
                                        )
                                        (HereDoc
                                          op_id: Redir_DLess
                                          fd: 16777215
                                          body: {(DQ ('\t  int main() { return 0; }\n'))}
                                          do_expansion: True
                                          here_end: EOF
                                          was_filled: True
                                          spids: [35526]
                                        )
                                      ]
                                    )
                                    (AndOr
                                      children: [
                                        (C {($ VSub_Name '$opt_dry_run')})
                                        (C {($ VSub_Name '$RM')} {(conftest)})
                                      ]
                                      op_id: Op_DPipe
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {($ VSub_Name '$LTCC')} {($ VSub_Name '$LTCFLAGS')} 
                                                  {(-o)} {(conftest)} {(conftest.c)} {($ VSub_Name '$deplibs')}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:ldd_output)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (CommandSubPart
                                                        command_list: 
                                                          (CommandList
                                                            children: [(C {(ldd)} {(conftest)})]
                                                          )
                                                        left_token: <Left_Backtick '`'>
                                                        spids: [35560 35564]
                                                      )
                                                    }
                                                  spids: [35559]
                                                )
                                              ]
                                              spids: [35559]
                                            )
                                            (ForEach
                                              iter_name: i
                                              iter_words: [{($ VSub_Name '$deplibs')}]
                                              do_arg_iter: False
                                              body: 
                                                (DoGroup
                                                  children: [
                                                    (Case
                                                      to_match: {($ VSub_Name '$i')}
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [{(-l) (Lit_Other '*')}]
                                                          action: [
                                                            (C {(func_stripname)} {(-l)} {(SQ )} 
                                                              {(DQ ($ VSub_Name '$i'))}
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:name)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      ($ VSub_Name 
'$func_stripname_result'
                                                                      )
                                                                    }
                                                                  spids: [35603]
                                                                )
                                                              ]
                                                              spids: [35603]
                                                            )
                                                            (If
                                                              arms: [
                                                                (if_arm
                                                                  cond: [
                                                                    (Sentence
                                                                      child: 
                                                                        (C {(test)} 
                                                                          {
                                                                            (DQ (X) 
                                                                              ($ VSub_Name 
'$allow_libtool_libs_with_static_runtimes'
                                                                              )
                                                                            )
                                                                          } {(Lit_Other '=')} {(DQ (Xyes))}
                                                                        )
                                                                      terminator: <Op_Semi ';'>
                                                                    )
                                                                  ]
                                                                  action: [
                                                                    (Case
                                                                      to_match: 
                                                                        {
                                                                          (DQ (' ') 
                                                                            ($ VSub_Name '$predeps') (' ') ($ VSub_Name '$postdeps') (' ')
                                                                          )
                                                                        }
                                                                      arms: [
                                                                        (case_arm
                                                                          pat_list: [
                                                                            {(Lit_Other '*') 
                                                                              (DQ (' ') 
                                                                                ($ VSub_Name '$i') (' ')
                                                                              ) (Lit_Other '*')
                                                                            }
                                                                          ]
                                                                          action: [
                                                                            (Assignment
                                                                              keyword: Assign_None
                                                                              pairs: [
                                                                                (assign_pair
                                                                                  lhs: 
                                                                                    (LhsName
                                                                                      name: 
newdeplibs
                                                                                    )
                                                                                  op: Equal
                                                                                  rhs: 
                                                                                    {
                                                                                      (DQ 
                                                                                        ($ VSub_Name 
'$newdeplibs'
                                                                                        ) (' ') ($ VSub_Name '$i')
                                                                                      )
                                                                                    }
                                                                                  spids: [35650]
                                                                                )
                                                                              ]
                                                                              spids: [35650]
                                                                            )
                                                                            (Assignment
                                                                              keyword: Assign_None
                                                                              pairs: [
                                                                                (assign_pair
                                                                                  lhs: 
                                                                                    (LhsName
                                                                                      name: i
                                                                                    )
                                                                                  op: Equal
                                                                                  rhs: {(DQ )}
                                                                                  spids: [35658]
                                                                                )
                                                                              ]
                                                                              spids: [35658]
                                                                            )
                                                                          ]
                                                                          spids: [
35640
35647
35663
16777215
                                                                          ]
                                                                        )
                                                                      ]
                                                                      spids: [35627 35637 35666]
                                                                    )
                                                                  ]
                                                                  spids: [16777215 35624]
                                                                )
                                                              ]
                                                              spids: [16777215 35669]
                                                            )
                                                            (If
                                                              arms: [
                                                                (if_arm
                                                                  cond: [
                                                                    (Sentence
                                                                      child: 
                                                                        (C {(test)} {(-n)} 
                                                                          {(DQ ($ VSub_Name '$i'))}
                                                                        )
                                                                      terminator: <Op_Semi ';'>
                                                                    )
                                                                  ]
                                                                  action: [
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: (LhsName name:libname)
                                                                          op: Equal
                                                                          rhs: 
                                                                            {
                                                                              (CommandSubPart
                                                                                command_list: 
                                                                                  (CommandList
                                                                                    children: [
                                                                                      (C {(eval)} 
                                                                                        {
                                                                                          (DQ 
                                                                                            (EscapedLiteralPart
                                                                                              token: 
                                                                                                <
Lit_EscapedChar '\\\\'
                                                                                                >
                                                                                            ) ($ VSub_Name '$ECHO') (' ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                                                                                            ($ 
VSub_Name '$libname_spec'
                                                                                            ) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                                                                          )
                                                                                        }
                                                                                      )
                                                                                    ]
                                                                                  )
                                                                                left_token: 
                                                                                  <Left_Backtick 
'`'
                                                                                  >
                                                                                spids: [35688 35699]
                                                                              )
                                                                            }
                                                                          spids: [35687]
                                                                        )
                                                                      ]
                                                                      spids: [35687]
                                                                    )
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: 
                                                                            (LhsName
                                                                              name: deplib_matches
                                                                            )
                                                                          op: Equal
                                                                          rhs: 
                                                                            {
                                                                              (CommandSubPart
                                                                                command_list: 
                                                                                  (CommandList
                                                                                    children: [
                                                                                      (C {(eval)} 
                                                                                        {
                                                                                          (DQ 
                                                                                            (EscapedLiteralPart
                                                                                              token: 
                                                                                                <
Lit_EscapedChar '\\\\'
                                                                                                >
                                                                                            ) ($ VSub_Name '$ECHO') (' ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                                                                                            ($ 
VSub_Name '$library_names_spec'
                                                                                            ) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                                                                          )
                                                                                        }
                                                                                      )
                                                                                    ]
                                                                                  )
                                                                                left_token: 
                                                                                  <Left_Backtick 
'`'
                                                                                  >
                                                                                spids: [35703 35714]
                                                                              )
                                                                            }
                                                                          spids: [35702]
                                                                        )
                                                                      ]
                                                                      spids: [35702]
                                                                    )
                                                                    (Sentence
                                                                      child: 
                                                                        (C {(set)} {(dummy)} 
                                                                          {
                                                                            ($ VSub_Name 
'$deplib_matches'
                                                                            )
                                                                          }
                                                                        )
                                                                      terminator: <Op_Semi ';'>
                                                                    )
                                                                    (C {(shift)})
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: 
                                                                            (LhsName
                                                                              name: deplib_match
                                                                            )
                                                                          op: Equal
                                                                          rhs: {($ VSub_Number '$1')}
                                                                          spids: [35727]
                                                                        )
                                                                      ]
                                                                      spids: [35727]
                                                                    )
                                                                    (If
                                                                      arms: [
                                                                        (if_arm
                                                                          cond: [
                                                                            (Sentence
                                                                              child: 
                                                                                (C {(test)} 
                                                                                  {
                                                                                    (CommandSubPart
                                                                                      command_list: 
                                                                                        (CommandList
                                                                                          children: [
                                                                                            (C 
                                                                                              {
                                                                                                (
expr
                                                                                                )
                                                                                              } {(DQ ($ VSub_Name '$ldd_output'))} {(Lit_Other ':')} {(DQ ('.*') ($ VSub_Name '$deplib_match'))}
                                                                                            )
                                                                                          ]
                                                                                        )
                                                                                      left_token: 
                                                                                        <
Left_Backtick '`'
                                                                                        >
                                                                                      spids: [
35735
35748
                                                                                      ]
                                                                                    )
                                                                                  } {(-ne)} {(0)}
                                                                                )
                                                                              terminator: 
                                                                                <Op_Semi ';'>
                                                                            )
                                                                          ]
                                                                          action: [
                                                                            (Assignment
                                                                              keyword: Assign_None
                                                                              pairs: [
                                                                                (assign_pair
                                                                                  lhs: 
                                                                                    (LhsName
                                                                                      name: 
newdeplibs
                                                                                    )
                                                                                  op: Equal
                                                                                  rhs: 
                                                                                    {
                                                                                      (DQ 
                                                                                        ($ VSub_Name 
'$newdeplibs'
                                                                                        ) (' ') ($ VSub_Name '$i')
                                                                                      )
                                                                                    }
                                                                                  spids: [35759]
                                                                                )
                                                                              ]
                                                                              spids: [35759]
                                                                            )
                                                                          ]
                                                                          spids: [16777215 35756]
                                                                        )
                                                                      ]
                                                                      else_action: [
                                                                        (Assignment
                                                                          keyword: Assign_None
                                                                          pairs: [
                                                                            (assign_pair
                                                                              lhs: 
                                                                                (LhsName
                                                                                  name: droppeddeps
                                                                                )
                                                                              op: Equal
                                                                              rhs: {(yes)}
                                                                              spids: [35770]
                                                                            )
                                                                          ]
                                                                          spids: [35770]
                                                                        )
                                                                        (C {($ VSub_Name '$ECHO')})
                                                                        (C {($ VSub_Name '$ECHO')} 
                                                                          {
                                                                            (DQ 
                                                                              (
'*** Warning: dynamic linker does not accept needed library '
                                                                              ) ($ VSub_Name '$i') (.)
                                                                            )
                                                                          }
                                                                        )
                                                                        (C {($ VSub_Name '$ECHO')} 
                                                                          {
                                                                            (DQ 
                                                                              (
'*** I have the capability to make that library automatically link in when'
                                                                              )
                                                                            )
                                                                          }
                                                                        )
                                                                        (C {($ VSub_Name '$ECHO')} 
                                                                          {
                                                                            (DQ 
                                                                              (
'*** you link to this library.  But I can only do this if you have a'
                                                                              )
                                                                            )
                                                                          }
                                                                        )
                                                                        (C {($ VSub_Name '$ECHO')} 
                                                                          {
                                                                            (DQ 
                                                                              (
'*** shared version of the library, which I believe you do not have'
                                                                              )
                                                                            )
                                                                          }
                                                                        )
                                                                        (C {($ VSub_Name '$ECHO')} 
                                                                          {
                                                                            (DQ 
                                                                              (
'*** because a test_compile did reveal that the linker did not use it for'
                                                                              )
                                                                            )
                                                                          }
                                                                        )
                                                                        (C {($ VSub_Name '$ECHO')} 
                                                                          {
                                                                            (DQ 
                                                                              (
'*** its dynamic dependency list that programs get resolved with at runtime.'
                                                                              )
                                                                            )
                                                                          }
                                                                        )
                                                                      ]
                                                                      spids: [35767 35821]
                                                                    )
                                                                  ]
                                                                  spids: [16777215 35684]
                                                                )
                                                              ]
                                                              spids: [16777215 35824]
                                                            )
                                                          ]
                                                          spids: [35586 35588 35827 16777215]
                                                        )
                                                        (case_arm
                                                          pat_list: [{(Lit_Other '*')}]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:newdeplibs)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ ($ VSub_Name '$newdeplibs') 
                                                                        (' ') ($ VSub_Name '$i')
                                                                      )
                                                                    }
                                                                  spids: [35834]
                                                                )
                                                              ]
                                                              spids: [35834]
                                                            )
                                                          ]
                                                          spids: [35830 35831 35842 16777215]
                                                        )
                                                      ]
                                                      spids: [35579 35583 35845]
                                                    )
                                                  ]
                                                  spids: [35576 35848]
                                                )
                                              spids: [35572 35574]
                                            )
                                          ]
                                          spids: [16777215 35556]
                                        )
                                      ]
                                      else_action: [
                                        (ForEach
                                          iter_name: i
                                          iter_words: [{($ VSub_Name '$deplibs')}]
                                          do_arg_iter: False
                                          body: 
                                            (DoGroup
                                              children: [
                                                (Case
                                                  to_match: {($ VSub_Name '$i')}
                                                  arms: [
                                                    (case_arm
                                                      pat_list: [{(-l) (Lit_Other '*')}]
                                                      action: [
                                                        (C {(func_stripname)} {(-l)} {(SQ )} 
                                                          {(DQ ($ VSub_Name '$i'))}
                                                        )
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:name)
                                                              op: Equal
                                                              rhs: 
                                                                {
                                                                  ($ VSub_Name 
'$func_stripname_result'
                                                                  )
                                                                }
                                                              spids: [35898]
                                                            )
                                                          ]
                                                          spids: [35898]
                                                        )
                                                        (AndOr
                                                          children: [
                                                            (C {($ VSub_Name '$opt_dry_run')})
                                                            (C {($ VSub_Name '$RM')} {(conftest)})
                                                          ]
                                                          op_id: Op_DPipe
                                                        )
                                                        (If
                                                          arms: [
                                                            (if_arm
                                                              cond: [
                                                                (Sentence
                                                                  child: 
                                                                    (C {($ VSub_Name '$LTCC')} 
                                                                      {($ VSub_Name '$LTCFLAGS')} {(-o)} {(conftest)} {(conftest.c)} {($ VSub_Name '$i')}
                                                                    )
                                                                  terminator: <Op_Semi ';'>
                                                                )
                                                              ]
                                                              action: [
                                                                (Assignment
                                                                  keyword: Assign_None
                                                                  pairs: [
                                                                    (assign_pair
                                                                      lhs: (LhsName name:ldd_output)
                                                                      op: Equal
                                                                      rhs: 
                                                                        {
                                                                          (CommandSubPart
                                                                            command_list: 
                                                                              (CommandList
                                                                                children: [
                                                                                  (C {(ldd)} 
                                                                                    {(conftest)}
                                                                                  )
                                                                                ]
                                                                              )
                                                                            left_token: 
                                                                              <Left_Backtick '`'>
                                                                            spids: [35930 35934]
                                                                          )
                                                                        }
                                                                      spids: [35929]
                                                                    )
                                                                  ]
                                                                  spids: [35929]
                                                                )
                                                                (If
                                                                  arms: [
                                                                    (if_arm
                                                                      cond: [
                                                                        (Sentence
                                                                          child: 
                                                                            (C {(test)} 
                                                                              {
                                                                                (DQ (X) 
                                                                                  ($ VSub_Name 
'$allow_libtool_libs_with_static_runtimes'
                                                                                  )
                                                                                )
                                                                              } {(Lit_Other '=')} {(DQ (Xyes))}
                                                                            )
                                                                          terminator: <Op_Semi ';'>
                                                                        )
                                                                      ]
                                                                      action: [
                                                                        (Case
                                                                          to_match: 
                                                                            {
                                                                              (DQ (' ') 
                                                                                ($ VSub_Name 
'$predeps'
                                                                                ) (' ') ($ VSub_Name '$postdeps') (' ')
                                                                              )
                                                                            }
                                                                          arms: [
                                                                            (case_arm
                                                                              pat_list: [
                                                                                {(Lit_Other '*') 
                                                                                  (DQ (' ') 
                                                                                    ($ VSub_Name '$i') (' ')
                                                                                  ) (Lit_Other '*')
                                                                                }
                                                                              ]
                                                                              action: [
                                                                                (Assignment
                                                                                  keyword: 
Assign_None
                                                                                  pairs: [
                                                                                    (assign_pair
                                                                                      lhs: 
                                                                                        (LhsName
                                                                                          name: 
newdeplibs
                                                                                        )
                                                                                      op: Equal
                                                                                      rhs: 
                                                                                        {
                                                                                          (DQ 
                                                                                            ($ 
VSub_Name '$newdeplibs'
                                                                                            ) (' ') ($ VSub_Name '$i')
                                                                                          )
                                                                                        }
                                                                                      spids: [35980]
                                                                                    )
                                                                                  ]
                                                                                  spids: [35980]
                                                                                )
                                                                                (Assignment
                                                                                  keyword: 
Assign_None
                                                                                  pairs: [
                                                                                    (assign_pair
                                                                                      lhs: 
                                                                                        (LhsName
                                                                                          name: i
                                                                                        )
                                                                                      op: Equal
                                                                                      rhs: {(DQ )}
                                                                                      spids: [35988]
                                                                                    )
                                                                                  ]
                                                                                  spids: [35988]
                                                                                )
                                                                              ]
                                                                              spids: [
35970
35977
35993
16777215
                                                                              ]
                                                                            )
                                                                          ]
                                                                          spids: [35957 35967 35996]
                                                                        )
                                                                      ]
                                                                      spids: [16777215 35954]
                                                                    )
                                                                  ]
                                                                  spids: [16777215 35999]
                                                                )
                                                                (If
                                                                  arms: [
                                                                    (if_arm
                                                                      cond: [
                                                                        (Sentence
                                                                          child: 
                                                                            (C {(test)} {(-n)} 
                                                                              {
                                                                                (DQ 
                                                                                  ($ VSub_Name '$i')
                                                                                )
                                                                              }
                                                                            )
                                                                          terminator: <Op_Semi ';'>
                                                                        )
                                                                      ]
                                                                      action: [
                                                                        (Assignment
                                                                          keyword: Assign_None
                                                                          pairs: [
                                                                            (assign_pair
                                                                              lhs: 
                                                                                (LhsName
                                                                                  name: libname
                                                                                )
                                                                              op: Equal
                                                                              rhs: 
                                                                                {
                                                                                  (CommandSubPart
                                                                                    command_list: 
                                                                                      (CommandList
                                                                                        children: [
                                                                                          (C {(eval)} 
                                                                                            {
                                                                                              (DQ 
                                                                                                (EscapedLiteralPart
                                                                                                  token: 
                                                                                                    <
Lit_EscapedChar '\\\\'
                                                                                                    >
                                                                                                ) ($ VSub_Name '$ECHO') (' ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                                                                                                ($ 
VSub_Name '$libname_spec'
                                                                                                ) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                                                                              )
                                                                                            }
                                                                                          )
                                                                                        ]
                                                                                      )
                                                                                    left_token: 
                                                                                      <
Left_Backtick '`'
                                                                                      >
                                                                                    spids: [
36018
36029
                                                                                    ]
                                                                                  )
                                                                                }
                                                                              spids: [36017]
                                                                            )
                                                                          ]
                                                                          spids: [36017]
                                                                        )
                                                                        (Assignment
                                                                          keyword: Assign_None
                                                                          pairs: [
                                                                            (assign_pair
                                                                              lhs: 
                                                                                (LhsName
                                                                                  name: 
deplib_matches
                                                                                )
                                                                              op: Equal
                                                                              rhs: 
                                                                                {
                                                                                  (CommandSubPart
                                                                                    command_list: 
                                                                                      (CommandList
                                                                                        children: [
                                                                                          (C {(eval)} 
                                                                                            {
                                                                                              (DQ 
                                                                                                (EscapedLiteralPart
                                                                                                  token: 
                                                                                                    <
Lit_EscapedChar '\\\\'
                                                                                                    >
                                                                                                ) ($ VSub_Name '$ECHO') (' ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                                                                                                ($ 
VSub_Name '$library_names_spec'
                                                                                                ) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                                                                              )
                                                                                            }
                                                                                          )
                                                                                        ]
                                                                                      )
                                                                                    left_token: 
                                                                                      <
Left_Backtick '`'
                                                                                      >
                                                                                    spids: [
36033
36044
                                                                                    ]
                                                                                  )
                                                                                }
                                                                              spids: [36032]
                                                                            )
                                                                          ]
                                                                          spids: [36032]
                                                                        )
                                                                        (Sentence
                                                                          child: 
                                                                            (C {(set)} {(dummy)} 
                                                                              {
                                                                                ($ VSub_Name 
'$deplib_matches'
                                                                                )
                                                                              }
                                                                            )
                                                                          terminator: <Op_Semi ';'>
                                                                        )
                                                                        (C {(shift)})
                                                                        (Assignment
                                                                          keyword: Assign_None
                                                                          pairs: [
                                                                            (assign_pair
                                                                              lhs: 
                                                                                (LhsName
                                                                                  name: deplib_match
                                                                                )
                                                                              op: Equal
                                                                              rhs: 
                                                                                {
                                                                                  ($ VSub_Number '$1')
                                                                                }
                                                                              spids: [36057]
                                                                            )
                                                                          ]
                                                                          spids: [36057]
                                                                        )
                                                                        (If
                                                                          arms: [
                                                                            (if_arm
                                                                              cond: [
                                                                                (Sentence
                                                                                  child: 
                                                                                    (C {(test)} 
                                                                                      {
                                                                                        (CommandSubPart
                                                                                          command_list: 
                                                                                            (CommandList
                                                                                              children: [
                                                                                                (C 
                                                                                                  {
                                                                                                    (
expr
                                                                                                    )
                                                                                                  } {(DQ ($ VSub_Name '$ldd_output'))} {(Lit_Other ':')} {(DQ ('.*') ($ VSub_Name '$deplib_match'))}
                                                                                                )
                                                                                              ]
                                                                                            )
                                                                                          left_token: 
                                                                                            <
Left_Backtick '`'
                                                                                            >
                                                                                          spids: [
36065
36078
                                                                                          ]
                                                                                        )
                                                                                      } {(-ne)} {(0)}
                                                                                    )
                                                                                  terminator: 
                                                                                    <Op_Semi ';'>
                                                                                )
                                                                              ]
                                                                              action: [
                                                                                (Assignment
                                                                                  keyword: 
Assign_None
                                                                                  pairs: [
                                                                                    (assign_pair
                                                                                      lhs: 
                                                                                        (LhsName
                                                                                          name: 
newdeplibs
                                                                                        )
                                                                                      op: Equal
                                                                                      rhs: 
                                                                                        {
                                                                                          (DQ 
                                                                                            ($ 
VSub_Name '$newdeplibs'
                                                                                            ) (' ') ($ VSub_Name '$i')
                                                                                          )
                                                                                        }
                                                                                      spids: [36089]
                                                                                    )
                                                                                  ]
                                                                                  spids: [36089]
                                                                                )
                                                                              ]
                                                                              spids: [16777215 36086]
                                                                            )
                                                                          ]
                                                                          else_action: [
                                                                            (Assignment
                                                                              keyword: Assign_None
                                                                              pairs: [
                                                                                (assign_pair
                                                                                  lhs: 
                                                                                    (LhsName
                                                                                      name: 
droppeddeps
                                                                                    )
                                                                                  op: Equal
                                                                                  rhs: {(yes)}
                                                                                  spids: [36100]
                                                                                )
                                                                              ]
                                                                              spids: [36100]
                                                                            )
                                                                            (C {($ VSub_Name '$ECHO')})
                                                                            (C {($ VSub_Name '$ECHO')} 
                                                                              {
                                                                                (DQ 
                                                                                  (
'*** Warning: dynamic linker does not accept needed library '
                                                                                  ) ($ VSub_Name '$i') (.)
                                                                                )
                                                                              }
                                                                            )
                                                                            (C {($ VSub_Name '$ECHO')} 
                                                                              {
                                                                                (DQ 
                                                                                  (
'*** I have the capability to make that library automatically link in when'
                                                                                  )
                                                                                )
                                                                              }
                                                                            )
                                                                            (C {($ VSub_Name '$ECHO')} 
                                                                              {
                                                                                (DQ 
                                                                                  (
'*** you link to this library.  But I can only do this if you have a'
                                                                                  )
                                                                                )
                                                                              }
                                                                            )
                                                                            (C {($ VSub_Name '$ECHO')} 
                                                                              {
                                                                                (DQ 
                                                                                  (
'*** shared version of the library, which you do not appear to have'
                                                                                  )
                                                                                )
                                                                              }
                                                                            )
                                                                            (C {($ VSub_Name '$ECHO')} 
                                                                              {
                                                                                (DQ 
                                                                                  (
'*** because a test_compile did reveal that the linker did not use this one'
                                                                                  )
                                                                                )
                                                                              }
                                                                            )
                                                                            (C {($ VSub_Name '$ECHO')} 
                                                                              {
                                                                                (DQ 
                                                                                  (
'*** as a dynamic dependency that programs can get resolved with at runtime.'
                                                                                  )
                                                                                )
                                                                              }
                                                                            )
                                                                          ]
                                                                          spids: [36097 36151]
                                                                        )
                                                                      ]
                                                                      spids: [16777215 36014]
                                                                    )
                                                                  ]
                                                                  spids: [16777215 36154]
                                                                )
                                                              ]
                                                              spids: [16777215 35926]
                                                            )
                                                          ]
                                                          else_action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:droppeddeps)
                                                                  op: Equal
                                                                  rhs: {(yes)}
                                                                  spids: [36160]
                                                                )
                                                              ]
                                                              spids: [36160]
                                                            )
                                                            (C {($ VSub_Name '$ECHO')})
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ ('*** Warning!  Library ') 
                                                                  ($ VSub_Name '$i') (' is needed by this library but I was not able to')
                                                                )
                                                              }
                                                            )
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** make it link in!  You will probably need to install it or some'
                                                                  )
                                                                )
                                                              }
                                                            )
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** library that it depends on before this library will be fully'
                                                                  )
                                                                )
                                                              }
                                                            )
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** functional.  Installing it before continuing would be even better.'
                                                                  )
                                                                )
                                                              }
                                                            )
                                                          ]
                                                          spids: [36157 36197]
                                                        )
                                                      ]
                                                      spids: [35881 35883 36200 16777215]
                                                    )
                                                    (case_arm
                                                      pat_list: [{(Lit_Other '*')}]
                                                      action: [
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:newdeplibs)
                                                              op: Equal
                                                              rhs: 
                                                                {
                                                                  (DQ ($ VSub_Name '$newdeplibs') 
                                                                    (' ') ($ VSub_Name '$i')
                                                                  )
                                                                }
                                                              spids: [36207]
                                                            )
                                                          ]
                                                          spids: [36207]
                                                        )
                                                      ]
                                                      spids: [36203 36204 36215 16777215]
                                                    )
                                                  ]
                                                  spids: [35874 35878 36218]
                                                )
                                              ]
                                              spids: [35871 36221]
                                            )
                                          spids: [35867 35869]
                                        )
                                      ]
                                      spids: [35851 36224]
                                    )
                                  ]
                                  spids: [35491 35492 36227 16777215]
                                )
                                (case_arm
                                  pat_list: [{(file_magic) (Lit_Other '*')}]
                                  action: [
                                    (Sentence
                                      child: 
                                        (C {(set)} {(dummy)} {($ VSub_Name '$deplibs_check_method')})
                                      terminator: <Op_Semi ';'>
                                    )
                                    (C {(shift)})
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:file_magic_regex)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (C {(expr)} 
                                                        {(DQ ($ VSub_Name '$deplibs_check_method'))} {(Lit_Other ':')} {(DQ ($ VSub_Number '$1') (' ') (Lit_Other '\\') ('(.*') (Lit_Other '\\') (')'))}
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [36246 36263]
                                              )
                                            }
                                          spids: [36245]
                                        )
                                      ]
                                      spids: [36245]
                                    )
                                    (ForEach
                                      iter_name: a_deplib
                                      iter_words: [{($ VSub_Name '$deplibs')}]
                                      do_arg_iter: False
                                      body: 
                                        (DoGroup
                                          children: [
                                            (Case
                                              to_match: {($ VSub_Name '$a_deplib')}
                                              arms: [
                                                (case_arm
                                                  pat_list: [{(-l) (Lit_Other '*')}]
                                                  action: [
                                                    (C {(func_stripname)} {(-l)} {(SQ )} 
                                                      {(DQ ($ VSub_Name '$a_deplib'))}
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:name)
                                                          op: Equal
                                                          rhs: 
                                                            {($ VSub_Name '$func_stripname_result')}
                                                          spids: [36302]
                                                        )
                                                      ]
                                                      spids: [36302]
                                                    )
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (C {(test)} 
                                                                  {
                                                                    (DQ (X) 
                                                                      ($ VSub_Name 
'$allow_libtool_libs_with_static_runtimes'
                                                                      )
                                                                    )
                                                                  } {(Lit_Other '=')} {(DQ (Xyes))}
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (Case
                                                              to_match: 
                                                                {
                                                                  (DQ (' ') ($ VSub_Name '$predeps') 
                                                                    (' ') ($ VSub_Name '$postdeps') (' ')
                                                                  )
                                                                }
                                                              arms: [
                                                                (case_arm
                                                                  pat_list: [
                                                                    {(Lit_Other '*') 
                                                                      (DQ (' ') 
                                                                        ($ VSub_Name '$a_deplib') (' ')
                                                                      ) (Lit_Other '*')
                                                                    }
                                                                  ]
                                                                  action: [
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: 
                                                                            (LhsName
                                                                              name: newdeplibs
                                                                            )
                                                                          op: Equal
                                                                          rhs: 
                                                                            {
                                                                              (DQ 
                                                                                ($ VSub_Name 
'$newdeplibs'
                                                                                ) (' ') ($ VSub_Name '$a_deplib')
                                                                              )
                                                                            }
                                                                          spids: [36349]
                                                                        )
                                                                      ]
                                                                      spids: [36349]
                                                                    )
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: 
                                                                            (LhsName
                                                                              name: a_deplib
                                                                            )
                                                                          op: Equal
                                                                          rhs: {(DQ )}
                                                                          spids: [36357]
                                                                        )
                                                                      ]
                                                                      spids: [36357]
                                                                    )
                                                                  ]
                                                                  spids: [36339 36346 36362 16777215]
                                                                )
                                                              ]
                                                              spids: [36326 36336 36365]
                                                            )
                                                          ]
                                                          spids: [16777215 36323]
                                                        )
                                                      ]
                                                      spids: [16777215 36368]
                                                    )
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (C {(test)} {(-n)} 
                                                                  {(DQ ($ VSub_Name '$a_deplib'))}
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:libname)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (CommandSubPart
                                                                        command_list: 
                                                                          (CommandList
                                                                            children: [
                                                                              (C {(eval)} 
                                                                                {
                                                                                  (DQ 
                                                                                    (EscapedLiteralPart
                                                                                      token: 
                                                                                        <
Lit_EscapedChar '\\\\'
                                                                                        >
                                                                                    ) ($ VSub_Name '$ECHO') (' ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                                                                                    ($ VSub_Name 
'$libname_spec'
                                                                                    ) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                                                                  )
                                                                                }
                                                                              )
                                                                            ]
                                                                          )
                                                                        left_token: 
                                                                          <Left_Backtick '`'>
                                                                        spids: [36387 36398]
                                                                      )
                                                                    }
                                                                  spids: [36386]
                                                                )
                                                              ]
                                                              spids: [36386]
                                                            )
                                                            (ForEach
                                                              iter_name: i
                                                              iter_words: [
                                                                {($ VSub_Name '$lib_search_path')}
                                                                {
                                                                  ($ VSub_Name '$sys_lib_search_path')
                                                                }
                                                                {($ VSub_Name '$shlib_search_path')}
                                                              ]
                                                              do_arg_iter: False
                                                              body: 
                                                                (DoGroup
                                                                  children: [
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: 
                                                                            (LhsName
                                                                              name: potential_libs
                                                                            )
                                                                          op: Equal
                                                                          rhs: 
                                                                            {
                                                                              (CommandSubPart
                                                                                command_list: 
                                                                                  (CommandList
                                                                                    children: [
                                                                                      (SimpleCommand
                                                                                        words: [
                                                                                          {(ls)}
                                                                                          {
                                                                                            ($ 
VSub_Name '$i'
                                                                                            ) (/) ($ VSub_Name '$libname') (Lit_Other '[') (.-) (Lit_Other ']') (Lit_Other '*')
                                                                                          }
                                                                                        ]
                                                                                        redirects: [
                                                                                          (Redir
                                                                                            op_id: 
Redir_Great
                                                                                            fd: 2
                                                                                            arg_word: 
                                                                                              {
                                                                                                (
/dev/null
                                                                                                )
                                                                                              }
                                                                                            spids: [
36429
                                                                                            ]
                                                                                          )
                                                                                        ]
                                                                                      )
                                                                                    ]
                                                                                  )
                                                                                left_token: 
                                                                                  <Left_Backtick 
'`'
                                                                                  >
                                                                                spids: [36418 36431]
                                                                              )
                                                                            }
                                                                          spids: [36417]
                                                                        )
                                                                      ]
                                                                      spids: [36417]
                                                                    )
                                                                    (ForEach
                                                                      iter_name: potent_lib
                                                                      iter_words: [
                                                                        {
                                                                          ($ VSub_Name 
'$potential_libs'
                                                                          )
                                                                        }
                                                                      ]
                                                                      do_arg_iter: False
                                                                      body: 
                                                                        (DoGroup
                                                                          children: [
                                                                            (If
                                                                              arms: [
                                                                                (if_arm
                                                                                  cond: [
                                                                                    (Sentence
                                                                                      child: 
                                                                                        (Pipeline
                                                                                          children: [
                                                                                            (SimpleCommand
                                                                                              words: [
                                                                                                {
                                                                                                  (
ls
                                                                                                  )
                                                                                                }
                                                                                                {
                                                                                                  (
-lLd
                                                                                                  )
                                                                                                }
                                                                                                {
                                                                                                  (DQ 
                                                                                                    ($ 
VSub_Name '$potent_lib'
                                                                                                    )
                                                                                                  )
                                                                                                }
                                                                                              ]
                                                                                              redirects: [
                                                                                                (Redir
                                                                                                  op_id: 
Redir_Great
                                                                                                  fd: 
2
                                                                                                  arg_word: 
                                                                                                    {
                                                                                                      (
/dev/null
                                                                                                      )
                                                                                                    }
                                                                                                  spids: [
36460
                                                                                                  ]
                                                                                                )
                                                                                              ]
                                                                                            )
                                                                                            (SimpleCommand
                                                                                              words: [
                                                                                                {
                                                                                                  ($ 
VSub_Name '$GREP'
                                                                                                  )
                                                                                                }
                                                                                                {
                                                                                                  (DQ 
                                                                                                    (
' -> '
                                                                                                    )
                                                                                                  )
                                                                                                }
                                                                                              ]
                                                                                              redirects: [
                                                                                                (Redir
                                                                                                  op_id: 
Redir_Great
                                                                                                  fd: 
16777215
                                                                                                  arg_word: 
                                                                                                    {
                                                                                                      (
/dev/null
                                                                                                      )
                                                                                                    }
                                                                                                  spids: [
36472
                                                                                                  ]
                                                                                                )
                                                                                              ]
                                                                                            )
                                                                                          ]
                                                                                          negated: 
False
                                                                                        )
                                                                                      terminator: 
                                                                                        <Op_Semi 
';'
                                                                                        >
                                                                                    )
                                                                                  ]
                                                                                  action: [
                                                                                    (ControlFlow
                                                                                      token: 
                                                                                        <
ControlFlow_Continue continue
                                                                                        >
                                                                                    )
                                                                                  ]
                                                                                  spids: [
16777215
36476
                                                                                  ]
                                                                                )
                                                                              ]
                                                                              spids: [16777215 36482]
                                                                            )
                                                                            (Assignment
                                                                              keyword: Assign_None
                                                                              pairs: [
                                                                                (assign_pair
                                                                                  lhs: 
                                                                                    (LhsName
                                                                                      name: potlib
                                                                                    )
                                                                                  op: Equal
                                                                                  rhs: 
                                                                                    {
                                                                                      (DQ 
                                                                                        ($ VSub_Name 
'$potent_lib'
                                                                                        )
                                                                                      )
                                                                                    }
                                                                                  spids: [36505]
                                                                                )
                                                                              ]
                                                                              spids: [36505]
                                                                            )
                                                                            (While
                                                                              cond: [
                                                                                (Sentence
                                                                                  child: 
                                                                                    (SimpleCommand
                                                                                      words: [
                                                                                        {(test)}
                                                                                        {(-h)}
                                                                                        {
                                                                                          (DQ 
                                                                                            ($ 
VSub_Name '$potlib'
                                                                                            )
                                                                                          )
                                                                                        }
                                                                                      ]
                                                                                      redirects: [
                                                                                        (Redir
                                                                                          op_id: 
Redir_Great
                                                                                          fd: 2
                                                                                          arg_word: 
                                                                                            {
                                                                                              (
/dev/null
                                                                                              )
                                                                                            }
                                                                                          spids: [
36521
                                                                                          ]
                                                                                        )
                                                                                      ]
                                                                                    )
                                                                                  terminator: 
                                                                                    <Op_Semi ';'>
                                                                                )
                                                                              ]
                                                                              body: 
                                                                                (DoGroup
                                                                                  children: [
                                                                                    (Assignment
                                                                                      keyword: 
Assign_None
                                                                                      pairs: [
                                                                                        (assign_pair
                                                                                          lhs: 
                                                                                            (LhsName
                                                                                              name: 
potliblink
                                                                                            )
                                                                                          op: Equal
                                                                                          rhs: 
                                                                                            {
                                                                                              (CommandSubPart
                                                                                                command_list: 
                                                                                                  (CommandList
                                                                                                    children: [
                                                                                                      (Pipeline
                                                                                                        children: [
                                                                                                          (C 
                                                                                                            {
                                                                                                              (
ls
                                                                                                              )
                                                                                                            } {(-ld)} {($ VSub_Name '$potlib')}
                                                                                                          )
                                                                                                          (C 
                                                                                                            {
                                                                                                              (${ 
VSub_Name SED
                                                                                                              )
                                                                                                            } {(SQ <'s/.* -> //'>)}
                                                                                                          )
                                                                                                        ]
                                                                                                        negated: 
False
                                                                                                      )
                                                                                                    ]
                                                                                                  )
                                                                                                left_token: 
                                                                                                  <
Left_Backtick '`'
                                                                                                  >
                                                                                                spids: [
36529
36545
                                                                                                ]
                                                                                              )
                                                                                            }
                                                                                          spids: [
36528
                                                                                          ]
                                                                                        )
                                                                                      ]
                                                                                      spids: [36528]
                                                                                    )
                                                                                    (Case
                                                                                      to_match: 
                                                                                        {
                                                                                          ($ 
VSub_Name '$potliblink'
                                                                                          )
                                                                                        }
                                                                                      arms: [
                                                                                        (case_arm
                                                                                          pat_list: [
                                                                                            {
                                                                                              (
Lit_Other '['
                                                                                              ) (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (/) (Lit_Other ']') (Lit_Other '*')
                                                                                            }
                                                                                            {
                                                                                              (
Lit_Other '['
                                                                                              ) (A-Za-z) (Lit_Other ']') (Lit_Other ':') (Lit_Other '[') 
                                                                                              (EscapedLiteralPart
                                                                                                token: 
                                                                                                  <
Lit_EscapedChar '\\\\'
                                                                                                  >
                                                                                              ) (/) (Lit_Other ']') (Lit_Other '*')
                                                                                            }
                                                                                          ]
                                                                                          action: [
                                                                                            (Assignment
                                                                                              keyword: 
Assign_None
                                                                                              pairs: [
                                                                                                (assign_pair
                                                                                                  lhs: 
                                                                                                    (LhsName
                                                                                                      name: 
potlib
                                                                                                    )
                                                                                                  op: 
                                                                                                    Equal
                                                                                                  rhs: 
                                                                                                    {
                                                                                                      (DQ 
                                                                                                        ($ 
VSub_Name '$potliblink'
                                                                                                        )
                                                                                                      )
                                                                                                    }
                                                                                                  spids: [
36574
                                                                                                  ]
                                                                                                )
                                                                                              ]
                                                                                              spids: [
36574
                                                                                              ]
                                                                                            )
                                                                                          ]
                                                                                          spids: [
36555
36572
36578
16777215
                                                                                          ]
                                                                                        )
                                                                                        (case_arm
                                                                                          pat_list: [
                                                                                            {
                                                                                              (
Lit_Other '*'
                                                                                              )
                                                                                            }
                                                                                          ]
                                                                                          action: [
                                                                                            (Assignment
                                                                                              keyword: 
Assign_None
                                                                                              pairs: [
                                                                                                (assign_pair
                                                                                                  lhs: 
                                                                                                    (LhsName
                                                                                                      name: 
potlib
                                                                                                    )
                                                                                                  op: 
                                                                                                    Equal
                                                                                                  rhs: 
                                                                                                    {
                                                                                                      (CommandSubPart
                                                                                                        command_list: 
                                                                                                          (CommandList
                                                                                                            children: [
                                                                                                              (Pipeline
                                                                                                                children: [
                                                                                                                  (C 
                                                                                                                    {
                                                                                                                      ($ 
VSub_Name '$ECHO'
                                                                                                                      )
                                                                                                                    } {(DQ (X) ($ VSub_Name '$potlib'))}
                                                                                                                  )
                                                                                                                  (C 
                                                                                                                    {
                                                                                                                      ($ 
VSub_Name '$Xsed'
                                                                                                                      )
                                                                                                                    } {(-e)} {(SQ <'s,[^/]*$,,'>)}
                                                                                                                  )
                                                                                                                ]
                                                                                                                negated: 
False
                                                                                                              )
                                                                                                            ]
                                                                                                          )
                                                                                                        left_token: 
                                                                                                          <
Left_Backtick '`'
                                                                                                          >
                                                                                                        spids: [
36585
36602
                                                                                                        ]
                                                                                                      ) (DQ ($ VSub_Name '$potliblink'))
                                                                                                    }
                                                                                                  spids: [
36584
                                                                                                  ]
                                                                                                )
                                                                                              ]
                                                                                              spids: [
36584
                                                                                              ]
                                                                                            )
                                                                                          ]
                                                                                          spids: [
36581
36582
36606
16777215
                                                                                          ]
                                                                                        )
                                                                                      ]
                                                                                      spids: [
36548
36552
36609
                                                                                      ]
                                                                                    )
                                                                                  ]
                                                                                  spids: [36525 36612]
                                                                                )
                                                                            )
                                                                            (If
                                                                              arms: [
                                                                                (if_arm
                                                                                  cond: [
                                                                                    (Sentence
                                                                                      child: 
                                                                                        (Pipeline
                                                                                          children: [
                                                                                            (SimpleCommand
                                                                                              words: [
                                                                                                {
                                                                                                  (
eval
                                                                                                  )
                                                                                                }
                                                                                                {
                                                                                                  ($ 
VSub_Name '$file_magic_cmd'
                                                                                                  )
                                                                                                }
                                                                                                {
                                                                                                  (EscapedLiteralPart
                                                                                                    token: 
                                                                                                      <
Lit_EscapedChar '\\"'
                                                                                                      >
                                                                                                  ) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (potlib) 
                                                                                                  (EscapedLiteralPart
                                                                                                    token: 
                                                                                                      <
Lit_EscapedChar '\\"'
                                                                                                      >
                                                                                                  )
                                                                                                }
                                                                                              ]
                                                                                              redirects: [
                                                                                                (Redir
                                                                                                  op_id: 
Redir_Great
                                                                                                  fd: 
2
                                                                                                  arg_word: 
                                                                                                    {
                                                                                                      (
/dev/null
                                                                                                      )
                                                                                                    }
                                                                                                  spids: [
36626
                                                                                                  ]
                                                                                                )
                                                                                              ]
                                                                                            )
                                                                                            (C 
                                                                                              {
                                                                                                ($ 
VSub_Name '$SED'
                                                                                                )
                                                                                              } {(-e)} {(10q)}
                                                                                            )
                                                                                            (SimpleCommand
                                                                                              words: [
                                                                                                {
                                                                                                  ($ 
VSub_Name '$EGREP'
                                                                                                  )
                                                                                                }
                                                                                                {
                                                                                                  (DQ 
                                                                                                    ($ 
VSub_Name '$file_magic_regex'
                                                                                                    )
                                                                                                  )
                                                                                                }
                                                                                              ]
                                                                                              redirects: [
                                                                                                (Redir
                                                                                                  op_id: 
Redir_Great
                                                                                                  fd: 
16777215
                                                                                                  arg_word: 
                                                                                                    {
                                                                                                      (
/dev/null
                                                                                                      )
                                                                                                    }
                                                                                                  spids: [
36647
                                                                                                  ]
                                                                                                )
                                                                                              ]
                                                                                            )
                                                                                          ]
                                                                                          negated: 
False
                                                                                        )
                                                                                      terminator: 
                                                                                        <Op_Semi 
';'
                                                                                        >
                                                                                    )
                                                                                  ]
                                                                                  action: [
                                                                                    (Assignment
                                                                                      keyword: 
Assign_None
                                                                                      pairs: [
                                                                                        (assign_pair
                                                                                          lhs: 
                                                                                            (LhsName
                                                                                              name: 
newdeplibs
                                                                                            )
                                                                                          op: Equal
                                                                                          rhs: 
                                                                                            {
                                                                                              (DQ 
                                                                                                ($ 
VSub_Name '$newdeplibs'
                                                                                                ) (' ') ($ VSub_Name '$a_deplib')
                                                                                              )
                                                                                            }
                                                                                          spids: [
36655
                                                                                          ]
                                                                                        )
                                                                                      ]
                                                                                      spids: [36655]
                                                                                    )
                                                                                    (Assignment
                                                                                      keyword: 
Assign_None
                                                                                      pairs: [
                                                                                        (assign_pair
                                                                                          lhs: 
                                                                                            (LhsName
                                                                                              name: 
a_deplib
                                                                                            )
                                                                                          op: Equal
                                                                                          rhs: {(DQ )}
                                                                                          spids: [
36663
                                                                                          ]
                                                                                        )
                                                                                      ]
                                                                                      spids: [36663]
                                                                                    )
                                                                                    (ControlFlow
                                                                                      token: 
                                                                                        <
ControlFlow_Break break
                                                                                        >
                                                                                      arg_word: {(2)}
                                                                                    )
                                                                                  ]
                                                                                  spids: [
16777215
36652
                                                                                  ]
                                                                                )
                                                                              ]
                                                                              spids: [16777215 36673]
                                                                            )
                                                                          ]
                                                                          spids: [36443 36676]
                                                                        )
                                                                      spids: [36439 36441]
                                                                    )
                                                                  ]
                                                                  spids: [36414 36679]
                                                                )
                                                              spids: [36406 36412]
                                                            )
                                                          ]
                                                          spids: [16777215 36383]
                                                        )
                                                      ]
                                                      spids: [16777215 36682]
                                                    )
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (C {(test)} {(-n)} 
                                                                  {(DQ ($ VSub_Name '$a_deplib'))}
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:droppeddeps)
                                                                  op: Equal
                                                                  rhs: {(yes)}
                                                                  spids: [36700]
                                                                )
                                                              ]
                                                              spids: [36700]
                                                            )
                                                            (C {($ VSub_Name '$ECHO')})
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** Warning: linker path does not have real file for library '
                                                                  ) ($ VSub_Name '$a_deplib') (.)
                                                                )
                                                              }
                                                            )
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** I have the capability to make that library automatically link in when'
                                                                  )
                                                                )
                                                              }
                                                            )
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** you link to this library.  But I can only do this if you have a'
                                                                  )
                                                                )
                                                              }
                                                            )
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** shared version of the library, which you do not appear to have'
                                                                  )
                                                                )
                                                              }
                                                            )
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** because I did check the linker path looking for a file starting'
                                                                  )
                                                                )
                                                              }
                                                            )
                                                            (If
                                                              arms: [
                                                                (if_arm
                                                                  cond: [
                                                                    (Sentence
                                                                      child: 
                                                                        (C {(test)} {(-z)} 
                                                                          {
                                                                            (DQ 
                                                                              ($ VSub_Name '$potlib')
                                                                            )
                                                                          }
                                                                        )
                                                                      terminator: <Op_Semi ';'>
                                                                    )
                                                                  ]
                                                                  action: [
                                                                    (C {($ VSub_Name '$ECHO')} 
                                                                      {
                                                                        (DQ ('*** with ') 
                                                                          ($ VSub_Name '$libname') (' but no candidates were found. (...for file magic test)')
                                                                        )
                                                                      }
                                                                    )
                                                                  ]
                                                                  spids: [16777215 36756]
                                                                )
                                                              ]
                                                              else_action: [
                                                                (C {($ VSub_Name '$ECHO')} 
                                                                  {
                                                                    (DQ ('*** with ') 
                                                                      ($ VSub_Name '$libname') (' and none of the candidates passed a file format test')
                                                                    )
                                                                  }
                                                                )
                                                                (C {($ VSub_Name '$ECHO')} 
                                                                  {
                                                                    (DQ 
                                                                      (
'*** using a file magic. Last file checked: '
                                                                      ) ($ VSub_Name '$potlib')
                                                                    )
                                                                  }
                                                                )
                                                              ]
                                                              spids: [36768 36788]
                                                            )
                                                          ]
                                                          spids: [16777215 36697]
                                                        )
                                                      ]
                                                      spids: [16777215 36791]
                                                    )
                                                  ]
                                                  spids: [36285 36287 36794 16777215]
                                                )
                                                (case_arm
                                                  pat_list: [{(Lit_Other '*')}]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:newdeplibs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$newdeplibs') (' ') 
                                                                ($ VSub_Name '$a_deplib')
                                                              )
                                                            }
                                                          spids: [36805]
                                                        )
                                                      ]
                                                      spids: [36805]
                                                    )
                                                  ]
                                                  spids: [36797 36798 36813 16777215]
                                                )
                                              ]
                                              spids: [36278 36282 36816]
                                            )
                                          ]
                                          spids: [36275 36819]
                                        )
                                      spids: [36271 36273]
                                    )
                                  ]
                                  spids: [36230 36232 36825 16777215]
                                )
                                (case_arm
                                  pat_list: [{(match_pattern) (Lit_Other '*')}]
                                  action: [
                                    (Sentence
                                      child: 
                                        (C {(set)} {(dummy)} {($ VSub_Name '$deplibs_check_method')})
                                      terminator: <Op_Semi ';'>
                                    )
                                    (C {(shift)})
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:match_pattern_regex)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (C {(expr)} 
                                                        {(DQ ($ VSub_Name '$deplibs_check_method'))} {(Lit_Other ':')} {(DQ ($ VSub_Number '$1') (' ') (Lit_Other '\\') ('(.*') (Lit_Other '\\') (')'))}
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [36844 36861]
                                              )
                                            }
                                          spids: [36843]
                                        )
                                      ]
                                      spids: [36843]
                                    )
                                    (ForEach
                                      iter_name: a_deplib
                                      iter_words: [{($ VSub_Name '$deplibs')}]
                                      do_arg_iter: False
                                      body: 
                                        (DoGroup
                                          children: [
                                            (Case
                                              to_match: {($ VSub_Name '$a_deplib')}
                                              arms: [
                                                (case_arm
                                                  pat_list: [{(-l) (Lit_Other '*')}]
                                                  action: [
                                                    (C {(func_stripname)} {(-l)} {(SQ )} 
                                                      {(DQ ($ VSub_Name '$a_deplib'))}
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:name)
                                                          op: Equal
                                                          rhs: 
                                                            {($ VSub_Name '$func_stripname_result')}
                                                          spids: [36900]
                                                        )
                                                      ]
                                                      spids: [36900]
                                                    )
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (C {(test)} 
                                                                  {
                                                                    (DQ (X) 
                                                                      ($ VSub_Name 
'$allow_libtool_libs_with_static_runtimes'
                                                                      )
                                                                    )
                                                                  } {(Lit_Other '=')} {(DQ (Xyes))}
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (Case
                                                              to_match: 
                                                                {
                                                                  (DQ (' ') ($ VSub_Name '$predeps') 
                                                                    (' ') ($ VSub_Name '$postdeps') (' ')
                                                                  )
                                                                }
                                                              arms: [
                                                                (case_arm
                                                                  pat_list: [
                                                                    {(Lit_Other '*') 
                                                                      (DQ (' ') 
                                                                        ($ VSub_Name '$a_deplib') (' ')
                                                                      ) (Lit_Other '*')
                                                                    }
                                                                  ]
                                                                  action: [
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: 
                                                                            (LhsName
                                                                              name: newdeplibs
                                                                            )
                                                                          op: Equal
                                                                          rhs: 
                                                                            {
                                                                              (DQ 
                                                                                ($ VSub_Name 
'$newdeplibs'
                                                                                ) (' ') ($ VSub_Name '$a_deplib')
                                                                              )
                                                                            }
                                                                          spids: [36947]
                                                                        )
                                                                      ]
                                                                      spids: [36947]
                                                                    )
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: 
                                                                            (LhsName
                                                                              name: a_deplib
                                                                            )
                                                                          op: Equal
                                                                          rhs: {(DQ )}
                                                                          spids: [36955]
                                                                        )
                                                                      ]
                                                                      spids: [36955]
                                                                    )
                                                                  ]
                                                                  spids: [36937 36944 36960 16777215]
                                                                )
                                                              ]
                                                              spids: [36924 36934 36963]
                                                            )
                                                          ]
                                                          spids: [16777215 36921]
                                                        )
                                                      ]
                                                      spids: [16777215 36966]
                                                    )
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (C {(test)} {(-n)} 
                                                                  {(DQ ($ VSub_Name '$a_deplib'))}
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:libname)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (CommandSubPart
                                                                        command_list: 
                                                                          (CommandList
                                                                            children: [
                                                                              (C {(eval)} 
                                                                                {
                                                                                  (DQ 
                                                                                    (EscapedLiteralPart
                                                                                      token: 
                                                                                        <
Lit_EscapedChar '\\\\'
                                                                                        >
                                                                                    ) ($ VSub_Name '$ECHO') (' ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                                                                                    ($ VSub_Name 
'$libname_spec'
                                                                                    ) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                                                                  )
                                                                                }
                                                                              )
                                                                            ]
                                                                          )
                                                                        left_token: 
                                                                          <Left_Backtick '`'>
                                                                        spids: [36985 36996]
                                                                      )
                                                                    }
                                                                  spids: [36984]
                                                                )
                                                              ]
                                                              spids: [36984]
                                                            )
                                                            (ForEach
                                                              iter_name: i
                                                              iter_words: [
                                                                {($ VSub_Name '$lib_search_path')}
                                                                {
                                                                  ($ VSub_Name '$sys_lib_search_path')
                                                                }
                                                                {($ VSub_Name '$shlib_search_path')}
                                                              ]
                                                              do_arg_iter: False
                                                              body: 
                                                                (DoGroup
                                                                  children: [
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: 
                                                                            (LhsName
                                                                              name: potential_libs
                                                                            )
                                                                          op: Equal
                                                                          rhs: 
                                                                            {
                                                                              (CommandSubPart
                                                                                command_list: 
                                                                                  (CommandList
                                                                                    children: [
                                                                                      (SimpleCommand
                                                                                        words: [
                                                                                          {(ls)}
                                                                                          {
                                                                                            ($ 
VSub_Name '$i'
                                                                                            ) (/) ($ VSub_Name '$libname') (Lit_Other '[') (.-) (Lit_Other ']') (Lit_Other '*')
                                                                                          }
                                                                                        ]
                                                                                        redirects: [
                                                                                          (Redir
                                                                                            op_id: 
Redir_Great
                                                                                            fd: 2
                                                                                            arg_word: 
                                                                                              {
                                                                                                (
/dev/null
                                                                                                )
                                                                                              }
                                                                                            spids: [
37027
                                                                                            ]
                                                                                          )
                                                                                        ]
                                                                                      )
                                                                                    ]
                                                                                  )
                                                                                left_token: 
                                                                                  <Left_Backtick 
'`'
                                                                                  >
                                                                                spids: [37016 37029]
                                                                              )
                                                                            }
                                                                          spids: [37015]
                                                                        )
                                                                      ]
                                                                      spids: [37015]
                                                                    )
                                                                    (ForEach
                                                                      iter_name: potent_lib
                                                                      iter_words: [
                                                                        {
                                                                          ($ VSub_Name 
'$potential_libs'
                                                                          )
                                                                        }
                                                                      ]
                                                                      do_arg_iter: False
                                                                      body: 
                                                                        (DoGroup
                                                                          children: [
                                                                            (Assignment
                                                                              keyword: Assign_None
                                                                              pairs: [
                                                                                (assign_pair
                                                                                  lhs: 
                                                                                    (LhsName
                                                                                      name: potlib
                                                                                    )
                                                                                  op: Equal
                                                                                  rhs: 
                                                                                    {
                                                                                      (DQ 
                                                                                        ($ VSub_Name 
'$potent_lib'
                                                                                        )
                                                                                      )
                                                                                    }
                                                                                  spids: [37044]
                                                                                )
                                                                              ]
                                                                              spids: [37044]
                                                                            )
                                                                            (If
                                                                              arms: [
                                                                                (if_arm
                                                                                  cond: [
                                                                                    (Sentence
                                                                                      child: 
                                                                                        (Pipeline
                                                                                          children: [
                                                                                            (SimpleCommand
                                                                                              words: [
                                                                                                {
                                                                                                  (
eval
                                                                                                  )
                                                                                                }
                                                                                                {
                                                                                                  (DQ 
                                                                                                    (EscapedLiteralPart
                                                                                                      token: 
                                                                                                        <
Lit_EscapedChar '\\$'
                                                                                                        >
                                                                                                    ) ('ECHO ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (X) ($ VSub_Name '$potent_lib') 
                                                                                                    (EscapedLiteralPart
                                                                                                      token: 
                                                                                                        <
Lit_EscapedChar '\\"'
                                                                                                        >
                                                                                                    )
                                                                                                  )
                                                                                                }
                                                                                              ]
                                                                                              redirects: [
                                                                                                (Redir
                                                                                                  op_id: 
Redir_Great
                                                                                                  fd: 
2
                                                                                                  arg_word: 
                                                                                                    {
                                                                                                      (
/dev/null
                                                                                                      )
                                                                                                    }
                                                                                                  spids: [
37066
                                                                                                  ]
                                                                                                )
                                                                                              ]
                                                                                            )
                                                                                            (C 
                                                                                              {
                                                                                                ($ 
VSub_Name '$Xsed'
                                                                                                )
                                                                                              } {(-e)} {(10q)}
                                                                                            )
                                                                                            (SimpleCommand
                                                                                              words: [
                                                                                                {
                                                                                                  ($ 
VSub_Name '$EGREP'
                                                                                                  )
                                                                                                }
                                                                                                {
                                                                                                  (DQ 
                                                                                                    ($ 
VSub_Name '$match_pattern_regex'
                                                                                                    )
                                                                                                  )
                                                                                                }
                                                                                              ]
                                                                                              redirects: [
                                                                                                (Redir
                                                                                                  op_id: 
Redir_Great
                                                                                                  fd: 
16777215
                                                                                                  arg_word: 
                                                                                                    {
                                                                                                      (
/dev/null
                                                                                                      )
                                                                                                    }
                                                                                                  spids: [
37087
                                                                                                  ]
                                                                                                )
                                                                                              ]
                                                                                            )
                                                                                          ]
                                                                                          negated: 
False
                                                                                        )
                                                                                      terminator: 
                                                                                        <Op_Semi 
';'
                                                                                        >
                                                                                    )
                                                                                  ]
                                                                                  action: [
                                                                                    (Assignment
                                                                                      keyword: 
Assign_None
                                                                                      pairs: [
                                                                                        (assign_pair
                                                                                          lhs: 
                                                                                            (LhsName
                                                                                              name: 
newdeplibs
                                                                                            )
                                                                                          op: Equal
                                                                                          rhs: 
                                                                                            {
                                                                                              (DQ 
                                                                                                ($ 
VSub_Name '$newdeplibs'
                                                                                                ) (' ') ($ VSub_Name '$a_deplib')
                                                                                              )
                                                                                            }
                                                                                          spids: [
37095
                                                                                          ]
                                                                                        )
                                                                                      ]
                                                                                      spids: [37095]
                                                                                    )
                                                                                    (Assignment
                                                                                      keyword: 
Assign_None
                                                                                      pairs: [
                                                                                        (assign_pair
                                                                                          lhs: 
                                                                                            (LhsName
                                                                                              name: 
a_deplib
                                                                                            )
                                                                                          op: Equal
                                                                                          rhs: {(DQ )}
                                                                                          spids: [
37103
                                                                                          ]
                                                                                        )
                                                                                      ]
                                                                                      spids: [37103]
                                                                                    )
                                                                                    (ControlFlow
                                                                                      token: 
                                                                                        <
ControlFlow_Break break
                                                                                        >
                                                                                      arg_word: {(2)}
                                                                                    )
                                                                                  ]
                                                                                  spids: [
16777215
37092
                                                                                  ]
                                                                                )
                                                                              ]
                                                                              spids: [16777215 37113]
                                                                            )
                                                                          ]
                                                                          spids: [37041 37116]
                                                                        )
                                                                      spids: [37037 37039]
                                                                    )
                                                                  ]
                                                                  spids: [37012 37119]
                                                                )
                                                              spids: [37004 37010]
                                                            )
                                                          ]
                                                          spids: [16777215 36981]
                                                        )
                                                      ]
                                                      spids: [16777215 37122]
                                                    )
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (C {(test)} {(-n)} 
                                                                  {(DQ ($ VSub_Name '$a_deplib'))}
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:droppeddeps)
                                                                  op: Equal
                                                                  rhs: {(yes)}
                                                                  spids: [37140]
                                                                )
                                                              ]
                                                              spids: [37140]
                                                            )
                                                            (C {($ VSub_Name '$ECHO')})
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** Warning: linker path does not have real file for library '
                                                                  ) ($ VSub_Name '$a_deplib') (.)
                                                                )
                                                              }
                                                            )
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** I have the capability to make that library automatically link in when'
                                                                  )
                                                                )
                                                              }
                                                            )
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** you link to this library.  But I can only do this if you have a'
                                                                  )
                                                                )
                                                              }
                                                            )
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** shared version of the library, which you do not appear to have'
                                                                  )
                                                                )
                                                              }
                                                            )
                                                            (C {($ VSub_Name '$ECHO')} 
                                                              {
                                                                (DQ 
                                                                  (
'*** because I did check the linker path looking for a file starting'
                                                                  )
                                                                )
                                                              }
                                                            )
                                                            (If
                                                              arms: [
                                                                (if_arm
                                                                  cond: [
                                                                    (Sentence
                                                                      child: 
                                                                        (C {(test)} {(-z)} 
                                                                          {
                                                                            (DQ 
                                                                              ($ VSub_Name '$potlib')
                                                                            )
                                                                          }
                                                                        )
                                                                      terminator: <Op_Semi ';'>
                                                                    )
                                                                  ]
                                                                  action: [
                                                                    (C {($ VSub_Name '$ECHO')} 
                                                                      {
                                                                        (DQ ('*** with ') 
                                                                          ($ VSub_Name '$libname') (' but no candidates were found. (...for regex pattern test)')
                                                                        )
                                                                      }
                                                                    )
                                                                  ]
                                                                  spids: [16777215 37196]
                                                                )
                                                              ]
                                                              else_action: [
                                                                (C {($ VSub_Name '$ECHO')} 
                                                                  {
                                                                    (DQ ('*** with ') 
                                                                      ($ VSub_Name '$libname') (' and none of the candidates passed a file format test')
                                                                    )
                                                                  }
                                                                )
                                                                (C {($ VSub_Name '$ECHO')} 
                                                                  {
                                                                    (DQ 
                                                                      (
'*** using a regex pattern. Last file checked: '
                                                                      ) ($ VSub_Name '$potlib')
                                                                    )
                                                                  }
                                                                )
                                                              ]
                                                              spids: [37208 37228]
                                                            )
                                                          ]
                                                          spids: [16777215 37137]
                                                        )
                                                      ]
                                                      spids: [16777215 37231]
                                                    )
                                                  ]
                                                  spids: [36883 36885 37234 16777215]
                                                )
                                                (case_arm
                                                  pat_list: [{(Lit_Other '*')}]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:newdeplibs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$newdeplibs') (' ') 
                                                                ($ VSub_Name '$a_deplib')
                                                              )
                                                            }
                                                          spids: [37245]
                                                        )
                                                      ]
                                                      spids: [37245]
                                                    )
                                                  ]
                                                  spids: [37237 37238 37253 16777215]
                                                )
                                              ]
                                              spids: [36876 36880 37256]
                                            )
                                          ]
                                          spids: [36873 37259]
                                        )
                                      spids: [36869 36871]
                                    )
                                  ]
                                  spids: [36828 36830 37265 16777215]
                                )
                                (case_arm
                                  pat_list: [{(none)} {(unknown)} {(Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:newdeplibs)
                                          op: Equal
                                          rhs: {(DQ )}
                                          spids: [37280]
                                        )
                                      ]
                                      spids: [37280]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:tmp_deplibs)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (Pipeline
                                                        children: [
                                                          (C {($ VSub_Name '$ECHO')} 
                                                            {(DQ ('X ') ($ VSub_Name '$deplibs'))}
                                                          )
                                                          (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                            {(SQ <'s/ -lc$//'>)} {(-e)} {(SQ <'s/ -[LR][^ ]*//g'>)}
                                                          )
                                                        ]
                                                        negated: False
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [37286 37311]
                                              )
                                            }
                                          spids: [37285]
                                        )
                                      ]
                                      spids: [37285]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} 
                                                  {
                                                    (DQ (X) 
                                                      ($ VSub_Name 
'$allow_libtool_libs_with_static_runtimes'
                                                      )
                                                    )
                                                  } {(Lit_Other '=')} {(DQ (Xyes))}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (ForEach
                                              iter_name: i
                                              iter_words: [
                                                {($ VSub_Name '$predeps')}
                                                {($ VSub_Name '$postdeps')}
                                              ]
                                              do_arg_iter: False
                                              body: 
                                                (DoGroup
                                                  children: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:tmp_deplibs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (CommandSubPart
                                                                command_list: 
                                                                  (CommandList
                                                                    children: [
                                                                      (Pipeline
                                                                        children: [
                                                                          (C {($ VSub_Name '$ECHO')} 
                                                                            {
                                                                              (DQ ('X ') 
                                                                                ($ VSub_Name 
'$tmp_deplibs'
                                                                                )
                                                                              )
                                                                            }
                                                                          )
                                                                          (C {($ VSub_Name '$Xsed')} 
                                                                            {(-e)} {(DQ ('s,') ($ VSub_Name '$i') (',,'))}
                                                                          )
                                                                        ]
                                                                        negated: False
                                                                      )
                                                                    ]
                                                                  )
                                                                left_token: <Left_Backtick '`'>
                                                                spids: [37354 37373]
                                                              )
                                                            }
                                                          spids: [37353]
                                                        )
                                                      ]
                                                      spids: [37353]
                                                    )
                                                  ]
                                                  spids: [37346 37376]
                                                )
                                              spids: [37339 37344]
                                            )
                                          ]
                                          spids: [16777215 37331]
                                        )
                                      ]
                                      spids: [16777215 37379]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (Pipeline
                                                  children: [
                                                    (C {($ VSub_Name '$ECHO')} 
                                                      {(DQ ('X ') ($ VSub_Name '$tmp_deplibs'))}
                                                    )
                                                    (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                      {(SQ <'s/[\t ]//g'>)}
                                                    )
                                                    (SimpleCommand
                                                      words: [{($ VSub_Name '$GREP')} {(.)}]
                                                      redirects: [
                                                        (Redir
                                                          op_id: Redir_Great
                                                          fd: 16777215
                                                          arg_word: {(/dev/null)}
                                                          spids: [37408]
                                                        )
                                                      ]
                                                    )
                                                  ]
                                                  negated: False
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {($ VSub_Name '$ECHO')})
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} 
                                                          {
                                                            (DQ (X) 
                                                              ($ VSub_Name '$deplibs_check_method')
                                                            )
                                                          } {(Lit_Other '=')} {(DQ (Xnone))}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (C {($ VSub_Name '$ECHO')} 
                                                      {
                                                        (DQ 
                                                          (
'*** Warning: inter-library dependencies are not supported in this platform.'
                                                          )
                                                        )
                                                      }
                                                    )
                                                  ]
                                                  spids: [16777215 37434]
                                                )
                                              ]
                                              else_action: [
                                                (C {($ VSub_Name '$ECHO')} 
                                                  {
                                                    (DQ 
                                                      (
'*** Warning: inter-library dependencies are not known to be supported.'
                                                      )
                                                    )
                                                  }
                                                )
                                              ]
                                              spids: [37444 37454]
                                            )
                                            (C {($ VSub_Name '$ECHO')} 
                                              {
                                                (DQ 
                                                  (
'*** All declared inter-library dependencies are being dropped.'
                                                  )
                                                )
                                              }
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:droppeddeps)
                                                  op: Equal
                                                  rhs: {(yes)}
                                                  spids: [37464]
                                                )
                                              ]
                                              spids: [37464]
                                            )
                                          ]
                                          spids: [16777215 37412]
                                        )
                                      ]
                                      spids: [16777215 37468]
                                    )
                                  ]
                                  spids: [37268 37277 37471 16777215]
                                )
                              ]
                              spids: [35453 35457 37474]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:versuffix)
                                  op: Equal
                                  rhs: {($ VSub_Name '$versuffix_save')}
                                  spids: [37477]
                                )
                              ]
                              spids: [37477]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:major)
                                  op: Equal
                                  rhs: {($ VSub_Name '$major_save')}
                                  spids: [37481]
                                )
                              ]
                              spids: [37481]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:release)
                                  op: Equal
                                  rhs: {($ VSub_Name '$release_save')}
                                  spids: [37485]
                                )
                              ]
                              spids: [37485]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:libname)
                                  op: Equal
                                  rhs: {($ VSub_Name '$libname_save')}
                                  spids: [37489]
                                )
                              ]
                              spids: [37489]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:name)
                                  op: Equal
                                  rhs: {($ VSub_Name '$name_save')}
                                  spids: [37493]
                                )
                              ]
                              spids: [37493]
                            )
                            (Case
                              to_match: {($ VSub_Name '$host')}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '*') (-) (Lit_Other '*') (-rhapsody) (Lit_Other '*')}
                                    {(Lit_Other '*') (-) (Lit_Other '*') (-darwin1.) (Lit_Other '[') 
                                      (012) (Lit_Other ']')
                                    }
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:newdeplibs)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (Pipeline
                                                        children: [
                                                          (C {($ VSub_Name '$ECHO')} 
                                                            {(DQ ('X ') ($ VSub_Name '$newdeplibs'))}
                                                          )
                                                          (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                            {(SQ <'s/ -lc / System.ltframework /'>)}
                                                          )
                                                        ]
                                                        negated: False
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [37528 37545]
                                              )
                                            }
                                          spids: [37527]
                                        )
                                      ]
                                      spids: [37527]
                                    )
                                  ]
                                  spids: [37505 37520 37548 16777215]
                                )
                              ]
                              spids: [37498 37502 37551]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$droppeddeps'))} 
                                          {(Lit_Other '=')} {(yes)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(DQ ($ VSub_Name '$module'))} 
                                                  {(Lit_Other '=')} {(yes)}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {($ VSub_Name '$ECHO')})
                                            (C {($ VSub_Name '$ECHO')} 
                                              {
                                                (DQ 
                                                  (
'*** Warning: libtool could not satisfy all declared inter-library'
                                                  )
                                                )
                                              }
                                            )
                                            (C {($ VSub_Name '$ECHO')} 
                                              {
                                                (DQ ('*** dependencies of module ') 
                                                  ($ VSub_Name '$libname') ('.  Therefore, libtool will create')
                                                )
                                              }
                                            )
                                            (C {($ VSub_Name '$ECHO')} 
                                              {
                                                (DQ 
                                                  (
'*** a static module, that should work as long as the dlopening'
                                                  )
                                                )
                                              }
                                            )
                                            (C {($ VSub_Name '$ECHO')} 
                                              {
                                                (DQ 
                                                  (
'*** application is linked with the -dlopen flag.'
                                                  )
                                                )
                                              }
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(-z)} 
                                                          {(DQ ($ VSub_Name '$global_symbol_pipe'))}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (C {($ VSub_Name '$ECHO')})
                                                    (C {($ VSub_Name '$ECHO')} 
                                                      {
                                                        (DQ 
                                                          (
'*** However, this would only work if libtool was able to extract symbol'
                                                          )
                                                        )
                                                      }
                                                    )
                                                    (C {($ VSub_Name '$ECHO')} 
                                                      {
                                                        (DQ ('*** lists from a program, using ') 
                                                          (EscapedLiteralPart
                                                            token: <Lit_EscapedChar '\\`'>
                                                          ) ("nm' or equivalent, but libtool could")
                                                        )
                                                      }
                                                    )
                                                    (C {($ VSub_Name '$ECHO')} 
                                                      {
                                                        (DQ 
                                                          (
'*** not find such a program.  So, this module is probably useless.'
                                                          )
                                                        )
                                                      }
                                                    )
                                                    (C {($ VSub_Name '$ECHO')} 
                                                      {
                                                        (DQ ('*** ') 
                                                          (EscapedLiteralPart
                                                            token: <Lit_EscapedChar '\\`'>
                                                          ) ("nm' from GNU binutils and a full rebuild may help.")
                                                        )
                                                      }
                                                    )
                                                  ]
                                                  spids: [16777215 37631]
                                                )
                                              ]
                                              spids: [16777215 37669]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} 
                                                          {(DQ ($ VSub_Name '$build_old_libs'))} {(Lit_Other '=')} {(no)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:oldlibs)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$output_objdir') (/) 
                                                                ($ VSub_Name '$libname') (.) ($ VSub_Name '$libext')
                                                              )
                                                            }
                                                          spids: [37688]
                                                        )
                                                      ]
                                                      spids: [37688]
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:build_libtool_libs)
                                                          op: Equal
                                                          rhs: {(module)}
                                                          spids: [37698]
                                                        )
                                                      ]
                                                      spids: [37698]
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:build_old_libs)
                                                          op: Equal
                                                          rhs: {(yes)}
                                                          spids: [37702]
                                                        )
                                                      ]
                                                      spids: [37702]
                                                    )
                                                  ]
                                                  spids: [16777215 37685]
                                                )
                                              ]
                                              else_action: [
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:build_libtool_libs)
                                                      op: Equal
                                                      rhs: {(no)}
                                                      spids: [37709]
                                                    )
                                                  ]
                                                  spids: [37709]
                                                )
                                              ]
                                              spids: [37706 37713]
                                            )
                                          ]
                                          spids: [16777215 37584]
                                        )
                                      ]
                                      else_action: [
                                        (C {($ VSub_Name '$ECHO')} 
                                          {
                                            (DQ 
                                              (
'*** The inter-library dependencies that have been dropped here will be'
                                              )
                                            )
                                          }
                                        )
                                        (C {($ VSub_Name '$ECHO')} 
                                          {
                                            (DQ 
                                              (
'*** automatically added whenever a program is linked with this library'
                                              )
                                            )
                                          }
                                        )
                                        (C {($ VSub_Name '$ECHO')} 
                                          {(DQ ('*** or is declared to -dlopen it.'))}
                                        )
                                        (If
                                          arms: [
                                            (if_arm
                                              cond: [
                                                (Sentence
                                                  child: 
                                                    (C {(test)} {(DQ ($ VSub_Name '$allow_undefined'))} 
                                                      {(Lit_Other '=')} {(no)}
                                                    )
                                                  terminator: <Op_Semi ';'>
                                                )
                                              ]
                                              action: [
                                                (C {($ VSub_Name '$ECHO')})
                                                (C {($ VSub_Name '$ECHO')} 
                                                  {
                                                    (DQ 
                                                      (
'*** Since this library must not contain undefined symbols,'
                                                      )
                                                    )
                                                  }
                                                )
                                                (C {($ VSub_Name '$ECHO')} 
                                                  {
                                                    (DQ 
                                                      (
'*** because either the platform does not support them or'
                                                      )
                                                    )
                                                  }
                                                )
                                                (C {($ VSub_Name '$ECHO')} 
                                                  {
                                                    (DQ 
                                                      (
'*** it was explicitly requested with -no-undefined,'
                                                      )
                                                    )
                                                  }
                                                )
                                                (C {($ VSub_Name '$ECHO')} 
                                                  {
                                                    (DQ 
                                                      (
'*** libtool will only create a static version of it.'
                                                      )
                                                    )
                                                  }
                                                )
                                                (If
                                                  arms: [
                                                    (if_arm
                                                      cond: [
                                                        (Sentence
                                                          child: 
                                                            (C {(test)} 
                                                              {(DQ ($ VSub_Name '$build_old_libs'))} {(Lit_Other '=')} {(no)}
                                                            )
                                                          terminator: <Op_Semi ';'>
                                                        )
                                                      ]
                                                      action: [
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:oldlibs)
                                                              op: Equal
                                                              rhs: 
                                                                {
                                                                  (DQ ($ VSub_Name '$output_objdir') 
                                                                    (/) ($ VSub_Name '$libname') (.) ($ VSub_Name '$libext')
                                                                  )
                                                                }
                                                              spids: [37804]
                                                            )
                                                          ]
                                                          spids: [37804]
                                                        )
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:build_libtool_libs)
                                                              op: Equal
                                                              rhs: {(module)}
                                                              spids: [37814]
                                                            )
                                                          ]
                                                          spids: [37814]
                                                        )
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:build_old_libs)
                                                              op: Equal
                                                              rhs: {(yes)}
                                                              spids: [37818]
                                                            )
                                                          ]
                                                          spids: [37818]
                                                        )
                                                      ]
                                                      spids: [16777215 37801]
                                                    )
                                                  ]
                                                  else_action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:build_libtool_libs)
                                                          op: Equal
                                                          rhs: {(no)}
                                                          spids: [37825]
                                                        )
                                                      ]
                                                      spids: [37825]
                                                    )
                                                  ]
                                                  spids: [37822 37829]
                                                )
                                              ]
                                              spids: [16777215 37754]
                                            )
                                          ]
                                          spids: [16777215 37832]
                                        )
                                      ]
                                      spids: [37716 37835]
                                    )
                                  ]
                                  spids: [16777215 37568]
                                )
                              ]
                              spids: [16777215 37838]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:deplibs)
                                  op: Equal
                                  rhs: {($ VSub_Name '$newdeplibs')}
                                  spids: [37845]
                                )
                              ]
                              spids: [37845]
                            )
                          ]
                          spids: [16777215 35132]
                        )
                      ]
                      spids: [16777215 37849]
                    )
                    (Case
                      to_match: {($ VSub_Name '$host')}
                      arms: [
                        (case_arm
                          pat_list: [{(Lit_Other '*') (-) (Lit_Other '*') (-darwin) (Lit_Other '*')}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:newdeplibs)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (Pipeline
                                                children: [
                                                  (C {($ VSub_Name '$ECHO')} 
                                                    {(DQ ('X ') ($ VSub_Name '$newdeplibs'))}
                                                  )
                                                  (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                    {
                                                      (SQ 
                                                        <
's% \\([^ $]*\\).ltframework% -framework \\1%g'
                                                        >
                                                      )
                                                    }
                                                  )
                                                ]
                                                negated: False
                                              )
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [37872 37889]
                                      )
                                    }
                                  spids: [37871]
                                )
                              ]
                              spids: [37871]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:new_inherited_linker_flags)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (Pipeline
                                                children: [
                                                  (C {($ VSub_Name '$ECHO')} 
                                                    {
                                                      (DQ ('X ') 
                                                        ($ VSub_Name '$new_inherited_linker_flags')
                                                      )
                                                    }
                                                  )
                                                  (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                    {
                                                      (SQ 
                                                        <
's% \\([^ $]*\\).ltframework% -framework \\1%g'
                                                        >
                                                      )
                                                    }
                                                  )
                                                ]
                                                negated: False
                                              )
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [37893 37910]
                                      )
                                    }
                                  spids: [37892]
                                )
                              ]
                              spids: [37892]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:deplibs)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (Pipeline
                                                children: [
                                                  (C {($ VSub_Name '$ECHO')} 
                                                    {(DQ ('X ') ($ VSub_Name '$deplibs'))}
                                                  )
                                                  (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                    {
                                                      (SQ 
                                                        <
's% \\([^ $]*\\).ltframework% -framework \\1%g'
                                                        >
                                                      )
                                                    }
                                                  )
                                                ]
                                                negated: False
                                              )
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [37914 37931]
                                      )
                                    }
                                  spids: [37913]
                                )
                              ]
                              spids: [37913]
                            )
                          ]
                          spids: [37863 37868 37934 16777215]
                        )
                      ]
                      spids: [37856 37860 37937]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:new_libs)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [37949]
                        )
                      ]
                      spids: [37949]
                    )
                    (ForEach
                      iter_name: path
                      iter_words: [{($ VSub_Name '$notinst_path')}]
                      do_arg_iter: False
                      body: 
                        (DoGroup
                          children: [
                            (Case
                              to_match: {(DQ (' ') ($ VSub_Name '$new_libs') (' '))}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '*') 
                                      (DQ (' -L') ($ VSub_Name '$path') (/) ($ VSub_Name '$objdir') (' ')) (Lit_Other '*')
                                    }
                                  ]
                                  spids: [37975 37984 37986 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Case
                                      to_match: {(DQ (' ') ($ VSub_Name '$deplibs') (' '))}
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') 
                                              (DQ (' -L') ($ VSub_Name '$path') (/) 
                                                ($ VSub_Name '$objdir') (' ')
                                              ) (Lit_Other '*')
                                            }
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:new_libs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$new_libs') (' -L') 
                                                        ($ VSub_Name '$path') (/) ($ VSub_Name '$objdir')
                                                      )
                                                    }
                                                  spids: [38016]
                                                )
                                              ]
                                              spids: [38016]
                                            )
                                          ]
                                          spids: [38004 38013 38025 16777215]
                                        )
                                      ]
                                      spids: [37993 38001 38028]
                                    )
                                  ]
                                  spids: [37989 37990 38031 16777215]
                                )
                              ]
                              spids: [37964 37972 38034]
                            )
                          ]
                          spids: [37961 38037]
                        )
                      spids: [37957 37959]
                    )
                    (ForEach
                      iter_name: deplib
                      iter_words: [{($ VSub_Name '$deplibs')}]
                      do_arg_iter: False
                      body: 
                        (DoGroup
                          children: [
                            (Case
                              to_match: {($ VSub_Name '$deplib')}
                              arms: [
                                (case_arm
                                  pat_list: [{(-L) (Lit_Other '*')}]
                                  action: [
                                    (Case
                                      to_match: {(DQ (' ') ($ VSub_Name '$new_libs') (' '))}
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (DQ (' ') ($ VSub_Name '$deplib') (' ')) 
                                              (Lit_Other '*')
                                            }
                                          ]
                                          spids: [38075 38082 38084 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:new_libs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$new_libs') (' ') 
                                                        ($ VSub_Name '$deplib')
                                                      )
                                                    }
                                                  spids: [38090]
                                                )
                                              ]
                                              spids: [38090]
                                            )
                                          ]
                                          spids: [38087 38088 38097 16777215]
                                        )
                                      ]
                                      spids: [38064 38072 38100]
                                    )
                                  ]
                                  spids: [38059 38061 38103 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:new_libs)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$new_libs') (' ') 
                                                ($ VSub_Name '$deplib')
                                              )
                                            }
                                          spids: [38109]
                                        )
                                      ]
                                      spids: [38109]
                                    )
                                  ]
                                  spids: [38106 38107 38116 16777215]
                                )
                              ]
                              spids: [38052 38056 38119]
                            )
                          ]
                          spids: [38049 38122]
                        )
                      spids: [38045 38047]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:deplibs)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$new_libs'))}
                          spids: [38125]
                        )
                      ]
                      spids: [38125]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:library_names)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [38136]
                        )
                      ]
                      spids: [38136]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:old_library)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [38139]
                        )
                      ]
                      spids: [38139]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:dlname)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [38142]
                        )
                      ]
                      spids: [38142]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$build_libtool_libs'))} {(Lit_Other '=')} 
                                  {(yes)}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$hardcode_into_libs'))} 
                                          {(Lit_Other '=')} {(yes)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:hardcode_libdirs)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [38186]
                                        )
                                      ]
                                      spids: [38186]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:dep_rpath)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [38189]
                                        )
                                      ]
                                      spids: [38189]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:rpath)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$finalize_rpath'))}
                                          spids: [38192]
                                        )
                                      ]
                                      spids: [38192]
                                    )
                                    (AndOr
                                      children: [
                                        (C {(test)} {(DQ ($ VSub_Name '$mode'))} 
                                          {(KW_Bang '!') (Lit_Other '=')} {(relink)}
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:rpath)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$compile_rpath') 
                                                    ($ VSub_Name '$rpath')
                                                  )
                                                }
                                              spids: [38211]
                                            )
                                          ]
                                          spids: [38211]
                                        )
                                      ]
                                      op_id: Op_DAmp
                                    )
                                    (ForEach
                                      iter_name: libdir
                                      iter_words: [{($ VSub_Name '$rpath')}]
                                      do_arg_iter: False
                                      body: 
                                        (DoGroup
                                          children: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(-n)} 
                                                          {
                                                            (DQ 
                                                              ($ VSub_Name 
'$hardcode_libdir_flag_spec'
                                                              )
                                                            )
                                                          }
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (C {(test)} {(-n)} 
                                                                  {
                                                                    (DQ 
                                                                      ($ VSub_Name 
'$hardcode_libdir_separator'
                                                                      )
                                                                    )
                                                                  }
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (If
                                                              arms: [
                                                                (if_arm
                                                                  cond: [
                                                                    (Sentence
                                                                      child: 
                                                                        (C {(test)} {(-z)} 
                                                                          {
                                                                            (DQ 
                                                                              ($ VSub_Name 
'$hardcode_libdirs'
                                                                              )
                                                                            )
                                                                          }
                                                                        )
                                                                      terminator: <Op_Semi ';'>
                                                                    )
                                                                  ]
                                                                  action: [
                                                                    (Assignment
                                                                      keyword: Assign_None
                                                                      pairs: [
                                                                        (assign_pair
                                                                          lhs: 
                                                                            (LhsName
                                                                              name: hardcode_libdirs
                                                                            )
                                                                          op: Equal
                                                                          rhs: 
                                                                            {
                                                                              (DQ 
                                                                                ($ VSub_Name 
'$libdir'
                                                                                )
                                                                              )
                                                                            }
                                                                          spids: [38272]
                                                                        )
                                                                      ]
                                                                      spids: [38272]
                                                                    )
                                                                  ]
                                                                  spids: [16777215 38269]
                                                                )
                                                              ]
                                                              else_action: [
                                                                (Case
                                                                  to_match: 
                                                                    {
                                                                      ($ VSub_Name 
'$hardcode_libdir_separator'
                                                                      ) ($ VSub_Name '$hardcode_libdirs') ($ VSub_Name '$hardcode_libdir_separator')
                                                                    }
                                                                  arms: [
                                                                    (case_arm
                                                                      pat_list: [
                                                                        {(Lit_Other '*') 
                                                                          (DQ 
                                                                            ($ VSub_Name 
'$hardcode_libdir_separator'
                                                                            ) ($ VSub_Name '$libdir') ($ VSub_Name '$hardcode_libdir_separator')
                                                                          ) (Lit_Other '*')
                                                                        }
                                                                      ]
                                                                      spids: [
38294
38301
38304
16777215
                                                                      ]
                                                                    )
                                                                    (case_arm
                                                                      pat_list: [{(Lit_Other '*')}]
                                                                      action: [
                                                                        (Assignment
                                                                          keyword: Assign_None
                                                                          pairs: [
                                                                            (assign_pair
                                                                              lhs: 
                                                                                (LhsName
                                                                                  name: 
hardcode_libdirs
                                                                                )
                                                                              op: Equal
                                                                              rhs: 
                                                                                {
                                                                                  (DQ 
                                                                                    ($ VSub_Name 
'$hardcode_libdirs'
                                                                                    ) ($ VSub_Name '$hardcode_libdir_separator') ($ VSub_Name '$libdir')
                                                                                  )
                                                                                }
                                                                              spids: [38311]
                                                                            )
                                                                          ]
                                                                          spids: [38311]
                                                                        )
                                                                      ]
                                                                      spids: [
38307
38308
38319
16777215
                                                                      ]
                                                                    )
                                                                  ]
                                                                  spids: [38285 38291 38322]
                                                                )
                                                              ]
                                                              spids: [38278 38325]
                                                            )
                                                          ]
                                                          spids: [16777215 38255]
                                                        )
                                                      ]
                                                      else_action: [
                                                        (C {(eval)} 
                                                          {(Lit_VarLike 'flag=') 
                                                            (EscapedLiteralPart
                                                              token: <Lit_EscapedChar '\\"'>
                                                            ) ($ VSub_Name '$hardcode_libdir_flag_spec') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                                          }
                                                        )
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:dep_rpath)
                                                              op: Equal
                                                              rhs: 
                                                                {
                                                                  (DQ ($ VSub_Name '$dep_rpath') (' ') 
                                                                    ($ VSub_Name '$flag')
                                                                  )
                                                                }
                                                              spids: [38339]
                                                            )
                                                          ]
                                                          spids: [38339]
                                                        )
                                                      ]
                                                      spids: [38328 38347]
                                                    )
                                                  ]
                                                  spids: [16777215 38241]
                                                )
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(-n)} 
                                                          {(DQ ($ VSub_Name '$runpath_var'))}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Case
                                                      to_match: 
                                                        {(DQ ($ VSub_Name '$perm_rpath') (' '))}
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [
                                                            {(Lit_Other '*') 
                                                              (DQ (' ') ($ VSub_Name '$libdir') (' ')) (Lit_Other '*')
                                                            }
                                                          ]
                                                          spids: [38374 38381 38383 16777215]
                                                        )
                                                        (case_arm
                                                          pat_list: [{(Lit_Other '*')}]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:perm_rpath)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ ($ VSub_Name '$perm_rpath') 
                                                                        (' ') ($ VSub_Name '$libdir')
                                                                      )
                                                                    }
                                                                  spids: [38389]
                                                                )
                                                              ]
                                                              spids: [38389]
                                                            )
                                                          ]
                                                          spids: [38386 38387 38396 16777215]
                                                        )
                                                      ]
                                                      spids: [38364 38371 38399]
                                                    )
                                                  ]
                                                  spids: [38350 38361]
                                                )
                                              ]
                                              spids: [16777215 38402]
                                            )
                                          ]
                                          spids: [38227 38405]
                                        )
                                      spids: [38223 38225]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-n)} 
                                                      {
                                                        (DQ 
                                                          ($ VSub_Name '$hardcode_libdir_separator')
                                                        )
                                                      }
                                                    )
                                                    (C {(test)} {(-n)} 
                                                      {(DQ ($ VSub_Name '$hardcode_libdirs'))}
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:libdir)
                                                  op: Equal
                                                  rhs: {(DQ ($ VSub_Name '$hardcode_libdirs'))}
                                                  spids: [38437]
                                                )
                                              ]
                                              spids: [38437]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(-n)} 
                                                          {
                                                            (DQ 
                                                              ($ VSub_Name 
'$hardcode_libdir_flag_spec_ld'
                                                              )
                                                            )
                                                          }
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (C {(eval)} 
                                                      {(Lit_VarLike 'dep_rpath=') 
                                                        (EscapedLiteralPart
                                                          token: <Lit_EscapedChar '\\"'>
                                                        ) ($ VSub_Name '$hardcode_libdir_flag_spec_ld') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                                      }
                                                    )
                                                  ]
                                                  spids: [16777215 38454]
                                                )
                                              ]
                                              else_action: [
                                                (C {(eval)} 
                                                  {(Lit_VarLike 'dep_rpath=') 
                                                    (EscapedLiteralPart
                                                      token: <Lit_EscapedChar '\\"'>
                                                    ) ($ VSub_Name '$hardcode_libdir_flag_spec') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                                  }
                                                )
                                              ]
                                              spids: [38465 38476]
                                            )
                                          ]
                                          spids: [16777215 38434]
                                        )
                                      ]
                                      spids: [16777215 38479]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-n)} 
                                                      {(DQ ($ VSub_Name '$runpath_var'))}
                                                    )
                                                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$perm_rpath'))})
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:rpath)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [38510]
                                                )
                                              ]
                                              spids: [38510]
                                            )
                                            (ForEach
                                              iter_name: dir
                                              iter_words: [{($ VSub_Name '$perm_rpath')}]
                                              do_arg_iter: False
                                              body: 
                                                (DoGroup
                                                  children: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:rpath)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$rpath') 
                                                                ($ VSub_Name '$dir') (':')
                                                              )
                                                            }
                                                          spids: [38525]
                                                        )
                                                      ]
                                                      spids: [38525]
                                                    )
                                                  ]
                                                  spids: [38522 38533]
                                                )
                                              spids: [38518 38520]
                                            )
                                            (C {(eval)} 
                                              {
                                                (DQ ($ VSub_Name '$runpath_var') ("='") 
                                                  ($ VSub_Name '$rpath') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ($ VSub_Name '$runpath_var') ("'; export ") 
                                                  ($ VSub_Name '$runpath_var')
                                                )
                                              }
                                            )
                                          ]
                                          spids: [16777215 38503]
                                        )
                                      ]
                                      spids: [16777215 38549]
                                    )
                                    (AndOr
                                      children: [
                                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$dep_rpath'))})
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:deplibs)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$dep_rpath') (' ') 
                                                    ($ VSub_Name '$deplibs')
                                                  )
                                                }
                                              spids: [38562]
                                            )
                                          ]
                                          spids: [38562]
                                        )
                                      ]
                                      op_id: Op_DAmp
                                    )
                                  ]
                                  spids: [16777215 38179]
                                )
                              ]
                              spids: [16777215 38570]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:shlibpath)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$finalize_shlibpath'))}
                                  spids: [38574]
                                )
                              ]
                              spids: [38574]
                            )
                            (AndOr
                              children: [
                                (C {(test)} {(DQ ($ VSub_Name '$mode'))} {(KW_Bang '!') (Lit_Other '=')} 
                                  {(relink)}
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:shlibpath)
                                      op: Equal
                                      rhs: 
                                        {
                                          (DQ ($ VSub_Name '$compile_shlibpath') 
                                            ($ VSub_Name '$shlibpath')
                                          )
                                        }
                                      spids: [38593]
                                    )
                                  ]
                                  spids: [38593]
                                )
                              ]
                              op_id: Op_DAmp
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$shlibpath'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(eval)} 
                                      {
                                        (DQ ($ VSub_Name '$shlibpath_var') ("='") 
                                          ($ VSub_Name '$shlibpath') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ($ VSub_Name '$shlibpath_var') ("'; export ") 
                                          ($ VSub_Name '$shlibpath_var')
                                        )
                                      }
                                    )
                                  ]
                                  spids: [16777215 38611]
                                )
                              ]
                              spids: [16777215 38627]
                            )
                            (C {(eval)} 
                              {(Lit_VarLike 'shared_ext=') 
                                (EscapedLiteralPart
                                  token: <Lit_EscapedChar '\\"'>
                                ) ($ VSub_Name '$shrext_cmds') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                              }
                            )
                            (C {(eval)} 
                              {(Lit_VarLike 'library_names=') 
                                (EscapedLiteralPart
                                  token: <Lit_EscapedChar '\\"'>
                                ) ($ VSub_Name '$library_names_spec') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                              }
                            )
                            (C {(set)} {(dummy)} {($ VSub_Name '$library_names')})
                            (C {(shift)})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:realname)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Number '$1'))}
                                  spids: [38661]
                                )
                              ]
                              spids: [38661]
                            )
                            (C {(shift)})
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$soname_spec'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(eval)} 
                                      {(Lit_VarLike 'soname=') 
                                        (EscapedLiteralPart
                                          token: <Lit_EscapedChar '\\"'>
                                        ) ($ VSub_Name '$soname_spec') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                      }
                                    )
                                  ]
                                  spids: [16777215 38682]
                                )
                              ]
                              else_action: [
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:soname)
                                      op: Equal
                                      rhs: {(DQ ($ VSub_Name '$realname'))}
                                      spids: [38696]
                                    )
                                  ]
                                  spids: [38696]
                                )
                              ]
                              spids: [38693 38702]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-z)} {(DQ ($ VSub_Name '$dlname'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:dlname)
                                          op: Equal
                                          rhs: {($ VSub_Name '$soname')}
                                          spids: [38719]
                                        )
                                      ]
                                      spids: [38719]
                                    )
                                  ]
                                  spids: [16777215 38716]
                                )
                              ]
                              spids: [16777215 38723]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:lib)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$output_objdir') (/) ($ VSub_Name '$realname'))
                                    }
                                  spids: [38727]
                                )
                              ]
                              spids: [38727]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:linknames)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [38735]
                                )
                              ]
                              spids: [38735]
                            )
                            (ForEach
                              iter_name: link
                              do_arg_iter: True
                              body: 
                                (DoGroup
                                  children: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:linknames)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$linknames') (' ') 
                                                ($ VSub_Name '$link')
                                              )
                                            }
                                          spids: [38746]
                                        )
                                      ]
                                      spids: [38746]
                                    )
                                  ]
                                  spids: [38743 38754]
                                )
                              spids: [16777215 16777215]
                            )
                            (AndOr
                              children: [
                                (C {(test)} {(-z)} {(DQ ($ VSub_Name '$pic_flag'))})
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:libobjs)
                                      op: Equal
                                      rhs: 
                                        {
                                          (CommandSubPart
                                            command_list: 
                                              (CommandList
                                                children: [
                                                  (Pipeline
                                                    children: [
                                                      (C {($ VSub_Name '$ECHO')} 
                                                        {(DQ (X) ($ VSub_Name '$libobjs'))}
                                                      )
                                                      (C {($ VSub_Name '$SP2NL')})
                                                      (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                        {(DQ ($ VSub_Name '$lo2o'))}
                                                      )
                                                      (C {($ VSub_Name '$NL2SP')})
                                                    ]
                                                    negated: False
                                                  )
                                                ]
                                              )
                                            left_token: <Left_Backtick '`'>
                                            spids: [38773 38798]
                                          )
                                        }
                                      spids: [38772]
                                    )
                                  ]
                                  spids: [38772]
                                )
                              ]
                              op_id: Op_DAmp
                            )
                            (AndOr
                              children: [
                                (C {(test)} {(DQ (X) ($ VSub_Name '$libobjs'))} {(Lit_Other '=')} 
                                  {(DQ ('X '))}
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:libobjs)
                                      op: Equal
                                      rhs: {(SQ )}
                                      spids: [38816]
                                    )
                                  ]
                                  spids: [38816]
                                )
                              ]
                              op_id: Op_DAmp
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:delfiles)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [38820]
                                )
                              ]
                              spids: [38820]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          children: [
                                            (C {(test)} {(-n)} {(DQ ($ VSub_Name '$export_symbols'))})
                                            (C {(test)} {(-n)} {(DQ ($ VSub_Name '$include_expsyms'))})
                                          ]
                                          op_id: Op_DAmp
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (AndOr
                                      children: [
                                        (C {($ VSub_Name '$opt_dry_run')})
                                        (C {(cp)} {(DQ ($ VSub_Name '$export_symbols'))} 
                                          {
                                            (DQ ($ VSub_Name '$output_objdir') (/) 
                                              ($ VSub_Name '$libname') (.uexp)
                                            )
                                          }
                                        )
                                      ]
                                      op_id: Op_DPipe
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:export_symbols)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$output_objdir') (/) 
                                                ($ VSub_Name '$libname') (.uexp)
                                              )
                                            }
                                          spids: [38865]
                                        )
                                      ]
                                      spids: [38865]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:delfiles)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$delfiles') (' ') 
                                                ($ VSub_Name '$export_symbols')
                                              )
                                            }
                                          spids: [38874]
                                        )
                                      ]
                                      spids: [38874]
                                    )
                                  ]
                                  spids: [16777215 38844]
                                )
                              ]
                              spids: [16777215 38882]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:orig_export_symbols)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [38886]
                                )
                              ]
                              spids: [38886]
                            )
                            (Case
                              to_match: {($ VSub_Name '$host_os')}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(cygwin) (Lit_Other '*')}
                                    {(mingw) (Lit_Other '*')}
                                    {(cegcc) (Lit_Other '*')}
                                  ]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-n)} 
                                                      {(DQ ($ VSub_Name '$export_symbols'))}
                                                    )
                                                    (C {(test)} {(-z)} 
                                                      {(DQ ($ VSub_Name '$export_symbols_regex'))}
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} 
                                                          {
                                                            (DQ (x) 
                                                              (CommandSubPart
                                                                command_list: 
                                                                  (CommandList
                                                                    children: [
                                                                      (C {($ VSub_Name '$SED')} {(1q)} 
                                                                        {
                                                                          ($ VSub_Name 
'$export_symbols'
                                                                          )
                                                                        }
                                                                      )
                                                                    ]
                                                                  )
                                                                left_token: <Left_Backtick '`'>
                                                                spids: [38945 38951]
                                                              )
                                                            )
                                                          } {(KW_Bang '!') (Lit_Other '=')} {(xEXPORTS)}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:orig_export_symbols)
                                                          op: Equal
                                                          rhs: {(DQ ($ VSub_Name '$export_symbols'))}
                                                          spids: [38987]
                                                        )
                                                      ]
                                                      spids: [38987]
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:export_symbols)
                                                          op: Equal
                                                          rhs: {(SQ )}
                                                          spids: [38993]
                                                        )
                                                      ]
                                                      spids: [38993]
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:always_export_symbols)
                                                          op: Equal
                                                          rhs: {(yes)}
                                                          spids: [38996]
                                                        )
                                                      ]
                                                      spids: [38996]
                                                    )
                                                  ]
                                                  spids: [16777215 38960]
                                                )
                                              ]
                                              spids: [16777215 39000]
                                            )
                                          ]
                                          spids: [16777215 38932]
                                        )
                                      ]
                                      spids: [16777215 39003]
                                    )
                                  ]
                                  spids: [38896 38908 39006 16777215]
                                )
                              ]
                              spids: [38889 38893 39009]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-z)} {(DQ ($ VSub_Name '$export_symbols'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} 
                                                      {(DQ ($ VSub_Name '$always_export_symbols'))} {(Lit_Other '=')} {(yes)}
                                                    )
                                                    (C {(test)} {(-n)} 
                                                      {(DQ ($ VSub_Name '$export_symbols_regex'))}
                                                    )
                                                  ]
                                                  op_id: Op_DPipe
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(func_verbose)} 
                                              {
                                                (DQ ('generating symbol list for ') 
                                                  (EscapedLiteralPart
                                                    token: <Lit_EscapedChar '\\`'>
                                                  ) ($ VSub_Name '$libname') (".la'")
                                                )
                                              }
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:export_symbols)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$output_objdir') (/) 
                                                        ($ VSub_Name '$libname') (.exp)
                                                      )
                                                    }
                                                  spids: [39067]
                                                )
                                              ]
                                              spids: [39067]
                                            )
                                            (AndOr
                                              children: [
                                                (C {($ VSub_Name '$opt_dry_run')})
                                                (C {($ VSub_Name '$RM')} 
                                                  {($ VSub_Name '$export_symbols')}
                                                )
                                              ]
                                              op_id: Op_DPipe
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:cmds)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$export_symbols_cmds')}
                                                  spids: [39085]
                                                )
                                              ]
                                              spids: [39085]
                                            )
                                            (Sentence
                                              child: 
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:save_ifs)
                                                      op: Equal
                                                      rhs: {(DQ ($ VSub_Name '$IFS'))}
                                                      spids: [39089]
                                                    )
                                                  ]
                                                  spids: [39089]
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:IFS)
                                                  op: Equal
                                                  rhs: {(SQ <'~'>)}
                                                  spids: [39095]
                                                )
                                              ]
                                              spids: [39095]
                                            )
                                            (ForEach
                                              iter_name: cmd
                                              iter_words: [{($ VSub_Name '$cmds')}]
                                              do_arg_iter: False
                                              body: 
                                                (DoGroup
                                                  children: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:IFS)
                                                          op: Equal
                                                          rhs: {(DQ ($ VSub_Name '$save_ifs'))}
                                                          spids: [39113]
                                                        )
                                                      ]
                                                      spids: [39113]
                                                    )
                                                    (C {(eval)} 
                                                      {(Lit_VarLike 'cmd=') 
                                                        (EscapedLiteralPart
                                                          token: <Lit_EscapedChar '\\"'>
                                                        ) ($ VSub_Name '$cmd') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                                      }
                                                    )
                                                    (C {(func_len)} {(DQ (' ') ($ VSub_Name '$cmd'))})
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:len)
                                                          op: Equal
                                                          rhs: {($ VSub_Name '$func_len_result')}
                                                          spids: [39135]
                                                        )
                                                      ]
                                                      spids: [39135]
                                                    )
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (AndOr
                                                                  children: [
                                                                    (C {(test)} 
                                                                      {(DQ ($ VSub_Name '$len'))} {(-lt)} {(DQ ($ VSub_Name '$max_cmd_len'))}
                                                                    )
                                                                    (C {(test)} 
                                                                      {
                                                                        (DQ 
                                                                          ($ VSub_Name '$max_cmd_len')
                                                                        )
                                                                      } {(-le)} {(-1)}
                                                                    )
                                                                  ]
                                                                  op_id: Op_DPipe
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (C {(func_show_eval)} 
                                                              {(DQ ($ VSub_Name '$cmd'))} {(SQ <'exit $?'>)}
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:skipped_export)
                                                                  op: Equal
                                                                  rhs: {(false)}
                                                                  spids: [39180]
                                                                )
                                                              ]
                                                              spids: [39180]
                                                            )
                                                          ]
                                                          spids: [16777215 39166]
                                                        )
                                                      ]
                                                      else_action: [
                                                        (C {(func_verbose)} 
                                                          {
                                                            (DQ 
                                                              (
'using reloadable object file for export list...'
                                                              )
                                                            )
                                                          }
                                                        )
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:skipped_export)
                                                              op: Equal
                                                              rhs: {(Lit_Other ':')}
                                                              spids: [39198]
                                                            )
                                                          ]
                                                          spids: [39198]
                                                        )
                                                        (ControlFlow
                                                          token: <ControlFlow_Break break>
                                                        )
                                                      ]
                                                      spids: [39184 39213]
                                                    )
                                                  ]
                                                  spids: [39110 39216]
                                                )
                                              spids: [39106 39108]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:IFS)
                                                  op: Equal
                                                  rhs: {(DQ ($ VSub_Name '$save_ifs'))}
                                                  spids: [39219]
                                                )
                                              ]
                                              spids: [39219]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (AndOr
                                                          children: [
                                                            (C {(test)} {(-n)} 
                                                              {
                                                                (DQ 
                                                                  ($ VSub_Name 
'$export_symbols_regex'
                                                                  )
                                                                )
                                                              }
                                                            )
                                                            (C {(test)} 
                                                              {
                                                                (DQ (X) 
                                                                  ($ VSub_Name '$skipped_export')
                                                                )
                                                              } {(KW_Bang '!') (Lit_Other '=')} {(DQ ('X:'))}
                                                            )
                                                          ]
                                                          op_id: Op_DAmp
                                                        )
                                                      terminator: <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: [16777215 39252]
                                                )
                                              ]
                                              spids: [16777215 39269]
                                            )
                                          ]
                                          spids: [16777215 39054]
                                        )
                                      ]
                                      spids: [16777215 39272]
                                    )
                                  ]
                                  spids: [16777215 39028]
                                )
                              ]
                              spids: [16777215 39275]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          children: [
                                            (C {(test)} {(-n)} {(DQ ($ VSub_Name '$export_symbols'))})
                                            (C {(test)} {(-n)} {(DQ ($ VSub_Name '$include_expsyms'))})
                                          ]
                                          op_id: Op_DAmp
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:tmp_export_symbols)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$export_symbols'))}
                                          spids: [39303]
                                        )
                                      ]
                                      spids: [39303]
                                    )
                                    (AndOr
                                      children: [
                                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$orig_export_symbols'))})
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:tmp_export_symbols)
                                              op: Equal
                                              rhs: {(DQ ($ VSub_Name '$orig_export_symbols'))}
                                              spids: [39319]
                                            )
                                          ]
                                          spids: [39319]
                                        )
                                      ]
                                      op_id: Op_DAmp
                                    )
                                    (AndOr
                                      children: [
                                        (C {($ VSub_Name '$opt_dry_run')})
                                        (C {(eval)} 
                                          {
                                            (SQ 
                                              <
'$ECHO "X$include_expsyms" | $Xsed | $SP2NL >> "$tmp_export_symbols"'
                                              >
                                            )
                                          }
                                        )
                                      ]
                                      op_id: Op_DPipe
                                    )
                                  ]
                                  spids: [16777215 39300]
                                )
                              ]
                              spids: [16777215 39336]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          children: [
                                            (C {(test)} {(DQ (X) ($ VSub_Name '$skipped_export'))} 
                                              {(KW_Bang '!') (Lit_Other '=')} {(DQ ('X:'))}
                                            )
                                            (C {(test)} {(-n)} 
                                              {(DQ ($ VSub_Name '$orig_export_symbols'))}
                                            )
                                          ]
                                          op_id: Op_DAmp
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(func_verbose)} 
                                      {
                                        (DQ ('filter symbol list for ') 
                                          (EscapedLiteralPart
                                            token: <Lit_EscapedChar '\\`'>
                                          ) ($ VSub_Name '$libname') (".la' to tag DATA exports")
                                        )
                                      }
                                    )
                                    (AndOr
                                      children: [
                                        (C {($ VSub_Name '$opt_dry_run')})
                                        (SimpleCommand
                                          words: [
                                            {($ VSub_Name '$SED')}
                                            {(-e)}
                                            {
                                              (SQ 
                                                <
'/[ ,]DATA/!d;s,\\(.*\\)\\([ \\,].*\\),s|^\\1$|\\1\\2|,'
                                                >
                                              )
                                            }
                                          ]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Less
                                              fd: 16777215
                                              arg_word: {($ VSub_Name '$export_symbols')}
                                              spids: [39416]
                                            )
                                            (Redir
                                              op_id: Redir_Great
                                              fd: 16777215
                                              arg_word: 
                                                {($ VSub_Name '$output_objdir') (/) 
                                                  ($ VSub_Name '$libname') (.filter)
                                                }
                                              spids: [39420]
                                            )
                                          ]
                                        )
                                      ]
                                      op_id: Op_DPipe
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:delfiles)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$delfiles') (' ') 
                                                ($ VSub_Name '$export_symbols') (' ') ($ VSub_Name '$output_objdir') (/) ($ VSub_Name '$libname') (.filter)
                                              )
                                            }
                                          spids: [39428]
                                        )
                                      ]
                                      spids: [39428]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:export_symbols)
                                          op: Equal
                                          rhs: 
                                            {($ VSub_Name '$output_objdir') (/) 
                                              ($ VSub_Name '$libname') (.def)
                                            }
                                          spids: [39441]
                                        )
                                      ]
                                      spids: [39441]
                                    )
                                    (AndOr
                                      children: [
                                        (C {($ VSub_Name '$opt_dry_run')})
                                        (SimpleCommand
                                          words: [
                                            {($ VSub_Name '$SED')}
                                            {(-f)}
                                            {($ VSub_Name '$output_objdir') (/) 
                                              ($ VSub_Name '$libname') (.filter)
                                            }
                                          ]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Less
                                              fd: 16777215
                                              arg_word: {($ VSub_Name '$orig_export_symbols')}
                                              spids: [39461]
                                            )
                                            (Redir
                                              op_id: Redir_Great
                                              fd: 16777215
                                              arg_word: {($ VSub_Name '$export_symbols')}
                                              spids: [39465]
                                            )
                                          ]
                                        )
                                      ]
                                      op_id: Op_DPipe
                                    )
                                  ]
                                  spids: [16777215 39367]
                                )
                              ]
                              spids: [16777215 39470]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:tmp_deplibs)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [39474]
                                )
                              ]
                              spids: [39474]
                            )
                            (ForEach
                              iter_name: test_deplib
                              iter_words: [{($ VSub_Name '$deplibs')}]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (Case
                                      to_match: {(DQ (' ') ($ VSub_Name '$convenience') (' '))}
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') 
                                              (DQ (' ') ($ VSub_Name '$test_deplib') (' ')) (Lit_Other '*')
                                            }
                                          ]
                                          spids: [39500 39507 39509 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:tmp_deplibs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$tmp_deplibs') (' ') 
                                                        ($ VSub_Name '$test_deplib')
                                                      )
                                                    }
                                                  spids: [39516]
                                                )
                                              ]
                                              spids: [39516]
                                            )
                                          ]
                                          spids: [39512 39513 39524 16777215]
                                        )
                                      ]
                                      spids: [39489 39497 39527]
                                    )
                                  ]
                                  spids: [39486 39530]
                                )
                              spids: [39482 39484]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:deplibs)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$tmp_deplibs'))}
                                  spids: [39533]
                                )
                              ]
                              spids: [39533]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$convenience'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-n)} 
                                                      {(DQ ($ VSub_Name '$whole_archive_flag_spec'))}
                                                    )
                                                    (AndOr
                                                      children: [
                                                        (C {(test)} 
                                                          {
                                                            (DQ 
                                                              ($ VSub_Name '$compiler_needs_object')
                                                            )
                                                          } {(Lit_Other '=')} {(yes)}
                                                        )
                                                        (C {(test)} {(-z)} 
                                                          {(DQ ($ VSub_Name '$libobjs'))}
                                                        )
                                                      ]
                                                      op_id: Op_DAmp
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:whole_archive_flag_spec)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [39600]
                                                )
                                              ]
                                              spids: [39600]
                                            )
                                          ]
                                          spids: [16777215 39589]
                                        )
                                      ]
                                      spids: [16777215 39603]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(-n)} 
                                                  {(DQ ($ VSub_Name '$whole_archive_flag_spec'))}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:save_libobjs)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$libobjs')}
                                                  spids: [39620]
                                                )
                                              ]
                                              spids: [39620]
                                            )
                                            (C {(eval)} 
                                              {(Lit_VarLike 'libobjs=') 
                                                (EscapedLiteralPart
                                                  token: <Lit_EscapedChar '\\"'>
                                                ) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (libobjs)
                                              } {($ VSub_Name '$whole_archive_flag_spec') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)}
                                            )
                                            (AndOr
                                              children: [
                                                (C {(test)} {(DQ (X) ($ VSub_Name '$libobjs'))} 
                                                  {(Lit_Other '=')} {(DQ ('X '))}
                                                )
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:libobjs)
                                                      op: Equal
                                                      rhs: {(SQ )}
                                                      spids: [39650]
                                                    )
                                                  ]
                                                  spids: [39650]
                                                )
                                              ]
                                              op_id: Op_DAmp
                                            )
                                          ]
                                          spids: [16777215 39617]
                                        )
                                      ]
                                      else_action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:gentop)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$output_objdir') (/) 
                                                    (${ VSub_Name outputname) (x)
                                                  )
                                                }
                                              spids: [39656]
                                            )
                                          ]
                                          spids: [39656]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:generated)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$generated') (' ') 
                                                    ($ VSub_Name '$gentop')
                                                  )
                                                }
                                              spids: [39667]
                                            )
                                          ]
                                          spids: [39667]
                                        )
                                        (C {(func_extract_archives)} {($ VSub_Name '$gentop')} 
                                          {($ VSub_Name '$convenience')}
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:libobjs)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$libobjs') (' ') 
                                                    ($ VSub_Name '$func_extract_archives_result')
                                                  )
                                                }
                                              spids: [39683]
                                            )
                                          ]
                                          spids: [39683]
                                        )
                                        (AndOr
                                          children: [
                                            (C {(test)} {(DQ (X) ($ VSub_Name '$libobjs'))} 
                                              {(Lit_Other '=')} {(DQ ('X '))}
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:libobjs)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [39706]
                                                )
                                              ]
                                              spids: [39706]
                                            )
                                          ]
                                          op_id: Op_DAmp
                                        )
                                      ]
                                      spids: [39653 39709]
                                    )
                                  ]
                                  spids: [16777215 39551]
                                )
                              ]
                              spids: [16777215 39712]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          children: [
                                            (C {(test)} {(DQ ($ VSub_Name '$thread_safe'))} 
                                              {(Lit_Other '=')} {(yes)}
                                            )
                                            (C {(test)} {(-n)} 
                                              {(DQ ($ VSub_Name '$thread_safe_flag_spec'))}
                                            )
                                          ]
                                          op_id: Op_DAmp
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(eval)} 
                                      {(Lit_VarLike 'flag=') 
                                        (EscapedLiteralPart
                                          token: <Lit_EscapedChar '\\"'>
                                        ) ($ VSub_Name '$thread_safe_flag_spec') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                      }
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:linker_flags)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$linker_flags') (' ') 
                                                ($ VSub_Name '$flag')
                                              )
                                            }
                                          spids: [39750]
                                        )
                                      ]
                                      spids: [39750]
                                    )
                                  ]
                                  spids: [16777215 39739]
                                )
                              ]
                              spids: [16777215 39758]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$mode'))} {(Lit_Other '=')} 
                                          {(relink)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (AndOr
                                      children: [
                                        (C {($ VSub_Name '$opt_dry_run')})
                                        (AndOr
                                          children: [
                                            (C {(eval)} 
                                              {
                                                (SQ 
                                                  <
'(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)'
                                                  >
                                                )
                                              }
                                            )
                                            (C {(exit)} {($ VSub_QMark '$?')})
                                          ]
                                          op_id: Op_DPipe
                                        )
                                      ]
                                      op_id: Op_DPipe
                                    )
                                  ]
                                  spids: [16777215 39779]
                                )
                              ]
                              spids: [16777215 39799]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          children: [
                                            (C {(test)} {(DQ ($ VSub_Name '$module'))} {(Lit_Other '=')} 
                                              {(yes)}
                                            )
                                            (C {(test)} {(-n)} {(DQ ($ VSub_Name '$module_cmds'))})
                                          ]
                                          op_id: Op_DAmp
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-n)} 
                                                      {(DQ ($ VSub_Name '$export_symbols'))}
                                                    )
                                                    (C {(test)} {(-n)} 
                                                      {(DQ ($ VSub_Name '$module_expsym_cmds'))}
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(eval)} 
                                              {(Lit_VarLike 'test_cmds=') 
                                                (EscapedLiteralPart
                                                  token: <Lit_EscapedChar '\\"'>
                                                ) ($ VSub_Name '$module_expsym_cmds') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                              }
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:cmds)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$module_expsym_cmds')}
                                                  spids: [39866]
                                                )
                                              ]
                                              spids: [39866]
                                            )
                                          ]
                                          spids: [16777215 39855]
                                        )
                                      ]
                                      else_action: [
                                        (C {(eval)} 
                                          {(Lit_VarLike 'test_cmds=') 
                                            (EscapedLiteralPart
                                              token: <Lit_EscapedChar '\\"'>
                                            ) ($ VSub_Name '$module_cmds') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                          }
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:cmds)
                                              op: Equal
                                              rhs: {($ VSub_Name '$module_cmds')}
                                              spids: [39881]
                                            )
                                          ]
                                          spids: [39881]
                                        )
                                      ]
                                      spids: [39870 39885]
                                    )
                                  ]
                                  spids: [16777215 39831]
                                )
                              ]
                              else_action: [
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: 
                                            (AndOr
                                              children: [
                                                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$export_symbols'))})
                                                (C {(test)} {(-n)} 
                                                  {(DQ ($ VSub_Name '$archive_expsym_cmds'))}
                                                )
                                              ]
                                              op_id: Op_DAmp
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [
                                        (C {(eval)} 
                                          {(Lit_VarLike 'test_cmds=') 
                                            (EscapedLiteralPart
                                              token: <Lit_EscapedChar '\\"'>
                                            ) ($ VSub_Name '$archive_expsym_cmds') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                          }
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:cmds)
                                              op: Equal
                                              rhs: {($ VSub_Name '$archive_expsym_cmds')}
                                              spids: [39923]
                                            )
                                          ]
                                          spids: [39923]
                                        )
                                      ]
                                      spids: [16777215 39912]
                                    )
                                  ]
                                  else_action: [
                                    (C {(eval)} 
                                      {(Lit_VarLike 'test_cmds=') 
                                        (EscapedLiteralPart
                                          token: <Lit_EscapedChar '\\"'>
                                        ) ($ VSub_Name '$archive_cmds') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                      }
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:cmds)
                                          op: Equal
                                          rhs: {($ VSub_Name '$archive_cmds')}
                                          spids: [39938]
                                        )
                                      ]
                                      spids: [39938]
                                    )
                                  ]
                                  spids: [39927 39942]
                                )
                              ]
                              spids: [39888 39945]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          children: [
                                            (C {(test)} {(DQ (X) ($ VSub_Name '$skipped_export'))} 
                                              {(KW_Bang '!') (Lit_Other '=')} {(DQ ('X:'))}
                                            )
                                            (AndOr
                                              children: [
                                                (C {(func_len)} {(DQ (' ') ($ VSub_Name '$test_cmds'))})
                                                (AndOr
                                                  children: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:len)
                                                          op: Equal
                                                          rhs: {($ VSub_Name '$func_len_result')}
                                                          spids: [39978]
                                                        )
                                                      ]
                                                      spids: [39978]
                                                    )
                                                    (AndOr
                                                      children: [
                                                        (C {(test)} {(DQ ($ VSub_Name '$len'))} {(-lt)} 
                                                          {(DQ ($ VSub_Name '$max_cmd_len'))}
                                                        )
                                                        (C {(test)} {(DQ ($ VSub_Name '$max_cmd_len'))} 
                                                          {(-le)} {(-1)}
                                                        )
                                                      ]
                                                      op_id: Op_DPipe
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              ]
                                              op_id: Op_DAmp
                                            )
                                          ]
                                          op_id: Op_DAmp
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [(C {(Lit_Other ':')})]
                                  spids: [16777215 40009]
                                )
                              ]
                              else_action: [
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: 
                                            (AndOr
                                              children: [
                                                (C {(test)} {(-z)} {(DQ ($ VSub_Name '$convenience'))})
                                                (C {(test)} {(-z)} 
                                                  {(DQ ($ VSub_Name '$whole_archive_flag_spec'))}
                                                )
                                              ]
                                              op_id: Op_DPipe
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:save_libobjs)
                                              op: Equal
                                              rhs: {($ VSub_Name '$libobjs')}
                                              spids: [40087]
                                            )
                                          ]
                                          spids: [40087]
                                        )
                                      ]
                                      spids: [16777215 40084]
                                    )
                                  ]
                                  spids: [16777215 40091]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:save_output)
                                      op: Equal
                                      rhs: {($ VSub_Name '$output')}
                                      spids: [40094]
                                    )
                                  ]
                                  spids: [40094]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:output_la)
                                      op: Equal
                                      rhs: 
                                        {
                                          (CommandSubPart
                                            command_list: 
                                              (CommandList
                                                children: [
                                                  (Pipeline
                                                    children: [
                                                      (C {($ VSub_Name '$ECHO')} 
                                                        {(DQ (X) ($ VSub_Name '$output'))}
                                                      )
                                                      (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                        {(DQ ($ VSub_Name '$basename'))}
                                                      )
                                                    ]
                                                    negated: False
                                                  )
                                                ]
                                              )
                                            left_token: <Left_Backtick '`'>
                                            spids: [40099 40116]
                                          )
                                        }
                                      spids: [40098]
                                    )
                                  ]
                                  spids: [40098]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:test_cmds)
                                      op: Equal
                                      rhs: {(SQ )}
                                      spids: [40128]
                                    )
                                  ]
                                  spids: [40128]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:concat_cmds)
                                      op: Equal
                                      rhs: {(SQ )}
                                      spids: [40131]
                                    )
                                  ]
                                  spids: [40131]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:objlist)
                                      op: Equal
                                      rhs: {(SQ )}
                                      spids: [40134]
                                    )
                                  ]
                                  spids: [40134]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:last_robj)
                                      op: Equal
                                      rhs: {(SQ )}
                                      spids: [40137]
                                    )
                                  ]
                                  spids: [40137]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:k)
                                      op: Equal
                                      rhs: {(1)}
                                      spids: [40140]
                                    )
                                  ]
                                  spids: [40140]
                                )
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: 
                                            (AndOr
                                              children: [
                                                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$save_libobjs'))})
                                                (AndOr
                                                  children: [
                                                    (C {(test)} 
                                                      {(DQ (X) ($ VSub_Name '$skipped_export'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ ('X:'))}
                                                    )
                                                    (C {(test)} {(DQ ($ VSub_Name '$with_gnu_ld'))} 
                                                      {(Lit_Other '=')} {(yes)}
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              ]
                                              op_id: Op_DAmp
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:output)
                                              op: Equal
                                              rhs: 
                                                {(${ VSub_Name output_objdir) (/) 
                                                  (${ VSub_Name output_la) (.lnkscript)
                                                }
                                              spids: [40187]
                                            )
                                          ]
                                          spids: [40187]
                                        )
                                        (C {(func_verbose)} 
                                          {(DQ ('creating GNU ld script: ') ($ VSub_Name '$output'))}
                                        )
                                        (SimpleCommand
                                          words: [{($ VSub_Name '$ECHO')} {(SQ <'INPUT ('>)}]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Great
                                              fd: 16777215
                                              arg_word: {($ VSub_Name '$output')}
                                              spids: [40212]
                                            )
                                          ]
                                        )
                                        (ForEach
                                          iter_name: obj
                                          iter_words: [{($ VSub_Name '$save_libobjs')}]
                                          do_arg_iter: False
                                          body: 
                                            (DoGroup
                                              children: [
                                                (SimpleCommand
                                                  words: [
                                                    {($ VSub_Name '$ECHO')}
                                                    {(DQ ($ VSub_Name '$obj'))}
                                                  ]
                                                  redirects: [
                                                    (Redir
                                                      op_id: Redir_DGreat
                                                      fd: 16777215
                                                      arg_word: {($ VSub_Name '$output')}
                                                      spids: [40235]
                                                    )
                                                  ]
                                                )
                                              ]
                                              spids: [40226 40240]
                                            )
                                          spids: [40222 16777215]
                                        )
                                        (SimpleCommand
                                          words: [{($ VSub_Name '$ECHO')} {(SQ <')'>)}]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_DGreat
                                              fd: 16777215
                                              arg_word: {($ VSub_Name '$output')}
                                              spids: [40249]
                                            )
                                          ]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:delfiles)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$delfiles') (' ') 
                                                    ($ VSub_Name '$output')
                                                  )
                                                }
                                              spids: [40254]
                                            )
                                          ]
                                          spids: [40254]
                                        )
                                      ]
                                      spids: [16777215 40184]
                                    )
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: 
                                            (AndOr
                                              children: [
                                                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$save_libobjs'))})
                                                (AndOr
                                                  children: [
                                                    (C {(test)} 
                                                      {(DQ (X) ($ VSub_Name '$skipped_export'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ ('X:'))}
                                                    )
                                                    (C {(test)} 
                                                      {(DQ (X) ($ VSub_Name '$file_list_spec'))} {(KW_Bang '!') (Lit_Other '=')} {(X)}
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              ]
                                              op_id: Op_DAmp
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:output)
                                              op: Equal
                                              rhs: 
                                                {(${ VSub_Name output_objdir) (/) 
                                                  (${ VSub_Name output_la) (.lnk)
                                                }
                                              spids: [40306]
                                            )
                                          ]
                                          spids: [40306]
                                        )
                                        (C {(func_verbose)} 
                                          {
                                            (DQ ('creating linker input file list: ') 
                                              ($ VSub_Name '$output')
                                            )
                                          }
                                        )
                                        (SimpleCommand
                                          words: [{(Lit_Other ':')}]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Great
                                              fd: 16777215
                                              arg_word: {($ VSub_Name '$output')}
                                              spids: [40327]
                                            )
                                          ]
                                        )
                                        (C {(set)} {(x)} {($ VSub_Name '$save_libobjs')})
                                        (C {(shift)})
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:firstobj)
                                              op: Equal
                                              rhs: {(SQ )}
                                              spids: [40342]
                                            )
                                          ]
                                          spids: [40342]
                                        )
                                        (If
                                          arms: [
                                            (if_arm
                                              cond: [
                                                (Sentence
                                                  child: 
                                                    (C {(test)} 
                                                      {(DQ ($ VSub_Name '$compiler_needs_object'))} {(Lit_Other '=')} {(yes)}
                                                    )
                                                  terminator: <Op_Semi ';'>
                                                )
                                              ]
                                              action: [
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:firstobj)
                                                      op: Equal
                                                      rhs: {(DQ ($ VSub_Number '$1') (' '))}
                                                      spids: [40361]
                                                    )
                                                  ]
                                                  spids: [40361]
                                                )
                                                (C {(shift)})
                                              ]
                                              spids: [16777215 40358]
                                            )
                                          ]
                                          spids: [16777215 40371]
                                        )
                                        (ForEach
                                          iter_name: obj
                                          do_arg_iter: True
                                          body: 
                                            (DoGroup
                                              children: [
                                                (SimpleCommand
                                                  words: [
                                                    {($ VSub_Name '$ECHO')}
                                                    {(DQ ($ VSub_Name '$obj'))}
                                                  ]
                                                  redirects: [
                                                    (Redir
                                                      op_id: Redir_DGreat
                                                      fd: 16777215
                                                      arg_word: {($ VSub_Name '$output')}
                                                      spids: [40388]
                                                    )
                                                  ]
                                                )
                                              ]
                                              spids: [40379 40393]
                                            )
                                          spids: [16777215 16777215]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:delfiles)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$delfiles') (' ') 
                                                    ($ VSub_Name '$output')
                                                  )
                                                }
                                              spids: [40396]
                                            )
                                          ]
                                          spids: [40396]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:output)
                                              op: Equal
                                              rhs: 
                                                {($ VSub_Name '$firstobj') 
                                                  (EscapedLiteralPart
                                                    token: <Lit_EscapedChar '\\"'>
                                                  ) ($ VSub_Name '$file_list_spec') ($ VSub_Name '$output') 
                                                  (EscapedLiteralPart
                                                    token: <Lit_EscapedChar '\\"'>
                                                  )
                                                }
                                              spids: [40404]
                                            )
                                          ]
                                          spids: [40404]
                                        )
                                      ]
                                      spids: [40262 40303]
                                    )
                                  ]
                                  else_action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$save_libobjs'))})
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(func_verbose)} 
                                              {(DQ ('creating reloadable object files...'))}
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:output)
                                                  op: Equal
                                                  rhs: 
                                                    {($ VSub_Name '$output_objdir') (/) 
                                                      ($ VSub_Name '$output_la') (-) (${ VSub_Name k) (.) ($ VSub_Name '$objext')
                                                    }
                                                  spids: [40436]
                                                )
                                              ]
                                              spids: [40436]
                                            )
                                            (C {(eval)} 
                                              {(Lit_VarLike 'test_cmds=') 
                                                (EscapedLiteralPart
                                                  token: <Lit_EscapedChar '\\"'>
                                                ) ($ VSub_Name '$reload_cmds') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                              }
                                            )
                                            (C {(func_len)} {(DQ (' ') ($ VSub_Name '$test_cmds'))})
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:len0)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$func_len_result')}
                                                  spids: [40464]
                                                )
                                              ]
                                              spids: [40464]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:len)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$len0')}
                                                  spids: [40468]
                                                )
                                              ]
                                              spids: [40468]
                                            )
                                            (ForEach
                                              iter_name: obj
                                              iter_words: [{($ VSub_Name '$save_libobjs')}]
                                              do_arg_iter: False
                                              body: 
                                                (DoGroup
                                                  children: [
                                                    (C {(func_len)} {(DQ (' ') ($ VSub_Name '$obj'))})
                                                    (C {(func_arith)} {($ VSub_Name '$len')} 
                                                      {(Lit_Other '+')} {($ VSub_Name '$func_len_result')}
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:len)
                                                          op: Equal
                                                          rhs: {($ VSub_Name '$func_arith_result')}
                                                          spids: [40506]
                                                        )
                                                      ]
                                                      spids: [40506]
                                                    )
                                                    (If
                                                      arms: [
                                                        (if_arm
                                                          cond: [
                                                            (Sentence
                                                              child: 
                                                                (AndOr
                                                                  children: [
                                                                    (C {(test)} 
                                                                      {
                                                                        (DQ (X) 
                                                                          ($ VSub_Name '$objlist')
                                                                        )
                                                                      } {(Lit_Other '=')} {(X)}
                                                                    )
                                                                    (C {(test)} 
                                                                      {(DQ ($ VSub_Name '$len'))} {(-lt)} {(DQ ($ VSub_Name '$max_cmd_len'))}
                                                                    )
                                                                  ]
                                                                  op_id: Op_DPipe
                                                                )
                                                              terminator: <Op_Semi ';'>
                                                            )
                                                          ]
                                                          action: [
                                                            (C {(func_append)} {(objlist)} 
                                                              {(DQ (' ') ($ VSub_Name '$obj'))}
                                                            )
                                                          ]
                                                          spids: [16777215 40539]
                                                        )
                                                      ]
                                                      else_action: [
                                                        (If
                                                          arms: [
                                                            (if_arm
                                                              cond: [
                                                                (Sentence
                                                                  child: 
                                                                    (C {(test)} 
                                                                      {(DQ ($ VSub_Name '$k'))} {(-eq)} {(1)}
                                                                    )
                                                                  terminator: <Op_Semi ';'>
                                                                )
                                                              ]
                                                              action: [
                                                                (C {(eval)} 
                                                                  {(Lit_VarLike 'concat_cmds=') 
                                                                    (EscapedLiteralPart
                                                                      token: <Lit_EscapedChar '\\"'>
                                                                    ) ($ VSub_Name '$reload_cmds')
                                                                  } {($ VSub_Name '$objlist')} 
                                                                  {($ VSub_Name '$last_robj') 
                                                                    (EscapedLiteralPart
                                                                      token: <Lit_EscapedChar '\\"'>
                                                                    )
                                                                  }
                                                                )
                                                              ]
                                                              spids: [16777215 40577]
                                                            )
                                                          ]
                                                          else_action: [
                                                            (C {(eval)} 
                                                              {(Lit_VarLike 'concat_cmds=') 
                                                                (EscapedLiteralPart
                                                                  token: <Lit_EscapedChar '\\"'>
                                                                ) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (concat_cmds) (Lit_Tilde '~') 
                                                                ($ VSub_Name '$reload_cmds')
                                                              } {($ VSub_Name '$objlist')} 
                                                              {($ VSub_Name '$last_robj') 
                                                                (Lit_Tilde '~') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (RM)
                                                              } {($ VSub_Name '$last_robj') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)}
                                                            )
                                                          ]
                                                          spids: [40596 40627]
                                                        )
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:last_robj)
                                                              op: Equal
                                                              rhs: 
                                                                {($ VSub_Name '$output_objdir') (/) 
                                                                  ($ VSub_Name '$output_la') (-) (${ VSub_Name k) (.) ($ VSub_Name '$objext')
                                                                }
                                                              spids: [40630]
                                                            )
                                                          ]
                                                          spids: [40630]
                                                        )
                                                        (C {(func_arith)} {($ VSub_Name '$k')} 
                                                          {(Lit_Other '+')} {(1)}
                                                        )
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:k)
                                                              op: Equal
                                                              rhs: 
                                                                {($ VSub_Name '$func_arith_result')}
                                                              spids: [40651]
                                                            )
                                                          ]
                                                          spids: [40651]
                                                        )
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:output)
                                                              op: Equal
                                                              rhs: 
                                                                {($ VSub_Name '$output_objdir') (/) 
                                                                  ($ VSub_Name '$output_la') (-) (${ VSub_Name k) (.) ($ VSub_Name '$objext')
                                                                }
                                                              spids: [40655]
                                                            )
                                                          ]
                                                          spids: [40655]
                                                        )
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:objlist)
                                                              op: Equal
                                                              rhs: {($ VSub_Name '$obj')}
                                                              spids: [40667]
                                                            )
                                                          ]
                                                          spids: [40667]
                                                        )
                                                        (C {(func_len)} 
                                                          {(DQ (' ') ($ VSub_Name '$last_robj'))}
                                                        )
                                                        (C {(func_arith)} {($ VSub_Name '$len0')} 
                                                          {(Lit_Other '+')} {($ VSub_Name '$func_len_result')}
                                                        )
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:len)
                                                              op: Equal
                                                              rhs: 
                                                                {($ VSub_Name '$func_arith_result')}
                                                              spids: [40688]
                                                            )
                                                          ]
                                                          spids: [40688]
                                                        )
                                                      ]
                                                      spids: [40552 40692]
                                                    )
                                                  ]
                                                  spids: [40486 40695]
                                                )
                                              spids: [40482 16777215]
                                            )
                                            (AndOr
                                              children: [
                                                (C {(test)} {(-z)} {(DQ ($ VSub_Name '$concat_cmds'))})
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:concat_cmds)
                                                      op: Equal
                                                      rhs: 
                                                        {($ VSub_Name '$concat_cmds') 
                                                          (Lit_Tilde '~')
                                                        }
                                                      spids: [40720]
                                                    )
                                                  ]
                                                  spids: [40720]
                                                )
                                              ]
                                              op_id: Op_DPipe
                                            )
                                            (C {(eval)} 
                                              {(Lit_VarLike 'concat_cmds=') 
                                                (EscapedLiteralPart
                                                  token: <Lit_EscapedChar '\\"'>
                                                ) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (Lit_LBrace '{') (concat_cmds) (Lit_RBrace '}') 
                                                ($ VSub_Name '$reload_cmds')
                                              } {($ VSub_Name '$objlist')} 
                                              {($ VSub_Name '$last_robj') 
                                                (EscapedLiteralPart
                                                  token: <Lit_EscapedChar '\\"'>
                                                )
                                              }
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(-n)} 
                                                          {(DQ ($ VSub_Name '$last_robj'))}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (C {(eval)} 
                                                      {(Lit_VarLike 'concat_cmds=') 
                                                        (EscapedLiteralPart
                                                          token: <Lit_EscapedChar '\\"'>
                                                        ) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (Lit_LBrace '{') (concat_cmds) (Lit_RBrace '}') 
                                                        (Lit_Tilde '~') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (RM)
                                                      } {($ VSub_Name '$last_robj') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)}
                                                    )
                                                  ]
                                                  spids: [16777215 40752]
                                                )
                                              ]
                                              spids: [16777215 40771]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:delfiles)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$delfiles') (' ') 
                                                        ($ VSub_Name '$output')
                                                      )
                                                    }
                                                  spids: [40774]
                                                )
                                              ]
                                              spids: [40774]
                                            )
                                          ]
                                          spids: [16777215 40426]
                                        )
                                      ]
                                      else_action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:output)
                                              op: Equal
                                              rhs: {(SQ )}
                                              spids: [40786]
                                            )
                                          ]
                                          spids: [40786]
                                        )
                                      ]
                                      spids: [40783 40789]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C 
                                                  {
                                                    (BracedVarSub
                                                      token: <VSub_Name skipped_export>
                                                      suffix_op: 
                                                        (StringUnary
                                                          op_id: VTest_Hyphen
                                                          arg_word: {(false)}
                                                        )
                                                      spids: [40795 40799]
                                                    )
                                                  }
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(func_verbose)} 
                                              {
                                                (DQ ('generating symbol list for ') 
                                                  (EscapedLiteralPart
                                                    token: <Lit_EscapedChar '\\`'>
                                                  ) ($ VSub_Name '$libname') (".la'")
                                                )
                                              }
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:export_symbols)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$output_objdir') (/) 
                                                        ($ VSub_Name '$libname') (.exp)
                                                      )
                                                    }
                                                  spids: [40815]
                                                )
                                              ]
                                              spids: [40815]
                                            )
                                            (AndOr
                                              children: [
                                                (C {($ VSub_Name '$opt_dry_run')})
                                                (C {($ VSub_Name '$RM')} 
                                                  {($ VSub_Name '$export_symbols')}
                                                )
                                              ]
                                              op_id: Op_DPipe
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:libobjs)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$output')}
                                                  spids: [40833]
                                                )
                                              ]
                                              spids: [40833]
                                            )
                                            (AndOr
                                              children: [
                                                (C {(test)} {(-z)} {(DQ ($ VSub_Name '$concat_cmds'))})
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:concat_cmds)
                                                      op: Equal
                                                      rhs: 
                                                        {($ VSub_Name '$concat_cmds') 
                                                          (Lit_Tilde '~')
                                                        }
                                                      spids: [40851]
                                                    )
                                                  ]
                                                  spids: [40851]
                                                )
                                              ]
                                              op_id: Op_DPipe
                                            )
                                            (C {(eval)} 
                                              {(Lit_VarLike 'concat_cmds=') 
                                                (EscapedLiteralPart
                                                  token: <Lit_EscapedChar '\\"'>
                                                ) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (concat_cmds) ($ VSub_Name '$export_symbols_cmds') 
                                                (EscapedLiteralPart
                                                  token: <Lit_EscapedChar '\\"'>
                                                )
                                              }
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(-n)} 
                                                          {(DQ ($ VSub_Name '$last_robj'))}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (C {(eval)} 
                                                      {(Lit_VarLike 'concat_cmds=') 
                                                        (EscapedLiteralPart
                                                          token: <Lit_EscapedChar '\\"'>
                                                        ) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (concat_cmds) (Lit_Tilde '~') 
                                                        (EscapedLiteralPart
                                                          token: <Lit_EscapedChar '\\$'>
                                                        ) (RM)
                                                      } {($ VSub_Name '$last_robj') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)}
                                                    )
                                                  ]
                                                  spids: [16777215 40877]
                                                )
                                              ]
                                              spids: [16777215 40894]
                                            )
                                          ]
                                          spids: [16777215 40802]
                                        )
                                      ]
                                      spids: [16777215 40897]
                                    )
                                    (AndOr
                                      children: [
                                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$save_libobjs'))})
                                        (C {(func_verbose)} 
                                          {
                                            (DQ ('creating a temporary reloadable object file: ') 
                                              ($ VSub_Name '$output')
                                            )
                                          }
                                        )
                                      ]
                                      op_id: Op_DAmp
                                    )
                                    (Sentence
                                      child: 
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:save_ifs)
                                              op: Equal
                                              rhs: {(DQ ($ VSub_Name '$IFS'))}
                                              spids: [40925]
                                            )
                                          ]
                                          spids: [40925]
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:IFS)
                                          op: Equal
                                          rhs: {(SQ <'~'>)}
                                          spids: [40931]
                                        )
                                      ]
                                      spids: [40931]
                                    )
                                    (ForEach
                                      iter_name: cmd
                                      iter_words: [{($ VSub_Name '$concat_cmds')}]
                                      do_arg_iter: False
                                      body: 
                                        (DoGroup
                                          children: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:IFS)
                                                  op: Equal
                                                  rhs: {(DQ ($ VSub_Name '$save_ifs'))}
                                                  spids: [40949]
                                                )
                                              ]
                                              spids: [40949]
                                            )
                                            (AndOr
                                              children: [
                                                (C {($ VSub_Name '$opt_silent')})
                                                (BraceGroup
                                                  children: [
                                                    (C {(func_quote_for_expand)} 
                                                      {(DQ ($ VSub_Name '$cmd'))}
                                                    )
                                                    (C {(eval)} 
                                                      {
                                                        (DQ ('func_echo ') 
                                                          ($ VSub_Name 
'$func_quote_for_expand_result'
                                                          )
                                                        )
                                                      }
                                                    )
                                                  ]
                                                  spids: [40959]
                                                )
                                              ]
                                              op_id: Op_DPipe
                                            )
                                            (AndOr
                                              children: [
                                                (C {($ VSub_Name '$opt_dry_run')})
                                                (AndOr
                                                  children: [
                                                    (C {(eval)} {(DQ ($ VSub_Name '$cmd'))})
                                                    (BraceGroup
                                                      children: [
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:lt_exit)
                                                              op: Equal
                                                              rhs: {($ VSub_QMark '$?')}
                                                              spids: [40995]
                                                            )
                                                          ]
                                                          spids: [40995]
                                                        )
                                                        (If
                                                          arms: [
                                                            (if_arm
                                                              cond: [
                                                                (Sentence
                                                                  child: 
                                                                    (C {(test)} 
                                                                      {(DQ ($ VSub_Name '$mode'))} {(Lit_Other '=')} {(relink)}
                                                                    )
                                                                  terminator: <Op_Semi ';'>
                                                                )
                                                              ]
                                                              action: [
                                                                (Subshell
                                                                  child: 
                                                                    (AndOr
                                                                      children: [
                                                                        (C {(cd)} 
                                                                          {
                                                                            (DQ 
                                                                              ($ VSub_Name 
'$output_objdir'
                                                                              )
                                                                            )
                                                                          }
                                                                        )
                                                                        (AndOr
                                                                          children: [
                                                                            (C {($ VSub_Name '$RM')} 
                                                                              {
                                                                                (DQ 
                                                                                  (${ VSub_Name 
realname
                                                                                  ) (T)
                                                                                )
                                                                              }
                                                                            )
                                                                            (C {($ VSub_Name '$MV')} 
                                                                              {
                                                                                (DQ 
                                                                                  (${ VSub_Name 
realname
                                                                                  ) (U)
                                                                                )
                                                                              } {(DQ ($ VSub_Name '$realname'))}
                                                                            )
                                                                          ]
                                                                          op_id: Op_DAmp
                                                                        )
                                                                      ]
                                                                      op_id: Op_DAmp
                                                                    )
                                                                  spids: [41020 41058]
                                                                )
                                                              ]
                                                              spids: [16777215 41017]
                                                            )
                                                          ]
                                                          spids: [16777215 41061]
                                                        )
                                                        (C {(exit)} {($ VSub_Name '$lt_exit')})
                                                      ]
                                                      spids: [40992]
                                                    )
                                                  ]
                                                  op_id: Op_DPipe
                                                )
                                              ]
                                              op_id: Op_DPipe
                                            )
                                          ]
                                          spids: [40946 41073]
                                        )
                                      spids: [40942 40944]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:IFS)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$save_ifs'))}
                                          spids: [41076]
                                        )
                                      ]
                                      spids: [41076]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-n)} 
                                                      {(DQ ($ VSub_Name '$export_symbols_regex'))}
                                                    )
                                                    (C 
                                                      {
                                                        (BracedVarSub
                                                          token: <VSub_Name skipped_export>
                                                          suffix_op: 
                                                            (StringUnary
                                                              op_id: VTest_Hyphen
                                                              arg_word: {(false)}
                                                            )
                                                          spids: [41095 41099]
                                                        )
                                                      }
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <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: [16777215 41102]
                                        )
                                      ]
                                      spids: [16777215 41119]
                                    )
                                  ]
                                  spids: [40412 41122]
                                )
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: 
                                            (C 
                                              {
                                                (BracedVarSub
                                                  token: <VSub_Name skipped_export>
                                                  suffix_op: 
                                                    (StringUnary
                                                      op_id: VTest_Hyphen
                                                      arg_word: {(false)}
                                                    )
                                                  spids: [41128 41132]
                                                )
                                              }
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [
                                        (If
                                          arms: [
                                            (if_arm
                                              cond: [
                                                (Sentence
                                                  child: 
                                                    (AndOr
                                                      children: [
                                                        (C {(test)} {(-n)} 
                                                          {(DQ ($ VSub_Name '$export_symbols'))}
                                                        )
                                                        (C {(test)} {(-n)} 
                                                          {(DQ ($ VSub_Name '$include_expsyms'))}
                                                        )
                                                      ]
                                                      op_id: Op_DAmp
                                                    )
                                                  terminator: <Op_Semi ';'>
                                                )
                                              ]
                                              action: [
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:tmp_export_symbols)
                                                      op: Equal
                                                      rhs: {(DQ ($ VSub_Name '$export_symbols'))}
                                                      spids: [41162]
                                                    )
                                                  ]
                                                  spids: [41162]
                                                )
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-n)} 
                                                      {(DQ ($ VSub_Name '$orig_export_symbols'))}
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:tmp_export_symbols)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ 
                                                                ($ VSub_Name '$orig_export_symbols')
                                                              )
                                                            }
                                                          spids: [41178]
                                                        )
                                                      ]
                                                      spids: [41178]
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                                (AndOr
                                                  children: [
                                                    (C {($ VSub_Name '$opt_dry_run')})
                                                    (C {(eval)} 
                                                      {
                                                        (SQ 
                                                          <
'$ECHO "X$include_expsyms" | $Xsed | $SP2NL >> "$tmp_export_symbols"'
                                                          >
                                                        )
                                                      }
                                                    )
                                                  ]
                                                  op_id: Op_DPipe
                                                )
                                              ]
                                              spids: [16777215 41159]
                                            )
                                          ]
                                          spids: [16777215 41195]
                                        )
                                        (If
                                          arms: [
                                            (if_arm
                                              cond: [
                                                (Sentence
                                                  child: 
                                                    (C {(test)} {(-n)} 
                                                      {(DQ ($ VSub_Name '$orig_export_symbols'))}
                                                    )
                                                  terminator: <Op_Semi ';'>
                                                )
                                              ]
                                              action: [
                                                (C {(func_verbose)} 
                                                  {
                                                    (DQ ('filter symbol list for ') 
                                                      (EscapedLiteralPart
                                                        token: <Lit_EscapedChar '\\`'>
                                                      ) ($ VSub_Name '$libname') (".la' to tag DATA exports")
                                                    )
                                                  }
                                                )
                                                (AndOr
                                                  children: [
                                                    (C {($ VSub_Name '$opt_dry_run')})
                                                    (SimpleCommand
                                                      words: [
                                                        {($ VSub_Name '$SED')}
                                                        {(-e)}
                                                        {
                                                          (SQ 
                                                            <
'/[ ,]DATA/!d;s,\\(.*\\)\\([ \\,].*\\),s|^\\1$|\\1\\2|,'
                                                            >
                                                          )
                                                        }
                                                      ]
                                                      redirects: [
                                                        (Redir
                                                          op_id: Redir_Less
                                                          fd: 16777215
                                                          arg_word: {($ VSub_Name '$export_symbols')}
                                                          spids: [41259]
                                                        )
                                                        (Redir
                                                          op_id: Redir_Great
                                                          fd: 16777215
                                                          arg_word: 
                                                            {($ VSub_Name '$output_objdir') (/) 
                                                              ($ VSub_Name '$libname') (.filter)
                                                            }
                                                          spids: [41263]
                                                        )
                                                      ]
                                                    )
                                                  ]
                                                  op_id: Op_DPipe
                                                )
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:delfiles)
                                                      op: Equal
                                                      rhs: 
                                                        {
                                                          (DQ ($ VSub_Name '$delfiles') (' ') 
                                                            ($ VSub_Name '$export_symbols') (' ') ($ VSub_Name '$output_objdir') (/) ($ VSub_Name '$libname') (.filter)
                                                          )
                                                        }
                                                      spids: [41271]
                                                    )
                                                  ]
                                                  spids: [41271]
                                                )
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:export_symbols)
                                                      op: Equal
                                                      rhs: 
                                                        {($ VSub_Name '$output_objdir') (/) 
                                                          ($ VSub_Name '$libname') (.def)
                                                        }
                                                      spids: [41284]
                                                    )
                                                  ]
                                                  spids: [41284]
                                                )
                                                (AndOr
                                                  children: [
                                                    (C {($ VSub_Name '$opt_dry_run')})
                                                    (SimpleCommand
                                                      words: [
                                                        {($ VSub_Name '$SED')}
                                                        {(-f)}
                                                        {($ VSub_Name '$output_objdir') (/) 
                                                          ($ VSub_Name '$libname') (.filter)
                                                        }
                                                      ]
                                                      redirects: [
                                                        (Redir
                                                          op_id: Redir_Less
                                                          fd: 16777215
                                                          arg_word: 
                                                            {($ VSub_Name '$orig_export_symbols')}
                                                          spids: [41304]
                                                        )
                                                        (Redir
                                                          op_id: Redir_Great
                                                          fd: 16777215
                                                          arg_word: {($ VSub_Name '$export_symbols')}
                                                          spids: [41308]
                                                        )
                                                      ]
                                                    )
                                                  ]
                                                  op_id: Op_DPipe
                                                )
                                              ]
                                              spids: [16777215 41210]
                                            )
                                          ]
                                          spids: [16777215 41313]
                                        )
                                      ]
                                      spids: [16777215 41135]
                                    )
                                  ]
                                  spids: [16777215 41316]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:libobjs)
                                      op: Equal
                                      rhs: {($ VSub_Name '$output')}
                                      spids: [41320]
                                    )
                                  ]
                                  spids: [41320]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:output)
                                      op: Equal
                                      rhs: {($ VSub_Name '$save_output')}
                                      spids: [41328]
                                    )
                                  ]
                                  spids: [41328]
                                )
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: 
                                            (AndOr
                                              children: [
                                                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$convenience'))})
                                                (C {(test)} {(-n)} 
                                                  {(DQ ($ VSub_Name '$whole_archive_flag_spec'))}
                                                )
                                              ]
                                              op_id: Op_DAmp
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [
                                        (C {(eval)} 
                                          {(Lit_VarLike 'libobjs=') 
                                            (EscapedLiteralPart
                                              token: <Lit_EscapedChar '\\"'>
                                            ) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (libobjs)
                                          } {($ VSub_Name '$whole_archive_flag_spec') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)}
                                        )
                                        (AndOr
                                          children: [
                                            (C {(test)} {(DQ (X) ($ VSub_Name '$libobjs'))} 
                                              {(Lit_Other '=')} {(DQ ('X '))}
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:libobjs)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [41383]
                                                )
                                              ]
                                              spids: [41383]
                                            )
                                          ]
                                          op_id: Op_DAmp
                                        )
                                      ]
                                      spids: [16777215 41354]
                                    )
                                  ]
                                  spids: [16777215 41386]
                                )
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: 
                                            (AndOr
                                              children: [
                                                (C {(test)} {(DQ ($ VSub_Name '$module'))} 
                                                  {(Lit_Other '=')} {(yes)}
                                                )
                                                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$module_cmds'))})
                                              ]
                                              op_id: Op_DAmp
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [
                                        (If
                                          arms: [
                                            (if_arm
                                              cond: [
                                                (Sentence
                                                  child: 
                                                    (AndOr
                                                      children: [
                                                        (C {(test)} {(-n)} 
                                                          {(DQ ($ VSub_Name '$export_symbols'))}
                                                        )
                                                        (C {(test)} {(-n)} 
                                                          {(DQ ($ VSub_Name '$module_expsym_cmds'))}
                                                        )
                                                      ]
                                                      op_id: Op_DAmp
                                                    )
                                                  terminator: <Op_Semi ';'>
                                                )
                                              ]
                                              action: [
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:cmds)
                                                      op: Equal
                                                      rhs: {($ VSub_Name '$module_expsym_cmds')}
                                                      spids: [41453]
                                                    )
                                                  ]
                                                  spids: [41453]
                                                )
                                              ]
                                              spids: [16777215 41450]
                                            )
                                          ]
                                          else_action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:cmds)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$module_cmds')}
                                                  spids: [41460]
                                                )
                                              ]
                                              spids: [41460]
                                            )
                                          ]
                                          spids: [41457 41464]
                                        )
                                      ]
                                      spids: [16777215 41426]
                                    )
                                  ]
                                  else_action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-n)} 
                                                      {(DQ ($ VSub_Name '$export_symbols'))}
                                                    )
                                                    (C {(test)} {(-n)} 
                                                      {(DQ ($ VSub_Name '$archive_expsym_cmds'))}
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:cmds)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$archive_expsym_cmds')}
                                                  spids: [41494]
                                                )
                                              ]
                                              spids: [41494]
                                            )
                                          ]
                                          spids: [16777215 41491]
                                        )
                                      ]
                                      else_action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:cmds)
                                              op: Equal
                                              rhs: {($ VSub_Name '$archive_cmds')}
                                              spids: [41501]
                                            )
                                          ]
                                          spids: [41501]
                                        )
                                      ]
                                      spids: [41498 41505]
                                    )
                                  ]
                                  spids: [41467 41508]
                                )
                              ]
                              spids: [40015 41511]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$delfiles'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(eval)} 
                                      {(Lit_VarLike 'cmds=') 
                                        (EscapedLiteralPart
                                          token: <Lit_EscapedChar '\\"'>
                                        ) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (cmds) (Lit_Tilde '~') 
                                        (EscapedLiteralPart
                                          token: <Lit_EscapedChar '\\$'>
                                        ) (RM)
                                      } {($ VSub_Name '$delfiles') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)}
                                    )
                                  ]
                                  spids: [16777215 41526]
                                )
                              ]
                              spids: [16777215 41547]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$dlprefiles'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:gentop)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$output_objdir') (/) 
                                                (${ VSub_Name outputname) (x)
                                              )
                                            }
                                          spids: [41569]
                                        )
                                      ]
                                      spids: [41569]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:generated)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$generated') (' ') 
                                                ($ VSub_Name '$gentop')
                                              )
                                            }
                                          spids: [41580]
                                        )
                                      ]
                                      spids: [41580]
                                    )
                                    (C {(func_extract_archives)} {($ VSub_Name '$gentop')} 
                                      {($ VSub_Name '$dlprefiles')}
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:libobjs)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$libobjs') (' ') 
                                                ($ VSub_Name '$func_extract_archives_result')
                                              )
                                            }
                                          spids: [41596]
                                        )
                                      ]
                                      spids: [41596]
                                    )
                                    (AndOr
                                      children: [
                                        (C {(test)} {(DQ (X) ($ VSub_Name '$libobjs'))} 
                                          {(Lit_Other '=')} {(DQ ('X '))}
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:libobjs)
                                              op: Equal
                                              rhs: {(SQ )}
                                              spids: [41619]
                                            )
                                          ]
                                          spids: [41619]
                                        )
                                      ]
                                      op_id: Op_DAmp
                                    )
                                  ]
                                  spids: [16777215 41566]
                                )
                              ]
                              spids: [16777215 41622]
                            )
                            (Sentence
                              child: 
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:save_ifs)
                                      op: Equal
                                      rhs: {(DQ ($ VSub_Name '$IFS'))}
                                      spids: [41626]
                                    )
                                  ]
                                  spids: [41626]
                                )
                              terminator: <Op_Semi ';'>
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:IFS)
                                  op: Equal
                                  rhs: {(SQ <'~'>)}
                                  spids: [41632]
                                )
                              ]
                              spids: [41632]
                            )
                            (ForEach
                              iter_name: cmd
                              iter_words: [{($ VSub_Name '$cmds')}]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:IFS)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$save_ifs'))}
                                          spids: [41650]
                                        )
                                      ]
                                      spids: [41650]
                                    )
                                    (C {(eval)} 
                                      {(Lit_VarLike 'cmd=') 
                                        (EscapedLiteralPart
                                          token: <Lit_EscapedChar '\\"'>
                                        ) ($ VSub_Name '$cmd') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                      }
                                    )
                                    (AndOr
                                      children: [
                                        (C {($ VSub_Name '$opt_silent')})
                                        (BraceGroup
                                          children: [
                                            (C {(func_quote_for_expand)} {(DQ ($ VSub_Name '$cmd'))})
                                            (C {(eval)} 
                                              {
                                                (DQ ('func_echo ') 
                                                  ($ VSub_Name '$func_quote_for_expand_result')
                                                )
                                              }
                                            )
                                          ]
                                          spids: [41668]
                                        )
                                      ]
                                      op_id: Op_DPipe
                                    )
                                    (AndOr
                                      children: [
                                        (C {($ VSub_Name '$opt_dry_run')})
                                        (AndOr
                                          children: [
                                            (C {(eval)} {(DQ ($ VSub_Name '$cmd'))})
                                            (BraceGroup
                                              children: [
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:lt_exit)
                                                      op: Equal
                                                      rhs: {($ VSub_QMark '$?')}
                                                      spids: [41704]
                                                    )
                                                  ]
                                                  spids: [41704]
                                                )
                                                (If
                                                  arms: [
                                                    (if_arm
                                                      cond: [
                                                        (Sentence
                                                          child: 
                                                            (C {(test)} {(DQ ($ VSub_Name '$mode'))} 
                                                              {(Lit_Other '=')} {(relink)}
                                                            )
                                                          terminator: <Op_Semi ';'>
                                                        )
                                                      ]
                                                      action: [
                                                        (Subshell
                                                          child: 
                                                            (AndOr
                                                              children: [
                                                                (C {(cd)} 
                                                                  {
                                                                    (DQ 
                                                                      ($ VSub_Name '$output_objdir')
                                                                    )
                                                                  }
                                                                )
                                                                (AndOr
                                                                  children: [
                                                                    (C {($ VSub_Name '$RM')} 
                                                                      {
                                                                        (DQ (${ VSub_Name realname) 
                                                                          (T)
                                                                        )
                                                                      }
                                                                    )
                                                                    (C {($ VSub_Name '$MV')} 
                                                                      {
                                                                        (DQ (${ VSub_Name realname) 
                                                                          (U)
                                                                        )
                                                                      } {(DQ ($ VSub_Name '$realname'))}
                                                                    )
                                                                  ]
                                                                  op_id: Op_DAmp
                                                                )
                                                              ]
                                                              op_id: Op_DAmp
                                                            )
                                                          spids: [41729 41767]
                                                        )
                                                      ]
                                                      spids: [16777215 41726]
                                                    )
                                                  ]
                                                  spids: [16777215 41770]
                                                )
                                                (C {(exit)} {($ VSub_Name '$lt_exit')})
                                              ]
                                              spids: [41701]
                                            )
                                          ]
                                          op_id: Op_DPipe
                                        )
                                      ]
                                      op_id: Op_DPipe
                                    )
                                  ]
                                  spids: [41647 41782]
                                )
                              spids: [41643 41645]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:IFS)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$save_ifs'))}
                                  spids: [41785]
                                )
                              ]
                              spids: [41785]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$mode'))} {(Lit_Other '=')} 
                                          {(relink)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (AndOr
                                      children: [
                                        (C {($ VSub_Name '$opt_dry_run')})
                                        (AndOr
                                          children: [
                                            (C {(eval)} 
                                              {
                                                (SQ 
                                                  <
'(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)'
                                                  >
                                                )
                                              }
                                            )
                                            (C {(exit)} {($ VSub_QMark '$?')})
                                          ]
                                          op_id: Op_DPipe
                                        )
                                      ]
                                      op_id: Op_DPipe
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$convenience'))})
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(-z)} 
                                                          {
                                                            (DQ 
                                                              ($ VSub_Name '$whole_archive_flag_spec')
                                                            )
                                                          }
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (C {(func_show_eval)} {(SQ <'${RM}r "$gentop"'>)})
                                                  ]
                                                  spids: [16777215 41855]
                                                )
                                              ]
                                              spids: [16777215 41865]
                                            )
                                          ]
                                          spids: [16777215 41841]
                                        )
                                      ]
                                      spids: [16777215 41868]
                                    )
                                    (C {(exit)} {($ VSub_Name '$EXIT_SUCCESS')})
                                  ]
                                  spids: [16777215 41809]
                                )
                              ]
                              spids: [16777215 41877]
                            )
                            (ForEach
                              iter_name: linkname
                              iter_words: [{($ VSub_Name '$linknames')}]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(DQ ($ VSub_Name '$realname'))} 
                                                  {(KW_Bang '!') (Lit_Other '=')} {(DQ ($ VSub_Name '$linkname'))}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (C {(func_show_eval)} 
                                              {
                                                (SQ 
                                                  <
'(cd "$output_objdir" && $RM "$linkname" && $LN_S "$realname" "$linkname")'
                                                  >
                                                )
                                              } {(SQ <'exit $?'>)}
                                            )
                                          ]
                                          spids: [16777215 41913]
                                        )
                                      ]
                                      spids: [16777215 41927]
                                    )
                                  ]
                                  spids: [41894 41930]
                                )
                              spids: [41890 41892]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          children: [
                                            (C {(test)} {(DQ ($ VSub_Name '$module'))} {(Lit_Other '=')} 
                                              {(yes)}
                                            )
                                            (C {(test)} {(DQ ($ VSub_Name '$export_dynamic'))} 
                                              {(Lit_Other '=')} {(yes)}
                                            )
                                          ]
                                          op_id: Op_DPipe
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:dlname)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$soname'))}
                                          spids: [41970]
                                        )
                                      ]
                                      spids: [41970]
                                    )
                                  ]
                                  spids: [16777215 41963]
                                )
                              ]
                              spids: [16777215 41976]
                            )
                          ]
                          spids: [16777215 38163]
                        )
                      ]
                      spids: [16777215 41979]
                    )
                  ]
                  spids: [32578 32579 41982 16777215]
                )
                (case_arm
                  pat_list: [{(obj)}]
                  action: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (AndOr
                                  children: [
                                    (C {(test)} {(-n)} 
                                      {(DQ ($ VSub_Name '$dlfiles') ($ VSub_Name '$dlprefiles'))}
                                    )
                                    (C {(test)} {(DQ ($ VSub_Name '$dlself'))} 
                                      {(KW_Bang '!') (Lit_Other '=')} {(no)}
                                    )
                                  ]
                                  op_id: Op_DPipe
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {(func_warning)} 
                              {
                                (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                  ("-dlopen' is ignored for objects")
                                )
                              }
                            )
                          ]
                          spids: [16777215 42015]
                        )
                      ]
                      spids: [16777215 42026]
                    )
                    (Case
                      to_match: {(DQ (' ') ($ VSub_Name '$deplibs'))}
                      arms: [
                        (case_arm
                          pat_list: [
                            {(Lit_Other '*') (EscapedLiteralPart token:<Lit_EscapedChar '\\ '>) (-l) 
                              (Lit_Other '*')
                            }
                            {(Lit_Other '*') (EscapedLiteralPart token:<Lit_EscapedChar '\\ '>) (-L) 
                              (Lit_Other '*')
                            }
                          ]
                          action: [
                            (C {(func_warning)} 
                              {
                                (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ("-l' and ") 
                                  (EscapedLiteralPart
                                    token: <Lit_EscapedChar '\\`'>
                                  ) ("-L' are ignored for objects")
                                )
                              }
                            )
                          ]
                          spids: [42040 42051 42063 16777215]
                        )
                      ]
                      spids: [42030 42037 42066]
                    )
                    (AndOr
                      children: [
                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$rpath'))})
                        (C {(func_warning)} 
                          {
                            (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                              ("-rpath' is ignored for objects")
                            )
                          }
                        )
                      ]
                      op_id: Op_DAmp
                    )
                    (AndOr
                      children: [
                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$xrpath'))})
                        (C {(func_warning)} 
                          {
                            (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                              ("-R' is ignored for objects")
                            )
                          }
                        )
                      ]
                      op_id: Op_DAmp
                    )
                    (AndOr
                      children: [
                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$vinfo'))})
                        (C {(func_warning)} 
                          {
                            (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                              ("-version-info' is ignored for objects")
                            )
                          }
                        )
                      ]
                      op_id: Op_DAmp
                    )
                    (AndOr
                      children: [
                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$release'))})
                        (C {(func_warning)} 
                          {
                            (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                              ("-release' is ignored for objects")
                            )
                          }
                        )
                      ]
                      op_id: Op_DAmp
                    )
                    (Case
                      to_match: {($ VSub_Name '$output')}
                      arms: [
                        (case_arm
                          pat_list: [{(Lit_Other '*') (.lo)}]
                          action: [
                            (AndOr
                              children: [
                                (C {(test)} {(-n)} 
                                  {(DQ ($ VSub_Name '$objs') ($ VSub_Name '$old_deplibs'))}
                                )
                                (C {(func_fatal_error)} 
                                  {
                                    (DQ ('cannot build library object ') 
                                      (EscapedLiteralPart
                                        token: <Lit_EscapedChar '\\`'>
                                      ) ($ VSub_Name '$output') ("' from non-libtool objects")
                                    )
                                  }
                                )
                              ]
                              op_id: Op_DAmp
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:libobj)
                                  op: Equal
                                  rhs: {($ VSub_Name '$output')}
                                  spids: [42190]
                                )
                              ]
                              spids: [42190]
                            )
                            (C {(func_lo2o)} {(DQ ($ VSub_Name '$libobj'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:obj)
                                  op: Equal
                                  rhs: {($ VSub_Name '$func_lo2o_result')}
                                  spids: [42201]
                                )
                              ]
                              spids: [42201]
                            )
                          ]
                          spids: [42161 42163 42205 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*')}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:libobj)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [42212]
                                )
                              ]
                              spids: [42212]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:obj)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$output'))}
                                  spids: [42215]
                                )
                              ]
                              spids: [42215]
                            )
                          ]
                          spids: [42208 42209 42221 16777215]
                        )
                      ]
                      spids: [42154 42158 42224]
                    )
                    (AndOr
                      children: [
                        (C {($ VSub_Name '$opt_dry_run')})
                        (C {($ VSub_Name '$RM')} {($ VSub_Name '$obj')} {($ VSub_Name '$libobj')})
                      ]
                      op_id: Op_DPipe
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:reload_conv_objs)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [42260]
                        )
                      ]
                      spids: [42260]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:gentop)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [42263]
                        )
                      ]
                      spids: [42263]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [(assign_pair lhs:(LhsName name:wl) op:Equal rhs:{(SQ )} spids:[42278])]
                      spids: [42278]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$convenience'))})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(-n)} 
                                          {(DQ ($ VSub_Name '$whole_archive_flag_spec'))}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(eval)} 
                                      {(Lit_VarLike 'tmp_whole_archive_flags=') 
                                        (EscapedLiteralPart
                                          token: <Lit_EscapedChar '\\"'>
                                        ) ($ VSub_Name '$whole_archive_flag_spec') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                      }
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:reload_conv_objs)
                                          op: Equal
                                          rhs: 
                                            {($ VSub_Name '$reload_objs') 
                                              (EscapedLiteralPart
                                                token: <Lit_EscapedChar '\\ '>
                                              ) 
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (Pipeline
                                                        children: [
                                                          (C {($ VSub_Name '$ECHO')} 
                                                            {
                                                              (DQ (X) 
                                                                ($ VSub_Name 
'$tmp_whole_archive_flags'
                                                                )
                                                              )
                                                            }
                                                          )
                                                          (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                            {(SQ <'s|,| |g'>)}
                                                          )
                                                        ]
                                                        negated: False
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [42321 42338]
                                              )
                                            }
                                          spids: [42318]
                                        )
                                      ]
                                      spids: [42318]
                                    )
                                  ]
                                  spids: [16777215 42307]
                                )
                              ]
                              else_action: [
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:gentop)
                                      op: Equal
                                      rhs: 
                                        {
                                          (DQ ($ VSub_Name '$output_objdir') (/) (${ VSub_Name obj) (x))
                                        }
                                      spids: [42344]
                                    )
                                  ]
                                  spids: [42344]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:generated)
                                      op: Equal
                                      rhs: 
                                        {
                                          (DQ ($ VSub_Name '$generated') (' ') ($ VSub_Name '$gentop'))
                                        }
                                      spids: [42355]
                                    )
                                  ]
                                  spids: [42355]
                                )
                                (C {(func_extract_archives)} {($ VSub_Name '$gentop')} 
                                  {($ VSub_Name '$convenience')}
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:reload_conv_objs)
                                      op: Equal
                                      rhs: 
                                        {
                                          (DQ ($ VSub_Name '$reload_objs') (' ') 
                                            ($ VSub_Name '$func_extract_archives_result')
                                          )
                                        }
                                      spids: [42371]
                                    )
                                  ]
                                  spids: [42371]
                                )
                              ]
                              spids: [42341 42379]
                            )
                          ]
                          spids: [16777215 42293]
                        )
                      ]
                      spids: [16777215 42382]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:reload_objs)
                          op: Equal
                          rhs: 
                            {(DQ ($ VSub_Name '$objs') ($ VSub_Name '$old_deplibs') (' ')) 
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (Pipeline
                                        children: [
                                          (C {($ VSub_Name '$ECHO')} {(DQ (X) ($ VSub_Name '$libobjs'))})
                                          (C {($ VSub_Name '$SP2NL')})
                                          (C {($ VSub_Name '$Xsed')} {(-e)} 
                                            {(SQ <'/\\.'>) (${ VSub_Name libext) (SQ </d>)} {(-e)} {(SQ <'/\\.lib$/d'>)} {(-e)} {(DQ ($ VSub_Name '$lo2o'))}
                                          )
                                          (C {($ VSub_Name '$NL2SP')})
                                        ]
                                        negated: False
                                      )
                                    ]
                                  )
                                left_token: <Left_Backtick '`'>
                                spids: [42396 42439]
                              ) (DQ (' ') ($ VSub_Name '$reload_conv_objs'))
                            }
                          spids: [42390]
                        )
                      ]
                      spids: [42390]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:output)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$obj'))}
                          spids: [42450]
                        )
                      ]
                      spids: [42450]
                    )
                    (C {(func_execute_cmds)} {(DQ ($ VSub_Name '$reload_cmds'))} {(SQ <'exit $?'>)})
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-z)} {(DQ ($ VSub_Name '$libobj'))})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$gentop'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [(C {(func_show_eval)} {(SQ <'${RM}r "$gentop"'>)})]
                                  spids: [16777215 42497]
                                )
                              ]
                              spids: [16777215 42507]
                            )
                            (C {(exit)} {($ VSub_Name '$EXIT_SUCCESS')})
                          ]
                          spids: [16777215 42483]
                        )
                      ]
                      spids: [16777215 42516]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$build_libtool_libs'))} 
                                  {(KW_Bang '!') (Lit_Other '=')} {(yes)}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$gentop'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [(C {(func_show_eval)} {(SQ <'${RM}r "$gentop"'>)})]
                                  spids: [16777215 42548]
                                )
                              ]
                              spids: [16777215 42558]
                            )
                            (C {(exit)} {($ VSub_Name '$EXIT_SUCCESS')})
                          ]
                          spids: [16777215 42534]
                        )
                      ]
                      spids: [16777215 42583]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (AndOr
                                  children: [
                                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$pic_flag'))})
                                    (C {(test)} {(DQ ($ VSub_Name '$pic_mode'))} 
                                      {(KW_Bang '!') (Lit_Other '=')} {(default)}
                                    )
                                  ]
                                  op_id: Op_DPipe
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:reload_objs)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$libobjs') (' ') 
                                        ($ VSub_Name '$reload_conv_objs')
                                      )
                                    }
                                  spids: [42618]
                                )
                              ]
                              spids: [42618]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:output)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$libobj'))}
                                  spids: [42626]
                                )
                              ]
                              spids: [42626]
                            )
                            (C {(func_execute_cmds)} {(DQ ($ VSub_Name '$reload_cmds'))} 
                              {(SQ <'exit $?'>)}
                            )
                          ]
                          spids: [16777215 42611]
                        )
                      ]
                      spids: [16777215 42643]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$gentop'))})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [(C {(func_show_eval)} {(SQ <'${RM}r "$gentop"'>)})]
                          spids: [16777215 42658]
                        )
                      ]
                      spids: [16777215 42668]
                    )
                    (C {(exit)} {($ VSub_Name '$EXIT_SUCCESS')})
                  ]
                  spids: [41986 41987 42677 16777215]
                )
                (case_arm
                  pat_list: [{(prog)}]
                  action: [
                    (Case
                      to_match: {($ VSub_Name '$host')}
                      arms: [
                        (case_arm
                          pat_list: [{(Lit_Other '*') (cygwin) (Lit_Other '*')}]
                          action: [
                            (C {(func_stripname)} {(SQ )} {(SQ <.exe>)} {(DQ ($ VSub_Name '$output'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:output)
                                  op: Equal
                                  rhs: {($ VSub_Name '$func_stripname_result') (.exe)}
                                  spids: [42711]
                                )
                              ]
                              spids: [42711]
                            )
                          ]
                          spids: [42692 42695 42714 16777215]
                        )
                      ]
                      spids: [42685 42689 42717]
                    )
                    (AndOr
                      children: [
                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$vinfo'))})
                        (C {(func_warning)} 
                          {
                            (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                              ("-version-info' is ignored for programs")
                            )
                          }
                        )
                      ]
                      op_id: Op_DAmp
                    )
                    (AndOr
                      children: [
                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$release'))})
                        (C {(func_warning)} 
                          {
                            (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                              ("-release' is ignored for programs")
                            )
                          }
                        )
                      ]
                      op_id: Op_DAmp
                    )
                    (AndOr
                      children: [
                        (C {(test)} {(DQ ($ VSub_Name '$preload'))} {(Lit_Other '=')} {(yes)})
                        (AndOr
                          children: [
                            (C {(test)} {(DQ ($ VSub_Name '$dlopen_support'))} {(Lit_Other '=')} 
                              {(unknown)}
                            )
                            (AndOr
                              children: [
                                (C {(test)} {(DQ ($ VSub_Name '$dlopen_self'))} {(Lit_Other '=')} 
                                  {(unknown)}
                                )
                                (AndOr
                                  children: [
                                    (C {(test)} {(DQ ($ VSub_Name '$dlopen_self_static'))} 
                                      {(Lit_Other '=')} {(unknown)}
                                    )
                                    (C {(func_warning)} 
                                      {
                                        (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                          (
"LT_INIT([dlopen])' not used. Assuming no dlopen support."
                                          )
                                        )
                                      }
                                    )
                                  ]
                                  op_id: Op_DAmp
                                )
                              ]
                              op_id: Op_DAmp
                            )
                          ]
                          op_id: Op_DAmp
                        )
                      ]
                      op_id: Op_DAmp
                    )
                    (Case
                      to_match: {($ VSub_Name '$host')}
                      arms: [
                        (case_arm
                          pat_list: [
                            {(Lit_Other '*') (-) (Lit_Other '*') (-rhapsody) (Lit_Other '*')}
                            {(Lit_Other '*') (-) (Lit_Other '*') (-darwin1.) (Lit_Other '[') (012) 
                              (Lit_Other ']')
                            }
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:compile_deplibs)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (Pipeline
                                                children: [
                                                  (C {($ VSub_Name '$ECHO')} 
                                                    {(DQ ('X ') ($ VSub_Name '$compile_deplibs'))}
                                                  )
                                                  (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                    {(SQ <'s/ -lc / System.ltframework /'>)}
                                                  )
                                                ]
                                                negated: False
                                              )
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [42857 42874]
                                      )
                                    }
                                  spids: [42856]
                                )
                              ]
                              spids: [42856]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:finalize_deplibs)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (Pipeline
                                                children: [
                                                  (C {($ VSub_Name '$ECHO')} 
                                                    {(DQ ('X ') ($ VSub_Name '$finalize_deplibs'))}
                                                  )
                                                  (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                    {(SQ <'s/ -lc / System.ltframework /'>)}
                                                  )
                                                ]
                                                negated: False
                                              )
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [42878 42895]
                                      )
                                    }
                                  spids: [42877]
                                )
                              ]
                              spids: [42877]
                            )
                          ]
                          spids: [42834 42849 42898 16777215]
                        )
                      ]
                      spids: [42827 42831 42901]
                    )
                    (Case
                      to_match: {($ VSub_Name '$host')}
                      arms: [
                        (case_arm
                          pat_list: [{(Lit_Other '*') (-) (Lit_Other '*') (-darwin) (Lit_Other '*')}]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$tagname'))} {(Lit_Other '=')} 
                                          {(CXX)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Case
                                      to_match: 
                                        {
                                          (BracedVarSub
                                            token: <VSub_Name MACOSX_DEPLOYMENT_TARGET>
                                            suffix_op: 
                                              (StringUnary
                                                op_id: VTest_Hyphen
                                                arg_word: {(10.0)}
                                              )
                                            spids: [42947 42951]
                                          )
                                        }
                                      arms: [
                                        (case_arm
                                          pat_list: [{(10.) (Lit_Other '[') (0123) (Lit_Other ']')}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:compile_command)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$compile_command') (' ') 
                                                        (${ VSub_Name wl) (-bind_at_load)
                                                      )
                                                    }
                                                  spids: [42963]
                                                )
                                              ]
                                              spids: [42963]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:finalize_command)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$finalize_command') (' ') 
                                                        (${ VSub_Name wl) (-bind_at_load)
                                                      )
                                                    }
                                                  spids: [42974]
                                                )
                                              ]
                                              spids: [42974]
                                            )
                                          ]
                                          spids: [42956 42960 42985 16777215]
                                        )
                                      ]
                                      spids: [42945 42953 42988]
                                    )
                                  ]
                                  spids: [16777215 42942]
                                )
                              ]
                              spids: [16777215 42991]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:compile_deplibs)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (Pipeline
                                                children: [
                                                  (C {($ VSub_Name '$ECHO')} 
                                                    {(DQ ('X ') ($ VSub_Name '$compile_deplibs'))}
                                                  )
                                                  (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                    {
                                                      (SQ 
                                                        <
's% \\([^ $]*\\).ltframework% -framework \\1%g'
                                                        >
                                                      )
                                                    }
                                                  )
                                                ]
                                                negated: False
                                              )
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [42999 43016]
                                      )
                                    }
                                  spids: [42998]
                                )
                              ]
                              spids: [42998]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:finalize_deplibs)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (Pipeline
                                                children: [
                                                  (C {($ VSub_Name '$ECHO')} 
                                                    {(DQ ('X ') ($ VSub_Name '$finalize_deplibs'))}
                                                  )
                                                  (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                    {
                                                      (SQ 
                                                        <
's% \\([^ $]*\\).ltframework% -framework \\1%g'
                                                        >
                                                      )
                                                    }
                                                  )
                                                ]
                                                negated: False
                                              )
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [43020 43037]
                                      )
                                    }
                                  spids: [43019]
                                )
                              ]
                              spids: [43019]
                            )
                          ]
                          spids: [42912 42917 43040 16777215]
                        )
                      ]
                      spids: [42905 42909 43043]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:new_libs)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [43056]
                        )
                      ]
                      spids: [43056]
                    )
                    (ForEach
                      iter_name: path
                      iter_words: [{($ VSub_Name '$notinst_path')}]
                      do_arg_iter: False
                      body: 
                        (DoGroup
                          children: [
                            (Case
                              to_match: {(DQ (' ') ($ VSub_Name '$new_libs') (' '))}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '*') 
                                      (DQ (' -L') ($ VSub_Name '$path') (/) ($ VSub_Name '$objdir') (' ')) (Lit_Other '*')
                                    }
                                  ]
                                  spids: [43082 43091 43093 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Case
                                      to_match: {(DQ (' ') ($ VSub_Name '$compile_deplibs') (' '))}
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') 
                                              (DQ (' -L') ($ VSub_Name '$path') (/) 
                                                ($ VSub_Name '$objdir') (' ')
                                              ) (Lit_Other '*')
                                            }
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:new_libs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$new_libs') (' -L') 
                                                        ($ VSub_Name '$path') (/) ($ VSub_Name '$objdir')
                                                      )
                                                    }
                                                  spids: [43123]
                                                )
                                              ]
                                              spids: [43123]
                                            )
                                          ]
                                          spids: [43111 43120 43132 16777215]
                                        )
                                      ]
                                      spids: [43100 43108 43135]
                                    )
                                  ]
                                  spids: [43096 43097 43138 16777215]
                                )
                              ]
                              spids: [43071 43079 43141]
                            )
                          ]
                          spids: [43068 43144]
                        )
                      spids: [43064 43066]
                    )
                    (ForEach
                      iter_name: deplib
                      iter_words: [{($ VSub_Name '$compile_deplibs')}]
                      do_arg_iter: False
                      body: 
                        (DoGroup
                          children: [
                            (Case
                              to_match: {($ VSub_Name '$deplib')}
                              arms: [
                                (case_arm
                                  pat_list: [{(-L) (Lit_Other '*')}]
                                  action: [
                                    (Case
                                      to_match: {(DQ (' ') ($ VSub_Name '$new_libs') (' '))}
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (DQ (' ') ($ VSub_Name '$deplib') (' ')) 
                                              (Lit_Other '*')
                                            }
                                          ]
                                          spids: [43182 43189 43191 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:new_libs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$new_libs') (' ') 
                                                        ($ VSub_Name '$deplib')
                                                      )
                                                    }
                                                  spids: [43197]
                                                )
                                              ]
                                              spids: [43197]
                                            )
                                          ]
                                          spids: [43194 43195 43204 16777215]
                                        )
                                      ]
                                      spids: [43171 43179 43207]
                                    )
                                  ]
                                  spids: [43166 43168 43210 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:new_libs)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$new_libs') (' ') 
                                                ($ VSub_Name '$deplib')
                                              )
                                            }
                                          spids: [43216]
                                        )
                                      ]
                                      spids: [43216]
                                    )
                                  ]
                                  spids: [43213 43214 43223 16777215]
                                )
                              ]
                              spids: [43159 43163 43226]
                            )
                          ]
                          spids: [43156 43229]
                        )
                      spids: [43152 43154]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:compile_deplibs)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$new_libs'))}
                          spids: [43232]
                        )
                      ]
                      spids: [43232]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:compile_command)
                          op: Equal
                          rhs: 
                            {
                              (DQ ($ VSub_Name '$compile_command') (' ') 
                                ($ VSub_Name '$compile_deplibs')
                              )
                            }
                          spids: [43240]
                        )
                      ]
                      spids: [43240]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:finalize_command)
                          op: Equal
                          rhs: 
                            {
                              (DQ ($ VSub_Name '$finalize_command') (' ') 
                                ($ VSub_Name '$finalize_deplibs')
                              )
                            }
                          spids: [43248]
                        )
                      ]
                      spids: [43248]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$rpath') ($ VSub_Name '$xrpath'))})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (ForEach
                              iter_name: libdir
                              iter_words: [{($ VSub_Name '$rpath')} {($ VSub_Name '$xrpath')}]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (Case
                                      to_match: {(DQ ($ VSub_Name '$finalize_rpath') (' '))}
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (DQ (' ') ($ VSub_Name '$libdir') (' ')) 
                                              (Lit_Other '*')
                                            }
                                          ]
                                          spids: [43304 43311 43313 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:finalize_rpath)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$finalize_rpath') (' ') 
                                                        ($ VSub_Name '$libdir')
                                                      )
                                                    }
                                                  spids: [43319]
                                                )
                                              ]
                                              spids: [43319]
                                            )
                                          ]
                                          spids: [43316 43317 43326 16777215]
                                        )
                                      ]
                                      spids: [43294 43301 43329]
                                    )
                                  ]
                                  spids: [43287 43332]
                                )
                              spids: [43281 43285]
                            )
                          ]
                          spids: [16777215 43269]
                        )
                      ]
                      spids: [16777215 43335]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:rpath)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [43343]
                        )
                      ]
                      spids: [43343]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:hardcode_libdirs)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [43346]
                        )
                      ]
                      spids: [43346]
                    )
                    (ForEach
                      iter_name: libdir
                      iter_words: [{($ VSub_Name '$compile_rpath')} {($ VSub_Name '$finalize_rpath')}]
                      do_arg_iter: False
                      body: 
                        (DoGroup
                          children: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(-n)} 
                                          {(DQ ($ VSub_Name '$hardcode_libdir_flag_spec'))}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(-n)} 
                                                  {(DQ ($ VSub_Name '$hardcode_libdir_separator'))}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(-z)} 
                                                          {(DQ ($ VSub_Name '$hardcode_libdirs'))}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:hardcode_libdirs)
                                                          op: Equal
                                                          rhs: {(DQ ($ VSub_Name '$libdir'))}
                                                          spids: [43405]
                                                        )
                                                      ]
                                                      spids: [43405]
                                                    )
                                                  ]
                                                  spids: [16777215 43402]
                                                )
                                              ]
                                              else_action: [
                                                (Case
                                                  to_match: 
                                                    {($ VSub_Name '$hardcode_libdir_separator') 
                                                      ($ VSub_Name '$hardcode_libdirs') ($ VSub_Name '$hardcode_libdir_separator')
                                                    }
                                                  arms: [
                                                    (case_arm
                                                      pat_list: [
                                                        {(Lit_Other '*') 
                                                          (DQ 
                                                            ($ VSub_Name '$hardcode_libdir_separator') ($ VSub_Name '$libdir') ($ VSub_Name '$hardcode_libdir_separator')
                                                          ) (Lit_Other '*')
                                                        }
                                                      ]
                                                      spids: [43427 43434 43437 16777215]
                                                    )
                                                    (case_arm
                                                      pat_list: [{(Lit_Other '*')}]
                                                      action: [
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:hardcode_libdirs)
                                                              op: Equal
                                                              rhs: 
                                                                {
                                                                  (DQ 
                                                                    ($ VSub_Name '$hardcode_libdirs') ($ VSub_Name '$hardcode_libdir_separator') ($ VSub_Name '$libdir')
                                                                  )
                                                                }
                                                              spids: [43444]
                                                            )
                                                          ]
                                                          spids: [43444]
                                                        )
                                                      ]
                                                      spids: [43440 43441 43452 16777215]
                                                    )
                                                  ]
                                                  spids: [43418 43424 43455]
                                                )
                                              ]
                                              spids: [43411 43458]
                                            )
                                          ]
                                          spids: [16777215 43388]
                                        )
                                      ]
                                      else_action: [
                                        (C {(eval)} 
                                          {(Lit_VarLike 'flag=') 
                                            (EscapedLiteralPart
                                              token: <Lit_EscapedChar '\\"'>
                                            ) ($ VSub_Name '$hardcode_libdir_flag_spec') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                          }
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:rpath)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$rpath') (' ') 
                                                    ($ VSub_Name '$flag')
                                                  )
                                                }
                                              spids: [43472]
                                            )
                                          ]
                                          spids: [43472]
                                        )
                                      ]
                                      spids: [43461 43480]
                                    )
                                  ]
                                  spids: [16777215 43374]
                                )
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$runpath_var'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Case
                                      to_match: {(DQ ($ VSub_Name '$perm_rpath') (' '))}
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (DQ (' ') ($ VSub_Name '$libdir') (' ')) 
                                              (Lit_Other '*')
                                            }
                                          ]
                                          spids: [43507 43514 43516 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:perm_rpath)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$perm_rpath') (' ') 
                                                        ($ VSub_Name '$libdir')
                                                      )
                                                    }
                                                  spids: [43522]
                                                )
                                              ]
                                              spids: [43522]
                                            )
                                          ]
                                          spids: [43519 43520 43529 16777215]
                                        )
                                      ]
                                      spids: [43497 43504 43532]
                                    )
                                  ]
                                  spids: [43483 43494]
                                )
                              ]
                              spids: [16777215 43535]
                            )
                            (Case
                              to_match: {($ VSub_Name '$host')}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '*') (-) (Lit_Other '*') (-cygwin) (Lit_Other '*')}
                                    {(Lit_Other '*') (-) (Lit_Other '*') (-mingw) (Lit_Other '*')}
                                    {(Lit_Other '*') (-) (Lit_Other '*') (-pw32) (Lit_Other '*')}
                                    {(Lit_Other '*') (-) (Lit_Other '*') (-os2) (Lit_Other '*')}
                                    {(Lit_Other '*') (-cegcc) (Lit_Other '*')}
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:testbindir)
                                          op: Equal
                                          rhs: 
                                            {
                                              (CommandSubPart
                                                command_list: 
                                                  (CommandList
                                                    children: [
                                                      (Pipeline
                                                        children: [
                                                          (C {(${ VSub_Name ECHO)} 
                                                            {(DQ ($ VSub_Name '$libdir'))}
                                                          )
                                                          (C {(${ VSub_Name SED)} {(-e)} 
                                                            {(SQ <'s*/lib$*/bin*'>)}
                                                          )
                                                        ]
                                                        negated: False
                                                      )
                                                    ]
                                                  )
                                                left_token: <Left_Backtick '`'>
                                                spids: [43584 43604]
                                              )
                                            }
                                          spids: [43583]
                                        )
                                      ]
                                      spids: [43583]
                                    )
                                    (Case
                                      to_match: 
                                        {(Lit_Other ':') ($ VSub_Name '$dllsearchpath') 
                                          (Lit_Other ':')
                                        }
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (DQ (':') ($ VSub_Name '$libdir') (':')) 
                                              (Lit_Other '*')
                                            }
                                          ]
                                          spids: [43616 43623 43625 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other ':') (Lit_Other ':')}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:dllsearchpath)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$libdir')}
                                                  spids: [43632]
                                                )
                                              ]
                                              spids: [43632]
                                            )
                                          ]
                                          spids: [43628 43630 43634 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:dllsearchpath)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$dllsearchpath') (':') 
                                                        ($ VSub_Name '$libdir')
                                                      )
                                                    }
                                                  spids: [43640]
                                                )
                                              ]
                                              spids: [43640]
                                            )
                                          ]
                                          spids: [43637 43638 43646 16777215]
                                        )
                                      ]
                                      spids: [43607 43613 43649]
                                    )
                                    (Case
                                      to_match: 
                                        {(Lit_Other ':') ($ VSub_Name '$dllsearchpath') 
                                          (Lit_Other ':')
                                        }
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') 
                                              (DQ (':') ($ VSub_Name '$testbindir') (':')) (Lit_Other '*')
                                            }
                                          ]
                                          spids: [43661 43668 43670 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other ':') (Lit_Other ':')}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:dllsearchpath)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$testbindir')}
                                                  spids: [43677]
                                                )
                                              ]
                                              spids: [43677]
                                            )
                                          ]
                                          spids: [43673 43675 43679 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:dllsearchpath)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$dllsearchpath') (':') 
                                                        ($ VSub_Name '$testbindir')
                                                      )
                                                    }
                                                  spids: [43685]
                                                )
                                              ]
                                              spids: [43685]
                                            )
                                          ]
                                          spids: [43682 43683 43691 16777215]
                                        )
                                      ]
                                      spids: [43652 43658 43694]
                                    )
                                  ]
                                  spids: [43545 43580 43697 16777215]
                                )
                              ]
                              spids: [43538 43542 43700]
                            )
                          ]
                          spids: [43360 43703]
                        )
                      spids: [43354 43358]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (AndOr
                                  children: [
                                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$hardcode_libdir_separator'))})
                                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$hardcode_libdirs'))})
                                  ]
                                  op_id: Op_DAmp
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:libdir)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$hardcode_libdirs'))}
                                  spids: [43735]
                                )
                              ]
                              spids: [43735]
                            )
                            (C {(eval)} 
                              {(Lit_VarLike 'rpath=') 
                                (EscapedLiteralPart
                                  token: <Lit_EscapedChar '\\"'>
                                )
                              } {($ VSub_Name '$hardcode_libdir_flag_spec') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)}
                            )
                          ]
                          spids: [16777215 43732]
                        )
                      ]
                      spids: [16777215 43750]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:compile_rpath)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$rpath'))}
                          spids: [43753]
                        )
                      ]
                      spids: [43753]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:rpath)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [43760]
                        )
                      ]
                      spids: [43760]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:hardcode_libdirs)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [43763]
                        )
                      ]
                      spids: [43763]
                    )
                    (ForEach
                      iter_name: libdir
                      iter_words: [{($ VSub_Name '$finalize_rpath')}]
                      do_arg_iter: False
                      body: 
                        (DoGroup
                          children: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(-n)} 
                                          {(DQ ($ VSub_Name '$hardcode_libdir_flag_spec'))}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(-n)} 
                                                  {(DQ ($ VSub_Name '$hardcode_libdir_separator'))}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(-z)} 
                                                          {(DQ ($ VSub_Name '$hardcode_libdirs'))}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:hardcode_libdirs)
                                                          op: Equal
                                                          rhs: {(DQ ($ VSub_Name '$libdir'))}
                                                          spids: [43820]
                                                        )
                                                      ]
                                                      spids: [43820]
                                                    )
                                                  ]
                                                  spids: [16777215 43817]
                                                )
                                              ]
                                              else_action: [
                                                (Case
                                                  to_match: 
                                                    {($ VSub_Name '$hardcode_libdir_separator') 
                                                      ($ VSub_Name '$hardcode_libdirs') ($ VSub_Name '$hardcode_libdir_separator')
                                                    }
                                                  arms: [
                                                    (case_arm
                                                      pat_list: [
                                                        {(Lit_Other '*') 
                                                          (DQ 
                                                            ($ VSub_Name '$hardcode_libdir_separator') ($ VSub_Name '$libdir') ($ VSub_Name '$hardcode_libdir_separator')
                                                          ) (Lit_Other '*')
                                                        }
                                                      ]
                                                      spids: [43842 43849 43852 16777215]
                                                    )
                                                    (case_arm
                                                      pat_list: [{(Lit_Other '*')}]
                                                      action: [
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:hardcode_libdirs)
                                                              op: Equal
                                                              rhs: 
                                                                {
                                                                  (DQ 
                                                                    ($ VSub_Name '$hardcode_libdirs') ($ VSub_Name '$hardcode_libdir_separator') ($ VSub_Name '$libdir')
                                                                  )
                                                                }
                                                              spids: [43859]
                                                            )
                                                          ]
                                                          spids: [43859]
                                                        )
                                                      ]
                                                      spids: [43855 43856 43867 16777215]
                                                    )
                                                  ]
                                                  spids: [43833 43839 43870]
                                                )
                                              ]
                                              spids: [43826 43873]
                                            )
                                          ]
                                          spids: [16777215 43803]
                                        )
                                      ]
                                      else_action: [
                                        (C {(eval)} 
                                          {(Lit_VarLike 'flag=') 
                                            (EscapedLiteralPart
                                              token: <Lit_EscapedChar '\\"'>
                                            ) ($ VSub_Name '$hardcode_libdir_flag_spec') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                          }
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:rpath)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$rpath') (' ') 
                                                    ($ VSub_Name '$flag')
                                                  )
                                                }
                                              spids: [43887]
                                            )
                                          ]
                                          spids: [43887]
                                        )
                                      ]
                                      spids: [43876 43895]
                                    )
                                  ]
                                  spids: [16777215 43789]
                                )
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$runpath_var'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Case
                                      to_match: {(DQ ($ VSub_Name '$finalize_perm_rpath') (' '))}
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (DQ (' ') ($ VSub_Name '$libdir') (' ')) 
                                              (Lit_Other '*')
                                            }
                                          ]
                                          spids: [43922 43929 43931 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:finalize_perm_rpath)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$finalize_perm_rpath') (' ') 
                                                        ($ VSub_Name '$libdir')
                                                      )
                                                    }
                                                  spids: [43937]
                                                )
                                              ]
                                              spids: [43937]
                                            )
                                          ]
                                          spids: [43934 43935 43944 16777215]
                                        )
                                      ]
                                      spids: [43912 43919 43947]
                                    )
                                  ]
                                  spids: [43898 43909]
                                )
                              ]
                              spids: [16777215 43950]
                            )
                          ]
                          spids: [43775 43953]
                        )
                      spids: [43771 43773]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (AndOr
                                  children: [
                                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$hardcode_libdir_separator'))})
                                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$hardcode_libdirs'))})
                                  ]
                                  op_id: Op_DAmp
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:libdir)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$hardcode_libdirs'))}
                                  spids: [43985]
                                )
                              ]
                              spids: [43985]
                            )
                            (C {(eval)} 
                              {(Lit_VarLike 'rpath=') 
                                (EscapedLiteralPart
                                  token: <Lit_EscapedChar '\\"'>
                                )
                              } {($ VSub_Name '$hardcode_libdir_flag_spec') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)}
                            )
                          ]
                          spids: [16777215 43982]
                        )
                      ]
                      spids: [16777215 44000]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:finalize_rpath)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$rpath'))}
                          spids: [44003]
                        )
                      ]
                      spids: [44003]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (AndOr
                                  children: [
                                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$libobjs'))})
                                    (C {(test)} {(DQ ($ VSub_Name '$build_old_libs'))} {(Lit_Other '=')} 
                                      {(yes)}
                                    )
                                  ]
                                  op_id: Op_DAmp
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:compile_command)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (Pipeline
                                                children: [
                                                  (C {($ VSub_Name '$ECHO')} 
                                                    {(DQ (X) ($ VSub_Name '$compile_command'))}
                                                  )
                                                  (C {($ VSub_Name '$SP2NL')})
                                                  (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                    {(DQ ($ VSub_Name '$lo2o'))}
                                                  )
                                                  (C {($ VSub_Name '$NL2SP')})
                                                ]
                                                negated: False
                                              )
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [44041 44066]
                                      )
                                    }
                                  spids: [44040]
                                )
                              ]
                              spids: [44040]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:finalize_command)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (Pipeline
                                                children: [
                                                  (C {($ VSub_Name '$ECHO')} 
                                                    {(DQ (X) ($ VSub_Name '$finalize_command'))}
                                                  )
                                                  (C {($ VSub_Name '$SP2NL')})
                                                  (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                    {(DQ ($ VSub_Name '$lo2o'))}
                                                  )
                                                  (C {($ VSub_Name '$NL2SP')})
                                                ]
                                                negated: False
                                              )
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [44070 44095]
                                      )
                                    }
                                  spids: [44069]
                                )
                              ]
                              spids: [44069]
                            )
                          ]
                          spids: [16777215 44033]
                        )
                      ]
                      spids: [16777215 44098]
                    )
                    (C {(func_generate_dlsyms)} {(DQ ($ VSub_Name '$outputname'))} {(DQ ('@PROGRAM@'))} 
                      {(DQ (no))}
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$prelink_cmds'))})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {(func_execute_cmds)} {(DQ ($ VSub_Name '$prelink_cmds'))} 
                              {(SQ <'exit $?'>)}
                            )
                          ]
                          spids: [16777215 44133]
                        )
                      ]
                      spids: [16777215 44147]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:wrappers_required)
                          op: Equal
                          rhs: {(yes)}
                          spids: [44151]
                        )
                      ]
                      spids: [44151]
                    )
                    (Case
                      to_match: {($ VSub_Name '$host')}
                      arms: [
                        (case_arm
                          pat_list: [
                            {(Lit_Other '*') (cygwin) (Lit_Other '*')}
                            {(Lit_Other '*') (mingw) (Lit_Other '*')}
                          ]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$build_libtool_libs'))} 
                                          {(KW_Bang '!') (Lit_Other '=')} {(yes)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:wrappers_required)
                                          op: Equal
                                          rhs: {(no)}
                                          spids: [44192]
                                        )
                                      ]
                                      spids: [44192]
                                    )
                                  ]
                                  spids: [16777215 44189]
                                )
                              ]
                              spids: [16777215 44196]
                            )
                          ]
                          spids: [44162 44172 44199 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*') (cegcc)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:wrappers_required)
                                  op: Equal
                                  rhs: {(no)}
                                  spids: [44211]
                                )
                              ]
                              spids: [44211]
                            )
                          ]
                          spids: [44202 44204 44215 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*')}]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          children: [
                                            (C {(test)} {(DQ ($ VSub_Name '$need_relink'))} 
                                              {(Lit_Other '=')} {(no)}
                                            )
                                            (C {(test)} {(DQ ($ VSub_Name '$build_libtool_libs'))} 
                                              {(KW_Bang '!') (Lit_Other '=')} {(yes)}
                                            )
                                          ]
                                          op_id: Op_DPipe
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:wrappers_required)
                                          op: Equal
                                          rhs: {(no)}
                                          spids: [44251]
                                        )
                                      ]
                                      spids: [44251]
                                    )
                                  ]
                                  spids: [16777215 44248]
                                )
                              ]
                              spids: [16777215 44255]
                            )
                          ]
                          spids: [44218 44219 44258 16777215]
                        )
                      ]
                      spids: [44155 44159 44261]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$wrappers_required'))} {(Lit_Other '=')} 
                                  {(no)}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:compile_command)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (Pipeline
                                                children: [
                                                  (C {($ VSub_Name '$ECHO')} 
                                                    {(DQ (X) ($ VSub_Name '$compile_command'))}
                                                  )
                                                  (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                    {(SQ <'s%@OUTPUT@%'>) 
                                                      (DQ ($ VSub_Name '$output')) (SQ <'%g'>)
                                                    }
                                                  )
                                                ]
                                                negated: False
                                              )
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [44285 44308]
                                      )
                                    }
                                  spids: [44284]
                                )
                              ]
                              spids: [44284]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:link_command)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$compile_command') 
                                        ($ VSub_Name '$compile_rpath')
                                      )
                                    }
                                  spids: [44311]
                                )
                              ]
                              spids: [44311]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:exit_status)
                                  op: Equal
                                  rhs: {(0)}
                                  spids: [44323]
                                )
                              ]
                              spids: [44323]
                            )
                            (C {(func_show_eval)} {(DQ ($ VSub_Name '$link_command'))} 
                              {(SQ <'exit_status=$?'>)}
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(-f)} 
                                          {
                                            (DQ ($ VSub_Name '$output_objdir') (/) 
                                              (${ VSub_Name outputname) (S.) (${ VSub_Name objext)
                                            )
                                          }
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(func_show_eval)} 
                                      {(SQ <'$RM "$output_objdir/${outputname}S.${objext}"'>)}
                                    )
                                  ]
                                  spids: [16777215 44362]
                                )
                              ]
                              spids: [16777215 44372]
                            )
                            (C {(exit)} {($ VSub_Name '$exit_status')})
                          ]
                          spids: [16777215 44277]
                        )
                      ]
                      spids: [16777215 44381]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(-n)} 
                                  {
                                    (DQ ($ VSub_Name '$compile_shlibpath') 
                                      ($ VSub_Name '$finalize_shlibpath')
                                    )
                                  }
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:compile_command)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$shlibpath_var') ('=') 
                                        (EscapedLiteralPart
                                          token: <Lit_EscapedChar '\\"'>
                                        ) ($ VSub_Name '$compile_shlibpath') ($ VSub_Name '$finalize_shlibpath') 
                                        (EscapedLiteralPart
                                          token: <Lit_EscapedChar '\\$'>
                                        ) ($ VSub_Name '$shlibpath_var') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' ') 
                                        ($ VSub_Name '$compile_command')
                                      )
                                    }
                                  spids: [44400]
                                )
                              ]
                              spids: [44400]
                            )
                          ]
                          spids: [16777215 44397]
                        )
                      ]
                      spids: [16777215 44415]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$finalize_shlibpath'))})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:finalize_command)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$shlibpath_var') ('=') 
                                        (EscapedLiteralPart
                                          token: <Lit_EscapedChar '\\"'>
                                        ) ($ VSub_Name '$finalize_shlibpath') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) 
                                        ($ VSub_Name '$shlibpath_var') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' ') ($ VSub_Name '$finalize_command')
                                      )
                                    }
                                  spids: [44432]
                                )
                              ]
                              spids: [44432]
                            )
                          ]
                          spids: [16777215 44429]
                        )
                      ]
                      spids: [16777215 44446]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:compile_var)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [44450]
                        )
                      ]
                      spids: [44450]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:finalize_var)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [44453]
                        )
                      ]
                      spids: [44453]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$runpath_var'))})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$perm_rpath'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:rpath)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [44488]
                                        )
                                      ]
                                      spids: [44488]
                                    )
                                    (ForEach
                                      iter_name: dir
                                      iter_words: [{($ VSub_Name '$perm_rpath')}]
                                      do_arg_iter: False
                                      body: 
                                        (DoGroup
                                          children: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:rpath)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$rpath') ($ VSub_Name '$dir') 
                                                        (':')
                                                      )
                                                    }
                                                  spids: [44503]
                                                )
                                              ]
                                              spids: [44503]
                                            )
                                          ]
                                          spids: [44500 44511]
                                        )
                                      spids: [44496 44498]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:compile_var)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$runpath_var') ('=') 
                                                (EscapedLiteralPart
                                                  token: <Lit_EscapedChar '\\"'>
                                                ) ($ VSub_Name '$rpath') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ($ VSub_Name '$runpath_var') 
                                                (EscapedLiteralPart
                                                  token: <Lit_EscapedChar '\\"'>
                                                ) (' ')
                                              )
                                            }
                                          spids: [44514]
                                        )
                                      ]
                                      spids: [44514]
                                    )
                                  ]
                                  spids: [16777215 44481]
                                )
                              ]
                              spids: [16777215 44527]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$finalize_perm_rpath'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:rpath)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [44548]
                                        )
                                      ]
                                      spids: [44548]
                                    )
                                    (ForEach
                                      iter_name: dir
                                      iter_words: [{($ VSub_Name '$finalize_perm_rpath')}]
                                      do_arg_iter: False
                                      body: 
                                        (DoGroup
                                          children: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:rpath)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$rpath') ($ VSub_Name '$dir') 
                                                        (':')
                                                      )
                                                    }
                                                  spids: [44563]
                                                )
                                              ]
                                              spids: [44563]
                                            )
                                          ]
                                          spids: [44560 44571]
                                        )
                                      spids: [44556 44558]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:finalize_var)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$runpath_var') ('=') 
                                                (EscapedLiteralPart
                                                  token: <Lit_EscapedChar '\\"'>
                                                ) ($ VSub_Name '$rpath') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ($ VSub_Name '$runpath_var') 
                                                (EscapedLiteralPart
                                                  token: <Lit_EscapedChar '\\"'>
                                                ) (' ')
                                              )
                                            }
                                          spids: [44574]
                                        )
                                      ]
                                      spids: [44574]
                                    )
                                  ]
                                  spids: [16777215 44541]
                                )
                              ]
                              spids: [16777215 44587]
                            )
                          ]
                          spids: [16777215 44467]
                        )
                      ]
                      spids: [16777215 44590]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$no_install'))} {(Lit_Other '=')} {(yes)})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:link_command)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$compile_var') 
                                        ($ VSub_Name '$compile_command') ($ VSub_Name '$compile_rpath')
                                      )
                                    }
                                  spids: [44614]
                                )
                              ]
                              spids: [44614]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:link_command)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (Pipeline
                                                children: [
                                                  (C {($ VSub_Name '$ECHO')} 
                                                    {(DQ (X) ($ VSub_Name '$link_command'))}
                                                  )
                                                  (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                    {(SQ <'s%@OUTPUT@%'>) 
                                                      (DQ ($ VSub_Name '$output')) (SQ <'%g'>)
                                                    }
                                                  )
                                                ]
                                                negated: False
                                              )
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [44627 44650]
                                      )
                                    }
                                  spids: [44626]
                                )
                              ]
                              spids: [44626]
                            )
                            (AndOr
                              children: [
                                (C {($ VSub_Name '$opt_dry_run')})
                                (C {($ VSub_Name '$RM')} {($ VSub_Name '$output')})
                              ]
                              op_id: Op_DPipe
                            )
                            (C {(func_show_eval)} {(DQ ($ VSub_Name '$link_command'))} {(SQ <'exit $?'>)})
                            (C {(exit)} {($ VSub_Name '$EXIT_SUCCESS')})
                          ]
                          spids: [16777215 44607]
                        )
                      ]
                      spids: [16777215 44686]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$hardcode_action'))} {(Lit_Other '=')} 
                                  {(relink)}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:link_command)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$compile_var') 
                                        ($ VSub_Name '$compile_command') ($ VSub_Name '$compile_rpath')
                                      )
                                    }
                                  spids: [44710]
                                )
                              ]
                              spids: [44710]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:relink_command)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$finalize_var') 
                                        ($ VSub_Name '$finalize_command') ($ VSub_Name '$finalize_rpath')
                                      )
                                    }
                                  spids: [44718]
                                )
                              ]
                              spids: [44718]
                            )
                            (C {(func_warning)} 
                              {(DQ ('this platform does not like uninstalled shared libraries'))}
                            )
                            (C {(func_warning)} 
                              {
                                (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
                                  ($ VSub_Name '$output') ("' will be relinked during installation")
                                )
                              }
                            )
                          ]
                          spids: [16777215 44703]
                        )
                      ]
                      else_action: [
                        (If
                          arms: [
                            (if_arm
                              cond: [
                                (Sentence
                                  child: 
                                    (C {(test)} {(DQ ($ VSub_Name '$fast_install'))} 
                                      {(KW_Bang '!') (Lit_Other '=')} {(no)}
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                              ]
                              action: [
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:link_command)
                                      op: Equal
                                      rhs: 
                                        {
                                          (DQ ($ VSub_Name '$finalize_var') 
                                            ($ VSub_Name '$compile_command') ($ VSub_Name '$finalize_rpath')
                                          )
                                        }
                                      spids: [44763]
                                    )
                                  ]
                                  spids: [44763]
                                )
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: 
                                            (C {(test)} {(DQ ($ VSub_Name '$fast_install'))} 
                                              {(Lit_Other '=')} {(yes)}
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:relink_command)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (CommandSubPart
                                                    command_list: 
                                                      (CommandList
                                                        children: [
                                                          (Pipeline
                                                            children: [
                                                              (C {($ VSub_Name '$ECHO')} 
                                                                {
                                                                  (DQ (X) ($ VSub_Name '$compile_var') 
                                                                    ($ VSub_Name '$compile_command') ($ VSub_Name '$compile_rpath')
                                                                  )
                                                                }
                                                              )
                                                              (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                                {
                                                                  (SQ 
                                                                    <
's%@OUTPUT@%\\$progdir/\\$file%g'
                                                                    >
                                                                  )
                                                                }
                                                              )
                                                            ]
                                                            negated: False
                                                          )
                                                        ]
                                                      )
                                                    left_token: <Left_Backtick '`'>
                                                    spids: [44788 44807]
                                                  )
                                                }
                                              spids: [44787]
                                            )
                                          ]
                                          spids: [44787]
                                        )
                                      ]
                                      spids: [16777215 44784]
                                    )
                                  ]
                                  else_action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:relink_command)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [44817]
                                        )
                                      ]
                                      spids: [44817]
                                    )
                                  ]
                                  spids: [44810 44820]
                                )
                              ]
                              spids: [16777215 44760]
                            )
                          ]
                          else_action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:link_command)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$compile_var') 
                                        ($ VSub_Name '$compile_command') ($ VSub_Name '$compile_rpath')
                                      )
                                    }
                                  spids: [44826]
                                )
                              ]
                              spids: [44826]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:relink_command)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$finalize_var') 
                                        ($ VSub_Name '$finalize_command') ($ VSub_Name '$finalize_rpath')
                                      )
                                    }
                                  spids: [44834]
                                )
                              ]
                              spids: [44834]
                            )
                          ]
                          spids: [44823 44842]
                        )
                      ]
                      spids: [44743 44845]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:link_command)
                          op: Equal
                          rhs: 
                            {
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (Pipeline
                                        children: [
                                          (C {($ VSub_Name '$ECHO')} 
                                            {(DQ (X) ($ VSub_Name '$link_command'))}
                                          )
                                          (C {($ VSub_Name '$Xsed')} {(-e)} 
                                            {(SQ <'s%@OUTPUT@%'>) 
                                              (DQ ($ VSub_Name '$output_objdir') (/) 
                                                ($ VSub_Name '$outputname')
                                              ) (SQ <'%g'>)
                                            }
                                          )
                                        ]
                                        negated: False
                                      )
                                    ]
                                  )
                                left_token: <Left_Backtick '`'>
                                spids: [44854 44879]
                              )
                            }
                          spids: [44853]
                        )
                      ]
                      spids: [44853]
                    )
                    (AndOr
                      children: [
                        (C {($ VSub_Name '$opt_dry_run')})
                        (C {($ VSub_Name '$RM')} {($ VSub_Name '$output')} 
                          {($ VSub_Name '$output_objdir') (/) ($ VSub_Name '$outputname')} {($ VSub_Name '$output_objdir') (/lt-) ($ VSub_Name '$outputname')}
                        )
                      ]
                      op_id: Op_DPipe
                    )
                    (C {(func_show_eval)} {(DQ ($ VSub_Name '$link_command'))} {(SQ <'exit $?'>)})
                    (C {(func_verbose)} {(DQ ('creating ') ($ VSub_Name '$output'))})
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$relink_command'))})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (ForEach
                              iter_name: var
                              iter_words: [{($ VSub_Name '$variables_saved_for_relink')}]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(eval)} {(test)} {(-z)} 
                                                  {
                                                    (EscapedLiteralPart
                                                      token: <Lit_EscapedChar '\\"'>
                                                    ) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (Lit_LBrace '{') ($ VSub_Name '$var') (Lit_Other '+') 
                                                    (set) (Lit_RBrace '}') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                                  }
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:relink_command)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ('{ test -z ') 
                                                        (EscapedLiteralPart
                                                          token: <Lit_EscapedChar '\\"'>
                                                        ) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{') ($ VSub_Name '$var') ('+set}') 
                                                        (EscapedLiteralPart
                                                          token: <Lit_EscapedChar '\\"'>
                                                        ) (' || ') ($ VSub_Name '$lt_unset') (' ') ($ VSub_Name '$var') (' || { ') ($ VSub_Name '$var') 
                                                        ('=; export ') ($ VSub_Name '$var') ('; }; }; ') ($ VSub_Name '$relink_command')
                                                      )
                                                    }
                                                  spids: [44985]
                                                )
                                              ]
                                              spids: [44985]
                                            )
                                          ]
                                          spids: [16777215 44982]
                                        )
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(eval)} 
                                                  {(Lit_VarLike 'var_value=') 
                                                    (EscapedLiteralPart
                                                      token: <Lit_EscapedChar '\\$'>
                                                    ) ($ VSub_Name '$var')
                                                  }
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                            (Sentence
                                              child: 
                                                (C {(test)} {(-z)} {(DQ ($ VSub_Name '$var_value'))})
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:relink_command)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$var') ('=; export ') 
                                                        ($ VSub_Name '$var') ('; ') ($ VSub_Name '$relink_command')
                                                      )
                                                    }
                                                  spids: [45028]
                                                )
                                              ]
                                              spids: [45028]
                                            )
                                          ]
                                          spids: [45007 45025]
                                        )
                                      ]
                                      else_action: [
                                        (C {(func_quote_for_eval)} {(DQ ($ VSub_Name '$var_value'))})
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:relink_command)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$var') ('=') 
                                                    ($ VSub_Name '$func_quote_for_eval_result') ('; export ') ($ VSub_Name '$var') ('; ') ($ VSub_Name '$relink_command')
                                                  )
                                                }
                                              spids: [45048]
                                            )
                                          ]
                                          spids: [45048]
                                        )
                                      ]
                                      spids: [45038 45060]
                                    )
                                  ]
                                  spids: [44961 45063]
                                )
                              spids: [44957 44959]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:relink_command)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ('(cd ') 
                                        (CommandSubPart
                                          command_list: (CommandList children:[(C {(pwd)})])
                                          left_token: <Left_Backtick '`'>
                                          spids: [45069 45071]
                                        ) ('; ') ($ VSub_Name '$relink_command') (')')
                                      )
                                    }
                                  spids: [45066]
                                )
                              ]
                              spids: [45066]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:relink_command)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (Pipeline
                                                children: [
                                                  (C {($ VSub_Name '$ECHO')} 
                                                    {(DQ (X) ($ VSub_Name '$relink_command'))}
                                                  )
                                                  (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                    {(DQ ($ VSub_Name '$sed_quote_subst'))}
                                                  )
                                                ]
                                                negated: False
                                              )
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [45079 45096]
                                      )
                                    }
                                  spids: [45078]
                                )
                              ]
                              spids: [45078]
                            )
                          ]
                          spids: [16777215 44945]
                        )
                      ]
                      spids: [16777215 45099]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ (X) ($ VSub_Name '$ECHO'))} {(Lit_Other '=')} 
                                  {
                                    (DQ (X) ($ VSub_Name '$SHELL') (' ') ($ VSub_Name '$progpath') 
                                      (' --fallback-echo')
                                    )
                                  }
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Case
                              to_match: {($ VSub_Name '$progpath')}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '[') 
                                      (EscapedLiteralPart
                                        token: <Lit_EscapedChar '\\\\'>
                                      ) (/) (Lit_Other ']') (Lit_Other '*')
                                    }
                                    {(Lit_Other '[') (A-Za-z) (Lit_Other ']') (Lit_Other ':') 
                                      (Lit_Other '[') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (/) (Lit_Other ']') (Lit_Other '*')
                                    }
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:qecho)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$SHELL') (' ') 
                                                ($ VSub_Name '$progpath') (' --fallback-echo')
                                              )
                                            }
                                          spids: [45156]
                                        )
                                      ]
                                      spids: [45156]
                                    )
                                  ]
                                  spids: [45137 45154 45163 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:qecho)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$SHELL') (' ') 
                                                (CommandSubPart
                                                  command_list: (CommandList children:[(C {(pwd)})])
                                                  left_token: <Left_Backtick '`'>
                                                  spids: [45173 45175]
                                                ) (/) ($ VSub_Name '$progpath') (' --fallback-echo')
                                              )
                                            }
                                          spids: [45169]
                                        )
                                      ]
                                      spids: [45169]
                                    )
                                  ]
                                  spids: [45166 45167 45180 16777215]
                                )
                              ]
                              spids: [45130 45134 45183]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:qecho)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (Pipeline
                                                children: [
                                                  (C {($ VSub_Name '$ECHO')} 
                                                    {(DQ (X) ($ VSub_Name '$qecho'))}
                                                  )
                                                  (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                    {(DQ ($ VSub_Name '$sed_quote_subst'))}
                                                  )
                                                ]
                                                negated: False
                                              )
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [45187 45204]
                                      )
                                    }
                                  spids: [45186]
                                )
                              ]
                              spids: [45186]
                            )
                          ]
                          spids: [16777215 45127]
                        )
                      ]
                      else_action: [
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:qecho)
                              op: Equal
                              rhs: 
                                {
                                  (CommandSubPart
                                    command_list: 
                                      (CommandList
                                        children: [
                                          (Pipeline
                                            children: [
                                              (C {($ VSub_Name '$ECHO')} 
                                                {(DQ (X) ($ VSub_Name '$ECHO'))}
                                              )
                                              (C {($ VSub_Name '$Xsed')} {(-e)} 
                                                {(DQ ($ VSub_Name '$sed_quote_subst'))}
                                              )
                                            ]
                                            negated: False
                                          )
                                        ]
                                      )
                                    left_token: <Left_Backtick '`'>
                                    spids: [45211 45228]
                                  )
                                }
                              spids: [45210]
                            )
                          ]
                          spids: [45210]
                        )
                      ]
                      spids: [45207 45231]
                    )
                    (AndOr
                      children: [
                        (C {($ VSub_Name '$opt_dry_run')})
                        (BraceGroup
                          children: [
                            (Case
                              to_match: {($ VSub_Name '$output')}
                              arms: [
                                (case_arm
                                  pat_list: [{(Lit_Other '*') (.exe)}]
                                  action: [
                                    (C {(func_stripname)} {(SQ )} {(SQ <.exe>)} 
                                      {(DQ ($ VSub_Name '$output'))}
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:output)
                                          op: Equal
                                          rhs: {($ VSub_Name '$func_stripname_result')}
                                          spids: [45279]
                                        )
                                      ]
                                      spids: [45279]
                                    )
                                  ]
                                  spids: [45261 45263 45282 16777215]
                                )
                              ]
                              spids: [45254 45258 45285]
                            )
                            (Case
                              to_match: {($ VSub_Name '$host')}
                              arms: [
                                (case_arm
                                  pat_list: [{(Lit_Other '*') (cygwin) (Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:exeext)
                                          op: Equal
                                          rhs: {(.exe)}
                                          spids: [45305]
                                        )
                                      ]
                                      spids: [45305]
                                    )
                                    (C {(func_stripname)} {(SQ )} {(SQ <.exe>)} 
                                      {(DQ ($ VSub_Name '$outputname'))}
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:outputname)
                                          op: Equal
                                          rhs: {($ VSub_Name '$func_stripname_result')}
                                          spids: [45323]
                                        )
                                      ]
                                      spids: [45323]
                                    )
                                  ]
                                  spids: [45299 45302 45326 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:exeext)
                                          op: Equal
                                          rhs: {(SQ )}
                                          spids: [45332]
                                        )
                                      ]
                                      spids: [45332]
                                    )
                                  ]
                                  spids: [45329 45330 45334 16777215]
                                )
                              ]
                              spids: [45292 45296 45337]
                            )
                            (Case
                              to_match: {($ VSub_Name '$host')}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '*') (cygwin) (Lit_Other '*')}
                                    {(Lit_Other '*') (mingw) (Lit_Other '*')}
                                  ]
                                  action: [
                                    (C {(func_dirname_and_basename)} {(DQ ($ VSub_Name '$output'))} {(DQ )} 
                                      {(DQ (.))}
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:output_name)
                                          op: Equal
                                          rhs: {($ VSub_Name '$func_basename_result')}
                                          spids: [45374]
                                        )
                                      ]
                                      spids: [45374]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:output_path)
                                          op: Equal
                                          rhs: {($ VSub_Name '$func_dirname_result')}
                                          spids: [45378]
                                        )
                                      ]
                                      spids: [45378]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:cwrappersource)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$output_path') (/) 
                                                ($ VSub_Name '$objdir') (/lt-) ($ VSub_Name '$output_name') (.c)
                                              )
                                            }
                                          spids: [45382]
                                        )
                                      ]
                                      spids: [45382]
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:cwrapper)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$output_path') (/) 
                                                ($ VSub_Name '$output_name') (.exe)
                                              )
                                            }
                                          spids: [45393]
                                        )
                                      ]
                                      spids: [45393]
                                    )
                                    (C {($ VSub_Name '$RM')} {($ VSub_Name '$cwrappersource')} 
                                      {($ VSub_Name '$cwrapper')}
                                    )
                                    (C {(trap)} 
                                      {
                                        (DQ ($ VSub_Name '$RM') (' ') ($ VSub_Name '$cwrappersource') 
                                          (' ') ($ VSub_Name '$cwrapper') ('; exit ') ($ VSub_Name '$EXIT_FAILURE')
                                        )
                                      } {(1)} {(2)} {(15)}
                                    )
                                    (SimpleCommand
                                      words: [{(func_emit_cwrapperexe_src)}]
                                      redirects: [
                                        (Redir
                                          op_id: Redir_Great
                                          fd: 16777215
                                          arg_word: {($ VSub_Name '$cwrappersource')}
                                          spids: [45431]
                                        )
                                      ]
                                    )
                                    (AndOr
                                      children: [
                                        (C {($ VSub_Name '$opt_dry_run')})
                                        (BraceGroup
                                          children: [
                                            (C {($ VSub_Name '$LTCC')} {($ VSub_Name '$LTCFLAGS')} 
                                              {(-o)} {($ VSub_Name '$cwrapper')} {($ VSub_Name '$cwrappersource')}
                                            )
                                            (C {($ VSub_Name '$STRIP')} {($ VSub_Name '$cwrapper')})
                                          ]
                                          spids: [45457]
                                        )
                                      ]
                                      op_id: Op_DPipe
                                    )
                                    (C {(func_ltwrapper_scriptname)} {($ VSub_Name '$cwrapper')})
                                    (C {($ VSub_Name '$RM')} 
                                      {($ VSub_Name '$func_ltwrapper_scriptname_result')}
                                    )
                                    (C {(trap)} 
                                      {
                                        (DQ ($ VSub_Name '$RM') (' ') 
                                          ($ VSub_Name '$func_ltwrapper_scriptname_result') ('; exit ') ($ VSub_Name '$EXIT_FAILURE')
                                        )
                                      } {(1)} {(2)} {(15)}
                                    )
                                    (AndOr
                                      children: [
                                        (C {($ VSub_Name '$opt_dry_run')})
                                        (BraceGroup
                                          children: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(DQ (x) ($ VSub_Name '$build'))} 
                                                          {(Lit_Other '=')} {(DQ (x) ($ VSub_Name '$host'))}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (SimpleCommand
                                                      words: [
                                                        {($ VSub_Name '$cwrapper')}
                                                        {(--lt-dump-script)}
                                                      ]
                                                      redirects: [
                                                        (Redir
                                                          op_id: Redir_Great
                                                          fd: 16777215
                                                          arg_word: 
                                                            {
                                                              ($ VSub_Name 
'$func_ltwrapper_scriptname_result'
                                                              )
                                                            }
                                                          spids: [45547]
                                                        )
                                                      ]
                                                    )
                                                  ]
                                                  spids: [16777215 45540]
                                                )
                                              ]
                                              else_action: [
                                                (SimpleCommand
                                                  words: [{(func_emit_wrapper)} {(no)}]
                                                  redirects: [
                                                    (Redir
                                                      op_id: Redir_Great
                                                      fd: 16777215
                                                      arg_word: 
                                                        {
                                                          ($ VSub_Name 
'$func_ltwrapper_scriptname_result'
                                                          )
                                                        }
                                                      spids: [45559]
                                                    )
                                                  ]
                                                )
                                              ]
                                              spids: [45552 45564]
                                            )
                                          ]
                                          spids: [45515]
                                        )
                                      ]
                                      op_id: Op_DPipe
                                    )
                                  ]
                                  spids: [45347 45357 45570 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (C {($ VSub_Name '$RM')} {($ VSub_Name '$output')})
                                    (C {(trap)} 
                                      {
                                        (DQ ($ VSub_Name '$RM') (' ') ($ VSub_Name '$output') 
                                          ('; exit ') ($ VSub_Name '$EXIT_FAILURE')
                                        )
                                      } {(1)} {(2)} {(15)}
                                    )
                                    (SimpleCommand
                                      words: [{(func_emit_wrapper)} {(no)}]
                                      redirects: [
                                        (Redir
                                          op_id: Redir_Great
                                          fd: 16777215
                                          arg_word: {($ VSub_Name '$output')}
                                          spids: [45605]
                                        )
                                      ]
                                    )
                                    (C {(chmod)} {(Lit_Other '+') (x)} {($ VSub_Name '$output')})
                                  ]
                                  spids: [45573 45575 45618 16777215]
                                )
                              ]
                              spids: [45340 45344 45621]
                            )
                          ]
                          spids: [45243]
                        )
                      ]
                      op_id: Op_DPipe
                    )
                    (C {(exit)} {($ VSub_Name '$EXIT_SUCCESS')})
                  ]
                  spids: [42681 42682 45632 16777215]
                )
              ]
              spids: [32356 32360 45635]
            )
            (ForEach
              iter_name: oldlib
              iter_words: [{($ VSub_Name '$oldlibs')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$build_libtool_libs'))} {(Lit_Other '=')} 
                                  {(convenience)}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:oldobjs)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$libobjs_save') (' ') 
                                        ($ VSub_Name '$symfileobj')
                                      )
                                    }
                                  spids: [45672]
                                )
                              ]
                              spids: [45672]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:addlibs)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$convenience'))}
                                  spids: [45680]
                                )
                              ]
                              spids: [45680]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:build_libtool_libs)
                                  op: Equal
                                  rhs: {(no)}
                                  spids: [45686]
                                )
                              ]
                              spids: [45686]
                            )
                          ]
                          spids: [16777215 45669]
                        )
                      ]
                      else_action: [
                        (If
                          arms: [
                            (if_arm
                              cond: [
                                (Sentence
                                  child: 
                                    (C {(test)} {(DQ ($ VSub_Name '$build_libtool_libs'))} 
                                      {(Lit_Other '=')} {(module)}
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                              ]
                              action: [
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:oldobjs)
                                      op: Equal
                                      rhs: {(DQ ($ VSub_Name '$libobjs_save'))}
                                      spids: [45709]
                                    )
                                  ]
                                  spids: [45709]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:build_libtool_libs)
                                      op: Equal
                                      rhs: {(no)}
                                      spids: [45715]
                                    )
                                  ]
                                  spids: [45715]
                                )
                              ]
                              spids: [16777215 45706]
                            )
                          ]
                          else_action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:oldobjs)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$old_deplibs') (' ') 
                                        ($ VSub_Name '$non_pic_objects')
                                      )
                                    }
                                  spids: [45722]
                                )
                              ]
                              spids: [45722]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (AndOr
                                          children: [
                                            (C {(test)} {(DQ ($ VSub_Name '$preload'))} 
                                              {(Lit_Other '=')} {(yes)}
                                            )
                                            (C {(test)} {(-f)} {(DQ ($ VSub_Name '$symfileobj'))})
                                          ]
                                          op_id: Op_DAmp
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:oldobjs)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$oldobjs') (' ') 
                                                ($ VSub_Name '$symfileobj')
                                              )
                                            }
                                          spids: [45756]
                                        )
                                      ]
                                      spids: [45756]
                                    )
                                  ]
                                  spids: [16777215 45753]
                                )
                              ]
                              spids: [16777215 45764]
                            )
                          ]
                          spids: [45719 45767]
                        )
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:addlibs)
                              op: Equal
                              rhs: {(DQ ($ VSub_Name '$old_convenience'))}
                              spids: [45770]
                            )
                          ]
                          spids: [45770]
                        )
                      ]
                      spids: [45690 45776]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$addlibs'))})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:gentop)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$output_objdir') (/) (${ VSub_Name outputname) 
                                        (x)
                                      )
                                    }
                                  spids: [45794]
                                )
                              ]
                              spids: [45794]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:generated)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$generated') (' ') ($ VSub_Name '$gentop'))}
                                  spids: [45805]
                                )
                              ]
                              spids: [45805]
                            )
                            (C {(func_extract_archives)} {($ VSub_Name '$gentop')} 
                              {($ VSub_Name '$addlibs')}
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:oldobjs)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$oldobjs') (' ') 
                                        ($ VSub_Name '$func_extract_archives_result')
                                      )
                                    }
                                  spids: [45821]
                                )
                              ]
                              spids: [45821]
                            )
                          ]
                          spids: [16777215 45791]
                        )
                      ]
                      spids: [16777215 45829]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (AndOr
                                  children: [
                                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$old_archive_from_new_cmds'))})
                                    (C {(test)} {(DQ ($ VSub_Name '$build_libtool_libs'))} 
                                      {(Lit_Other '=')} {(yes)}
                                    )
                                  ]
                                  op_id: Op_DAmp
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:cmds)
                                  op: Equal
                                  rhs: {($ VSub_Name '$old_archive_from_new_cmds')}
                                  spids: [45863]
                                )
                              ]
                              spids: [45863]
                            )
                          ]
                          spids: [16777215 45860]
                        )
                      ]
                      else_action: [
                        (If
                          arms: [
                            (if_arm
                              cond: [
                                (Sentence
                                  child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$dlprefiles'))})
                                  terminator: <Op_Semi ';'>
                                )
                              ]
                              action: [
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:gentop)
                                      op: Equal
                                      rhs: 
                                        {
                                          (DQ ($ VSub_Name '$output_objdir') (/) 
                                            (${ VSub_Name outputname) (x)
                                          )
                                        }
                                      spids: [45889]
                                    )
                                  ]
                                  spids: [45889]
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:generated)
                                      op: Equal
                                      rhs: 
                                        {
                                          (DQ ($ VSub_Name '$generated') (' ') ($ VSub_Name '$gentop'))
                                        }
                                      spids: [45900]
                                    )
                                  ]
                                  spids: [45900]
                                )
                                (C {(func_extract_archives)} {($ VSub_Name '$gentop')} 
                                  {($ VSub_Name '$dlprefiles')}
                                )
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:oldobjs)
                                      op: Equal
                                      rhs: 
                                        {
                                          (DQ ($ VSub_Name '$oldobjs') (' ') 
                                            ($ VSub_Name '$func_extract_archives_result')
                                          )
                                        }
                                      spids: [45916]
                                    )
                                  ]
                                  spids: [45916]
                                )
                              ]
                              spids: [16777215 45886]
                            )
                          ]
                          spids: [16777215 45924]
                        )
                        (If
                          arms: [
                            (if_arm
                              cond: [
                                (Sentence
                                  child: 
                                    (Subshell
                                      child: 
                                        (Pipeline
                                          children: [
                                            (ForEach
                                              iter_name: obj
                                              iter_words: [{($ VSub_Name '$oldobjs')}]
                                              do_arg_iter: False
                                              body: 
                                                (DoGroup
                                                  children: [
                                                    (C {(func_basename)} {(DQ ($ VSub_Name '$obj'))})
                                                    (C {($ VSub_Name '$ECHO')} 
                                                      {(DQ ($ VSub_Name '$func_basename_result'))}
                                                    )
                                                  ]
                                                  spids: [45964 45981]
                                                )
                                              spids: [45960 16777215]
                                            )
                                            (C {(sort)})
                                            (SimpleCommand
                                              words: [{(sort)} {(-uc)}]
                                              redirects: [
                                                (Redir
                                                  op_id: Redir_Great
                                                  fd: 16777215
                                                  arg_word: {(/dev/null)}
                                                  spids: [45993]
                                                )
                                                (Redir
                                                  op_id: Redir_GreatAnd
                                                  fd: 2
                                                  arg_word: {(1)}
                                                  spids: [45996]
                                                )
                                              ]
                                            )
                                          ]
                                          negated: False
                                        )
                                      spids: [45954 45998]
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                              ]
                              action: [(C {(Lit_Other ':')})]
                              spids: [16777215 46001]
                            )
                          ]
                          else_action: [
                            (C {($ VSub_Name '$ECHO')} 
                              {(DQ ('copying selected object files to avoid basename conflicts...'))}
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:gentop)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ ($ VSub_Name '$output_objdir') (/) (${ VSub_Name outputname) 
                                        (x)
                                      )
                                    }
                                  spids: [46017]
                                )
                              ]
                              spids: [46017]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:generated)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$generated') (' ') ($ VSub_Name '$gentop'))}
                                  spids: [46028]
                                )
                              ]
                              spids: [46028]
                            )
                            (C {(func_mkdir_p)} {(DQ ($ VSub_Name '$gentop'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:save_oldobjs)
                                  op: Equal
                                  rhs: {($ VSub_Name '$oldobjs')}
                                  spids: [46043]
                                )
                              ]
                              spids: [46043]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:oldobjs)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [46047]
                                )
                              ]
                              spids: [46047]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:counter)
                                  op: Equal
                                  rhs: {(1)}
                                  spids: [46050]
                                )
                              ]
                              spids: [46050]
                            )
                            (ForEach
                              iter_name: obj
                              iter_words: [{($ VSub_Name '$save_oldobjs')}]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (C {(func_basename)} {(DQ ($ VSub_Name '$obj'))})
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:objbase)
                                          op: Equal
                                          rhs: {(DQ ($ VSub_Name '$func_basename_result'))}
                                          spids: [46073]
                                        )
                                      ]
                                      spids: [46073]
                                    )
                                    (Case
                                      to_match: {(DQ (' ') ($ VSub_Name '$oldobjs') (' '))}
                                      arms: [
                                        (case_arm
                                          pat_list: [{(DQ (' '))}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:oldobjs)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$obj')}
                                                  spids: [46095]
                                                )
                                              ]
                                              spids: [46095]
                                            )
                                          ]
                                          spids: [46091 46093 46098 16777215]
                                        )
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (Lit_Other '[') 
                                              (EscapedLiteralPart
                                                token: <Lit_EscapedChar '\\ '>
                                              ) (/) (Lit_Other ']') (DQ ($ VSub_Name '$objbase') (' ')) (Lit_Other '*')
                                            }
                                          ]
                                          action: [
                                            (While
                                              cond: [
                                                (Sentence
                                                  child: (C {(Lit_Other ':')})
                                                  terminator: <Op_Semi ';'>
                                                )
                                              ]
                                              body: 
                                                (DoGroup
                                                  children: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:newobj)
                                                          op: Equal
                                                          rhs: 
                                                            {(lt) ($ VSub_Name '$counter') (-) 
                                                              ($ VSub_Name '$objbase')
                                                            }
                                                          spids: [46130]
                                                        )
                                                      ]
                                                      spids: [46130]
                                                    )
                                                    (C {(func_arith)} {($ VSub_Name '$counter')} 
                                                      {(Lit_Other '+')} {(1)}
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:counter)
                                                          op: Equal
                                                          rhs: {($ VSub_Name '$func_arith_result')}
                                                          spids: [46146]
                                                        )
                                                      ]
                                                      spids: [46146]
                                                    )
                                                    (Case
                                                      to_match: 
                                                        {(DQ (' ') ($ VSub_Name '$oldobjs') (' '))}
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [
                                                            {(Lit_Other '*') (Lit_Other '[') 
                                                              (EscapedLiteralPart
                                                                token: <Lit_EscapedChar '\\ '>
                                                              ) (/) (Lit_Other ']') (DQ ($ VSub_Name '$newobj') (' ')) (Lit_Other '*')
                                                            }
                                                          ]
                                                          spids: [46161 46171 46173 16777215]
                                                        )
                                                        (case_arm
                                                          pat_list: [{(Lit_Other '*')}]
                                                          action: [
                                                            (If
                                                              arms: [
                                                                (if_arm
                                                                  cond: [
                                                                    (Sentence
                                                                      child: 
                                                                        (C {(test)} {(KW_Bang '!')} 
                                                                          {(-f)} {(DQ ($ VSub_Name '$gentop') (/) ($ VSub_Name '$newobj'))}
                                                                        )
                                                                      terminator: <Op_Semi ';'>
                                                                    )
                                                                  ]
                                                                  action: [
                                                                    (Sentence
                                                                      child: 
                                                                        (ControlFlow
                                                                          token: 
                                                                            <ControlFlow_Break 
break
                                                                            >
                                                                        )
                                                                      terminator: <Op_Semi ';'>
                                                                    )
                                                                  ]
                                                                  spids: [16777215 46194]
                                                                )
                                                              ]
                                                              spids: [16777215 46199]
                                                            )
                                                          ]
                                                          spids: [46176 46177 46201 16777215]
                                                        )
                                                      ]
                                                      spids: [46150 46158 46204]
                                                    )
                                                  ]
                                                  spids: [46119 46207]
                                                )
                                            )
                                            (C {(func_show_eval)} 
                                              {
                                                (DQ ('ln ') ($ VSub_Name '$obj') (' ') 
                                                  ($ VSub_Name '$gentop') (/) ($ VSub_Name '$newobj') (' || cp ') ($ VSub_Name '$obj') (' ') ($ VSub_Name '$gentop') (/) 
                                                  ($ VSub_Name '$newobj')
                                                )
                                              }
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:oldobjs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$oldobjs') (' ') 
                                                        ($ VSub_Name '$gentop') (/) ($ VSub_Name '$newobj')
                                                      )
                                                    }
                                                  spids: [46228]
                                                )
                                              ]
                                              spids: [46228]
                                            )
                                          ]
                                          spids: [46101 46111 46238 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(Lit_Other '*')}]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:oldobjs)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$oldobjs') (' ') 
                                                        ($ VSub_Name '$obj')
                                                      )
                                                    }
                                                  spids: [46244]
                                                )
                                              ]
                                              spids: [46244]
                                            )
                                          ]
                                          spids: [46241 46242 46251 16777215]
                                        )
                                      ]
                                      spids: [46079 46087 46254]
                                    )
                                  ]
                                  spids: [46063 46257]
                                )
                              spids: [46059 16777215]
                            )
                          ]
                          spids: [46007 46260]
                        )
                        (C {(eval)} 
                          {(Lit_VarLike 'cmds=') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                            ($ VSub_Name '$old_archive_cmds') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                          }
                        )
                        (C {(func_len)} {(DQ (' ') ($ VSub_Name '$cmds'))})
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:len)
                              op: Equal
                              rhs: {($ VSub_Name '$func_len_result')}
                              spids: [46280]
                            )
                          ]
                          spids: [46280]
                        )
                        (If
                          arms: [
                            (if_arm
                              cond: [
                                (Sentence
                                  child: 
                                    (AndOr
                                      children: [
                                        (C {(test)} {(DQ ($ VSub_Name '$len'))} {(-lt)} 
                                          {(DQ ($ VSub_Name '$max_cmd_len'))}
                                        )
                                        (C {(test)} {(DQ ($ VSub_Name '$max_cmd_len'))} {(-le)} {(-1)})
                                      ]
                                      op_id: Op_DPipe
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                              ]
                              action: [
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:cmds)
                                      op: Equal
                                      rhs: {($ VSub_Name '$old_archive_cmds')}
                                      spids: [46314]
                                    )
                                  ]
                                  spids: [46314]
                                )
                              ]
                              spids: [16777215 46311]
                            )
                          ]
                          else_action: [
                            (C {(func_verbose)} {(DQ ('using piecewise archive linking...'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:save_RANLIB)
                                  op: Equal
                                  rhs: {($ VSub_Name '$RANLIB')}
                                  spids: [46332]
                                )
                              ]
                              spids: [46332]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:RANLIB)
                                  op: Equal
                                  rhs: {(Lit_Other ':')}
                                  spids: [46336]
                                )
                              ]
                              spids: [46336]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:objlist)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [46340]
                                )
                              ]
                              spids: [46340]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:concat_cmds)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [46343]
                                )
                              ]
                              spids: [46343]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:save_oldobjs)
                                  op: Equal
                                  rhs: {($ VSub_Name '$oldobjs')}
                                  spids: [46346]
                                )
                              ]
                              spids: [46346]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:oldobjs)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [46350]
                                )
                              ]
                              spids: [46350]
                            )
                            (ForEach
                              iter_name: obj
                              iter_words: [{($ VSub_Name '$save_oldobjs')}]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:last_oldobj)
                                          op: Equal
                                          rhs: {($ VSub_Name '$obj')}
                                          spids: [46369]
                                        )
                                      ]
                                      spids: [46369]
                                    )
                                  ]
                                  spids: [46366 46373]
                                )
                              spids: [46362 16777215]
                            )
                            (C {(eval)} 
                              {(Lit_VarLike 'test_cmds=') 
                                (EscapedLiteralPart
                                  token: <Lit_EscapedChar '\\"'>
                                ) ($ VSub_Name '$old_archive_cmds') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                              }
                            )
                            (C {(func_len)} {(DQ (' ') ($ VSub_Name '$test_cmds'))})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:len0)
                                  op: Equal
                                  rhs: {($ VSub_Name '$func_len_result')}
                                  spids: [46392]
                                )
                              ]
                              spids: [46392]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:len)
                                  op: Equal
                                  rhs: {($ VSub_Name '$len0')}
                                  spids: [46396]
                                )
                              ]
                              spids: [46396]
                            )
                            (ForEach
                              iter_name: obj
                              iter_words: [{($ VSub_Name '$save_oldobjs')}]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (C {(func_len)} {(DQ (' ') ($ VSub_Name '$obj'))})
                                    (C {(func_arith)} {($ VSub_Name '$len')} {(Lit_Other '+')} 
                                      {($ VSub_Name '$func_len_result')}
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:len)
                                          op: Equal
                                          rhs: {($ VSub_Name '$func_arith_result')}
                                          spids: [46429]
                                        )
                                      ]
                                      spids: [46429]
                                    )
                                    (C {(func_append)} {(objlist)} {(DQ (' ') ($ VSub_Name '$obj'))})
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(DQ ($ VSub_Name '$len'))} {(-lt)} 
                                                  {(DQ ($ VSub_Name '$max_cmd_len'))}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [(C {(Lit_Other ':')})]
                                          spids: [16777215 46458]
                                        )
                                      ]
                                      else_action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:oldobjs)
                                              op: Equal
                                              rhs: {($ VSub_Name '$objlist')}
                                              spids: [46471]
                                            )
                                          ]
                                          spids: [46471]
                                        )
                                        (If
                                          arms: [
                                            (if_arm
                                              cond: [
                                                (Sentence
                                                  child: 
                                                    (C {(test)} {(DQ ($ VSub_Name '$obj'))} 
                                                      {(Lit_Other '=')} {(DQ ($ VSub_Name '$last_oldobj'))}
                                                    )
                                                  terminator: <Op_Semi ';'>
                                                )
                                              ]
                                              action: [
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:RANLIB)
                                                      op: Equal
                                                      rhs: {($ VSub_Name '$save_RANLIB')}
                                                      spids: [46494]
                                                    )
                                                  ]
                                                  spids: [46494]
                                                )
                                              ]
                                              spids: [16777215 46491]
                                            )
                                          ]
                                          spids: [16777215 46498]
                                        )
                                        (AndOr
                                          children: [
                                            (C {(test)} {(-z)} {(DQ ($ VSub_Name '$concat_cmds'))})
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:concat_cmds)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$concat_cmds') (Lit_Tilde '~')}
                                                  spids: [46511]
                                                )
                                              ]
                                              spids: [46511]
                                            )
                                          ]
                                          op_id: Op_DPipe
                                        )
                                        (C {(eval)} 
                                          {(Lit_VarLike 'concat_cmds=') 
                                            (EscapedLiteralPart
                                              token: <Lit_EscapedChar '\\"'>
                                            ) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (Lit_LBrace '{') (concat_cmds) (Lit_RBrace '}') 
                                            ($ VSub_Name '$old_archive_cmds') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                          }
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:objlist)
                                              op: Equal
                                              rhs: {(SQ )}
                                              spids: [46528]
                                            )
                                          ]
                                          spids: [46528]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:len)
                                              op: Equal
                                              rhs: {($ VSub_Name '$len0')}
                                              spids: [46531]
                                            )
                                          ]
                                          spids: [46531]
                                        )
                                      ]
                                      spids: [46464 46535]
                                    )
                                  ]
                                  spids: [46409 46538]
                                )
                              spids: [46405 16777215]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:RANLIB)
                                  op: Equal
                                  rhs: {($ VSub_Name '$save_RANLIB')}
                                  spids: [46541]
                                )
                              ]
                              spids: [46541]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:oldobjs)
                                  op: Equal
                                  rhs: {($ VSub_Name '$objlist')}
                                  spids: [46545]
                                )
                              ]
                              spids: [46545]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ (X) ($ VSub_Name '$oldobjs'))} 
                                          {(Lit_Other '=')} {(DQ (X))}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(eval)} 
                                      {(Lit_VarLike 'cmds=') 
                                        (EscapedLiteralPart
                                          token: <Lit_EscapedChar '\\"'>
                                        ) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (concat_cmds) 
                                        (EscapedLiteralPart
                                          token: <Lit_EscapedChar '\\"'>
                                        )
                                      }
                                    )
                                  ]
                                  spids: [16777215 46566]
                                )
                              ]
                              else_action: [
                                (C {(eval)} 
                                  {(Lit_VarLike 'cmds=') 
                                    (EscapedLiteralPart
                                      token: <Lit_EscapedChar '\\"'>
                                    ) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (concat_cmds) (Lit_Tilde '~') 
                                    (EscapedLiteralPart
                                      token: <Lit_EscapedChar '\\$'>
                                    ) (old_archive_cmds) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                  }
                                )
                              ]
                              spids: [46578 46593]
                            )
                          ]
                          spids: [46318 46596]
                        )
                      ]
                      spids: [45867 46599]
                    )
                    (C {(func_execute_cmds)} {(DQ ($ VSub_Name '$cmds'))} {(SQ <'exit $?'>)})
                  ]
                  spids: [45652 46613]
                )
              spids: [45648 45650]
            )
            (AndOr
              children: [
                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$generated'))})
                (C {(func_show_eval)} {(DQ (${ VSub_Name RM) (r) ($ VSub_Name '$generated'))})
              ]
              op_id: Op_DAmp
            )
            (Case
              to_match: {($ VSub_Name '$output')}
              arms: [
                (case_arm
                  pat_list: [{(Lit_Other '*') (.la)}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:old_library)
                          op: Equal
                          rhs: {(SQ )}
                          spids: [46657]
                        )
                      ]
                      spids: [46657]
                    )
                    (AndOr
                      children: [
                        (C {(test)} {(DQ ($ VSub_Name '$build_old_libs'))} {(Lit_Other '=')} {(yes)})
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:old_library)
                              op: Equal
                              rhs: {(DQ ($ VSub_Name '$libname') (.) ($ VSub_Name '$libext'))}
                              spids: [46672]
                            )
                          ]
                          spids: [46672]
                        )
                      ]
                      op_id: Op_DAmp
                    )
                    (C {(func_verbose)} {(DQ ('creating ') ($ VSub_Name '$output'))})
                    (ForEach
                      iter_name: var
                      iter_words: [{($ VSub_Name '$variables_saved_for_relink')}]
                      do_arg_iter: False
                      body: 
                        (DoGroup
                          children: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(eval)} {(test)} {(-z)} 
                                          {(EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) 
                                            (EscapedLiteralPart
                                              token: <Lit_EscapedChar '\\$'>
                                            ) (Lit_LBrace '{') ($ VSub_Name '$var') (Lit_Other '+') (set) (Lit_RBrace '}') 
                                            (EscapedLiteralPart
                                              token: <Lit_EscapedChar '\\"'>
                                            )
                                          }
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:relink_command)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ('{ test -z ') 
                                                (EscapedLiteralPart
                                                  token: <Lit_EscapedChar '\\"'>
                                                ) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{') ($ VSub_Name '$var') ('+set}') 
                                                (EscapedLiteralPart
                                                  token: <Lit_EscapedChar '\\"'>
                                                ) (' || ') ($ VSub_Name '$lt_unset') (' ') ($ VSub_Name '$var') (' || { ') ($ VSub_Name '$var') 
                                                ('=; export ') ($ VSub_Name '$var') ('; }; }; ') ($ VSub_Name '$relink_command')
                                              )
                                            }
                                          spids: [46726]
                                        )
                                      ]
                                      spids: [46726]
                                    )
                                  ]
                                  spids: [16777215 46723]
                                )
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(eval)} 
                                          {(Lit_VarLike 'var_value=') 
                                            (EscapedLiteralPart
                                              token: <Lit_EscapedChar '\\$'>
                                            ) ($ VSub_Name '$var')
                                          }
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                    (Sentence
                                      child: (C {(test)} {(-z)} {(DQ ($ VSub_Name '$var_value'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:relink_command)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$var') ('=; export ') 
                                                ($ VSub_Name '$var') ('; ') ($ VSub_Name '$relink_command')
                                              )
                                            }
                                          spids: [46769]
                                        )
                                      ]
                                      spids: [46769]
                                    )
                                  ]
                                  spids: [46748 46766]
                                )
                              ]
                              else_action: [
                                (C {(func_quote_for_eval)} {(DQ ($ VSub_Name '$var_value'))})
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:relink_command)
                                      op: Equal
                                      rhs: 
                                        {
                                          (DQ ($ VSub_Name '$var') ('=') 
                                            ($ VSub_Name '$func_quote_for_eval_result') ('; export ') ($ VSub_Name '$var') ('; ') ($ VSub_Name '$relink_command')
                                          )
                                        }
                                      spids: [46789]
                                    )
                                  ]
                                  spids: [46789]
                                )
                              ]
                              spids: [46779 46801]
                            )
                          ]
                          spids: [46702 46804]
                        )
                      spids: [46698 46700]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:relink_command)
                          op: Equal
                          rhs: 
                            {
                              (DQ ('(cd ') 
                                (CommandSubPart
                                  command_list: (CommandList children:[(C {(pwd)})])
                                  left_token: <Left_Backtick '`'>
                                  spids: [46814 46816]
                                ) ('; ') ($ VSub_Name '$SHELL') (' ') ($ VSub_Name '$progpath') (' ') ($ VSub_Name '$preserve_args') 
                                (' --mode=relink ') ($ VSub_Name '$libtool_args') (' @inst_prefix_dir@)')
                              )
                            }
                          spids: [46811]
                        )
                      ]
                      spids: [46811]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:relink_command)
                          op: Equal
                          rhs: 
                            {
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (Pipeline
                                        children: [
                                          (C {($ VSub_Name '$ECHO')} 
                                            {(DQ (X) ($ VSub_Name '$relink_command'))}
                                          )
                                          (C {($ VSub_Name '$Xsed')} {(-e)} 
                                            {(DQ ($ VSub_Name '$sed_quote_subst'))}
                                          )
                                        ]
                                        negated: False
                                      )
                                    ]
                                  )
                                left_token: <Left_Backtick '`'>
                                spids: [46830 46847]
                              )
                            }
                          spids: [46829]
                        )
                      ]
                      spids: [46829]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$hardcode_automatic'))} {(Lit_Other '=')} 
                                  {(yes)}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:relink_command)
                                  op: Equal
                                  rhs: {(SQ )}
                                  spids: [46867]
                                )
                              ]
                              spids: [46867]
                            )
                          ]
                          spids: [16777215 46864]
                        )
                      ]
                      spids: [16777215 46870]
                    )
                    (AndOr
                      children: [
                        (C {($ VSub_Name '$opt_dry_run')})
                        (BraceGroup
                          children: [
                            (ForEach
                              iter_name: installed
                              iter_words: [{(no)} {(yes)}]
                              do_arg_iter: False
                              body: 
                                (DoGroup
                                  children: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(test)} {(DQ ($ VSub_Name '$installed'))} 
                                                  {(Lit_Other '=')} {(yes)}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(-z)} 
                                                          {(DQ ($ VSub_Name '$install_libdir'))}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (ControlFlow
                                                      token: <ControlFlow_Break break>
                                                    )
                                                  ]
                                                  spids: [16777215 46926]
                                                )
                                              ]
                                              spids: [16777215 46932]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:output)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$output_objdir') (/) 
                                                        ($ VSub_Name '$outputname')
                                                      ) (i)
                                                    }
                                                  spids: [46935]
                                                )
                                              ]
                                              spids: [46935]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:newdependency_libs)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [46948]
                                                )
                                              ]
                                              spids: [46948]
                                            )
                                            (ForEach
                                              iter_name: deplib
                                              iter_words: [{($ VSub_Name '$dependency_libs')}]
                                              do_arg_iter: False
                                              body: 
                                                (DoGroup
                                                  children: [
                                                    (Case
                                                      to_match: {($ VSub_Name '$deplib')}
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [{(Lit_Other '*') (.la)}]
                                                          action: [
                                                            (C {(func_basename)} 
                                                              {(DQ ($ VSub_Name '$deplib'))}
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:name)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name 
'$func_basename_result'
                                                                        )
                                                                      )
                                                                    }
                                                                  spids: [46982]
                                                                )
                                                              ]
                                                              spids: [46982]
                                                            )
                                                            (C {(eval)} 
                                                              {(Lit_VarLike 'libdir=') 
                                                                (CommandSubPart
                                                                  command_list: 
                                                                    (CommandList
                                                                      children: [
                                                                        (C {(${ VSub_Name SED)} {(-n)} 
                                                                          {(-e)} {(SQ <'s/^libdir=\\(.*\\)$/\\1/p'>)} {($ VSub_Name '$deplib')}
                                                                        )
                                                                      ]
                                                                    )
                                                                  left_token: <Left_Backtick '`'>
                                                                  spids: [46991 47005]
                                                                )
                                                              }
                                                            )
                                                            (AndOr
                                                              children: [
                                                                (C {(test)} {(-z)} 
                                                                  {(DQ ($ VSub_Name '$libdir'))}
                                                                )
                                                                (C {(func_fatal_error)} 
                                                                  {
                                                                    (DQ 
                                                                      (EscapedLiteralPart
                                                                        token: 
                                                                          <Lit_EscapedChar '\\`'>
                                                                      ) ($ VSub_Name '$deplib') ("' is not a valid libtool archive")
                                                                    )
                                                                  }
                                                                )
                                                              ]
                                                              op_id: Op_DAmp
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: 
                                                                    (LhsName
                                                                      name: newdependency_libs
                                                                    )
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name 
'$newdependency_libs'
                                                                        ) (' ') ($ VSub_Name '$libdir') (/) ($ VSub_Name '$name')
                                                                      )
                                                                    }
                                                                  spids: [47029]
                                                                )
                                                              ]
                                                              spids: [47029]
                                                            )
                                                          ]
                                                          spids: [46970 46972 47039 16777215]
                                                        )
                                                        (case_arm
                                                          pat_list: [{(Lit_Other '*')}]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: 
                                                                    (LhsName
                                                                      name: newdependency_libs
                                                                    )
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name 
'$newdependency_libs'
                                                                        ) (' ') ($ VSub_Name '$deplib')
                                                                      )
                                                                    }
                                                                  spids: [47045]
                                                                )
                                                              ]
                                                              spids: [47045]
                                                            )
                                                          ]
                                                          spids: [47042 47043 47052 16777215]
                                                        )
                                                      ]
                                                      spids: [46963 46967 47055]
                                                    )
                                                  ]
                                                  spids: [46960 47058]
                                                )
                                              spids: [46956 46958]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:dependency_libs)
                                                  op: Equal
                                                  rhs: {(DQ ($ VSub_Name '$newdependency_libs'))}
                                                  spids: [47061]
                                                )
                                              ]
                                              spids: [47061]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:newdlfiles)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [47067]
                                                )
                                              ]
                                              spids: [47067]
                                            )
                                            (ForEach
                                              iter_name: lib
                                              iter_words: [{($ VSub_Name '$dlfiles')}]
                                              do_arg_iter: False
                                              body: 
                                                (DoGroup
                                                  children: [
                                                    (Case
                                                      to_match: {($ VSub_Name '$lib')}
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [{(Lit_Other '*') (.la)}]
                                                          action: [
                                                            (C {(func_basename)} 
                                                              {(DQ ($ VSub_Name '$lib'))}
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:name)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name 
'$func_basename_result'
                                                                        )
                                                                      )
                                                                    }
                                                                  spids: [47102]
                                                                )
                                                              ]
                                                              spids: [47102]
                                                            )
                                                            (C {(eval)} 
                                                              {(Lit_VarLike 'libdir=') 
                                                                (CommandSubPart
                                                                  command_list: 
                                                                    (CommandList
                                                                      children: [
                                                                        (C {(${ VSub_Name SED)} {(-n)} 
                                                                          {(-e)} {(SQ <'s/^libdir=\\(.*\\)$/\\1/p'>)} {($ VSub_Name '$lib')}
                                                                        )
                                                                      ]
                                                                    )
                                                                  left_token: <Left_Backtick '`'>
                                                                  spids: [47111 47125]
                                                                )
                                                              }
                                                            )
                                                            (AndOr
                                                              children: [
                                                                (C {(test)} {(-z)} 
                                                                  {(DQ ($ VSub_Name '$libdir'))}
                                                                )
                                                                (C {(func_fatal_error)} 
                                                                  {
                                                                    (DQ 
                                                                      (EscapedLiteralPart
                                                                        token: 
                                                                          <Lit_EscapedChar '\\`'>
                                                                      ) ($ VSub_Name '$lib') ("' is not a valid libtool archive")
                                                                    )
                                                                  }
                                                                )
                                                              ]
                                                              op_id: Op_DAmp
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:newdlfiles)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ ($ VSub_Name '$newdlfiles') 
                                                                        (' ') ($ VSub_Name '$libdir') (/) ($ VSub_Name '$name')
                                                                      )
                                                                    }
                                                                  spids: [47149]
                                                                )
                                                              ]
                                                              spids: [47149]
                                                            )
                                                          ]
                                                          spids: [47090 47092 47159 16777215]
                                                        )
                                                        (case_arm
                                                          pat_list: [{(Lit_Other '*')}]
                                                          action: [
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:newdlfiles)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ ($ VSub_Name '$newdlfiles') 
                                                                        (' ') ($ VSub_Name '$lib')
                                                                      )
                                                                    }
                                                                  spids: [47165]
                                                                )
                                                              ]
                                                              spids: [47165]
                                                            )
                                                          ]
                                                          spids: [47162 47163 47172 16777215]
                                                        )
                                                      ]
                                                      spids: [47083 47087 47175]
                                                    )
                                                  ]
                                                  spids: [47080 47178]
                                                )
                                              spids: [47076 47078]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:dlfiles)
                                                  op: Equal
                                                  rhs: {(DQ ($ VSub_Name '$newdlfiles'))}
                                                  spids: [47181]
                                                )
                                              ]
                                              spids: [47181]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:newdlprefiles)
                                                  op: Equal
                                                  rhs: {(SQ )}
                                                  spids: [47187]
                                                )
                                              ]
                                              spids: [47187]
                                            )
                                            (ForEach
                                              iter_name: lib
                                              iter_words: [{($ VSub_Name '$dlprefiles')}]
                                              do_arg_iter: False
                                              body: 
                                                (DoGroup
                                                  children: [
                                                    (Case
                                                      to_match: {($ VSub_Name '$lib')}
                                                      arms: [
                                                        (case_arm
                                                          pat_list: [{(Lit_Other '*') (.la)}]
                                                          action: [
                                                            (C {(func_basename)} 
                                                              {(DQ ($ VSub_Name '$lib'))}
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:name)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name 
'$func_basename_result'
                                                                        )
                                                                      )
                                                                    }
                                                                  spids: [47237]
                                                                )
                                                              ]
                                                              spids: [47237]
                                                            )
                                                            (C {(eval)} 
                                                              {(Lit_VarLike 'libdir=') 
                                                                (CommandSubPart
                                                                  command_list: 
                                                                    (CommandList
                                                                      children: [
                                                                        (C {(${ VSub_Name SED)} {(-n)} 
                                                                          {(-e)} {(SQ <'s/^libdir=\\(.*\\)$/\\1/p'>)} {($ VSub_Name '$lib')}
                                                                        )
                                                                      ]
                                                                    )
                                                                  left_token: <Left_Backtick '`'>
                                                                  spids: [47246 47260]
                                                                )
                                                              }
                                                            )
                                                            (AndOr
                                                              children: [
                                                                (C {(test)} {(-z)} 
                                                                  {(DQ ($ VSub_Name '$libdir'))}
                                                                )
                                                                (C {(func_fatal_error)} 
                                                                  {
                                                                    (DQ 
                                                                      (EscapedLiteralPart
                                                                        token: 
                                                                          <Lit_EscapedChar '\\`'>
                                                                      ) ($ VSub_Name '$lib') ("' is not a valid libtool archive")
                                                                    )
                                                                  }
                                                                )
                                                              ]
                                                              op_id: Op_DAmp
                                                            )
                                                            (Assignment
                                                              keyword: Assign_None
                                                              pairs: [
                                                                (assign_pair
                                                                  lhs: (LhsName name:newdlprefiles)
                                                                  op: Equal
                                                                  rhs: 
                                                                    {
                                                                      (DQ 
                                                                        ($ VSub_Name '$newdlprefiles') (' ') ($ VSub_Name '$libdir') (/) ($ VSub_Name '$name')
                                                                      )
                                                                    }
                                                                  spids: [47284]
                                                                )
                                                              ]
                                                              spids: [47284]
                                                            )
                                                          ]
                                                          spids: [47209 47211 47294 16777215]
                                                        )
                                                      ]
                                                      spids: [47202 47206 47297]
                                                    )
                                                  ]
                                                  spids: [47199 47300]
                                                )
                                              spids: [47195 47197]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:dlprefiles)
                                                  op: Equal
                                                  rhs: {(DQ ($ VSub_Name '$newdlprefiles'))}
                                                  spids: [47303]
                                                )
                                              ]
                                              spids: [47303]
                                            )
                                          ]
                                          spids: [16777215 46912]
                                        )
                                      ]
                                      else_action: [
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:newdlfiles)
                                              op: Equal
                                              rhs: {(SQ )}
                                              spids: [47312]
                                            )
                                          ]
                                          spids: [47312]
                                        )
                                        (ForEach
                                          iter_name: lib
                                          iter_words: [{($ VSub_Name '$dlfiles')}]
                                          do_arg_iter: False
                                          body: 
                                            (DoGroup
                                              children: [
                                                (Case
                                                  to_match: {($ VSub_Name '$lib')}
                                                  arms: [
                                                    (case_arm
                                                      pat_list: [
                                                        {(Lit_Other '[') 
                                                          (EscapedLiteralPart
                                                            token: <Lit_EscapedChar '\\\\'>
                                                          ) (/) (Lit_Other ']') (Lit_Other '*')
                                                        }
                                                        {(Lit_Other '[') (A-Za-z) (Lit_Other ']') 
                                                          (Lit_Other ':') (Lit_Other '[') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (/) (Lit_Other ']') (Lit_Other '*')
                                                        }
                                                      ]
                                                      action: [
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:abs)
                                                              op: Equal
                                                              rhs: {(DQ ($ VSub_Name '$lib'))}
                                                              spids: [47353]
                                                            )
                                                          ]
                                                          spids: [47353]
                                                        )
                                                      ]
                                                      spids: [47334 47351 47358 16777215]
                                                    )
                                                    (case_arm
                                                      pat_list: [{(Lit_Other '*')}]
                                                      action: [
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:abs)
                                                              op: Equal
                                                              rhs: 
                                                                {
                                                                  (CommandSubPart
                                                                    command_list: 
                                                                      (CommandList
                                                                        children: [(C {(pwd)})]
                                                                      )
                                                                    left_token: <Left_Backtick '`'>
                                                                    spids: [47365 47367]
                                                                  ) (DQ (/) ($ VSub_Name '$lib'))
                                                                }
                                                              spids: [47364]
                                                            )
                                                          ]
                                                          spids: [47364]
                                                        )
                                                      ]
                                                      spids: [47361 47362 47373 16777215]
                                                    )
                                                  ]
                                                  spids: [47327 47331 47376]
                                                )
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:newdlfiles)
                                                      op: Equal
                                                      rhs: 
                                                        {
                                                          (DQ ($ VSub_Name '$newdlfiles') (' ') 
                                                            ($ VSub_Name '$abs')
                                                          )
                                                        }
                                                      spids: [47379]
                                                    )
                                                  ]
                                                  spids: [47379]
                                                )
                                              ]
                                              spids: [47324 47387]
                                            )
                                          spids: [47320 47322]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:dlfiles)
                                              op: Equal
                                              rhs: {(DQ ($ VSub_Name '$newdlfiles'))}
                                              spids: [47390]
                                            )
                                          ]
                                          spids: [47390]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:newdlprefiles)
                                              op: Equal
                                              rhs: {(SQ )}
                                              spids: [47396]
                                            )
                                          ]
                                          spids: [47396]
                                        )
                                        (ForEach
                                          iter_name: lib
                                          iter_words: [{($ VSub_Name '$dlprefiles')}]
                                          do_arg_iter: False
                                          body: 
                                            (DoGroup
                                              children: [
                                                (Case
                                                  to_match: {($ VSub_Name '$lib')}
                                                  arms: [
                                                    (case_arm
                                                      pat_list: [
                                                        {(Lit_Other '[') 
                                                          (EscapedLiteralPart
                                                            token: <Lit_EscapedChar '\\\\'>
                                                          ) (/) (Lit_Other ']') (Lit_Other '*')
                                                        }
                                                        {(Lit_Other '[') (A-Za-z) (Lit_Other ']') 
                                                          (Lit_Other ':') (Lit_Other '[') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (/) (Lit_Other ']') (Lit_Other '*')
                                                        }
                                                      ]
                                                      action: [
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:abs)
                                                              op: Equal
                                                              rhs: {(DQ ($ VSub_Name '$lib'))}
                                                              spids: [47437]
                                                            )
                                                          ]
                                                          spids: [47437]
                                                        )
                                                      ]
                                                      spids: [47418 47435 47442 16777215]
                                                    )
                                                    (case_arm
                                                      pat_list: [{(Lit_Other '*')}]
                                                      action: [
                                                        (Assignment
                                                          keyword: Assign_None
                                                          pairs: [
                                                            (assign_pair
                                                              lhs: (LhsName name:abs)
                                                              op: Equal
                                                              rhs: 
                                                                {
                                                                  (CommandSubPart
                                                                    command_list: 
                                                                      (CommandList
                                                                        children: [(C {(pwd)})]
                                                                      )
                                                                    left_token: <Left_Backtick '`'>
                                                                    spids: [47449 47451]
                                                                  ) (DQ (/) ($ VSub_Name '$lib'))
                                                                }
                                                              spids: [47448]
                                                            )
                                                          ]
                                                          spids: [47448]
                                                        )
                                                      ]
                                                      spids: [47445 47446 47457 16777215]
                                                    )
                                                  ]
                                                  spids: [47411 47415 47460]
                                                )
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:newdlprefiles)
                                                      op: Equal
                                                      rhs: 
                                                        {
                                                          (DQ ($ VSub_Name '$newdlprefiles') (' ') 
                                                            ($ VSub_Name '$abs')
                                                          )
                                                        }
                                                      spids: [47463]
                                                    )
                                                  ]
                                                  spids: [47463]
                                                )
                                              ]
                                              spids: [47408 47471]
                                            )
                                          spids: [47404 47406]
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:dlprefiles)
                                              op: Equal
                                              rhs: {(DQ ($ VSub_Name '$newdlprefiles'))}
                                              spids: [47474]
                                            )
                                          ]
                                          spids: [47474]
                                        )
                                      ]
                                      spids: [47309 47480]
                                    )
                                    (C {($ VSub_Name '$RM')} {($ VSub_Name '$output')})
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:tdlname)
                                          op: Equal
                                          rhs: {($ VSub_Name '$dlname')}
                                          spids: [47492]
                                        )
                                      ]
                                      spids: [47492]
                                    )
                                    (Case
                                      to_match: 
                                        {($ VSub_Name '$host') (Lit_Comma ',') 
                                          ($ VSub_Name '$output') (Lit_Comma ',') ($ VSub_Name '$installed') (Lit_Comma ',') ($ VSub_Name '$module') (Lit_Comma ',') 
                                          ($ VSub_Name '$dlname')
                                        }
                                      arms: [
                                        (case_arm
                                          pat_list: [
                                            {(Lit_Other '*') (cygwin) (Lit_Other '*') (Lit_Comma ',') 
                                              (Lit_Other '*') (lai) (Lit_Comma ',') (yes) (Lit_Comma ',') (no) (Lit_Comma ',') (Lit_Other '*') (.dll)
                                            }
                                            {(Lit_Other '*') (mingw) (Lit_Other '*') (Lit_Comma ',') 
                                              (Lit_Other '*') (lai) (Lit_Comma ',') (yes) (Lit_Comma ',') (no) (Lit_Comma ',') (Lit_Other '*') (.dll)
                                            }
                                            {(Lit_Other '*') (cegcc) (Lit_Other '*') (Lit_Comma ',') 
                                              (Lit_Other '*') (lai) (Lit_Comma ',') (yes) (Lit_Comma ',') (no) (Lit_Comma ',') (Lit_Other '*') (.dll)
                                            }
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:tdlname)
                                                  op: Equal
                                                  rhs: {(../bin/) ($ VSub_Name '$dlname')}
                                                  spids: [47558]
                                                )
                                              ]
                                              spids: [47558]
                                            )
                                          ]
                                          spids: [47511 47556 47562 16777215]
                                        )
                                      ]
                                      spids: [47496 47508 47565]
                                    )
                                    (SimpleCommand
                                      words: [
                                        {($ VSub_Name '$ECHO')}
                                        {
                                          (DQ ('# ') ($ VSub_Name '$outputname') 
                                            (' - a libtool library file\n') ('# Generated by ') ($ VSub_Name '$PROGRAM') (' (GNU ') ($ VSub_Name '$PACKAGE') 
                                            ($ VSub_Name '$TIMESTAMP') (') ') ($ VSub_Name '$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='") ($ VSub_Name '$tdlname') ("'\n") ('\n') 
                                            ('# Names of this library.\n') ("library_names='") ($ VSub_Name '$library_names') ("'\n") ('\n') ('# The name of the static archive.\n') 
                                            ("old_library='") ($ VSub_Name '$old_library') ("'\n") ('\n') ('# Linker flags that can not go in dependency_libs.\n') 
                                            ("inherited_linker_flags='") ($ VSub_Name '$new_inherited_linker_flags') ("'\n") ('\n') ('# Libraries that this one depends upon.\n') 
                                            ("dependency_libs='") ($ VSub_Name '$dependency_libs') ("'\n") ('\n') 
                                            (
'# Names of additional weak libraries provided by this library\n'
                                            ) ("weak_library_names='") ($ VSub_Name '$weak_libs') ("'\n") ('\n') ('# Version information for ') 
                                            ($ VSub_Name '$libname') ('.\n') ('current=') ($ VSub_Name '$current') ('\n') ('age=') ($ VSub_Name '$age') ('\n') ('revision=') 
                                            ($ VSub_Name '$revision') ('\n') ('\n') ('# Is this an already installed library?\n') ('installed=') ($ VSub_Name '$installed') 
                                            ('\n') ('\n') ('# Should we warn about portability when linking against -modules?\n') ('shouldnotlink=') 
                                            ($ VSub_Name '$module') ('\n') ('\n') ('# Files to dlopen/dlpreopen\n') ("dlopen='") ($ VSub_Name '$dlfiles') ("'\n") 
                                            ("dlpreopen='") ($ VSub_Name '$dlprefiles') ("'\n") ('\n') ('# Directory that this library needs to be installed in:\n') 
                                            ("libdir='") ($ VSub_Name '$install_libdir') ("'")
                                          )
                                        }
                                      ]
                                      redirects: [
                                        (Redir
                                          op_id: Redir_Great
                                          fd: 16777215
                                          arg_word: {($ VSub_Name '$output')}
                                          spids: [47570]
                                        )
                                      ]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(DQ ($ VSub_Name '$installed'))} 
                                                      {(Lit_Other '=')} {(no)}
                                                    )
                                                    (C {(test)} {(DQ ($ VSub_Name '$need_relink'))} 
                                                      {(Lit_Other '=')} {(yes)}
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (SimpleCommand
                                              words: [
                                                {($ VSub_Name '$ECHO')}
                                                {
                                                  (DQ ('relink_command=') 
                                                    (EscapedLiteralPart
                                                      token: <Lit_EscapedChar '\\"'>
                                                    ) ($ VSub_Name '$relink_command') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                                                  )
                                                }
                                              ]
                                              redirects: [
                                                (Redir
                                                  op_id: Redir_DGreat
                                                  fd: 16777215
                                                  arg_word: {($ VSub_Name '$output')}
                                                  spids: [47689]
                                                )
                                              ]
                                            )
                                          ]
                                          spids: [16777215 47684]
                                        )
                                      ]
                                      spids: [16777215 47702]
                                    )
                                  ]
                                  spids: [46896 47705]
                                )
                              spids: [46890 46894]
                            )
                          ]
                          spids: [46882]
                        )
                      ]
                      op_id: Op_DPipe
                    )
                    (C {(func_show_eval)} 
                      {
                        (SQ 
                          <
'( cd "$output_objdir" && $RM "$outputname" && $LN_S "../$outputname" "$outputname" )'
                          >
                        )
                      } {(SQ <'exit $?'>)}
                    )
                  ]
                  spids: [46652 46654 47731 16777215]
                )
              ]
              spids: [46645 46649 47734]
            )
            (C {(exit)} {($ VSub_Name '$EXIT_SUCCESS')})
          ]
          spids: [18270]
        )
      spids: [18265 18269]
    )
    (AndOr
      children: [
        (BraceGroup
          children: [
            (Sentence
              child: 
                (AndOr
                  children: [
                    (C {(test)} {(DQ ($ VSub_Name '$mode'))} {(Lit_Other '=')} {(link)})
                    (C {(test)} {(DQ ($ VSub_Name '$mode'))} {(Lit_Other '=')} {(relink)})
                  ]
                  op_id: Op_DPipe
                )
              terminator: <Op_Semi ';'>
            )
          ]
          spids: [47744]
        )
        (C {(func_mode_link)} 
          {
            (BracedVarSub
              token: <VSub_Number 1>
              suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
              spids: [47776 47782]
            )
          }
        )
      ]
      op_id: Op_DAmp
    )
    (FuncDef
      name: func_mode_uninstall
      body: 
        (BraceGroup
          children: [
            (C {($ VSub_Name '$opt_debug')})
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:RM)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$nonopt'))}
                  spids: [47800]
                )
              ]
              spids: [47800]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:files) op:Equal rhs:{(SQ )} spids:[47806])]
              spids: [47806]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:rmforce) op:Equal rhs:{(SQ )} spids:[47809])]
              spids: [47809]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:exit_status) op:Equal rhs:{(0)} spids:[47812])]
              spids: [47812]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:libtool_install_magic)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$magic'))}
                  spids: [47825]
                )
              ]
              spids: [47825]
            )
            (ForEach
              iter_name: arg
              do_arg_iter: True
              body: 
                (DoGroup
                  children: [
                    (Case
                      to_match: {($ VSub_Name '$arg')}
                      arms: [
                        (case_arm
                          pat_list: [{(-f)}]
                          action: [
                            (Sentence
                              child: 
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:RM)
                                      op: Equal
                                      rhs: {(DQ ($ VSub_Name '$RM') (' ') ($ VSub_Name '$arg'))}
                                      spids: [47850]
                                    )
                                  ]
                                  spids: [47850]
                                )
                              terminator: <Op_Semi ';'>
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:rmforce)
                                  op: Equal
                                  rhs: {(yes)}
                                  spids: [47858]
                                )
                              ]
                              spids: [47858]
                            )
                          ]
                          spids: [47847 47848 47861 16777215]
                        )
                        (case_arm
                          pat_list: [{(-) (Lit_Other '*')}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:RM)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$RM') (' ') ($ VSub_Name '$arg'))}
                                  spids: [47868]
                                )
                              ]
                              spids: [47868]
                            )
                          ]
                          spids: [47864 47866 47875 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*')}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:files)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$files') (' ') ($ VSub_Name '$arg'))}
                                  spids: [47881]
                                )
                              ]
                              spids: [47881]
                            )
                          ]
                          spids: [47878 47879 47888 16777215]
                        )
                      ]
                      spids: [47840 47844 47891]
                    )
                  ]
                  spids: [47837 47894]
                )
              spids: [16777215 16777215]
            )
            (AndOr
              children: [
                (C {(test)} {(-z)} {(DQ ($ VSub_Name '$RM'))})
                (C {(func_fatal_help)} {(DQ ('you must specify an RM program'))})
              ]
              op_id: Op_DAmp
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:rmdirs) op:Equal rhs:{(SQ )} spids:[47918])]
              spids: [47918]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:origobjdir)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$objdir'))}
                  spids: [47922]
                )
              ]
              spids: [47922]
            )
            (ForEach
              iter_name: file
              iter_words: [{($ VSub_Name '$files')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (C {(func_dirname)} {(DQ ($ VSub_Name '$file'))} {(DQ )} {(DQ (.))})
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:dir)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$func_dirname_result'))}
                          spids: [47954]
                        )
                      ]
                      spids: [47954]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ (X) ($ VSub_Name '$dir'))} {(Lit_Other '=')} {(X.)})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:objdir)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name '$origobjdir'))}
                                  spids: [47977]
                                )
                              ]
                              spids: [47977]
                            )
                          ]
                          spids: [16777215 47974]
                        )
                      ]
                      else_action: [
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:objdir)
                              op: Equal
                              rhs: {(DQ ($ VSub_Name '$dir') (/) ($ VSub_Name '$origobjdir'))}
                              spids: [47986]
                            )
                          ]
                          spids: [47986]
                        )
                      ]
                      spids: [47983 47994]
                    )
                    (C {(func_basename)} {(DQ ($ VSub_Name '$file'))})
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:name)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$func_basename_result'))}
                          spids: [48004]
                        )
                      ]
                      spids: [48004]
                    )
                    (AndOr
                      children: [
                        (C {(test)} {(DQ ($ VSub_Name '$mode'))} {(Lit_Other '=')} {(uninstall)})
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:objdir)
                              op: Equal
                              rhs: {(DQ ($ VSub_Name '$dir'))}
                              spids: [48022]
                            )
                          ]
                          spids: [48022]
                        )
                      ]
                      op_id: Op_DAmp
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$mode'))} {(Lit_Other '=')} {(clean)})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Case
                              to_match: {(DQ (' ') ($ VSub_Name '$rmdirs') (' '))}
                              arms: [
                                (case_arm
                                  pat_list: [
                                    {(Lit_Other '*') (DQ (' ') ($ VSub_Name '$objdir') (' ')) 
                                      (Lit_Other '*')
                                    }
                                  ]
                                  spids: [48060 48067 48069 16777215]
                                )
                                (case_arm
                                  pat_list: [{(Lit_Other '*')}]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:rmdirs)
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ ($ VSub_Name '$rmdirs') (' ') ($ VSub_Name '$objdir'))
                                            }
                                          spids: [48075]
                                        )
                                      ]
                                      spids: [48075]
                                    )
                                  ]
                                  spids: [48072 48073 48082 16777215]
                                )
                              ]
                              spids: [48049 48057 48085]
                            )
                          ]
                          spids: [16777215 48046]
                        )
                      ]
                      spids: [16777215 48088]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (AndOr
                                  children: [
                                    (BraceGroup
                                      children: [
                                        (Sentence
                                          child: (C {(test)} {(-L)} {(DQ ($ VSub_Name '$file'))})
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      redirects: [
                                        (Redir
                                          op_id: Redir_Great
                                          fd: 16777215
                                          arg_word: {(/dev/null)}
                                          spids: [48111]
                                        )
                                        (Redir
                                          op_id: Redir_GreatAnd
                                          fd: 2
                                          arg_word: {(1)}
                                          spids: [48114]
                                        )
                                      ]
                                      spids: [48098]
                                    )
                                    (AndOr
                                      children: [
                                        (BraceGroup
                                          children: [
                                            (Sentence
                                              child: (C {(test)} {(-h)} {(DQ ($ VSub_Name '$file'))})
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Great
                                              fd: 16777215
                                              arg_word: {(/dev/null)}
                                              spids: [48133]
                                            )
                                            (Redir
                                              op_id: Redir_GreatAnd
                                              fd: 2
                                              arg_word: {(1)}
                                              spids: [48136]
                                            )
                                          ]
                                          spids: [48120]
                                        )
                                        (C {(test)} {(-f)} {(DQ ($ VSub_Name '$file'))})
                                      ]
                                      op_id: Op_DPipe
                                    )
                                  ]
                                  op_id: Op_DPipe
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [(C {(Lit_Other ':')})]
                          spids: [16777215 48151]
                        )
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-d)} {(DQ ($ VSub_Name '$file'))})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:exit_status)
                                  op: Equal
                                  rhs: {(1)}
                                  spids: [48171]
                                )
                              ]
                              spids: [48171]
                            )
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          spids: [48157 48168]
                        )
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(test)} {(DQ ($ VSub_Name '$rmforce'))} {(Lit_Other '=')} {(yes)})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [(ControlFlow token:<ControlFlow_Continue continue>)]
                          spids: [48178 48191]
                        )
                      ]
                      spids: [16777215 48197]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:rmfiles)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$file'))}
                          spids: [48201]
                        )
                      ]
                      spids: [48201]
                    )
                    (Case
                      to_match: {($ VSub_Name '$name')}
                      arms: [
                        (case_arm
                          pat_list: [{(Lit_Other '*') (.la)}]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(func_lalib_p)} {(DQ ($ VSub_Name '$file'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(func_source)} {($ VSub_Name '$dir') (/) ($ VSub_Name '$name')})
                                    (ForEach
                                      iter_name: n
                                      iter_words: [{($ VSub_Name '$library_names')}]
                                      do_arg_iter: False
                                      body: 
                                        (DoGroup
                                          children: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:rmfiles)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$rmfiles') (' ') 
                                                        ($ VSub_Name '$objdir') (/) ($ VSub_Name '$n')
                                                      )
                                                    }
                                                  spids: [48260]
                                                )
                                              ]
                                              spids: [48260]
                                            )
                                          ]
                                          spids: [48257 48270]
                                        )
                                      spids: [48253 48255]
                                    )
                                    (AndOr
                                      children: [
                                        (C {(test)} {(-n)} {(DQ ($ VSub_Name '$old_library'))})
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:rmfiles)
                                              op: Equal
                                              rhs: 
                                                {
                                                  (DQ ($ VSub_Name '$rmfiles') (' ') 
                                                    ($ VSub_Name '$objdir') (/) ($ VSub_Name '$old_library')
                                                  )
                                                }
                                              spids: [48283]
                                            )
                                          ]
                                          spids: [48283]
                                        )
                                      ]
                                      op_id: Op_DAmp
                                    )
                                    (Case
                                      to_match: {(DQ ($ VSub_Name '$mode'))}
                                      arms: [
                                        (case_arm
                                          pat_list: [{(clean)}]
                                          action: [
                                            (Case
                                              to_match: 
                                                {(DQ ('  ') ($ VSub_Name '$library_names') (' '))}
                                              arms: [
                                                (case_arm
                                                  pat_list: [
                                                    {(Lit_Other '*') 
                                                      (DQ (' ') ($ VSub_Name '$dlname') (' ')) (Lit_Other '*')
                                                    }
                                                  ]
                                                  spids: [48322 48329 48331 16777215]
                                                )
                                                (case_arm
                                                  pat_list: [{(Lit_Other '*')}]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:rmfiles)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$rmfiles') (' ') 
                                                                ($ VSub_Name '$objdir') (/) ($ VSub_Name '$dlname')
                                                              )
                                                            }
                                                          spids: [48337]
                                                        )
                                                      ]
                                                      spids: [48337]
                                                    )
                                                  ]
                                                  spids: [48334 48335 48346 16777215]
                                                )
                                              ]
                                              spids: [48307 48315 48349]
                                            )
                                            (AndOr
                                              children: [
                                                (C {(test)} {(-n)} {(DQ ($ VSub_Name '$libdir'))})
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:rmfiles)
                                                      op: Equal
                                                      rhs: 
                                                        {
                                                          (DQ ($ VSub_Name '$rmfiles') (' ') 
                                                            ($ VSub_Name '$objdir') (/) ($ VSub_Name '$name') (' ') ($ VSub_Name '$objdir') (/) (${ VSub_Name name) (i)
                                                          )
                                                        }
                                                      spids: [48362]
                                                    )
                                                  ]
                                                  spids: [48362]
                                                )
                                              ]
                                              op_id: Op_DAmp
                                            )
                                          ]
                                          spids: [48303 48304 48379 16777215]
                                        )
                                        (case_arm
                                          pat_list: [{(uninstall)}]
                                          action: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(-n)} 
                                                          {(DQ ($ VSub_Name '$library_names'))}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (C {(func_execute_cmds)} 
                                                      {(DQ ($ VSub_Name '$postuninstall_cmds'))} {(SQ <'test "$rmforce" = yes || exit_status=1'>)}
                                                    )
                                                  ]
                                                  spids: [16777215 48397]
                                                )
                                              ]
                                              spids: [16777215 48415]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} {(-n)} 
                                                          {(DQ ($ VSub_Name '$old_library'))}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (C {(func_execute_cmds)} 
                                                      {(DQ ($ VSub_Name '$old_postuninstall_cmds'))} {(SQ <'test "$rmforce" = yes || exit_status=1'>)}
                                                    )
                                                  ]
                                                  spids: [16777215 48430]
                                                )
                                              ]
                                              spids: [16777215 48448]
                                            )
                                          ]
                                          spids: [48382 48383 48455 16777215]
                                        )
                                      ]
                                      spids: [48294 48300 48458]
                                    )
                                  ]
                                  spids: [16777215 48233]
                                )
                              ]
                              spids: [16777215 48461]
                            )
                          ]
                          spids: [48215 48217 48464 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*') (.lo)}]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: (C {(func_lalib_p)} {(DQ ($ VSub_Name '$file'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(func_source)} {($ VSub_Name '$dir') (/) ($ VSub_Name '$name')})
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$pic_object'))})
                                                    (C {(test)} {(DQ ($ VSub_Name '$pic_object'))} 
                                                      {(KW_Bang '!') (Lit_Other '=')} {(none)}
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:rmfiles)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$rmfiles') (' ') 
                                                        ($ VSub_Name '$dir') (/) ($ VSub_Name '$pic_object')
                                                      )
                                                    }
                                                  spids: [48534]
                                                )
                                              ]
                                              spids: [48534]
                                            )
                                          ]
                                          spids: [16777215 48531]
                                        )
                                      ]
                                      spids: [16777215 48544]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (AndOr
                                                  children: [
                                                    (C {(test)} {(-n)} 
                                                      {(DQ ($ VSub_Name '$non_pic_object'))}
                                                    )
                                                    (C {(test)} {(DQ ($ VSub_Name '$non_pic_object'))} 
                                                      {(KW_Bang '!') (Lit_Other '=')} {(none)}
                                                    )
                                                  ]
                                                  op_id: Op_DAmp
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:rmfiles)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$rmfiles') (' ') 
                                                        ($ VSub_Name '$dir') (/) ($ VSub_Name '$non_pic_object')
                                                      )
                                                    }
                                                  spids: [48580]
                                                )
                                              ]
                                              spids: [48580]
                                            )
                                          ]
                                          spids: [16777215 48577]
                                        )
                                      ]
                                      spids: [16777215 48590]
                                    )
                                  ]
                                  spids: [16777215 48486]
                                )
                              ]
                              spids: [16777215 48593]
                            )
                          ]
                          spids: [48468 48470 48596 16777215]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other '*')}]
                          action: [
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$mode'))} {(Lit_Other '=')} 
                                          {(clean)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:noexename)
                                          op: Equal
                                          rhs: {($ VSub_Name '$name')}
                                          spids: [48621]
                                        )
                                      ]
                                      spids: [48621]
                                    )
                                    (Case
                                      to_match: {($ VSub_Name '$file')}
                                      arms: [
                                        (case_arm
                                          pat_list: [{(Lit_Other '*') (.exe)}]
                                          action: [
                                            (C {(func_stripname)} {(SQ )} {(SQ <.exe>)} 
                                              {(DQ ($ VSub_Name '$file'))}
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:file)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$func_stripname_result')}
                                                  spids: [48651]
                                                )
                                              ]
                                              spids: [48651]
                                            )
                                            (C {(func_stripname)} {(SQ )} {(SQ <.exe>)} 
                                              {(DQ ($ VSub_Name '$name'))}
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:noexename)
                                                  op: Equal
                                                  rhs: {($ VSub_Name '$func_stripname_result')}
                                                  spids: [48669]
                                                )
                                              ]
                                              spids: [48669]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:rmfiles)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$rmfiles') (' ') 
                                                        ($ VSub_Name '$file')
                                                      )
                                                    }
                                                  spids: [48681]
                                                )
                                              ]
                                              spids: [48681]
                                            )
                                          ]
                                          spids: [48632 48634 48689 16777215]
                                        )
                                      ]
                                      spids: [48625 48629 48692]
                                    )
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(func_ltwrapper_p)} {(DQ ($ VSub_Name '$file'))})
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(func_ltwrapper_executable_p)} 
                                                          {(DQ ($ VSub_Name '$file'))}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (C {(func_ltwrapper_scriptname)} 
                                                      {(DQ ($ VSub_Name '$file'))}
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:relink_command)
                                                          op: Equal
                                                          rhs: {(SQ )}
                                                          spids: [48730]
                                                        )
                                                      ]
                                                      spids: [48730]
                                                    )
                                                    (C {(func_source)} 
                                                      {
                                                        ($ VSub_Name 
'$func_ltwrapper_scriptname_result'
                                                        )
                                                      }
                                                    )
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:rmfiles)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$rmfiles') (' ') 
                                                                ($ VSub_Name 
'$func_ltwrapper_scriptname_result'
                                                                )
                                                              )
                                                            }
                                                          spids: [48738]
                                                        )
                                                      ]
                                                      spids: [48738]
                                                    )
                                                  ]
                                                  spids: [16777215 48720]
                                                )
                                              ]
                                              else_action: [
                                                (Assignment
                                                  keyword: Assign_None
                                                  pairs: [
                                                    (assign_pair
                                                      lhs: (LhsName name:relink_command)
                                                      op: Equal
                                                      rhs: {(SQ )}
                                                      spids: [48749]
                                                    )
                                                  ]
                                                  spids: [48749]
                                                )
                                                (C {(func_source)} 
                                                  {($ VSub_Name '$dir') (/) 
                                                    ($ VSub_Name '$noexename')
                                                  }
                                                )
                                              ]
                                              spids: [48746 48759]
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:rmfiles)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$rmfiles') (' ') 
                                                        ($ VSub_Name '$objdir') (/) ($ VSub_Name '$name') (' ') ($ VSub_Name '$objdir') (/) (${ VSub_Name name) (S.) (${ VSub_Name objext)
                                                      )
                                                    }
                                                  spids: [48771]
                                                )
                                              ]
                                              spids: [48771]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (AndOr
                                                          children: [
                                                            (C {(test)} 
                                                              {(DQ ($ VSub_Name '$fast_install'))} {(Lit_Other '=')} {(yes)}
                                                            )
                                                            (C {(test)} {(-n)} 
                                                              {(DQ ($ VSub_Name '$relink_command'))}
                                                            )
                                                          ]
                                                          op_id: Op_DAmp
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:rmfiles)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$rmfiles') (' ') 
                                                                ($ VSub_Name '$objdir') (/lt-) ($ VSub_Name '$name')
                                                              )
                                                            }
                                                          spids: [48817]
                                                        )
                                                      ]
                                                      spids: [48817]
                                                    )
                                                  ]
                                                  spids: [16777215 48814]
                                                )
                                              ]
                                              spids: [16777215 48827]
                                            )
                                            (If
                                              arms: [
                                                (if_arm
                                                  cond: [
                                                    (Sentence
                                                      child: 
                                                        (C {(test)} 
                                                          {(DQ (X) ($ VSub_Name '$noexename'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ (X) ($ VSub_Name '$name'))}
                                                        )
                                                      terminator: <Op_Semi ';'>
                                                    )
                                                  ]
                                                  action: [
                                                    (Assignment
                                                      keyword: Assign_None
                                                      pairs: [
                                                        (assign_pair
                                                          lhs: (LhsName name:rmfiles)
                                                          op: Equal
                                                          rhs: 
                                                            {
                                                              (DQ ($ VSub_Name '$rmfiles') (' ') 
                                                                ($ VSub_Name '$objdir') (/lt-) (${ VSub_Name noexename) (.c)
                                                              )
                                                            }
                                                          spids: [48852]
                                                        )
                                                      ]
                                                      spids: [48852]
                                                    )
                                                  ]
                                                  spids: [16777215 48849]
                                                )
                                              ]
                                              spids: [16777215 48865]
                                            )
                                          ]
                                          spids: [16777215 48708]
                                        )
                                      ]
                                      spids: [16777215 48868]
                                    )
                                  ]
                                  spids: [16777215 48618]
                                )
                              ]
                              spids: [16777215 48871]
                            )
                          ]
                          spids: [48600 48601 48874 16777215]
                        )
                      ]
                      spids: [48208 48212 48877]
                    )
                    (C {(func_show_eval)} {(DQ ($ VSub_Name '$RM') (' ') ($ VSub_Name '$rmfiles'))} 
                      {(SQ <'exit_status=1'>)}
                    )
                  ]
                  spids: [47937 48893]
                )
              spids: [47933 47935]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:objdir)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$origobjdir'))}
                  spids: [48896]
                )
              ]
              spids: [48896]
            )
            (ForEach
              iter_name: dir
              iter_words: [{($ VSub_Name '$rmdirs')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: (C {(test)} {(-d)} {(DQ ($ VSub_Name '$dir'))})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {(func_show_eval)} 
                              {(DQ ('rmdir ') ($ VSub_Name '$dir') (' >/dev/null 2>&1'))}
                            )
                          ]
                          spids: [16777215 48930]
                        )
                      ]
                      spids: [16777215 48942]
                    )
                  ]
                  spids: [48916 48945]
                )
              spids: [48912 48914]
            )
            (C {(exit)} {($ VSub_Name '$exit_status')})
          ]
          spids: [47794]
        )
      spids: [47789 47793]
    )
    (AndOr
      children: [
        (BraceGroup
          children: [
            (Sentence
              child: 
                (AndOr
                  children: [
                    (C {(test)} {(DQ ($ VSub_Name '$mode'))} {(Lit_Other '=')} {(uninstall)})
                    (C {(test)} {(DQ ($ VSub_Name '$mode'))} {(Lit_Other '=')} {(clean)})
                  ]
                  op_id: Op_DPipe
                )
              terminator: <Op_Semi ';'>
            )
          ]
          spids: [48956]
        )
        (C {(func_mode_uninstall)} 
          {
            (BracedVarSub
              token: <VSub_Number 1>
              suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(DQ ($ VSub_At '$@'))})
              spids: [48988 48994]
            )
          }
        )
      ]
      op_id: Op_DAmp
    )
    (AndOr
      children: [
        (C {(test)} {(-z)} {(DQ ($ VSub_Name '$mode'))})
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:help)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$generic_help'))}
                  spids: [49010]
                )
              ]
              spids: [49010]
            )
            (C {(func_fatal_help)} {(DQ ('you must specify a MODE'))})
          ]
          spids: [49007]
        )
      ]
      op_id: Op_DAmp
    )
    (AndOr
      children: [
        (C {(test)} {(-z)} {(DQ ($ VSub_Name '$exec_cmd'))})
        (C {(func_fatal_help)} 
          {
            (DQ ('invalid operation mode ') (EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) 
              ($ VSub_Name '$mode') ("'")
            )
          }
        )
      ]
      op_id: Op_DAmp
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (C {(test)} {(-n)} {(DQ ($ VSub_Name '$exec_cmd'))})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(eval)} {(exec)} {(DQ ($ VSub_Name '$exec_cmd'))})
            (C {(exit)} {($ VSub_Name '$EXIT_FAILURE')})
          ]
          spids: [16777215 49058]
        )
      ]
      spids: [16777215 49074]
    )
    (C {(exit)} {($ VSub_Name '$exit_status')})
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:build_libtool_libs) op:Equal rhs:{(no)} spids:[49117])]
      spids: [49117]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:build_old_libs) op:Equal rhs:{(yes)} spids:[49120])]
      spids: [49120]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:build_old_libs)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: 
                  (CommandList
                    children: [
                      (Case
                        to_match: {($ VSub_Name '$build_libtool_libs')}
                        arms: [
                          (case_arm
                            pat_list: [{(yes)}]
                            action: [(C {(echo)} {(no)})]
                            spids: [49138 49139 49144 16777215]
                          )
                          (case_arm
                            pat_list: [{(Lit_Other '*')}]
                            action: [(C {(echo)} {(yes)})]
                            spids: [49146 49147 49152 16777215]
                          )
                        ]
                        spids: [49132 49136 49154]
                      )
                    ]
                  )
                left_token: <Left_Backtick '`'>
                spids: [49131 49155]
              )
            }
          spids: [49130]
        )
      ]
      spids: [49130]
    )
  ]
)