(CommandList children: [ (C {(set)} {(-o)} {(nounset)}) (C {(set)} {(-o)} {(pipefail)}) (C {(set)} {(-o)} {(errexit)}) (Assignment keyword: Assign_Readonly pairs: [ (assign_pair lhs: (LhsName name:THIS_DIR) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (AndOr ops: [Op_DAmp] children: [ (C {(cd)} { (CommandSubPart command_list: (CommandList children: [(C {(dirname)} {($ VSub_Number '$0')})] ) left_token: <Left_CommandSub '$('> spids: [53 57] ) } ) (C {(pwd)}) ] ) ] ) left_token: <Left_CommandSub '$('> spids: [50 62] ) } spids: [49] ) ] spids: [47] ) (C {(source)} {($ VSub_Name '$THIS_DIR') (/common.sh)}) (C {(source)} {($ VSub_Name '$THIS_DIR') (/../build/common.sh)}) (FuncDef name: grammar body: (BraceGroup children: [ (C {(mkdir)} {(-p)} {(_tmp)}) (C {(opy_)} {(pgen2)} {($ VSub_Name '$THIS_DIR') (/py27.grammar)} {($ VSub_Name '$THIS_DIR') (/) ($ VSub_Name '$GRAMMAR')} ) ] spids: [83] ) spids: [79 82] ) (FuncDef name: md5-manifest body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:tree) op: Equal rhs: {($ VSub_Number '$1')} spids: [116] ) ] spids: [114] ) (C {(pushd)} {($ VSub_Name '$tree')}) (Pipeline children: [ (C {(find)} {(.)} {(-type)} {(f)}) (C {(sort)}) (C {(xargs)} {(stat)} {(--format)} {(SQ <'%s %n'>)}) (C {(tee)} {(SIZES.txt)}) ] negated: F ) (Pipeline children: [ (C {(find)} {(.)} {(-type)} {(f)}) (C {(sort)}) (C {(xargs)} {(md5sum)}) (C {(tee)} {(MD5.txt)}) ] negated: F ) (C {(popd)}) ] spids: [111] ) spids: [107 110] ) (FuncDef name: _compile-tree body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:src_tree) op: Equal rhs: {($ VSub_Number '$1')} spids: [199] ) ] spids: [197] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:dest_tree) op: Equal rhs: {($ VSub_Number '$2')} spids: [205] ) ] spids: [203] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:version) op: Equal rhs: {($ VSub_Number '$3')} spids: [211] ) ] spids: [209] ) (C {(shift)} {(3)}) (C {(rm)} {(-r)} {(-f)} {($ VSub_Name '$dest_tree')}) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:ext) op:Equal rhs:{(pyc)} spids:[237])] spids: [235] ) (ForEach iter_name: rel_path iter_words: [{(DQ ($ VSub_At '$@'))}] do_arg_iter: F body: (DoGroup children: [ (C {(echo)} {($ VSub_Name '$rel_path')}) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:dest) op: Equal rhs: {(${ VSub_Name dest_tree) (/) (BracedVarSub token: <VSub_Name rel_path> suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(.py)}) spids: [268 272] ) (.) (${ VSub_Name ext) } spids: [263] ) ] spids: [261] ) (C {(mkdir)} {(-p)} { (CommandSubPart command_list: (CommandList children: [(C {(dirname)} {($ VSub_Name '$dest')})] ) left_token: <Left_CommandSub '$('> spids: [283 287] ) } ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(test)} {($ VSub_Name '$version')} {(Lit_Other '=')} {(stdlib)}) terminator: <Op_Semi ';'> ) ] action: [ (C {(_stdlib-compile-one)} {($ VSub_Name '$src_tree') (/) (${ VSub_Name rel_path)} {($ VSub_Name '$dest')} ) ] spids: [16777215 302] ) (if_arm cond: [ (Sentence child: (C {(test)} {($ VSub_Name '$version')} {(Lit_Other '=')} {(compiler2)}) terminator: <Op_Semi ';'> ) ] action: [ (C {(_compile2-one)} {($ VSub_Name '$src_tree') (/) (${ VSub_Name rel_path)} {($ VSub_Name '$dest')} ) ] spids: [316 327] ) (if_arm cond: [ (Sentence child: (C {(test)} {($ VSub_Name '$version')} {(Lit_Other '=')} {(ccompile)}) terminator: <Op_Semi ';'> ) ] action: [ (C {(_ccompile-one)} {($ VSub_Name '$src_tree') (/) (${ VSub_Name rel_path)} {($ VSub_Name '$dest')} ) ] spids: [341 352] ) (if_arm cond: [ (Sentence child: (C {(test)} {($ VSub_Name '$version')} {(Lit_Other '=')} {(opy)}) terminator: <Op_Semi ';'> ) ] action: [ (C {(_compile-one)} {($ VSub_Name '$src_tree') (/) (${ VSub_Name rel_path)} {($ VSub_Name '$dest')} ) ] spids: [366 377] ) ] else_action: [(C {(die)} {(DQ (bad))})] spids: [391 401] ) ] spids: [253 404] ) spids: [247 251] ) (C {(tree)} {($ VSub_Name '$dest_tree')}) (C {(md5-manifest)} {($ VSub_Name '$dest_tree')}) ] spids: [194] ) spids: [190 193] ) (FuncDef name: compile-manifest body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:dest_dir) op: Equal rhs: {($ VSub_Number '$1')} spids: [432] ) ] spids: [430] ) (While cond: [ (Sentence child: (C {(read)} {(full_src_path)} {(rel_dest_path)}) terminator: <Op_Semi ';'> ) ] body: (DoGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:dest) op: Equal rhs: {($ VSub_Name '$dest_dir') (/) ($ VSub_Name '$rel_dest_path')} spids: [450] ) ] spids: [448] ) (C {(mkdir)} {(-p)} { (CommandSubPart command_list: (CommandList children: [(C {(dirname)} {($ VSub_Name '$dest')})] ) left_token: <Left_CommandSub '$('> spids: [460 464] ) } ) (C {(log)} {(DQ (' ') ($ VSub_Name '$full_src_path'))}) (C {(_compile-one)} {($ VSub_Name '$full_src_path')} {($ VSub_Name '$dest')}) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:rel_py_path) op: Equal rhs: { (BracedVarSub token: <VSub_Name rel_dest_path> suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(.pyc)}) spids: [486 490] ) (.py) } spids: [485] ) ] spids: [483] ) (C {(echo)} {($ VSub_Name '$dest')} {($ VSub_Name '$rel_dest_path')}) (C {(echo)} {($ VSub_Name '$full_src_path')} {($ VSub_Name '$rel_py_path')}) ] spids: [445 516] ) ) ] spids: [427] ) spids: [423 426] ) (FuncDef name: make-mains body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:dir) op: Equal rhs: { (BracedVarSub token: <VSub_Number 1> suffix_op: (StringUnary op_id: VTest_ColonHyphen arg_word: {(_tmp) (Lit_Slash /) (oil-opy)} ) spids: [531 537] ) } spids: [530] ) ] spids: [528] ) (ForEach iter_name: link iter_words: [ { (DQ (BracedVarSub token: <VSub_Name OIL_SYMLINKS> bracket_op: (WholeArray op_id:Lit_At) spids: [560 565] ) ) } ] do_arg_iter: F body: (DoGroup children: [ (BraceGroup children: [ (C {(echo)} {(SQ <'#!/bin/sh'>)}) (C {(echo)} {(DQ ('main=') ($ VSub_Name '$link'))}) (C {(echo)} {(SQ <'exec python $(dirname $0)/oil.pyc $main "$@"'>)}) ] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {($ VSub_Name '$dir') (/bin/) ($ VSub_Name '$link')} spids: [598] ) ] spids: [572] ) (C {(chmod)} {(--verbose)} {(Lit_Other '+') (x)} {($ VSub_Name '$dir') (/bin/) ($ VSub_Name '$link')} ) ] spids: [569 617] ) spids: [558 567] ) ] spids: [525] ) spids: [521 524] ) (FuncDef name: _fill-oil-tree body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:dir) op: Equal rhs: { (BracedVarSub token: <VSub_Number 1> suffix_op: (StringUnary op_id: VTest_ColonHyphen arg_word: {(_tmp) (Lit_Slash /) (oil-opy)} ) spids: [669 675] ) } spids: [668] ) ] spids: [666] ) (C {(cp)} {(-v)} (BracedWordTree parts: [(../osh/) (BracedAltPart words:[{(osh)} {(types)}]) (.asdl)] ) {($ VSub_Name '$dir') (/osh)} ) (C {(cp)} {(-v)} {(../core/runtime.asdl)} {($ VSub_Name '$dir') (/core)}) (C {(cp)} {(-v)} {(../asdl/arith.asdl)} {($ VSub_Name '$dir') (/asdl)}) (C {(ln)} {(-v)} {(-s)} {(-f)} (BracedWordTree parts: [($ VSub_Name '$PWD') (/../) (BracedAltPart words:[{(libc)} {(fastlex)}]) (.so)] ) {($ VSub_Name '$dir')} ) (C {(ln)} {(-v)} {(-s)} {(-f)} {($ VSub_Name '$PWD') (/../oil-version.txt)} {($ VSub_Name '$dir')} ) (C {(ln)} {(-v)} {(-s)} {(-f)} {(--no-target-directory)} {($ VSub_Name '$PWD') (/../_build)} {($ VSub_Name '$dir') (/_build)} ) (C {(make-mains)} {($ VSub_Name '$dir')}) ] spids: [663] ) spids: [659 662] ) (FuncDef name: oil-repo body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:src) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (AndOr ops: [Op_DAmp] children: [(C {(cd)} {(..)}) (C {(echo)} {($ VSub_Name '$PWD')})] ) ] ) left_token: <Left_CommandSub '$('> spids: [807 817] ) } spids: [806] ) ] spids: [804] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:files) op: Equal rhs: { (ArrayLiteralPart words: [ { (CommandSubPart command_list: (CommandList children: [ (C {(find)} {($ VSub_Name '$src')} {(-name)} {(_tmp)} {(-a)} {(-prune)} {(-o)} {(-name)} {(_chroot)} {(-a)} {(-prune)} {(-o)} {(-name)} {(cpython-full)} {(-a)} {(-prune)} {(-o)} {(-name)} {(_deps)} {(-a)} {(-prune)} {(-o)} {(-name)} {(Python-2.7.13)} {(-a)} {(-prune)} {(-o)} {(-name)} {(opy)} {(-a)} {(-prune)} {(-o)} {(-name)} {(SQ <test>)} {(-a)} {(-prune)} {(-o)} {(-name)} {(SQ <'*.py'>)} {(-a)} {(-printf)} {(SQ <'%P\\n'>)} ) ] ) left_token: <Left_CommandSub '$('> spids: [830 936] ) } ] ) } spids: [827] ) ] spids: [825] ) (C {(_compile-tree)} {($ VSub_Name '$src')} {(_tmp/oil-ccompile/)} {(ccompile)} { (DQ (BracedVarSub token: <VSub_Name files> bracket_op: (WholeArray op_id:Lit_At) spids: [951 956] ) ) } ) (C {(_compile-tree)} {($ VSub_Name '$src')} {(_tmp/oil-opy/)} {(opy)} { (DQ (BracedVarSub token: <VSub_Name files> bracket_op: (WholeArray op_id:Lit_At) spids: [969 974] ) ) } ) (C {(_fill-oil-tree)} {(_tmp/oil-ccompile/)}) (C {(_fill-oil-tree)} {(_tmp/oil-opy/)}) ] spids: [801] ) spids: [797 800] ) (FuncDef name: _oil-bin-manifest body: (BraceGroup children: [ (Pipeline children: [ (BraceGroup children: [ (C {(build/actions.sh)} {(runpy-py-to-compile)}) (C {(build/actions.sh)} {(py-to-compile)} {(SQ <.>)} {(SQ <bin.oil>)}) ] spids: [1030] ) (C {(sort)}) (C {(uniq)}) ] negated: F ) ] spids: [1014] ) spids: [1010 1013] ) (FuncDef name: oil-bin body: (BraceGroup children: [ (SimpleCommand words: [{(pushd)} {($ VSub_Name '$THIS_DIR') (/..)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(/dev/null)} spids:[1075])] ) (Pipeline children: [(C {(_oil-bin-manifest)}) (C {(compile-manifest)} {(_tmp/oil-with-opy)})] negated: F ) (SimpleCommand words: [{(popd)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(/dev/null)} spids:[1090])] ) ] spids: [1067] ) spids: [1063 1066] ) (FuncDef name: _opy-bin-manifest body: (BraceGroup children: [(C {(build/actions.sh)} {(py-to-compile)} {(SQ <.>)} {(SQ <bin.opy_>)})] spids: [1100] ) spids: [1096 1099] ) (FuncDef name: opy-bin body: (BraceGroup children: [ (SimpleCommand words: [{(pushd)} {(..)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(/dev/null)} spids:[1129])] ) (Pipeline children: [(C {(_opy-bin-manifest)}) (C {(compile-manifest)} {(_tmp/opy-with-opy)})] negated: F ) (SimpleCommand words: [{(popd)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(/dev/null)} spids:[1144])] ) ] spids: [1122] ) spids: [1118 1121] ) (C {(DQ ($ VSub_At '$@'))}) ] )