(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(uthash)} spids:[6])]
      spids: [6]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(2.0.2)} spids:[9])]
      spids: [9]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:_sover) op:Equal rhs:{(0)} spids:[12])]
      spids: [12]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(0)} spids:[18])]
      spids: [18]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ("C macros for hash tables and more"))}
          spids: [21]
        )
      ]
      spids: [21]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ("http://troydhanson.github.io/uthash/"))}
          spids: [26]
        )
      ]
      spids: [26]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[31])]
      spids: [31]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (BSD))} spids:[36])]
      spids: [36]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:depends_dev)
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_Name "$pkgname") ("=") ($ VSub_Name "$pkgver") (-r) ($ VSub_Name "$pkgrel"))
            }
          spids: [41]
        )
      ]
      spids: [41]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:checkdepends) op:Equal rhs:{(DQ (perl))} spids:[50])]
      spids: [50]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:subpackages)
          op: Equal
          rhs: {(DQ ($ VSub_Name "$pkgname") ("-dev libut"))}
          spids: [55]
        )
      ]
      spids: [55]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_Name "$pkgname") (-) ($ VSub_Name "$pkgver") 
                (".tar.gz::https://github.com/troydhanson/") ($ VSub_Name "$pkgname") (/archive/v) ($ VSub_Name "$pkgver") (.tar.gz)
              )
            }
          spids: [61]
        )
      ]
      spids: [61]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:builddir)
          op: Equal
          rhs: {(DQ ($ VSub_Name "$srcdir") (/) ($ VSub_Name "$pkgname") (-) ($ VSub_Name "$pkgver"))}
          spids: [73]
        )
      ]
      spids: [73]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (SimpleCommand
              words: [{(make)} {(-C)} {(libut)}]
              more_env: [
                (env_pair
                  name: CFLAGS
                  val: {(DQ ($ VSub_Name "$CFLAGS") (" -fPIC"))}
                  spids: [98]
                )
              ]
            )
            (C {(gcc)} {(-shared)} {($ VSub_Name "$CFLAGS")} {($ VSub_Name "$LDFLAGS")} 
              {(-Wl) (Lit_Comma ",") (-soname) (Lit_Comma ",") (libut.so.) ($ VSub_Name "$_sover")} {(-o)} {(libut/libut.so.) ($ VSub_Name "$_sover")} {(libut/) (Lit_Other "*") (.o)}
            )
          ]
          spids: [87]
        )
      spids: [83 86]
    )
    (FuncDef
      name: check
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (C {(make)} {(-C)} {(tests)})
            (C {(make)} {(-C)} {(tests/threads)})
            (C {(make)} {(-C)} {(libut/tests)})
          ]
          spids: [144]
        )
      spids: [140 143]
    )
    (FuncDef
      name: package
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/include)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib)}
            )
            (C {(install)} {(-m)} {(0644)} {(src/) (Lit_Other "*") (.h)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/usr/include/)}
            )
            (C {(install)} {(-m)} {(0644)} {(libut/libut.a)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/)})
            (C {(install)} {(-D)} {(-m)} {(0755)} {(libut/libut.so.) ($ VSub_Name "$_sover")} 
              {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/)}
            )
            (C {(ln)} {(-s)} {(libut.so.) ($ VSub_Name "$_sover")} 
              {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/libut.so)}
            )
          ]
          spids: [182]
        )
      spids: [178 181]
    )
    (FuncDef
      name: libut
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ("Library-implementation of utvector"))}
                  spids: [281]
                )
              ]
              spids: [281]
            )
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/lib)})
            (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/libut.so) (Lit_Other "*")} 
              {(DQ ($ VSub_Name "$subpkgdir")) (/usr/lib/)}
            )
          ]
          spids: [278]
        )
      spids: [274 277]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"0c2e686eb5a1d6a03a6fa1d42e803fca4e9b60b2d965c635a5a33d487c8d115f1f8155ff99a0e1874b69f6b66c04ea7d8866472a39abe5d1a23ae73f6fa956d7  uthash-2.0.2.tar.gz"
                )
              )
            }
          spids: [314]
        )
      ]
      spids: [314]
    )
  ]
)