(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(cmake)} spids:[6])]
      spids: [6]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(3.9.3)} spids:[9])]
      spids: [9]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(0)} spids:[12])]
      spids: [12]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ("CMake is a cross-platform open-source make system"))}
          spids: [15]
        )
      ]
      spids: [15]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ("http://www.cmake.org"))}
          spids: [20]
        )
      ]
      spids: [20]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[25])]
      spids: [25]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (CMake))} spids:[30])]
      spids: [30]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:makedepends)
          op: Equal
          rhs: 
            {
              (DQ ("ncurses-dev curl-dev expat-dev zlib-dev bzip2-dev libarchive-dev\n") 
                ("    libuv-dev xz-dev rhash-dev")
              )
            }
          spids: [35]
        )
      ]
      spids: [35]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:options)
          op: Equal
          rhs: {(DQ ("!checkroot !check"))}
          spids: [41]
        )
      ]
      spids: [41]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:checkdepends)
          op: Equal
          rhs: {(DQ ("musl-utils file"))}
          spids: [46]
        )
      ]
      spids: [46]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:subpackages)
          op: Equal
          rhs: {(DQ ($ VSub_Name "$pkgname") (-doc))}
          spids: [51]
        )
      ]
      spids: [51]
    )
    (Case
      to_match: {($ VSub_Name "$pkgver")}
      arms: [
        (case_arm
          pat_list: [{(Lit_Other "*") (.) (Lit_Other "*") (.) (Lit_Other "*") (.) (Lit_Other "*")}]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:_v)
                  op: Equal
                  rhs: 
                    {(v) 
                      (BracedVarSub
                        token: <VSub_Name pkgver>
                        suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(".*.*")})
                        spids: [75 79]
                      )
                    }
                  spids: [73]
                )
              ]
              spids: [73]
            )
          ]
          spids: [64 71 80 -1]
        )
        (case_arm
          pat_list: [{(Lit_Other "*") (.) (Lit_Other "*") (.) (Lit_Other "*")}]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:_v)
                  op: Equal
                  rhs: 
                    {(v) 
                      (BracedVarSub
                        token: <VSub_Name pkgver>
                        suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(".*")})
                        spids: [91 95]
                      )
                    }
                  spids: [89]
                )
              ]
              spids: [89]
            )
          ]
          spids: [82 87 96 -1]
        )
      ]
      spids: [58 62 98]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ ("http://www.cmake.org/files/") ($ VSub_Name "$_v") (/cmake-) (${ VSub_Name pkgver) 
                (.tar.gz)
              )
            }
          spids: [101]
        )
      ]
      spids: [101]
    )
    (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: [112]
        )
      ]
      spids: [112]
    )
    (FuncDef
      name: parallel_opt
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair lhs:(LhsName name:i) op:Equal spids:[131])
                (assign_pair lhs:(LhsName name:n) op:Equal spids:[133])
              ]
              spids: [129]
            )
            (ForEach
              iter_name: i
              iter_words: [{($ VSub_Name "$MAKEOPTS")}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (Sentence
                      child: 
                        (Case
                          to_match: {(DQ ($ VSub_Name "$i"))}
                          arms: [
                            (case_arm
                              pat_list: [{(-j) (Lit_Other "*")}]
                              action: [
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:n)
                                      op: Equal
                                      rhs: 
                                        {
                                          (BracedVarSub
                                            token: <VSub_Name i>
                                            suffix_op: (StringUnary op_id:VOp1_Pound arg_word:{(-j)})
                                            spids: [162 166]
                                          )
                                        }
                                      spids: [161]
                                    )
                                  ]
                                  spids: [161]
                                )
                              ]
                              spids: [157 159 167 -1]
                            )
                          ]
                          spids: [148 154 170]
                        )
                      terminator: <Op_Semi ";">
                    )
                  ]
                  spids: [145 174]
                )
              spids: [141 143]
            )
            (AndOr
              children: [
                (C {(Lit_Other "[")} {(-n)} {(DQ ($ VSub_Name "$n"))} {(Lit_Other "]")})
                (C {(echo)} {(DQ ("--parallel ") ($ VSub_Name "$n"))})
              ]
              op_id: Op_DAmp
            )
          ]
          spids: [126]
        )
      spids: [122 125]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (C {(./bootstrap)} {(--prefix) (Lit_Other "=") (/usr)} 
              {(--mandir) (Lit_Other "=") (/share/man)} {(--datadir) (Lit_Other "=") (/share/) ($ VSub_Name "$pkgname")} 
              {(--docdir) (Lit_Other "=") (/share/doc/) ($ VSub_Name "$pkgname")} {(--system-libs)} {(--no-system-jsoncpp)} 
              {
                (CommandSubPart
                  command_list: (CommandList children:[(C {(parallel_opt)})])
                  left_token: <Left_CommandSub "$(">
                  spids: [257 259]
                )
              }
            )
            (C {(make)})
          ]
          spids: [203]
        )
      spids: [199 202]
    )
    (FuncDef
      name: check
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (SimpleCommand
              words: [{(bin/ctest)}]
              more_env: [(env_pair name:CTEST_OUTPUT_ON_FAILURE val:{(TRUE)} spids:[282])]
            )
          ]
          spids: [272]
        )
      spids: [268 271]
    )
    (FuncDef
      name: package
      body: 
        (BraceGroup
          children: [
            (C {(cd)} 
              {($ VSub_Name "$startdir") (/src/) ($ VSub_Name "$pkgname") (-) ($ VSub_Name "$pkgver")}
            )
            (C {(make)} {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$pkgdir"))} {(install)})
          ]
          spids: [294]
        )
      spids: [290 293]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"30058cf4c154221846d1cd22eaf44a297d2a2d020a443f3e6f40384dfb86ee9a639a1299aa9f187f230505b2a6ee0fe69fbf5e80410711a6ac3d7a07b37f8dfc  cmake-3.9.3.tar.gz"
                )
              )
            }
          spids: [318]
        )
      ]
      spids: [318]
    )
  ]
)