(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(live-media)} spids:[3])]
      spids: [3]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(2017.04.26)} spids:[6])]
      spids: [6]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(0)} spids:[9])]
      spids: [9]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ("A set of C++ libraries for multimedia streaming"))}
          spids: [12]
        )
      ]
      spids: [12]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ("http://live555.com/liveMedia"))}
          spids: [17]
        )
      ]
      spids: [17]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[22])]
      spids: [22]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (LGPL))} spids:[27])]
      spids: [27]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:subpackages)
          op: Equal
          rhs: {(DQ ($ VSub_Name "$pkgname") ("-dev ") ($ VSub_Name "$pkgname") (-utils))}
          spids: [32]
        )
      ]
      spids: [32]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:options) op:Equal rhs:{(DQ ("!check"))} spids:[40])]
      spids: [40]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: {(DQ ("http://live555.com/liveMedia/public/live.") ($ VSub_Name "$pkgver") (.tar.gz))}
          spids: [45]
        )
      ]
      spids: [45]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:builddir)
          op: Equal
          rhs: {(DQ ($ VSub_Name "$srcdir")) (/live)}
          spids: [52]
        )
      ]
      spids: [52]
    )
    (FuncDef
      name: prepare
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (C {(sed)} {(-e)} 
              {
                (DQ ("/^COMPILE_OPTS/s/") (Lit_Other "$") ("/ ") ($ VSub_Name "$CFLAGS") 
                  (" -fPIC -DPIC -DXLOCALE_NOT_USED=1 -DRTSPCLIENT_SYNCHRONOUS_INTERFACE/")
                )
              } {(-i)} {(config.linux-with-shared-libraries)}
            )
          ]
          spids: [63]
        )
      spids: [59 62]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (C {(./genMakefiles)} {(linux-with-shared-libraries)})
            (AndOr
              children: [
                (C {(make)} 
                  {(Lit_VarLike "C_COMPILER=") 
                    (DQ 
                      (BracedVarSub
                        token: <VSub_Name CC>
                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(gcc)})
                        spids: [117 121]
                      )
                    )
                  } 
                  {(Lit_VarLike "CPLUSPLUS_COMPILER=") 
                    (DQ 
                      (BracedVarSub
                        token: <VSub_Name CXX>
                        suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{("g++")})
                        spids: [126 130]
                      )
                    )
                  }
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
          ]
          spids: [98]
        )
      spids: [94 97]
    )
    (FuncDef
      name: package
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair lhs:(LhsName name:testprog) op:Equal spids:[153])
                (assign_pair lhs:(LhsName name:f) op:Equal spids:[155])
                (assign_pair lhs:(LhsName name:so) op:Equal spids:[157])
              ]
              spids: [151]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib)})
            (ForEach
              iter_name: f
              iter_words: [{(BasicUsageEnvironment)} {(UsageEnvironment)} {(liveMedia)} {(groupsock)}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (C {(mkdir)} {(-p)} 
                      {(DQ ($ VSub_Name "$pkgdir")) (/usr/include/) ($ VSub_Name "$f")}
                    )
                    (C {(cp)} {($ VSub_Name "$f") (/include/) (Lit_Other "*") (.h) (Lit_Other "*")} 
                      {(DQ ($ VSub_Name "$pkgdir")) (/usr/include/) ($ VSub_Name "$f")}
                    )
                    (AndOr
                      children: [
                        (C {(cp)} {($ VSub_Name "$f") (/lib) (${ VSub_Name f) (.a)} 
                          {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib)}
                        )
                        (C {(true)})
                      ]
                      op_id: Op_DPipe
                    )
                    (ForEach
                      iter_name: so
                      iter_words: [{($ VSub_Name "$f") (/lib) (Lit_Other "*") (.so.) (Lit_Other "*")}]
                      do_arg_iter: False
                      body: 
                        (DoGroup
                          children: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:soname)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (C {(scanelf)} {(-B)} {(--format)} {(DQ ("#F%S"))} 
                                                {($ VSub_Name "$so")}
                                              )
                                            ]
                                          )
                                        left_token: <Left_CommandSub "$(">
                                        spids: [257 269]
                                      )
                                    }
                                  spids: [256]
                                )
                              ]
                              spids: [256]
                            )
                            (AndOr
                              children: [
                                (C {(cp)} {($ VSub_Name "$so")} 
                                  {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/)}
                                )
                                (ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(1)}
                                )
                              ]
                              op_id: Op_DPipe
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:so)
                                  op: Equal
                                  rhs: 
                                    {
                                      (BracedVarSub
                                        token: <VSub_Name so>
                                        suffix_op: 
                                          (StringUnary
                                            op_id: VOp1_DPound
                                            arg_word: {("*") (Lit_Slash /)}
                                          )
                                        spids: [289 294]
                                      )
                                    }
                                  spids: [288]
                                )
                              ]
                              spids: [288]
                            )
                            (AndOr
                              children: [
                                (C {(ln)} {(-s)} {(${ VSub_Name so)} 
                                  {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/) (${ VSub_Name soname)}
                                )
                                (ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(1)}
                                )
                              ]
                              op_id: Op_DPipe
                            )
                            (AndOr
                              children: [
                                (C {(ln)} {(-s)} {(${ VSub_Name so)} 
                                  {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/) 
                                    (BracedVarSub
                                      token: <VSub_Name soname>
                                      suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(".so.*")})
                                      spids: [332 336]
                                    ) (.so)
                                  }
                                )
                                (ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(1)}
                                )
                              ]
                              op_id: Op_DPipe
                            )
                          ]
                          spids: [253 346]
                        )
                      spids: [245 251]
                    )
                  ]
                  spids: [192 349]
                )
              spids: [182 190]
            )
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin)})
            (ForEach
              iter_name: testprog
              iter_words: [
                {
                  (CommandSubPart
                    command_list: 
                      (CommandList
                        children: [(C {(find)} {(testProgs)} {(-type)} {(f)} {(-perm)} {(755)})]
                      )
                    left_token: <Left_Backtick "`">
                    spids: [369 381]
                  )
                }
              ]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (C {(install)} {(${ VSub_Name testprog)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin)})
                  ]
                  spids: [384 399]
                )
              spids: [368 382]
            )
          ]
          spids: [148]
        )
      spids: [144 147]
    )
    (FuncDef
      name: utils
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ("multimedia RTSP streaming tools"))}
                  spids: [411]
                )
              ]
              spids: [411]
            )
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr)})
            (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin)} 
              {(DQ ($ VSub_Name "$subpkgdir")) (/usr/)}
            )
          ]
          spids: [408]
        )
      spids: [404 407]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"444b3c63e30b2ddd0fac8b11f09efff3796953f6bad558cc59c093273a351ef6b1631abc5d89a8be422caf54b1c46104c59b507fc104785795c3e8622a8a4efd  live.2017.04.26.tar.gz"
                )
              )
            }
          spids: [442]
        )
      ]
      spids: [442]
    )
  ]
)