(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgname)
          op: assign_op.Equal
          rhs: {<llvm-libunwind>}
          spids: [6]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:_pkgname)
          op: assign_op.Equal
          rhs: {<libunwind>}
          spids: [9]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgver)
          op: assign_op.Equal
          rhs: {<4.0.0>}
          spids: [12]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:_llvmver)
          op: assign_op.Equal
          rhs: 
            {
              (braced_var_sub
                token: <Id.VSub_Name pkgver>
                suffix_op: 
                  (suffix_op.Unary
                    tok: <Id.VOp1_DPercent '%%'>
                    arg_word: {<.> <Id.Lit_Other '*'>}
                  )
              )
            }
          spids: [15]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgrel)
          op: assign_op.Equal
          rhs: {<0>}
          spids: [23]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgdesc)
          op: assign_op.Equal
          rhs: {(DQ <'LLVM version of libunwind library'>)}
          spids: [26]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:url)
          op: assign_op.Equal
          rhs: {(DQ <'http://llvm.org/'>)}
          spids: [31]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:arch)
          op: assign_op.Equal
          rhs: {(DQ <'all !ppc64le !s390x'>)}
          spids: [36]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:license)
          op: assign_op.Equal
          rhs: {(DQ <BSD>)}
          spids: [41]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:depends_dev)
          op: assign_op.Equal
          rhs: {(DQ <'!libunwind-dev'>)}
          spids: [46]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:makedepends)
          op: assign_op.Equal
          rhs: {(DQ <'cmake llvm'> ($ Id.VSub_DollarName '$_llvmver') <-dev>)}
          spids: [51]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:subpackages)
          op: assign_op.Equal
          rhs: {(DQ ($ Id.VSub_DollarName '$pkgname') <-dev>)}
          spids: [58]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:source)
          op: assign_op.Equal
          rhs: 
            {
              (DQ <'http://www.llvm.org/releases/'> ($ Id.VSub_DollarName '$pkgver') <'/'> 
                ($ Id.VSub_DollarName '$_pkgname') <-> ($ Id.VSub_DollarName '$pkgver') <'.src.tar.xz\n'> <'\tno-exec-stack.patch'>
              )
            }
          spids: [64]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:builddir)
          op: assign_op.Equal
          rhs: 
            {
              (DQ ($ Id.VSub_DollarName '$srcdir') <'/'> ($ Id.VSub_DollarName '$_pkgname') <-> 
                ($ Id.VSub_DollarName '$pkgver') <.src>
              )
            }
          spids: [76]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:options)
          op: assign_op.Equal
          rhs: {(DQ <'!check'>)}
          spids: [86]
        )
      ]
    )
    (command.ShFunction
      name: build
      body: 
        (BraceGroup
          children: [
            (C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir'))})
            (C {<cmake>} {<-DCMAKE_BUILD_TYPE> <Id.Lit_Equals '='> <MinSizeRel>} 
              {<-DCMAKE_INSTALL_PREFIX> <Id.Lit_Equals '='> <'/usr'>} {<-DCMAKE_CXX_FLAGS> <Id.Lit_Equals '='> (DQ ($ Id.VSub_DollarName '$CXXFLAGS'))} 
              {<-DCMAKE_C_FLAGS> <Id.Lit_Equals '='> (DQ ($ Id.VSub_DollarName '$CFLAGS'))} 
              {<-DLLVM_CONFIG_PATH> <Id.Lit_Equals '='> 
                (DQ <'/usr/lib/llvm'> ($ Id.VSub_DollarName '$_llvmver') <'/bin/llvm-config'>)
              } {<-DLIBUNWIND_HAS_NODEFAULTLIBS_FLAG> <Id.Lit_Equals '='> <OFF>}
            )
            (C {<make>})
          ]
        )
    )
    (command.ShFunction
      name: package
      body: 
        (BraceGroup
          children: [
            (C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir'))})
            (C {<make>} {<install>} {<Id.Lit_VarLike 'DESTDIR='> (DQ ($ Id.VSub_DollarName '$pkgdir'))})
            (C {<mkdir>} {<-p>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/include'>})
            (C {<cp>} {<'include/'> <Id.Lit_Star '*'> <.h>} 
              {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/include/'>}
            )
          ]
        )
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:sha512sums)
          op: assign_op.Equal
          rhs: 
            {
              (DQ 
                <
'c3c934b70830ef5496c9d24c469b702eb4408abd4fe4dd9e0832230b064dc78d23b02ed2a5ce9a099dea76c3d43cbf41d59c6cda189f990d5593c7d3cd5c79dd  libunwind-4.0.0.src.tar.xz\n'
                > 
                <
'2a61580331a9c8e5f9d4a12a845be187db65434257bb635eb509db43355709de0f17ddd8a589e0c8ee89ed29c0dc1cefd0fd9d11e4a0eb875b14ad4833063d11  no-exec-stack.patch'
                >
              )
            }
          spids: [208]
        )
      ]
    )
  ]
)