(CommandList
  children: [
    (C {(setupfor)} {(zlib)})
    (AndOr
      ops: [Op_DAmp Op_DAmp Op_DAmp Op_DAmp]
      children: [
        (SimpleCommand
          words: [{(./configure)}]
          more_env: [
            (env_pair
              name: CC
              val: 
                {
                  (BracedVarSub
                    token: <VSub_Name HOST_ARCH>
                    suffix_op: 
                      (StringUnary
                        op_id: VTest_ColonPlus
                        arg_word: {(${ VSub_Name HOST_ARCH) (-)}
                      )
                    spids: [12 19]
                  ) ($ VSub_Name '$CC')
                }
              spids: [11]
            )
          ]
        )
        (C {(make)} {(-j)} {($ VSub_Name '$CPUS')})
        (C {(install)} {(-D)} {(z) (Lit_Other '*') (.h)} {(DQ ($ VSub_Name '$STAGE_DIR') (/host/include))})
        (C {(install)} {(-D)} {(libz.a)} {(DQ ($ VSub_Name '$STAGE_DIR') (/host/lib))})
        (C {(cleanup)})
      ]
    )
    (C {(setupfor)} {(elf2flt)})
    (AndOr
      ops: [Op_DAmp Op_DAmp]
      children: [
        (SimpleCommand
          words: [
            {(./configure)}
            {(--with-bfd-include-dir) (Lit_Other '=') (DQ ($ VSub_Name '$STAGE_DIR') (/host/include))}
            {(--with-binutils-include-dir) (Lit_Other '=') 
              (DQ ($ VSub_Name '$STAGE_DIR') (/host/include))
            }
            {(--with-libiberty) (Lit_Other '=') 
              (DQ ($ VSub_Name '$STAGE_DIR') (/host/lib/libiberty.a))
            }
            {(--prefix) (Lit_Other '=') (DQ ($ VSub_Name '$STAGE_DIR'))}
            {(--with-libbfd) (Lit_Other '=') (DQ ($ VSub_Name '$STAGE_DIR') (/host/lib/libbfd.a))}
            {(--target) (Lit_Other '=') (DQ ($ VSub_Name '$ELF2FLT'))}
            {(--with-zlib-prefix) (Lit_Other '=') (DQ ($ VSub_Name '$STAGE_DIR') (/host))}
            {(--enable-always-reloc-text)}
            {
              (BracedVarSub
                token: <VSub_Name HOST_ARCH>
                suffix_op: 
                  (StringUnary
                    op_id: VTest_ColonPlus
                    arg_word: {('--host=') (${ VSub_Name KARCH) (-unknown-linux)}
                  )
                spids: [150 158]
              )
            }
          ]
          more_env: [
            (env_pair
              name: CC
              val: 
                {
                  (BracedVarSub
                    token: <VSub_Name HOST_ARCH>
                    suffix_op: 
                      (StringUnary
                        op_id: VTest_ColonPlus
                        arg_word: {(${ VSub_Name HOST_ARCH) (-)}
                      )
                    spids: [70 77]
                  ) ($ VSub_Name '$CC')
                }
              spids: [69]
            )
            (env_pair
              name: CFLAGS
              val: {(DQ ($ VSub_Name '$CFLAGS') (' ') ($ VSub_Name '$STATIC_FLAGS'))}
              spids: [80]
            )
          ]
        )
        (C {(make)} {(-j)} {($ VSub_Name '$CPUS')})
        (C {(make)} {(install)} {(Lit_VarLike 'TARGET=') (DQ ($ VSub_Name '$CROSS_TARGET'))} 
          {(Lit_VarLike 'PREFIX=') (DQ ($ VSub_Name '$TOOLCHAIN_PREFIX'))}
        )
      ]
    )
    (AndOr
      ops: [Op_DAmp]
      children: [
        (C {(Lit_Other '[')} {($ VSub_QMark '$?')} {(-ne)} {(0)} {(Lit_Other ']')})
        (C {(dienow)})
      ]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (C {(Lit_Other '[')} {(KW_Bang '!')} {(-e)} {(DQ ($ VSub_Name '$STAGE_DIR') (/bin/ld.real))} 
              {(Lit_Other ']')}
            )
          ]
          action: [
            (C {(ln)} {(-s)} {(DQ (${ VSub_Name TOOLCHAIN_PREFIX) (ld.real))} 
              {(DQ ($ VSub_Name '$STAGE_DIR') (/bin/ld.real))}
            )
          ]
          spids: [16777215 219]
        )
      ]
      spids: [16777215 238]
    )
    (C {(cleanup)})
  ]
)