(CommandList
  children: [
    (C {(set)} {(-o)} {(nounset)})
    (C {(set)} {(-o)} {(pipefail)})
    (C {(set)} {(-o)} {(errexit)})
    (FuncDef
      name: show-checksum
      body: (BraceGroup children:[(C {(sha1sum)} {(k-script-build-static)})] spids:[36])
      spids: [32 35]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [
            (C {(./configure)})
            (C {(rm)} {(-v)} {(k-script-build-static)})
            (TimeBlock pipeline:(C {(make)} {(k-script-build-static)}))
            (C {(./k-script-build-static)} {(--help)})
            (C {(show-checksum)})
          ]
          spids: [50]
        )
      spids: [46 49]
    )
    (FuncDef
      name: make-osh
      body: 
        (BraceGroup
          children: [
            (C {(./configure)})
            (C {(rm)} {(k-script-build-static)})
            (TimeBlock
              pipeline: 
                (C {(make)} {(Lit_VarLike 'SHELL=') (Lit_Tilde '~') (/git/oilshell/oil/bin/osh)} 
                  {(k-script-build-static)}
                )
            )
            (C {(./k-script-build-static)} {(--help)})
          ]
          spids: [87]
        )
      spids: [83 86]
    )
    (FuncDef
      name: osh
      body: 
        (BraceGroup
          children: [(C {(TildeSubPart prefix:'') (/git/oilshell/oil/bin/osh)} {(DQ ($ VSub_At '$@'))})]
          spids: [120]
        )
      spids: [116 119]
    )
    (FuncDef
      name: build-with-osh
      body: 
        (BraceGroup
          children: [
            (C {(rm)} {(-v)} {(k-script-build-static)})
            (C {(pushd)} {(src)})
            (TimeBlock
              pipeline: 
                (C {(osh)} {(./k-script-build.sh)} {(--static)} {(--file)} {(k-script-build.sh)} 
                  {(--output)} {(../k-script-build-static)} {(--executable)} {(--debug)}
                )
            )
            (C {(popd)})
            (C {(cp)} {(k-script-build-static)} {(k-script-build-static-OSH)})
            (C {(show-checksum)})
          ]
          spids: [140]
        )
      spids: [136 139]
    )
    (C {(DQ ($ VSub_At '$@'))})
  ]
)